diff options
-rw-r--r-- | src/analysis/expression.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/analysis/expression.cpp b/src/analysis/expression.cpp index 2c0dba3..eacf457 100644 --- a/src/analysis/expression.cpp +++ b/src/analysis/expression.cpp @@ -487,8 +487,11 @@ void analyseCallExpr(CallExprNode *node, const WalkItem &wi, WalkItem &wo) if (function == ARRAY_REF) { ArrayRefNode *arrRef = static_cast<ArrayRefNode*>(function); - if (!arrRef->args.empty() && arrRef->args[0] == COMPONENT_REF) + if (!arrRef->args.empty() && + (arrRef->args[0] == COMPONENT_REF || VAR_DECL)) + { function = arrRef->args[0]; + } } reportParmDeclNullPointer(node, function, wi); if (!getVariableName(function).empty()) |