#include "analyzer-decls.h" int a[1024]; int b[1024]; extern void escape (void *ptr); void test_1 (int *p) { int c, d; escape (&c); *p = 42; __analyzer_eval (*p == 42); /* { dg-warning "TRUE" } */ /* These writes shouldn't affect *p. */ c = 33; d = 44; __analyzer_eval (*p == 42); /* { dg-warning "TRUE" } */ /* This write could affect *p. */ a[16] = 55; __analyzer_eval (*p == 42); /* { dg-warning "UNKNOWN" } */ }