// 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'}}
};
}