diff options
Diffstat (limited to 'test/SemaCXX/warn-func-as-bool.cpp')
-rw-r--r-- | test/SemaCXX/warn-func-as-bool.cpp | 40 |
1 files changed, 0 insertions, 40 deletions
diff --git a/test/SemaCXX/warn-func-as-bool.cpp b/test/SemaCXX/warn-func-as-bool.cpp deleted file mode 100644 index b5df744f9306..000000000000 --- a/test/SemaCXX/warn-func-as-bool.cpp +++ /dev/null @@ -1,40 +0,0 @@ -// RUN: %clang_cc1 -x c++ -verify -fsyntax-only %s - -void f1(); - -struct S { - static void f2(); -}; - -extern void f3() __attribute__((weak_import)); - -struct S2 { - static void f4() __attribute__((weak_import)); -}; - -bool f5(); -bool f6(int); - -void bar() { - bool b; - - b = f1; // expected-warning {{address of function 'f1' will always evaluate to 'true'}} \ - expected-note {{prefix with the address-of operator to silence this warning}} - if (f1) {} // expected-warning {{address of function 'f1' will always evaluate to 'true'}} \ - expected-note {{prefix with the address-of operator to silence this warning}} - b = S::f2; // expected-warning {{address of function 'S::f2' will always evaluate to 'true'}} \ - expected-note {{prefix with the address-of operator to silence this warning}} - if (S::f2) {} // expected-warning {{address of function 'S::f2' will always evaluate to 'true'}} \ - expected-note {{prefix with the address-of operator to silence this warning}} - b = f5; // expected-warning {{address of function 'f5' will always evaluate to 'true'}} \ - expected-note {{prefix with the address-of operator to silence this warning}} \ - expected-note {{suffix with parentheses to turn this into a function call}} - b = f6; // expected-warning {{address of function 'f6' will always evaluate to 'true'}} \ - expected-note {{prefix with the address-of operator to silence this warning}} - - // implicit casts of weakly imported symbols are ok: - b = f3; - if (f3) {} - b = S2::f4; - if (S2::f4) {} -} |