// RUN: %clang_cc1 -fsyntax-only -verify %s // There should be no extra errors about missing 'template' keywords. struct B { template int f(){}; } builder; // expected-note 2{{'builder' declared here}} auto a = bilder.f(); // expected-error{{undeclared identifier 'bilder'; did you mean}} auto b = (*(&bilder+0)).f(); // expected-error{{undeclared identifier 'bilder'; did you mean}} struct X { struct type {}; }; namespace PR48339 { struct S { template static void g(typename T::type) {} // expected-note {{couldn't infer template argument 'T'}} template void f() { g(typename T::type{}); } // expected-error {{no matching function for call to 'g'}} }; void f() { S{}.f(); } // expected-note {{in instantiation of}} }