1 #include "analyzer-decls.h"
2
3 void test (int *p, int i, int j)
4 {
5 p[3] = 42;
6 __analyzer_eval (p[3] == 42); /* { dg-warning "TRUE" } */
7 __analyzer_eval (*(p + 3) == 42); /* { dg-warning "TRUE" } */
8 __analyzer_eval (p[i] == 42); /* { dg-warning "UNKNOWN" } */
9 __analyzer_eval (p[j] == 42); /* { dg-warning "UNKNOWN" } */
10
11 //__analyzer_dump ();
12
13 p[i] = 17;
14
15 //__analyzer_dump ();
16
17 __analyzer_eval (p[3] == 42); /* { dg-warning "UNKNOWN" } */
18 __analyzer_eval (p[i] == 17); /* { dg-warning "TRUE" } */
19 __analyzer_eval (p[j] == 17); /* { dg-warning "UNKNOWN" } */
20 }