------- 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

Reply via email to