Lines Matching refs:FCS
850 void checkPostStmt(const ObjCForCollectionStmt *FCS, CheckerContext &C) const;
887 const ObjCForCollectionStmt *FCS) { in checkCollectionNonNil() argument
891 SVal CollectionVal = C.getSVal(FCS->getCollection()); in checkCollectionNonNil()
912 const ObjCForCollectionStmt *FCS) { in checkElementNonNil() argument
917 if (!isKnownNonNilCollectionType(FCS->getCollection()->getType())) in checkElementNonNil()
921 const Stmt *Element = FCS->getElement(); in checkElementNonNil()
976 const ObjCForCollectionStmt *FCS, in assumeCollectionNonEmpty() argument
982 State->getSVal(FCS->getCollection(), C.getLocationContext()).getAsSymbol(); in assumeCollectionNonEmpty()
989 const ObjCForCollectionStmt *FCS) { in alreadyExecutedAtLeastOneLoopIteration() argument
995 if (BE->getSrc()->getLoopTarget() == FCS) in alreadyExecutedAtLeastOneLoopIteration()
1003 if (alreadyExecutedAtLeastOneLoopIteration(*I, FCS)) in alreadyExecutedAtLeastOneLoopIteration()
1010 void ObjCLoopChecker::checkPostStmt(const ObjCForCollectionStmt *FCS, in checkPostStmt() argument
1015 SVal CollectionSentinel = C.getSVal(FCS); in checkPostStmt()
1017 if (!alreadyExecutedAtLeastOneLoopIteration(C.getPredecessor(), FCS)) in checkPostStmt()
1018 State = assumeCollectionNonEmpty(C, State, FCS, /*Assumption*/false); in checkPostStmt()
1022 State = checkCollectionNonNil(C, State, FCS); in checkPostStmt()
1023 State = checkElementNonNil(C, State, FCS); in checkPostStmt()
1024 State = assumeCollectionNonEmpty(C, State, FCS, /*Assumption*/true); in checkPostStmt()