// RUN: %clang_cc1 -fsyntax-only -verify %s // Derived from GNU's std::string namespace test0 { class A { struct B { unsigned long length; }; struct C : B { static const unsigned long max_length; }; }; const unsigned long A::C::max_length = sizeof(B); } // Example from the standard. namespace test1 { class E { int x; class B {}; class I { B b; int y; // expected-note {{declared private here}} void f(E* p, int i) { p->x = i; } }; int g(I* p) { return p->y; } // expected-error {{'y' is a private member of 'test1::E::I'}} }; }