Lines Matching refs:Call
63 const CallEvent &Call,
70 bool guaranteedNotToCloseFile(const CallEvent &Call) const;
76 void checkPostCall(const CallEvent &Call, CheckerContext &C) const;
78 void checkPreCall(const CallEvent &Call, CheckerContext &C) const;
85 const CallEvent *Call,
121 void SimpleStreamChecker::checkPostCall(const CallEvent &Call, in checkPostCall() argument
125 if (!Call.isGlobalCFunction()) in checkPostCall()
128 if (Call.getCalleeIdentifier() != IIfopen) in checkPostCall()
132 SymbolRef FileDesc = Call.getReturnValue().getAsSymbol(); in checkPostCall()
142 void SimpleStreamChecker::checkPreCall(const CallEvent &Call, in checkPreCall() argument
146 if (!Call.isGlobalCFunction()) in checkPreCall()
149 if (Call.getCalleeIdentifier() != IIfclose) in checkPreCall()
152 if (Call.getNumArgs() != 1) in checkPreCall()
156 SymbolRef FileDesc = Call.getArgSVal(0).getAsSymbol(); in checkPreCall()
164 reportDoubleClose(FileDesc, Call, C); in checkPreCall()
209 const CallEvent &Call, in reportDoubleClose() argument
220 R->addRange(Call.getSourceRange()); in reportDoubleClose()
239 bool SimpleStreamChecker::guaranteedNotToCloseFile(const CallEvent &Call) const{ in guaranteedNotToCloseFile()
241 if (!Call.isInSystemHeader()) in guaranteedNotToCloseFile()
245 if (Call.argumentsMayEscape()) in guaranteedNotToCloseFile()
259 const CallEvent *Call, in checkPointerEscape() argument
264 guaranteedNotToCloseFile(*Call)) { in checkPointerEscape()