From 1a676ead565159f8ea036e828ebc43ac5bc881f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Per=20=C3=96stlund?= Date: Fri, 12 Jun 2020 14:32:33 +0200 Subject: [PATCH] [NF] Fix evaluation of call return type dimensions. --- OMCompiler/Compiler/NFFrontEnd/NFEvalConstants.mo | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/OMCompiler/Compiler/NFFrontEnd/NFEvalConstants.mo b/OMCompiler/Compiler/NFFrontEnd/NFEvalConstants.mo index 4a627782a71..ba3ab03ecbc 100644 --- a/OMCompiler/Compiler/NFFrontEnd/NFEvalConstants.mo +++ b/OMCompiler/Compiler/NFFrontEnd/NFEvalConstants.mo @@ -173,6 +173,16 @@ algorithm then outExp; + // TODO: The return type of calls can have dimensions that reference + // function parameters, and thus can't be evaluated. This should be + // fixed so that the return type reference the input arguments instead. + case Expression.CALL() + algorithm + (outExp, outChanged) := Expression.mapFoldShallow(exp, + function evaluateExpTraverser(info = info), false); + then + outExp; + else algorithm (outExp, outChanged) := Expression.mapFoldShallow(exp,