1*67e74705SXin Li // RUN: %clang_cc1 -std=c++1z -verify -Wuninitialized %s 2*67e74705SXin Li testIf()3*67e74705SXin Livoid testIf() { 4*67e74705SXin Li if (bool b; b) // expected-warning {{uninitialized}} expected-note {{to silence}} 5*67e74705SXin Li ; 6*67e74705SXin Li if (int a, b = 2; a) // expected-warning {{uninitialized}} expected-note {{to silence}} 7*67e74705SXin Li ; 8*67e74705SXin Li int a; 9*67e74705SXin Li if (a = 0; a) {} // OK 10*67e74705SXin Li } 11*67e74705SXin Li testSwitch()12*67e74705SXin Livoid testSwitch() { 13*67e74705SXin Li switch (bool b; b) { // expected-warning {{uninitialized}} expected-warning {{boolean value}} expected-note {{to silence}} 14*67e74705SXin Li case 0: 15*67e74705SXin Li break; 16*67e74705SXin Li } 17*67e74705SXin Li switch (int a, b = 7; a) { // expected-warning {{uninitialized}} expected-note {{to silence}} 18*67e74705SXin Li case 0: 19*67e74705SXin Li break; 20*67e74705SXin Li } 21*67e74705SXin Li int c; 22*67e74705SXin Li switch (c = 0; c) { // OK 23*67e74705SXin Li case 0: 24*67e74705SXin Li break; 25*67e74705SXin Li } 26*67e74705SXin Li } 27