115d6c2fb6d490811b41792b7d90331fb9c16694eDouglas Gregor// RUN: %clang_cc1 -fsyntax-only -verify %s 215d6c2fb6d490811b41792b7d90331fb9c16694eDouglas Gregortemplate<typename T> 315d6c2fb6d490811b41792b7d90331fb9c16694eDouglas Gregorstruct X1 { 415d6c2fb6d490811b41792b7d90331fb9c16694eDouglas Gregor static void member() { T* x = 1; } // expected-error{{cannot initialize a variable of type 'int *' with an rvalue of type 'int'}} 515d6c2fb6d490811b41792b7d90331fb9c16694eDouglas Gregor}; 615d6c2fb6d490811b41792b7d90331fb9c16694eDouglas Gregor 715d6c2fb6d490811b41792b7d90331fb9c16694eDouglas Gregortemplate<void(*)()> struct instantiate { }; 815d6c2fb6d490811b41792b7d90331fb9c16694eDouglas Gregor 915d6c2fb6d490811b41792b7d90331fb9c16694eDouglas Gregortemplate<typename T> 1015d6c2fb6d490811b41792b7d90331fb9c16694eDouglas Gregorstruct X2 { 1115d6c2fb6d490811b41792b7d90331fb9c16694eDouglas Gregor typedef instantiate<&X1<int>::member> i; // expected-note{{in instantiation of}} 1215d6c2fb6d490811b41792b7d90331fb9c16694eDouglas Gregor}; 1315d6c2fb6d490811b41792b7d90331fb9c16694eDouglas Gregor 1415d6c2fb6d490811b41792b7d90331fb9c16694eDouglas GregorX2<int> x; 15