class C1 { public: C1(); static int x; };
#if 1 namespace C1 { int x; }; #else int C1::x; #endif class C2 { public: C2(); C1 c; // ! error here }; when the static field is defined inside the namespace block, the definition of the C1 class is no longer visible in the reference. I'm using the WinAVR-20070525 version of the AVR port. -- Summary: namespace hides class definition Product: gcc Version: 4.1.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ilgb at livius dot net http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33287