1 // RUN: %clang_cc1 -fsyntax-only -verify %s 2 // expected-no-diagnostics 3 template<typename T, int N> 4 struct A; 5 6 template<typename T> 7 struct A<T*, 2> { 8 A(T); 9 ~A(); 10 11 void f(T*); 12 13 operator T*(); 14 15 static T value; 16 }; 17 18 template<class X> void A<X*, 2>::f(X*) { } 19 20 template<class X> X A<X*, 2>::value; 21 22 template<class X> A<X*, 2>::A(X) { value = 0; } 23 24 template<class X> A<X*, 2>::~A() { } 25 26 template<class X> A<X*, 2>::operator X*() { return 0; } 27