[Bug c++/19073] cp_binding_level::names not returning all decls

2024-02-16 Thread mpolacek at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=19073

Marek Polacek  changed:

   What|Removed |Added

 Resolution|--- |WORKSFORME
 CC||mpolacek at gcc dot gnu.org
 Status|NEW |RESOLVED

--- Comment #13 from Marek Polacek  ---
It doesn't appear there's anything to do here.

[Bug c++/19073] cp_binding_level::names not returning all decls

2018-03-02 Thread egallager at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=19073

Eric Gallager  changed:

   What|Removed |Added

 CC||egallager at gcc dot gnu.org

--- Comment #12 from Eric Gallager  ---
(In reply to Gabriel Dos Reis from comment #5)
> Subject: Re:  cp_namespace_decl not returning all decls
> 
> "pinskia at gcc dot gnu dot org"  writes:
> 
> | I think -fdump-translation-unit should be removed, it is only useful
> 
> Removing -fdump-translation-unit is a good step to make GCC more
> useless; it does not fix the problem.
> 
> -- Gaby

-fdump-translation-unit has been removed for gcc 8

[Bug c++/19073] cp_binding_level::names not returning all decls

2005-05-15 Thread gdr at integrable-solutions dot net

--- Additional Comments From gdr at integrable-solutions dot net  
2005-05-15 16:47 ---
Subject: Re:  cp_binding_level::names not returning all decls

"sstrasser at systemhaus-gruppe dot de" <[EMAIL PROTECTED]> writes:

| (In reply to comment #9)
| > only if it may be needed there in the future.  Perhaps a solution would be
| > adding every name there when -fdump-translation-unit is given (at the 
| expense of
| > some extra memory consumption, slower compilation).
| 
| in case you plan to to this: the above mentioned case seems to be the only 
one.
| I've fixed this in my project MetaC++ by just commenting out the 4 lines 
above.
| which probably introduces other bugs and so is no solution for -fdump..., but 
| what I'm trying to say is that this is the only case where GCC does not add a 
| name to cp_binding_level::names

The more I think about this, the more I'm wondering whether
cp_binding_level::names is the proper way to get the real functionality. 


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19073


[Bug c++/19073] cp_binding_level::names not returning all decls

2005-05-15 Thread sstrasser at systemhaus-gruppe dot de

--- Additional Comments From sstrasser at systemhaus-gruppe dot de  
2005-05-15 16:17 ---
(In reply to comment #9)
> only if it may be needed there in the future.  Perhaps a solution would be
> adding every name there when -fdump-translation-unit is given (at the 
expense of
> some extra memory consumption, slower compilation).

in case you plan to to this: the above mentioned case seems to be the only one.
I've fixed this in my project MetaC++ by just commenting out the 4 lines above.
which probably introduces other bugs and so is no solution for -fdump..., but 
what I'm trying to say is that this is the only case where GCC does not add a 
name to cp_binding_level::names


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19073


[Bug c++/19073] cp_binding_level::names not returning all decls

2005-05-15 Thread lerdsuwa at gcc dot gnu dot org

--- Additional Comments From lerdsuwa at gcc dot gnu dot org  2005-05-15 
11:46 ---
Some comment: This cp_binding_level::names and how it is used are internal to 
GCC.  
Too bad -fdump-translation-unit relies on it.  Names are placed in
cp_binding_level::names
only if it may be needed there in the future.  Perhaps a solution would be
adding every name there when -fdump-translation-unit is given (at the expense of
some extra memory consumption, slower compilation).

-- 
   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed||1
   Last reconfirmed|-00-00 00:00:00 |2005-05-15 11:46:40
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19073


[Bug c++/19073] cp_binding_level::names not returning all decls

2004-12-19 Thread pinskia at gcc dot gnu dot org

--- Additional Comments From pinskia at gcc dot gnu dot org  2004-12-20 
03:53 ---
(In reply to comment #7)
> I understand what they're doing but I don't understand why they are at this
> point and were introduced in decl.c version 1.1114.
> the cvs log message doesn't contain anything that's useful to me either.
> why are these lines there? before this there was no assignment to 
> binding->value
> at all.

http://gcc.gnu.org/ml/gcc-patches/2003-08/msg01155.html
"  The bug report had to do with allowing invalid elaborated type
  specifiers.  The root cause was that we were treating
  namespace-scope bindings differently from local and class bindings;
  this patch makes things more uniform."

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19073


[Bug c++/19073] cp_binding_level::names not returning all decls

2004-12-19 Thread sstrasser at systemhaus-gruppe dot de

--- Additional Comments From sstrasser at systemhaus-gruppe dot de  
2004-12-20 03:42 ---
ok, I took a closer look at this.
we all agree that type_decls(even c++ implicit ones) should be in
cp_binding_level::names, don't we?

decls get added to this list by name-lookup.c add_decl_to_level(), which gets
called by name-lookup.c:pushdecl()
pushdecl() checks if there is already a binding for the decl(via
namespace_binding()).
if there is(which is the case for the implicit type decls in current version),
it only calls add_decl_to_level() under certain circumstances, one of these is:
not being a TYPE_DECL.

in gcc version 3.3.4(which doesn't have this problem) namespace_binding()
returns 0, there is no binding, in current CVS there is.
so, why is this?

because of these lines in name-lookup.c:set_identifier_type_value_with_scope:
  if (binding->value)
supplement_binding (binding, decl);
  else
binding->value = decl;

I understand what they're doing but I don't understand why they are at this
point and were introduced in decl.c version 1.1114.
the cvs log message doesn't contain anything that's useful to me either.
why are these lines there? before this there was no assignment to binding->value
at all.

Thanks for your help

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19073


[Bug c++/19073] cp_binding_level::names not returning all decls

2004-12-19 Thread pcarlini at suse dot de

--- Additional Comments From pcarlini at suse dot de  2004-12-19 16:09 
---
> Removing -fdump-translation-unit is a good step to make GCC more
> useless;

Hey, I really hope there is a typo here, and you actually mean
"less useful" ;)

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19073


[Bug c++/19073] cp_binding_level::names not returning all decls

2004-12-19 Thread gdr at integrable-solutions dot net

--- Additional Comments From gdr at integrable-solutions dot net  
2004-12-19 15:31 ---
Subject: Re:  cp_namespace_decl not returning all decls

"pinskia at gcc dot gnu dot org" <[EMAIL PROTECTED]> writes:

| I think -fdump-translation-unit should be removed, it is only useful

Removing -fdump-translation-unit is a good step to make GCC more
useless; it does not fix the problem.

-- Gaby


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19073


[Bug c++/19073] cp_binding_level::names not returning all decls

2004-12-18 Thread sstrasser at systemhaus-gruppe dot de


-- 
   What|Removed |Added

Summary|cp_binding_level|cp_binding_level::names not
   ||returning all decls


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19073


[Bug c++/19073] cp_binding_level

2004-12-18 Thread sstrasser at systemhaus-gruppe dot de


-- 
   What|Removed |Added

Summary|cp_binding_level::names not |cp_binding_level
   |returning all decls |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19073


[Bug c++/19073] cp_binding_level::names not returning all decls

2004-12-18 Thread sstrasser at systemhaus-gruppe dot de


-- 
   What|Removed |Added

Summary|cp_namespace_decl not   |cp_binding_level::names not
   |returning all decls |returning all decls


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19073