// RUN: %clang_analyze_cc1 -triple i386-apple-darwin10 -analyzer-checker=core,debug.ExprInspection -analyzer-config ipa=none -verify %s
void ;
;
;
;
;
// A lot of the tests below have the if statement in them, which forces the
// analyzer to explore both path - when the result is 0 and not. This makes
// sure that we definitely know that the result is non-0 (as the result of
// the cast).
int
int
int
int
int
int
int
int
int
int
int
int
int
int
int
int
int
int
// Here we allow any outcome of the cast and this is good because there is a
// situation where this will fail. So if the user has written the code in this
// way, we assume they expect the cast to succeed.
// Note, this might need special handling if we track types of symbolic casts
// and use them for dynamic_cast handling.
int
;
void
void
// -----------------------------
// False positives/negatives.
// -----------------------------
// Due to symbolic regions not being typed.
int
// Does not work when we new an object.
int