diff options
author | Andrei Karas <akaras@inbox.ru> | 2015-07-03 19:44:32 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2015-07-03 19:44:32 +0300 |
commit | 9c9a7d9647b279bf1c58b000f700548902280e6c (patch) | |
tree | 527eddec0e2dea5705ecbaef9888748143bc6878 /src | |
parent | ade715ffe212a72abb84bc9e740685f10508cfbd (diff) | |
download | paranucker-9c9a7d9647b279bf1c58b000f700548902280e6c.tar.gz paranucker-9c9a7d9647b279bf1c58b000f700548902280e6c.tar.bz2 paranucker-9c9a7d9647b279bf1c58b000f700548902280e6c.tar.xz paranucker-9c9a7d9647b279bf1c58b000f700548902280e6c.zip |
Remove all variables from knownVars if both branches in if returned.
Diffstat (limited to 'src')
-rw-r--r-- | src/analysis/statement.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/analysis/statement.cpp b/src/analysis/statement.cpp index 71b5227..ec9ec7f 100644 --- a/src/analysis/statement.cpp +++ b/src/analysis/statement.cpp @@ -179,9 +179,11 @@ void analyseCondition(Node *node, if (wo2.isReturned && wo3.isReturned) { // add variable for ignore for all parent nodes except special like IF_STMT - FOR_EACH (it, wo.needCheckNullVars) + FOR_EACH (it, wo.knownVars) { wo.removeNullVarsAll.insert(it); + wo.knownNullVars.erase(it); + wo.knownNonNullVars.erase(it); } } |