The code: int main() { int i = 0; namespace foo { int j = 0; } return 0; } gets you: ~/ootbc/sim$ g++ foo.cc foo.cc: In function 'int main()': foo.cc:3: error: expected primary-expression before 'namespace' foo.cc:3: error: expected `;' before 'namespace'
In contrast, Comeau gives: Comeau C/C++ 4.3.8 (Aug 19 2006 13:36:48) for ONLINE_EVALUATION_Alpha1 Copyright 1988-2006 Comeau Computing. All rights reserved. MODE:strict errors C++ "ComeauTest.c", line 3: error: namespace definition is not allowed namespace foo { ^ "ComeauTest.c", line 2: warning: variable "i" was declared but never referenced int i = 0; ^ 1 error detected in the compilation of "ComeauTest.c". -- Summary: poor diagnostic Product: gcc Version: 4.1.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: igodard at pacbell dot net http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30891