Lines Matching refs:StreamChecker

162 class StreamChecker;
163 using FnCheck = std::function<void(const StreamChecker *, const FnDescription *,
209 class StreamChecker : public Checker<check::PreCall, eval::Call, class
239 {{"fopen"}, {nullptr, &StreamChecker::evalFopen, ArgNone}},
241 {&StreamChecker::preFreopen, &StreamChecker::evalFreopen, 2}},
242 {{"tmpfile"}, {nullptr, &StreamChecker::evalFopen, ArgNone}},
244 {&StreamChecker::preDefault, &StreamChecker::evalFclose, 0}},
246 {&StreamChecker::preFread,
247 std::bind(&StreamChecker::evalFreadFwrite, _1, _2, _3, _4, true), 3}},
249 {&StreamChecker::preFwrite,
250 std::bind(&StreamChecker::evalFreadFwrite, _1, _2, _3, _4, false), 3}},
251 {{"fseek", 3}, {&StreamChecker::preFseek, &StreamChecker::evalFseek, 0}},
252 {{"ftell", 1}, {&StreamChecker::preDefault, nullptr, 0}},
253 {{"rewind", 1}, {&StreamChecker::preDefault, nullptr, 0}},
254 {{"fgetpos", 2}, {&StreamChecker::preDefault, nullptr, 0}},
255 {{"fsetpos", 2}, {&StreamChecker::preDefault, nullptr, 0}},
257 {&StreamChecker::preDefault, &StreamChecker::evalClearerr, 0}},
259 {&StreamChecker::preDefault,
260 std::bind(&StreamChecker::evalFeofFerror, _1, _2, _3, _4, ErrorFEof),
263 {&StreamChecker::preDefault,
264 std::bind(&StreamChecker::evalFeofFerror, _1, _2, _3, _4, ErrorFError),
266 {{"fileno", 1}, {&StreamChecker::preDefault, nullptr, 0}},
272 std::bind(&StreamChecker::evalSetFeofFerror, _1, _2, _3, _4, ErrorFEof),
276 std::bind(&StreamChecker::evalSetFeofFerror, _1, _2, _3, _4,
433 const ExplodedNode *StreamChecker::getAcquisitionSite(const ExplodedNode *N, in getAcquisitionSite()
458 void StreamChecker::checkPreCall(const CallEvent &Call, in checkPreCall()
467 bool StreamChecker::evalCall(const CallEvent &Call, CheckerContext &C) const { in evalCall()
479 void StreamChecker::evalFopen(const FnDescription *Desc, const CallEvent &Call, in evalFopen()
508 void StreamChecker::preFreopen(const FnDescription *Desc, const CallEvent &Call, in preFreopen()
520 void StreamChecker::evalFreopen(const FnDescription *Desc, in evalFreopen()
566 void StreamChecker::evalFclose(const FnDescription *Desc, const CallEvent &Call, in evalFclose()
587 void StreamChecker::preFread(const FnDescription *Desc, const CallEvent &Call, in preFread()
612 void StreamChecker::preFwrite(const FnDescription *Desc, const CallEvent &Call, in preFwrite()
630 void StreamChecker::evalFreadFwrite(const FnDescription *Desc, in evalFreadFwrite()
710 void StreamChecker::preFseek(const FnDescription *Desc, const CallEvent &Call, in preFseek()
728 void StreamChecker::evalFseek(const FnDescription *Desc, const CallEvent &Call, in evalFseek()
769 void StreamChecker::evalClearerr(const FnDescription *Desc, in evalClearerr()
790 void StreamChecker::evalFeofFerror(const FnDescription *Desc, in evalFeofFerror()
830 void StreamChecker::preDefault(const FnDescription *Desc, const CallEvent &Call, in preDefault()
845 void StreamChecker::evalSetFeofFerror(const FnDescription *Desc, in evalSetFeofFerror()
859 StreamChecker::ensureStreamNonNull(SVal StreamVal, const Expr *StreamE, in ensureStreamNonNull()
885 ProgramStateRef StreamChecker::ensureStreamOpened(SVal StreamVal, in ensureStreamOpened()
931 ProgramStateRef StreamChecker::ensureNoFilePositionIndeterminate( in ensureNoFilePositionIndeterminate()
977 StreamChecker::ensureFseekWhenceCorrect(SVal WhenceVal, CheckerContext &C, in ensureFseekWhenceCorrect()
999 void StreamChecker::reportFEofWarning(SymbolRef StreamSym, CheckerContext &C, in reportFEofWarning()
1015 StreamChecker::reportLeaks(const SmallVector<SymbolRef, 2> &LeakedSyms, in reportLeaks()
1053 void StreamChecker::checkDeadSymbols(SymbolReaper &SymReaper, in checkDeadSymbols()
1077 ProgramStateRef StreamChecker::checkPointerEscape( in checkPointerEscape()
1104 Mgr.registerChecker<StreamChecker>(); in registerStreamChecker()
1112 auto *Checker = Mgr.getChecker<StreamChecker>(); in registerStreamTesterChecker()