Home | History | Annotate | Download | only in temp.dep
      1 // RUN: %clang_cc1 -fsyntax-only -verify %s
      2 struct A0 {
      3   struct K { };
      4 };
      5 
      6 template <typename T> struct B0: A0 {
      7   static void f() {
      8     K k;
      9   }
     10 };
     11 
     12 namespace E1 {
     13   typedef double A;
     14 
     15   template<class T> class B {
     16     typedef int A;
     17   };
     18 
     19   template<class T>
     20   struct X : B<T> {
     21     A* blarg(double *dp) {
     22       return dp;
     23     }
     24   };
     25 }
     26 
     27 namespace E2 {
     28   struct A {
     29     struct B;
     30     int *a;
     31     int Y;
     32   };
     33 
     34   int a;
     35   template<class T> struct Y : T {
     36     struct B { /* ... */ };
     37     B b;
     38     void f(int i) { a = i; }
     39     Y* p;
     40   };
     41 
     42   Y<A> ya;
     43 }
     44