Lines Matching refs:State
96 } State; member
114 : LastOperation(L), State(S), ErrorState(ES), in StreamState()
118 assert((State == Opened || ErrorState.isNoError()) && in StreamState()
122 bool isOpened() const { return State == Opened; } in isOpened()
123 bool isClosed() const { return State == Closed; } in isClosed()
124 bool isOpenFailed() const { return State == OpenFailed; } in isOpenFailed()
129 return LastOperation == X.LastOperation && State == X.State && in operator ==()
148 ID.AddInteger(State); in Profile()
193 ProgramStateRef bindAndAssumeTrue(ProgramStateRef State, CheckerContext &C, in bindAndAssumeTrue() argument
196 State = State->BindExpr(CE, C.getLocationContext(), RetVal); in bindAndAssumeTrue()
197 State = State->assume(RetVal, true); in bindAndAssumeTrue()
198 assert(State && "Assumption on new value should not fail."); in bindAndAssumeTrue()
199 return State; in bindAndAssumeTrue()
202 ProgramStateRef bindInt(uint64_t Value, ProgramStateRef State, in bindInt() argument
204 State = State->BindExpr(CE, C.getLocationContext(), in bindInt()
206 return State; in bindInt()
227 ProgramStateRef checkPointerEscape(ProgramStateRef State,
326 ProgramStateRef State) const;
332 ProgramStateRef State) const;
342 ProgramStateRef State) const;
349 ProgramStateRef State) const;
356 ProgramStateRef State) const;
436 ProgramStateRef State = N->getState(); in getAcquisitionSite() local
439 if (!State->get<StreamMap>(StreamSym)) in getAcquisitionSite()
444 State = N->getState(); in getAcquisitionSite()
445 if (!State->get<StreamMap>(StreamSym)) in getAcquisitionSite()
481 ProgramStateRef State = C.getState(); in evalFopen() local
490 State = State->BindExpr(CE, C.getLocationContext(), RetVal); in evalFopen()
496 C.getConstraintManager().assumeDual(State, RetVal); in evalFopen()
511 ProgramStateRef State = C.getState(); in preFreopen() local
512 State = ensureStreamNonNull(getStreamArg(Desc, Call), in preFreopen()
513 Call.getArgExpr(Desc->StreamArgNo), C, State); in preFreopen()
514 if (!State) in preFreopen()
517 C.addTransition(State); in preFreopen()
523 ProgramStateRef State = C.getState(); in evalFreopen() local
541 if (!State->get<StreamMap>(StreamSym)) in evalFreopen()
549 State->BindExpr(CE, C.getLocationContext(), *StreamVal); in evalFreopen()
553 State->BindExpr(CE, C.getLocationContext(), in evalFreopen()
568 ProgramStateRef State = C.getState(); in evalFclose() local
573 const StreamState *SS = State->get<StreamMap>(Sym); in evalFclose()
582 State = State->set<StreamMap>(Sym, StreamState::getClosed(Desc)); in evalFclose()
584 C.addTransition(State); in evalFclose()
589 ProgramStateRef State = C.getState(); in preFread() local
591 State = ensureStreamNonNull(StreamVal, Call.getArgExpr(Desc->StreamArgNo), C, in preFread()
592 State); in preFread()
593 if (!State) in preFread()
595 State = ensureStreamOpened(StreamVal, C, State); in preFread()
596 if (!State) in preFread()
598 State = ensureNoFilePositionIndeterminate(StreamVal, C, State); in preFread()
599 if (!State) in preFread()
603 if (Sym && State->get<StreamMap>(Sym)) { in preFread()
604 const StreamState *SS = State->get<StreamMap>(Sym); in preFread()
606 reportFEofWarning(Sym, C, State); in preFread()
608 C.addTransition(State); in preFread()
614 ProgramStateRef State = C.getState(); in preFwrite() local
616 State = ensureStreamNonNull(StreamVal, Call.getArgExpr(Desc->StreamArgNo), C, in preFwrite()
617 State); in preFwrite()
618 if (!State) in preFwrite()
620 State = ensureStreamOpened(StreamVal, C, State); in preFwrite()
621 if (!State) in preFwrite()
623 State = ensureNoFilePositionIndeterminate(StreamVal, C, State); in preFwrite()
624 if (!State) in preFwrite()
627 C.addTransition(State); in preFwrite()
633 ProgramStateRef State = C.getState(); in evalFreadFwrite() local
649 const StreamState *OldSS = State->get<StreamMap>(StreamSym); in evalFreadFwrite()
661 if (State->isNull(*SizeVal).isConstrainedTrue() || in evalFreadFwrite()
662 State->isNull(*NMembVal).isConstrainedTrue()) { in evalFreadFwrite()
665 State = bindInt(0, State, C, CE); in evalFreadFwrite()
666 C.addTransition(State); in evalFreadFwrite()
674 State->BindExpr(CE, C.getLocationContext(), *NMembVal); in evalFreadFwrite()
683 State->BindExpr(CE, C.getLocationContext(), RetVal); in evalFreadFwrite()
686 .evalBinOpNN(State, BO_LT, RetVal, *NMembVal, C.getASTContext().IntTy) in evalFreadFwrite()
712 ProgramStateRef State = C.getState(); in preFseek() local
714 State = ensureStreamNonNull(StreamVal, Call.getArgExpr(Desc->StreamArgNo), C, in preFseek()
715 State); in preFseek()
716 if (!State) in preFseek()
718 State = ensureStreamOpened(StreamVal, C, State); in preFseek()
719 if (!State) in preFseek()
721 State = ensureFseekWhenceCorrect(Call.getArgSVal(2), C, State); in preFseek()
722 if (!State) in preFseek()
725 C.addTransition(State); in preFseek()
730 ProgramStateRef State = C.getState(); in evalFseek() local
740 if (!State->get<StreamMap>(StreamSym)) in evalFseek()
746 State = State->BindExpr(CE, C.getLocationContext(), RetVal); in evalFseek()
752 C.getConstraintManager().assumeDual(State, RetVal); in evalFseek()
772 ProgramStateRef State = C.getState(); in evalClearerr() local
777 const StreamState *SS = State->get<StreamMap>(StreamSym); in evalClearerr()
784 State = State->set<StreamMap>( in evalClearerr()
787 C.addTransition(State); in evalClearerr()
793 ProgramStateRef State = C.getState(); in evalFeofFerror() local
802 const StreamState *SS = State->get<StreamMap>(StreamSym); in evalFeofFerror()
812 ProgramStateRef TrueState = bindAndAssumeTrue(State, C, CE); in evalFeofFerror()
822 ProgramStateRef FalseState = bindInt(0, State, C, CE); in evalFeofFerror()
832 ProgramStateRef State = C.getState(); in preDefault() local
834 State = ensureStreamNonNull(StreamVal, Call.getArgExpr(Desc->StreamArgNo), C, in preDefault()
835 State); in preDefault()
836 if (!State) in preDefault()
838 State = ensureStreamOpened(StreamVal, C, State); in preDefault()
839 if (!State) in preDefault()
842 C.addTransition(State); in preDefault()
848 ProgramStateRef State = C.getState(); in evalSetFeofFerror() local
851 const StreamState *SS = State->get<StreamMap>(StreamSym); in evalSetFeofFerror()
853 State = State->set<StreamMap>( in evalSetFeofFerror()
855 C.addTransition(State); in evalSetFeofFerror()
861 ProgramStateRef State) const { in ensureStreamNonNull()
864 return State; in ensureStreamNonNull()
887 ProgramStateRef State) const { in ensureStreamOpened()
890 return State; in ensureStreamOpened()
892 const StreamState *SS = State->get<StreamMap>(Sym); in ensureStreamOpened()
894 return State; in ensureStreamOpened()
907 return State; in ensureStreamOpened()
925 return State; in ensureStreamOpened()
928 return State; in ensureStreamOpened()
932 SVal StreamVal, CheckerContext &C, ProgramStateRef State) const { in ensureNoFilePositionIndeterminate()
940 return State; in ensureNoFilePositionIndeterminate()
942 const StreamState *SS = State->get<StreamMap>(Sym); in ensureNoFilePositionIndeterminate()
944 return State; in ensureNoFilePositionIndeterminate()
953 ExplodedNode *N = C.generateNonFatalErrorNode(State); in ensureNoFilePositionIndeterminate()
959 return State->set<StreamMap>( in ensureNoFilePositionIndeterminate()
965 ExplodedNode *N = C.generateErrorNode(State); in ensureNoFilePositionIndeterminate()
973 return State; in ensureNoFilePositionIndeterminate()
978 ProgramStateRef State) const { in ensureFseekWhenceCorrect()
981 return State; in ensureFseekWhenceCorrect()
985 return State; in ensureFseekWhenceCorrect()
987 if (ExplodedNode *N = C.generateNonFatalErrorNode(State)) { in ensureFseekWhenceCorrect()
996 return State; in ensureFseekWhenceCorrect()
1000 ProgramStateRef State) const { in reportFEofWarning()
1001 if (ExplodedNode *N = C.generateNonFatalErrorNode(State)) { in reportFEofWarning()
1011 C.addTransition(State); in reportFEofWarning()
1055 ProgramStateRef State = C.getState(); in checkDeadSymbols() local
1059 const StreamMapTy &Map = State->get<StreamMap>(); in checkDeadSymbols()
1067 State = State->remove<StreamMap>(Sym); in checkDeadSymbols()
1074 C.addTransition(State, N); in checkDeadSymbols()
1078 ProgramStateRef State, const InvalidatedSymbols &Escaped, in checkPointerEscape() argument
1084 return State; in checkPointerEscape()
1094 State = State->remove<StreamMap>(Sym); in checkPointerEscape()
1096 return State; in checkPointerEscape()