Lines Matching refs:Call

164 SVal getStreamArg(const FnDescription *Desc, const CallEvent &Call) {  in getStreamArg()  argument
167 return Call.getArgSVal(Desc->StreamArgNo); in getStreamArg()
196 class StreamChecker : public Checker<check::PreCall, eval::Call,
211 void checkPreCall(const CallEvent &Call, CheckerContext &C) const;
212 bool evalCall(const CallEvent &Call, CheckerContext &C) const;
216 const CallEvent *Call,
266 void evalFopen(const FnDescription *Desc, const CallEvent &Call,
269 void preFreopen(const FnDescription *Desc, const CallEvent &Call,
271 void evalFreopen(const FnDescription *Desc, const CallEvent &Call,
274 void evalFclose(const FnDescription *Desc, const CallEvent &Call,
277 void preFread(const FnDescription *Desc, const CallEvent &Call,
280 void preFwrite(const FnDescription *Desc, const CallEvent &Call,
283 void evalFreadFwrite(const FnDescription *Desc, const CallEvent &Call,
286 void preFseek(const FnDescription *Desc, const CallEvent &Call,
288 void evalFseek(const FnDescription *Desc, const CallEvent &Call,
291 void preDefault(const FnDescription *Desc, const CallEvent &Call,
294 void evalClearerr(const FnDescription *Desc, const CallEvent &Call,
297 void evalFeofFerror(const FnDescription *Desc, const CallEvent &Call,
301 void evalSetFeofFerror(const FnDescription *Desc, const CallEvent &Call,
349 const FnDescription *lookupFn(const CallEvent &Call) const { in lookupFn()
352 if (!Call.isGlobalCFunction()) in lookupFn()
354 for (auto P : Call.parameters()) { in lookupFn()
360 return FnDescriptions.lookup(Call); in lookupFn()
421 void StreamChecker::checkPreCall(const CallEvent &Call, in checkPreCall() argument
423 const FnDescription *Desc = lookupFn(Call); in checkPreCall()
427 Desc->PreFn(this, Desc, Call, C); in checkPreCall()
430 bool StreamChecker::evalCall(const CallEvent &Call, CheckerContext &C) const { in evalCall() argument
431 const FnDescription *Desc = lookupFn(Call); in evalCall()
433 Desc = FnTestDescriptions.lookup(Call); in evalCall()
437 Desc->EvalFn(this, Desc, Call, C); in evalCall()
442 void StreamChecker::evalFopen(const FnDescription *Desc, const CallEvent &Call, in evalFopen() argument
445 const CallExpr *CE = dyn_cast_or_null<CallExpr>(Call.getOriginExpr()); in evalFopen()
471 void StreamChecker::preFreopen(const FnDescription *Desc, const CallEvent &Call, in preFreopen() argument
475 State = ensureStreamNonNull(getStreamArg(Desc, Call), C, State); in preFreopen()
483 const CallEvent &Call, in evalFreopen() argument
487 auto *CE = dyn_cast_or_null<CallExpr>(Call.getOriginExpr()); in evalFreopen()
492 getStreamArg(Desc, Call).getAs<DefinedSVal>(); in evalFreopen()
527 void StreamChecker::evalFclose(const FnDescription *Desc, const CallEvent &Call, in evalFclose() argument
530 SymbolRef Sym = getStreamArg(Desc, Call).getAsSymbol(); in evalFclose()
548 void StreamChecker::preFread(const FnDescription *Desc, const CallEvent &Call, in preFread() argument
551 SVal StreamVal = getStreamArg(Desc, Call); in preFread()
572 void StreamChecker::preFwrite(const FnDescription *Desc, const CallEvent &Call, in preFwrite() argument
575 SVal StreamVal = getStreamArg(Desc, Call); in preFwrite()
590 const CallEvent &Call, CheckerContext &C, in evalFreadFwrite() argument
593 SymbolRef StreamSym = getStreamArg(Desc, Call).getAsSymbol(); in evalFreadFwrite()
597 const CallExpr *CE = dyn_cast_or_null<CallExpr>(Call.getOriginExpr()); in evalFreadFwrite()
601 Optional<NonLoc> SizeVal = Call.getArgSVal(1).getAs<NonLoc>(); in evalFreadFwrite()
604 Optional<NonLoc> NMembVal = Call.getArgSVal(2).getAs<NonLoc>(); in evalFreadFwrite()
670 void StreamChecker::preFseek(const FnDescription *Desc, const CallEvent &Call, in preFseek() argument
673 SVal StreamVal = getStreamArg(Desc, Call); in preFseek()
680 State = ensureFseekWhenceCorrect(Call.getArgSVal(2), C, State); in preFseek()
687 void StreamChecker::evalFseek(const FnDescription *Desc, const CallEvent &Call, in evalFseek() argument
690 SymbolRef StreamSym = getStreamArg(Desc, Call).getAsSymbol(); in evalFseek()
694 const CallExpr *CE = dyn_cast_or_null<CallExpr>(Call.getOriginExpr()); in evalFseek()
729 const CallEvent &Call, in evalClearerr() argument
732 SymbolRef StreamSym = getStreamArg(Desc, Call).getAsSymbol(); in evalClearerr()
750 const CallEvent &Call, CheckerContext &C, in evalFeofFerror() argument
753 SymbolRef StreamSym = getStreamArg(Desc, Call).getAsSymbol(); in evalFeofFerror()
757 const CallExpr *CE = dyn_cast_or_null<CallExpr>(Call.getOriginExpr()); in evalFeofFerror()
789 void StreamChecker::preDefault(const FnDescription *Desc, const CallEvent &Call, in preDefault() argument
792 SVal StreamVal = getStreamArg(Desc, Call); in preDefault()
804 const CallEvent &Call, CheckerContext &C, in evalSetFeofFerror() argument
807 SymbolRef StreamSym = getStreamArg(Desc, Call).getAsSymbol(); in evalSetFeofFerror()
1031 const CallEvent *Call, PointerEscapeKind Kind) const { in checkPointerEscape() argument
1035 if (Kind == PSK_DirectEscapeOnCall && Call->isInSystemHeader()) in checkPointerEscape()