------- Additional Comments From reichelt at gcc dot gnu dot org 2004-11-21
01:40 -------
There seems to be some conflict between the names "__ct", "__dt" and the
constructor and destructor of the class. Just compile the following code
snippet with "-Wshadow":
====================================
struct A
{
A();
~A();
void foo(int __ct, int __dt) {}
};
====================================
I get the error messgage:
bug.cc: In member function 'void A::foo(int, int)':
bug.cc:5: warning: declaration of '__dt' shadows a member of 'this'
bug.cc:5: warning: declaration of '__ct' shadows a member of 'this'
With different names for the parameters of foo no warning is generated.
If I remove the destructor, only the warning for __ct is generated.
It looks like the problem was introduced in mid July:
: Search converges between 2004-07-13-trunk (#485) and 2004-07-14-trunk (#486).
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |reichelt at gcc dot gnu dot
| |org
Status|UNCONFIRMED |NEW
Ever Confirmed| |1
Keywords| |monitored
Last reconfirmed|0000-00-00 00:00:00 |2004-11-21 01:40:57
date| |
Summary|Bogus warning about shadowed|[4.0 regression] Bogus
|variable in |warnings about shadowed
|locale_facets.tcc |variables __ct, __dt
Target Milestone|--- |4.0.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18530