xref: /llvm-project/clang/test/Sema/stmtexprs.c (revision 5e140c8a17889a4cc677edee9f5db618dca70535)
1 // RUN: %clang_cc1 %s -verify -pedantic -fsyntax-only -Wno-gnu-statement-expression
2 
3 int stmtexpr_fn(void);
stmtexprs(int i)4 void stmtexprs(int i) {
5   __builtin_assume( ({ 1; }) ); // no warning about "side effects"
6   __builtin_assume( ({ if (i) { (void)0; }; 42; }) ); // no warning about "side effects"
7   // expected-warning@+1 {{assumption is ignored because it contains (potential) side-effects}}
8   __builtin_assume( ({ if (i) ({ stmtexpr_fn(); }); 1; }) );
9 }
10