http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56585
--- Comment #3 from Fernando Pelliccioni <fpelliccioni at gmail dot com> 2013-03-10 11:21:59 UTC --- I don't see anything about "diagnostic", I only see that the Standard says "error" I quote a relevant excerpt from the example. [ Example: /* ... */ struct Data { /* ... */ }; /* ... */ struct Data; // OK: Redeclares Data at global scope struct ::Data; // error: cannot introduce a qualified type (7.1.6.3) /* ... */ —end example ] If I'm wrong, please point me to the standard.