sorry if this is a dupe, I've checked the summaries, but there are too many about "using" to read each in detail.
I think this is a bug: namespace A{int a;}; namespace C{ int a; using A::a; } accepted. if not, then this is one: namespace A{int a;}; namespace C{ double a; using A::a; } error: `a' is already declared in this scope -- Summary: invalid using-redeclaration accepted Product: gcc Version: 3.4.3 Status: UNCONFIRMED Severity: minor Priority: P2 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: sstrasser at systemhaus-gruppe dot de CC: gcc-bugs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20240