// RUN: %clang_cc1 -analyze -analyzer-checker=core,debug.ExprInspection -verify %s | |
// expected-no-diagnostics | |
struct X { | |
int *p; | |
int zero; | |
void foo () { | |
reset(p - 1); | |
} | |
void reset(int *in) { | |
while (in != p) // Loop must be entered. | |
zero = 1; | |
} | |
}; | |
int test (int *in) { | |
X littleX; | |
littleX.zero = 0; | |
littleX.p = in; | |
littleX.foo(); | |
return 5/littleX.zero; // no-warning | |
} | |