// RUN: %clang_cc1 -fsyntax-only -verify %s -Wmissing-noreturn void f() __attribute__((noreturn)); template void g(T) { // expected-warning {{function could be attribute 'noreturn'}} f(); } template void g(int); // expected-note {{in instantiation of function template specialization 'g' requested here}} template struct A { void g() { // expected-warning {{function could be attribute 'noreturn'}} f(); } }; template struct A; // expected-note {{in instantiation of member function 'A::g' requested here}} struct B { template void g(T) { // expected-warning {{function could be attribute 'noreturn'}} f(); } }; template void B::g(int); // expected-note {{in instantiation of function template specialization 'B::g' requested here}}