diff options
Diffstat (limited to 'gcc/testsuite/g++.dg/lookup/scoped1.C')
-rw-r--r-- | gcc/testsuite/g++.dg/lookup/scoped1.C | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/lookup/scoped1.C b/gcc/testsuite/g++.dg/lookup/scoped1.C new file mode 100644 index 000000000..f1d3f403e --- /dev/null +++ b/gcc/testsuite/g++.dg/lookup/scoped1.C @@ -0,0 +1,22 @@ +// Test that explicitly scoped references to static members work even if +// they belong to an inaccessible base. + +struct A +{ + static int i1; + int i2; // { dg-error "inaccessible" "" } + static void f1 (); + void f2 (); +}; + +struct B: private A { }; +struct C: public B +{ + void g () + { + ::A::i1 = 1; + ::A::i2 = 1; // { dg-error "(access)|(context)" "" } + ::A::f1 (); + ::A::f2 (); // { dg-error "" } + } +}; |