Home | History | Annotate | Download | only in temp.mem.func
      1 // RUN: %clang_cc1 -fsyntax-only -verify %s
      2 // expected-no-diagnostics
      3 
      4 template<typename T> struct X1 { };
      5 
      6 template<typename T>
      7 struct X0 {
      8   typedef int size_type;
      9   typedef T value_type;
     10 
     11   size_type f0() const;
     12   value_type *f1();
     13   X1<value_type*> f2();
     14 };
     15 
     16 template<typename T>
     17 typename X0<T>::size_type X0<T>::f0() const {
     18   return 0;
     19 }
     20 
     21 template<typename U>
     22 typename X0<U>::value_type *X0<U>::f1() {
     23   return 0;
     24 };
     25 
     26 template<typename U>
     27 X1<typename X0<U>::value_type*> X0<U>::f2() {
     28   return 0;
     29 };
     30