The change resulted in multiple issues on the buildbot, so it's not
ready for prime time. Only enable history tracking for tainted
data(which is experimental) for now.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156049
91177308-0d34-0410-b5e6-
96231b3b80d8
BinaryOperator::Opcode Op,
NonLoc LHS, NonLoc RHS,
QualType ResultTy) {
+ if (!State->isTainted(RHS) && !State->isTainted(LHS))
+ return UnknownVal();
+
const SymExpr *symLHS = LHS.getAsSymExpr();
const SymExpr *symRHS = RHS.getAsSymExpr();
return p->n.m; // expected-warning {{leak}}
}
-// Pointer arithmetic, returning an ElementRegion.
-void *radar11329382(unsigned bl) {
- void *ptr = malloc (16);
- ptr = ptr + (2 - bl);
- return ptr; // no warning
-}
-
void __assert_rtn(const char *, const char *, int, const char *) __attribute__((__noreturn__));
int strcmp(const char *, const char *);
char *a (void);