// RUN: %clang_cc1 -fsyntax-only -verify -std=c++11 %s namespace redecl_in_templ { template void redecl_in_templ() { extern void func_1(); // expected-note {{previous declaration is here}} extern int func_1(); // expected-error {{functions that differ only in their return type cannot be overloaded}} } void g(); constexpr void (*p)() = g; template struct X {}; template<> struct X { typedef int type; }; template void f() { extern void g(); X<&g == p>::type n; } }