38 lines · c
1// RUN: %clang_cc1 -fsyntax-only -Wunused-variable -fblocks -verify %s2 3struct s0 {4 unsigned int i;5};6 7int proto(int a, int b);8 9void f0(void) {10 int a __attribute__((unused)),11 b; // expected-warning{{unused}}12 return;13}14 15void f1(void) {16 int i;17 (void)sizeof(i);18 return;19}20 21// PR593322int f2(void) {23 int X = 4; // Shouldn't have a bogus 'unused variable X' warning.24 return Y + X; // expected-error {{use of undeclared identifier 'Y'}}25}26 27int f3(void) {28 int X1 = 4; 29 (void)(Y1 + X1); // expected-error {{use of undeclared identifier 'Y1'}}30 (void)(^() { int X = 4; }); // expected-warning{{unused}}31 (void)(^() { int X = 4; return Y + X; }); // expected-error {{use of undeclared identifier 'Y'}}32}33 34void c1(int *);35void f4(void) {36 int __attribute__((cleanup(c1))) X1 = 4;37}38