Lines Matching refs:State

105   ProgramStateRef evalAssume(ProgramStateRef State, SVal Cond,
108 void printState(raw_ostream &Out, ProgramStateRef State, const char *NL,
300 ProgramStateRef State) { in getNullConstraint() argument
301 ConditionTruthVal Nullness = State->isNull(Val); in getNullConstraint()
336 ProgramStateRef State = N->getState(); in VisitNode() local
339 const NullabilityState *TrackedNullab = State->get<NullabilityMap>(Region); in VisitNode()
371 static bool checkValueAtLValForInvariantViolation(ProgramStateRef State, in checkValueAtLValForInvariantViolation() argument
386 auto StoredVal = State->getSVal(*RegionVal).getAs<loc::MemRegionVal>(); in checkValueAtLValForInvariantViolation()
390 if (getNullConstraint(*StoredVal, State) == NullConstraint::IsNull) in checkValueAtLValForInvariantViolation()
398 ProgramStateRef State, in checkParamsForPreconditionViolation() argument
404 SVal LV = State->getLValue(ParamDecl, LocCtxt); in checkParamsForPreconditionViolation()
405 if (checkValueAtLValForInvariantViolation(State, LV, in checkParamsForPreconditionViolation()
414 checkSelfIvarsForInvariantViolation(ProgramStateRef State, in checkSelfIvarsForInvariantViolation() argument
424 SVal SelfVal = State->getSVal(State->getRegion(SelfDecl, LocCtxt)); in checkSelfIvarsForInvariantViolation()
436 SVal LV = State->getLValue(IvarDecl, SelfVal); in checkSelfIvarsForInvariantViolation()
437 if (checkValueAtLValForInvariantViolation(State, LV, IvarDecl->getType())) { in checkSelfIvarsForInvariantViolation()
444 static bool checkInvariantViolation(ProgramStateRef State, ExplodedNode *N, in checkInvariantViolation() argument
446 if (State->get<InvariantViolated>()) in checkInvariantViolation()
464 if (checkParamsForPreconditionViolation(Params, State, LocCtxt) || in checkInvariantViolation()
465 checkSelfIvarsForInvariantViolation(State, LocCtxt)) { in checkInvariantViolation()
467 C.addTransition(State->set<InvariantViolated>(true), N); in checkInvariantViolation()
492 ProgramStateRef State = C.getState(); in checkDeadSymbols() local
493 NullabilityMapTy Nullabilities = State->get<NullabilityMap>(); in checkDeadSymbols()
500 State = State->remove<NullabilityMap>(I->first); in checkDeadSymbols()
506 PropertyAccessesMapTy PropertyAccesses = State->get<PropertyAccessesMap>(); in checkDeadSymbols()
512 State = State->remove<PropertyAccessesMap>(I->first); in checkDeadSymbols()
520 if (checkInvariantViolation(State, C.getPredecessor(), C)) in checkDeadSymbols()
522 C.addTransition(State); in checkDeadSymbols()
537 ProgramStateRef State = Event.SinkNode->getState(); in checkEvent() local
539 State->get<NullabilityMap>(Region); in checkEvent()
590 ProgramStateRef State = Context.getState(); in checkLocation() local
592 auto StoredVal = State->getSVal(Region).getAs<loc::MemRegionVal>(); in checkLocation()
602 if (ProgramStateRef NewState = State->assume(*StoredVal, true)) { in checkLocation()
627 ProgramStateRef State = C.getState(); in checkPreStmt() local
628 if (State->get<InvariantViolated>()) in checkPreStmt()
657 NullConstraint Nullness = getNullConstraint(*RetSVal, State); in checkPreStmt()
675 ExplodedNode *N = C.generateErrorNode(State, &Tag); in checkPreStmt()
693 State = State->set<InvariantViolated>(true); in checkPreStmt()
694 C.addTransition(State); in checkPreStmt()
703 State->get<NullabilityMap>(Region); in checkPreStmt()
711 ExplodedNode *N = C.addTransition(State, C.getPredecessor(), &Tag); in checkPreStmt()
724 State = State->set<NullabilityMap>(Region, in checkPreStmt()
727 C.addTransition(State); in checkPreStmt()
738 ProgramStateRef State = C.getState(); in checkPreCall() local
739 if (State->get<InvariantViolated>()) in checkPreCall()
742 ProgramStateRef OrigState = State; in checkPreCall()
761 NullConstraint Nullness = getNullConstraint(*ArgSVal, State); in checkPreCall()
775 ExplodedNode *N = C.generateErrorNode(State); in checkPreCall()
795 State->get<NullabilityMap>(Region); in checkPreCall()
805 ExplodedNode *N = C.addTransition(State); in checkPreCall()
817 ExplodedNode *N = C.addTransition(State); in checkPreCall()
827 if (State != OrigState) in checkPreCall()
828 C.addTransition(State); in checkPreCall()
846 ProgramStateRef State = C.getState(); in checkPostCall() local
847 if (State->get<InvariantViolated>()) in checkPostCall()
859 State = State->set<NullabilityMap>(Region, Nullability::Contradicted); in checkPostCall()
860 C.addTransition(State); in checkPostCall()
865 State->get<NullabilityMap>(Region); in checkPostCall()
869 State = State->set<NullabilityMap>(Region, Nullability::Nullable); in checkPostCall()
870 C.addTransition(State); in checkPostCall()
875 ProgramStateRef State) { in getReceiverNullability() argument
886 NullConstraint Nullness = getNullConstraint(*DefOrUnknown, State); in getReceiverNullability()
896 State->get<NullabilityMap>(SelfRegion); in getReceiverNullability()
907 ProgramStateRef NullabilityChecker::evalAssume(ProgramStateRef State, SVal Cond, in evalAssume() argument
909 PropertyAccessesMapTy PropertyAccesses = State->get<PropertyAccessesMap>(); in evalAssume()
914 ConditionTruthVal IsNonNull = State->isNonNull(I->second.Value); in evalAssume()
918 State = State->set<PropertyAccessesMap>(I->first, Replacement); in evalAssume()
921 State = State->remove<PropertyAccessesMap>(I->first); in evalAssume()
926 return State; in evalAssume()
941 ProgramStateRef State = C.getState(); in checkPostObjCMessage() local
942 if (State->get<InvariantViolated>()) in checkPostObjCMessage()
964 State = in checkPostObjCMessage()
965 State->set<NullabilityMap>(ReturnRegion, Nullability::Contradicted); in checkPostObjCMessage()
966 C.addTransition(State); in checkPostObjCMessage()
974 State = in checkPostObjCMessage()
975 State->set<NullabilityMap>(ReturnRegion, Nullability::Contradicted); in checkPostObjCMessage()
976 C.addTransition(State); in checkPostObjCMessage()
987 State = State->set<NullabilityMap>(ReturnRegion, in checkPostObjCMessage()
989 C.addTransition(State); in checkPostObjCMessage()
997 Nullability SelfNullability = getReceiverNullability(M, State); in checkPostObjCMessage()
1000 State->get<NullabilityMap>(ReturnRegion); in checkPostObjCMessage()
1015 State = State->set<NullabilityMap>( in checkPostObjCMessage()
1017 C.addTransition(State); in checkPostObjCMessage()
1048 State->get<PropertyAccessesMap>(Key); in checkPostObjCMessage()
1060 State = State->set<PropertyAccessesMap>( in checkPostObjCMessage()
1078 State = State->set<NullabilityMap>( in checkPostObjCMessage()
1080 C.addTransition(State); in checkPostObjCMessage()
1097 ProgramStateRef State = C.getState(); in checkPostStmt() local
1098 if (State->get<InvariantViolated>()) in checkPostStmt()
1115 NullConstraint Nullness = getNullConstraint(*RegionSVal, State); in checkPostStmt()
1117 State = State->set<NullabilityMap>(Region, Nullability::Contradicted); in checkPostStmt()
1118 C.addTransition(State); in checkPostStmt()
1124 State->get<NullabilityMap>(Region); in checkPostStmt()
1129 State = State->set<NullabilityMap>(Region, in checkPostStmt()
1131 C.addTransition(State); in checkPostStmt()
1137 State = State->set<NullabilityMap>(Region, Nullability::Contradicted); in checkPostStmt()
1138 C.addTransition(State); in checkPostStmt()
1221 ProgramStateRef State = C.getState(); in checkBind() local
1222 if (State->get<InvariantViolated>()) in checkBind()
1229 NullConstraint RhsNullness = getNullConstraint(*ValDefOrUnknown, State); in checkBind()
1253 ExplodedNode *N = C.generateErrorNode(State, &Tag); in checkBind()
1274 State = State->set<InvariantViolated>(true); in checkBind()
1275 C.addTransition(State); in checkBind()
1287 State->get<NullabilityMap>(ValueRegion); in checkBind()
1296 ExplodedNode *N = C.addTransition(State, C.getPredecessor(), &Tag); in checkBind()
1311 State = State->set<NullabilityMap>( in checkBind()
1313 C.addTransition(State); in checkBind()
1319 State = State->set<NullabilityMap>( in checkBind()
1321 C.addTransition(State); in checkBind()
1325 void NullabilityChecker::printState(raw_ostream &Out, ProgramStateRef State, in printState() argument
1328 NullabilityMapTy B = State->get<NullabilityMap>(); in printState()
1330 if (State->get<InvariantViolated>()) in printState()
1337 if (!State->get<InvariantViolated>()) in printState()