Dead
[official-gcc.git] / gomp-20050608-branch / gcc / testsuite / g++.dg / tc1 / dr142.C
blobc49f4dd20d34b7ba3e3eb3a2c52534977c7d68e2
1 // { dg-do compile }
2 // Origin: Giovanni Bajo <giovannibajo at gcc dot gnu dot org>
3 // DR142: Injection-related errors in access example 
5 class B {                 // { dg-error "inaccessible" }
6 public:
7   int mi;                 // { dg-error "inaccessible" }
8   static int si;          // { dg-error "inaccessible" }
9 };
11 class D: private B {
14 class DD: public D {
15   void f();
18 void DD::f() {
19   mi = 3;          // { dg-error "within this context" "" }
20   si = 3;          // { dg-error "within this context" "" }
21   ::B b;
22   b.mi = 3;
23   b.si = 3;
24   ::B::si = 3;
25   ::B* bp1 = this;        // { dg-error "inaccessible base" "" }
26   ::B* bp2 = (::B*)this;
27   bp2->mi = 3;
30   B b2;                   // { dg-error "within this context" "" }
31   B::si = 3;              // { dg-error "within this context" "" }