From 9de2f56323b707a5167636bd34e600c88b923730 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Sun, 5 Jul 2015 18:15:18 +0300 Subject: Fix analysis for BIND_EPXR nodes. --- src/analysis/collections.cpp | 2 +- src/analysis/expression.cpp | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'src/analysis') 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); } -- cgit v1.2.3-70-g09d2