diff options
Diffstat (limited to 'clang/test/SemaCXX/cxx1z-init-statement-warn-unused.cpp')
-rw-r--r-- | clang/test/SemaCXX/cxx1z-init-statement-warn-unused.cpp | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/clang/test/SemaCXX/cxx1z-init-statement-warn-unused.cpp b/clang/test/SemaCXX/cxx1z-init-statement-warn-unused.cpp new file mode 100644 index 00000000000..5390da4f3f5 --- /dev/null +++ b/clang/test/SemaCXX/cxx1z-init-statement-warn-unused.cpp @@ -0,0 +1,26 @@ +// RUN: %clang_cc1 -std=c++1z -verify -Wuninitialized %s + +void testIf() { + if (bool b; b) // expected-warning {{uninitialized}} expected-note {{to silence}} + ; + if (int a, b = 2; a) // expected-warning {{uninitialized}} expected-note {{to silence}} + ; + int a; + if (a = 0; a) {} // OK +} + +void testSwitch() { + switch (bool b; b) { // expected-warning {{uninitialized}} expected-warning {{boolean value}} expected-note {{to silence}} + case 0: + break; + } + switch (int a, b = 7; a) { // expected-warning {{uninitialized}} expected-note {{to silence}} + case 0: + break; + } + int c; + switch (c = 0; c) { // OK + case 0: + break; + } +} |