summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2015-06-27 16:34:01 +0300
committerAndrei Karas <akaras@inbox.ru>2015-06-27 16:34:01 +0300
commit711a90525c5405b358a19a653c86c5427aa7fa09 (patch)
tree1c0c1f8b1eb79c9843434bcaf899ff8bdc5351e8
parentc28a6c35e2ce919e78bc0091f182b78cf1567931 (diff)
downloadparanucker-711a90525c5405b358a19a653c86c5427aa7fa09.tar.gz
paranucker-711a90525c5405b358a19a653c86c5427aa7fa09.tar.bz2
paranucker-711a90525c5405b358a19a653c86c5427aa7fa09.tar.xz
paranucker-711a90525c5405b358a19a653c86c5427aa7fa09.zip
Dont check first parameter in calling function by reference.
-rw-r--r--src/analysis/expression.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/analysis/expression.cpp b/src/analysis/expression.cpp
index eacf457..1711de2 100644
--- a/src/analysis/expression.cpp
+++ b/src/analysis/expression.cpp
@@ -32,6 +32,7 @@
#include "nodes/expr/cleanuppoint_expr.h"
#include "nodes/expr/compound_expr.h"
#include "nodes/expr/cond_expr.h"
+#include "nodes/expr/convert_expr.h"
#include "nodes/expr/decl_expr.h"
#include "nodes/expr/eq_expr.h"
#include "nodes/expr/init_expr.h"
@@ -493,6 +494,12 @@ void analyseCallExpr(CallExprNode *node, const WalkItem &wi, WalkItem &wo)
function = arrRef->args[0];
}
}
+ if (function == CONVERT_EXPR)
+ {
+ ConvertExprNode *convExpr = static_cast<ConvertExprNode*>(function);
+ if (!convExpr->args.empty())
+ function = convExpr->args[0];
+ }
reportParmDeclNullPointer(node, function, wi);
if (!getVariableName(function).empty())
enableCheck = false;