diff options
author | Ted Kremenek <kremenek@apple.com> | 2010-09-03 01:07:04 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2010-09-03 01:07:04 +0000 |
commit | 8046037b8342f46197bbee79df83a54b873ae6e6 (patch) | |
tree | 55f03bb69196ee06197a698d7cad38ef5c42a36e | |
parent | 6d4c022695c2d780ccb63ce43a50588412b80813 (diff) |
Remove bogus assertions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112931 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Checker/StreamChecker.cpp | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/lib/Checker/StreamChecker.cpp b/lib/Checker/StreamChecker.cpp index 87874e315a..5bc075f6bf 100644 --- a/lib/Checker/StreamChecker.cpp +++ b/lib/Checker/StreamChecker.cpp @@ -235,15 +235,16 @@ void StreamChecker::OpenFileAux(CheckerContext &C, const CallExpr *CE) { const GRState *stateNotNull, *stateNull; llvm::tie(stateNotNull, stateNull) = CM.AssumeDual(state, RetVal); - SymbolRef Sym = RetVal.getAsSymbol(); - assert(Sym); - - // if RetVal is not NULL, set the symbol's state to Opened. - stateNotNull = stateNotNull->set<StreamState>(Sym,StreamState::getOpened(CE)); - stateNull = stateNull->set<StreamState>(Sym, StreamState::getOpenFailed(CE)); - - C.addTransition(stateNotNull); - C.addTransition(stateNull); + if (SymbolRef Sym = RetVal.getAsSymbol()) { + // if RetVal is not NULL, set the symbol's state to Opened. + stateNotNull = + stateNotNull->set<StreamState>(Sym,StreamState::getOpened(CE)); + stateNull = + stateNull->set<StreamState>(Sym, StreamState::getOpenFailed(CE)); + + C.addTransition(stateNotNull); + C.addTransition(stateNull); + } } void StreamChecker::Fclose(CheckerContext &C, const CallExpr *CE) { @@ -370,7 +371,8 @@ const GRState *StreamChecker::CheckDoubleClose(const CallExpr *CE, const GRState *state, CheckerContext &C) { SymbolRef Sym = state->getSVal(CE->getArg(0)).getAsSymbol(); - assert(Sym); + if (!Sym) + return state; const StreamState *SS = state->get<StreamState>(Sym); |