blob: e64fa1aed4188ae44cd80107a0a12f10cf168a9f [file] [log] [blame]
// { dg-do assemble }
// Make sure definitions of static members have the right access.
struct A {
protected:
int i; // { dg-message "" } private
int f (); // { dg-message "" }
};
struct B: public A {
static int A::*p;
static int (A::*fp)();
};
int A::* B::p = &A::i; // { dg-error "" }
int (A::* B::fp)() = &A::f; // { dg-error "" }
struct C {
static int A::*p;
static int (A::*fp)();
};
int A::* C::p = &A::i; // { dg-error "" }
int (A::* C::fp)() = &A::f; // { dg-error "" }