summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2015-06-21 02:07:06 +0300
committerAndrei Karas <akaras@inbox.ru>2015-06-21 02:07:06 +0300
commit3fb2c2082b2be1c1eb82ed4aa421329d15deabda (patch)
treecafc3639e17ca6578221a3c6bf13f43b06f42f06
parent67b886f2f27e1de8805172b46328a0eddfcc7b62 (diff)
downloadparanucker-3fb2c2082b2be1c1eb82ed4aa421329d15deabda.tar.gz
paranucker-3fb2c2082b2be1c1eb82ed4aa421329d15deabda.tar.bz2
paranucker-3fb2c2082b2be1c1eb82ed4aa421329d15deabda.tar.xz
paranucker-3fb2c2082b2be1c1eb82ed4aa421329d15deabda.zip
Fix COND_EXPR if in both branches return happend.
-rw-r--r--src/analysis/expression.cpp2
-rw-r--r--src/logger.cpp2
2 files changed, 3 insertions, 1 deletions
diff --git a/src/analysis/expression.cpp b/src/analysis/expression.cpp
index 9f21577..5885d56 100644
--- a/src/analysis/expression.cpp
+++ b/src/analysis/expression.cpp
@@ -291,7 +291,7 @@ void analyseCondExpr(CondExprNode *node, const WalkItem &wi, WalkItem &wo)
// add variable for ignore for all parent nodes except special like IF_STMT
FOR_EACH (std::set<std::string>::const_iterator,
it,
- wo1.checkedNullVars)
+ wo.checkNullVars)
{
wo.removeNullVars.insert(*it);
}
diff --git a/src/logger.cpp b/src/logger.cpp
index 0116a36..ff58714 100644
--- a/src/logger.cpp
+++ b/src/logger.cpp
@@ -205,6 +205,8 @@ void dumpWI(Node *const node,
Log::log(" clean");
if (wi.uselessExpr)
Log::log(" useless");
+ if (wi.isReturned)
+ Log::log(" returned");
Log::log(" checkedNullVars:");
FOR_EACH (std::set<std::string>::const_iterator,
it,