diff options
author | Ted Kremenek <kremenek@apple.com> | 2014-03-29 04:49:20 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2014-03-29 04:49:20 +0000 |
commit | ab57a1555acffbeddf98818007fb9dff0a56c619 (patch) | |
tree | e8c68d8927034945a55a5bca46390931e2b2858a /clang/test/SemaCXX/warn-unreachable.cpp | |
parent | 48fb4887064e047647453ac2cf9f7054ec8d6ecb (diff) | |
download | bcm5719-llvm-ab57a1555acffbeddf98818007fb9dff0a56c619.tar.gz bcm5719-llvm-ab57a1555acffbeddf98818007fb9dff0a56c619.zip |
[-Wunreachable-code] Expand paren-suppression heuristic to C++/ObjC bools.
llvm-svn: 205074
Diffstat (limited to 'clang/test/SemaCXX/warn-unreachable.cpp')
-rw-r--r-- | clang/test/SemaCXX/warn-unreachable.cpp | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/clang/test/SemaCXX/warn-unreachable.cpp b/clang/test/SemaCXX/warn-unreachable.cpp index 8acaf428551..04bd74304b7 100644 --- a/clang/test/SemaCXX/warn-unreachable.cpp +++ b/clang/test/SemaCXX/warn-unreachable.cpp @@ -294,3 +294,36 @@ void test_unreachable_forrange_increment() { } } +void calledFun() {} + +// Test "silencing" with parentheses. +void test_with_paren_silencing(int x) { + if (false) calledFun(); // expected-warning {{will never be executed}} expected-note {{silence by adding parentheses to mark code as explicitly dead}} + if ((false)) calledFun(); // no-warning + + if (true) // expected-note {{silence by adding parentheses to mark code as explicitly dead}} + calledFun(); + else + calledFun(); // expected-warning {{will never be executed}} + + if ((true)) + calledFun(); + else + calledFun(); // no-warning + + if (!true) // expected-note {{silence by adding parentheses to mark code as explicitly dead}} + calledFun(); // expected-warning {{code will never be executed}} + else + calledFun(); + + if ((!true)) + calledFun(); // no-warning + else + calledFun(); + + if (!(true)) + calledFun(); // no-warning + else + calledFun(); +} + |