brintos

brintos / llvm-project-archived public Read only

0
0
Text · 569 B · b0382dc Raw
30 lines · c
1// RUN: %clang_analyze_cc1 -fblocks -analyzer-checker=core -verify %s2 3// For now, don't inline varargs.4void foo(int *x, ...) {5  *x = 1;6}7 8void bar(void) {9  foo(0, 2); // no-warning10}11 12// For now, don't inline vararg blocks.13void (^baz)(int *x, ...) = ^(int *x, ...) { *x = 1; };14 15void taz(void) {16  baz(0, 2); // no-warning17}18 19// For now, don't inline global blocks.20void (^qux)(int *p) = ^(int *p) { *p = 1; };21void test_qux(void) {22  qux(0); // no-warning23}24 25 26void test_analyzer_is_running(void) {27  int *p = 0;28  *p = 0xDEADBEEF; // expected-warning {{null}}29}30