Daily bump.
[official-gcc.git] / gcc / testsuite / g++.dg / template / access2.C
blob4a80bb4d2806d2b1771909efc1009199cfd8a9b7
1 // { dg-do compile }
3 // PR c++/5387
4 // Enforcing access of typename type.
6 template <class T> struct A {
7   typename T::X x;                      // { dg-error "this context" }
8 };
10 template <class T> struct A2 {
11   int f() { return T::i; }              // { dg-error "this context" }
14 class B {
15   typedef int X;                        // { dg-message "private" }
16   static int i;                         // { dg-message "private" }
19 int main()
21   A<B> ab;                              // { dg-message "required" }
22   A2<B> a2b;
23   a2b.f();                              // { dg-message "required" }