Home | History | Annotate | Download | only in temp.mem.class
      1 // RUN: %clang_cc1 -fsyntax-only -verify %s
      2 
      3 template<typename T, typename U>
      4 struct X0 {
      5   struct Inner;
      6 };
      7 
      8 template<typename T, typename U>
      9 struct X0<T, U>::Inner {
     10   T x;
     11   U y;
     12 
     13   void f() { x = y; } // expected-error{{incompatible}}
     14 };
     15 
     16 
     17 void test(int i, float f) {
     18   X0<int, float>::Inner inner;
     19   inner.x = 5;
     20   inner.y = 3.4;
     21   inner.f();
     22 
     23   X0<int*, float *>::Inner inner2;
     24   inner2.x = &i;
     25   inner2.y = &f;
     26   inner2.f(); // expected-note{{instantiation}}
     27 }
     28