------- Comment #6 from reichelt at gcc dot gnu dot org  2007-12-26 19:40 
-------
To sum things up:

* The code is invalid, i.e. it shouldn't compile.

* GCC up to 4.2.x rejected the code for the wrong reason:

    bug.cc:24: error: 'C1' does not name a type

  This message is way too late.
  GCC should have rejected the declaration of the namespace C1.

* Mainline GCC produces a correct diagnostic:

    bug.cc:12: error: 'namespace C1 { }' redeclared as different kind of symbol
    bug.cc:2: error: previous declaration of 'class C1'

  This is due to the fix mentioned in comment #2, namely for PR 30734,
  aka PR 2708. Since this bug wasn't a regression, the fix won't be
  backported to current branches.

Although the submitter probably thought of the problem as an rejects-valid
bug, this is really an accepts-invalid bug in the first place.


*** This bug has been marked as a duplicate of 30734 ***


-- 

reichelt at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |reichelt at gcc dot gnu dot
                   |                            |org
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|                            |DUPLICATE


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

Reply via email to