void checkEndPath(EndOfFunctionNodeBuilder &B, ExprEngine &Eng) const;
private:
- typedef std::pair<SymbolRef, const AllocationState&> AllocationPair;
+ typedef std::pair<SymbolRef, const AllocationState*> AllocationPair;
typedef llvm::SmallVector<AllocationPair, 2> AllocationPairVec;
enum APIKind {
BugReport *MacOSKeychainAPIChecker::
generateAllocatedDataNotReleasedReport(const AllocationPair &AP,
ExplodedNode *N) const {
- const ADFunctionInfo &FI = FunctionsToTrack[AP.second.AllocatorIdx];
+ const ADFunctionInfo &FI = FunctionsToTrack[AP.second->AllocatorIdx];
initBugType();
llvm::SmallString<70> sbuf;
llvm::raw_svector_ostream os(sbuf);
if (State->getSymVal(I->first) ||
definitelyReturnedError(I->second.RetValue, State, C.getSValBuilder()))
continue;
- Errors.push_back(std::make_pair(I->first, I->second));
+ Errors.push_back(std::make_pair(I->first, &I->second));
}
if (!Changed)
return;
Eng.getSValBuilder())) {
continue;
}
- Errors.push_back(std::make_pair(I->first, I->second));
+ Errors.push_back(std::make_pair(I->first, &I->second));
}
// If no change, do not generate a new state.