From 8653c4b3a975d9cbc8b81f0843fd263f0e073141 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Marjam=C3=A4ki?= Date: Fri, 19 Jun 2020 18:05:56 +0200 Subject: [PATCH] ExprEngine; Fix uninitialized value FP in subfunction when argument is passed by value --- lib/exprengine.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/exprengine.cpp b/lib/exprengine.cpp index 04cdad1b2..73a288863 100644 --- a/lib/exprengine.cpp +++ b/lib/exprengine.cpp @@ -1578,8 +1578,11 @@ static ExprEngine::ValuePtr executeFunctionCall(const Token *tok, Data &data) const Scope *functionScope = function->functionScope; int argnr = 0; for (const Variable &arg: function->argumentList) { - if (argnr < argValues.size()) + if (argnr < argValues.size()) { + if (!arg.isReference()) + argValues[argnr] = translateUninitValueToRange(argValues[argnr], arg.valueType(), data); data.assignValue(function->functionScope->bodyStart, arg.declarationId(), argValues[argnr]); + } // TODO default values! argnr++; }