2010-05-06 11:38:27 +08:00
|
|
|
// RUN: %clang_cc1 -analyze -analyzer-check-objc-mem -analyzer-inline-call -analyzer-store region -verify %s
|
|
|
|
|
2010-02-27 10:44:37 +08:00
|
|
|
int f1() {
|
|
|
|
int y = 1;
|
|
|
|
y++;
|
|
|
|
return y;
|
|
|
|
}
|
|
|
|
|
|
|
|
void f2() {
|
|
|
|
int x = 1;
|
|
|
|
x = f1();
|
|
|
|
if (x == 1) {
|
|
|
|
int *p = 0;
|
|
|
|
*p = 3; // no-warning
|
|
|
|
}
|
|
|
|
if (x == 2) {
|
|
|
|
int *p = 0;
|
2010-03-23 09:11:38 +08:00
|
|
|
*p = 3; // expected-warning{{Dereference of null pointer (loaded from variable 'p')}}
|
2010-02-27 10:44:37 +08:00
|
|
|
}
|
|
|
|
}
|