Skip to content

Commit e11567a

Browse files
ptaeuberOpenModelica-Hudson
authored andcommitted
Fix vararrayList
1 parent 63b77e7 commit e11567a

File tree

1 file changed

+4
-14
lines changed

1 file changed

+4
-14
lines changed

Compiler/BackEnd/BackendVariable.mo

Lines changed: 4 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2013,22 +2013,12 @@ end vararrayDelete;
20132013
protected function vararrayList
20142014
"Returns a list of all the variables in the variable array."
20152015
input BackendDAE.VariableArray inArray;
2016-
output list<BackendDAE.Var> outVars = {};
2016+
output list<BackendDAE.Var> outVars;
20172017
protected
2018-
Integer num_elems;
2019-
array<Option<BackendDAE.Var>> arr;
2020-
BackendDAE.Var var;
2021-
Option<BackendDAE.Var> ovar;
2018+
array<Option<BackendDAE.Var>> varOptArr;
20222019
algorithm
2023-
BackendDAE.VARIABLE_ARRAY(numberOfElements=num_elems, varOptArr=arr) := inArray;
2024-
2025-
for i in num_elems:-1:1 loop
2026-
ovar := arr[i];
2027-
if isSome(ovar) then
2028-
SOME(var) := ovar;
2029-
outVars := var :: outVars;
2030-
end if;
2031-
end for;
2020+
BackendDAE.VARIABLE_ARRAY(varOptArr=varOptArr) := inArray;
2021+
outVars := list(Util.getOption(varOptArr[i]) for i guard isSome(varOptArr[i]) in 1:arrayLength(varOptArr));
20322022
end vararrayList;
20332023

20342024
/* =======================================================

0 commit comments

Comments
 (0)