41 lines · cpp
1// RUN: %clang_cc1 -fsyntax-only -verify %s2 3class A {};4 5namespace B {6 namespace A {} // expected-note{{namespace '::B::A' defined here}} \7 // expected-note 2{{namespace 'B::A' defined here}}8 using namespace A ;9}10 11namespace C {} // expected-note{{namespace 'C' defined here}}12 13namespace D {14 15 class C {16 17 using namespace B ; // expected-error{{not allowed}}18 };19 20 namespace B {}21 22 using namespace C ;23 using namespace B::A ; // expected-error{{no namespace named 'A' in namespace 'D::B'; did you mean '::B::A'?}}24 using namespace ::B::A ;25 using namespace ::D::F ; // expected-error{{expected namespace name}}26 using namespace ::D::C ; // expected-error{{no namespace named 'C' in namespace 'D'; did you mean simply 'C'?}}27}28 29using namespace ! ; // expected-error{{expected namespace name}}30using namespace A ; // expected-error{{no namespace named 'A'; did you mean 'B::A'?}}31using namespace ::A // expected-error{{no namespace named 'A' in the global namespace; did you mean 'B::A'?}} \32 // expected-error{{expected ';' after namespace name}}33 B ; 34 35void test_nslookup() {36 int B;37 class C;38 using namespace B;39 using namespace C;40}41