reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | // RUN: %clang_cc1 -fsyntax-only -verify -Wall %s namespace test1 { static void f() {} // expected-warning {{is not needed and will not be emitted}} static void f(); template <typename T> void foo() { f(); } } namespace test2 { static void f() {} static void f(); static void g() { f(); } void h() { g(); } } namespace test3 { static void f(); template<typename T> static void g() { f(); } static void f() { } void h() { g<int>(); } } namespace test4 { static void f(); static void f(); template<typename T> static void g() { f(); } static void f() { } void h() { g<int>(); } } namespace test4 { static void func(); void bar() { void func(); func(); } static void func() {} } |