diff options
author | Andrei Karas <akaras@inbox.ru> | 2015-07-05 18:15:18 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2015-07-05 18:15:18 +0300 |
commit | 9de2f56323b707a5167636bd34e600c88b923730 (patch) | |
tree | 05749256149cb043c6e52de53bea4dd3c47a1b97 /src | |
parent | 25041168913c6a1dd46af2089b9244e5447674e9 (diff) | |
download | paranucker-9de2f56323b707a5167636bd34e600c88b923730.tar.gz paranucker-9de2f56323b707a5167636bd34e600c88b923730.tar.bz2 paranucker-9de2f56323b707a5167636bd34e600c88b923730.tar.xz paranucker-9de2f56323b707a5167636bd34e600c88b923730.zip |
Fix analysis for BIND_EPXR nodes.
Diffstat (limited to 'src')
-rw-r--r-- | src/analysis/collections.cpp | 2 | ||||
-rw-r--r-- | src/analysis/expression.cpp | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/analysis/collections.cpp b/src/analysis/collections.cpp index 50c4ff3..3d4f5e2 100644 --- a/src/analysis/collections.cpp +++ b/src/analysis/collections.cpp @@ -149,7 +149,7 @@ void addLinkedVar(WalkItem &wi, std::string parent, const std::string &var) { - //Log::log("add var\n"); + //Log::log("add var: %s, %s\n", parent.c_str(), var.c_str()); if (isIn(parent, wi.addNullVars) || isIn(parent, wi.needCheckNullVars)) { diff --git a/src/analysis/expression.cpp b/src/analysis/expression.cpp index 88ca3d7..53f13c5 100644 --- a/src/analysis/expression.cpp +++ b/src/analysis/expression.cpp @@ -548,7 +548,7 @@ void analyseBindExpr(BindExprNode *node, const WalkItem &wi, WalkItem &wo) walkTree(node->args[2], wi2, wo); } - handleSetVarDecl(node->args[0], wi, wo); + handleSetVarDecl(node->args[0], wi2, wo); wo.stopWalking = true; } @@ -714,7 +714,7 @@ void handleSetVar(Node *node1, const std::string var2 = getVariableName(node2); if (var1.empty() || var2.empty()) return; - if (isNotIn(var2, wi.needCheckNullVars)) + if (isNotIn(var2, wi.knownVars)) return; addLinkedVar(wo, var2, var1); } |