// Are we tracking the argument?
if ( !ArgReg || ArgReg != R)
- return 0;
+ continue;
// Check the function parameter type.
const ParmVarDecl *ParamDecl = *I;
if (!(T->isAnyPointerType() || T->isReferenceType())) {
// Function can only change the value passed in by address.
- return 0;
+ continue;
}
// If it is a const pointer value, the function does not intend to
// change the value.
if (T->getPointeeType().isConstQualified())
- return 0;
+ continue;
// Mark the call site (LocationContext) as interesting if the value of the
// argument is undefined or '0'/'NULL'.
c++;
return;
}
-void foo(int *x, int c) {
+void foo(int c, int *x) {
if (c)
//expected-note@-1{{Assuming 'c' is not equal to 0}}
//expected-note@-2{{Taking true branch}}
int use(int c) {
int xx; //expected-note{{Variable 'xx' declared without an initial value}}
int *y = &xx;
- foo (y, c);
+ foo (c, y);
//expected-note@-1{{Calling 'foo'}}
//expected-note@-2{{Returning from 'foo'}}
foo_irrelevant(c);
RefList = glob.glob(RefDir + "/*")
NewList = glob.glob(NewDir + "/*")
- print " Comparing Results: %s" % (os.path.join(RefDir, LogFolderName))
- print " Comparing Results: %s" % (os.path.join(NewDir, LogFolderName))
-
# Log folders are also located in the results dir, so ignore them.
RefList.remove(os.path.join(RefDir, LogFolderName))
NewList.remove(os.path.join(NewDir, LogFolderName))