diff options
Diffstat (limited to 'clang/test/SemaCXX/function-redecl-2.cpp')
| -rw-r--r-- | clang/test/SemaCXX/function-redecl-2.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/clang/test/SemaCXX/function-redecl-2.cpp b/clang/test/SemaCXX/function-redecl-2.cpp new file mode 100644 index 00000000000..9ceeb205be8 --- /dev/null +++ b/clang/test/SemaCXX/function-redecl-2.cpp @@ -0,0 +1,19 @@ +// RUN: %clang_cc1 -fsyntax-only -verify -std=c++11 %s + +namespace redecl_in_templ { +template<typename T> 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<bool> struct X {}; +template<> struct X<true> { typedef int type; }; + +template<typename T> void f() { + extern void g(); + X<&g == p>::type n; +} +} |

