Skip to content

Commit 0eb2422

Browse files
committed
- Introduced "TearingSelect" as variable attribute in BackendDAE.VAR
git-svn-id: https://openmodelica.org/svn/OpenModelica/trunk@23434 f25d12d1-65f4-0310-ae8a-bbce733d8d8e
1 parent 7930e50 commit 0eb2422

17 files changed

+194
-116
lines changed

Compiler/BackEnd/BackendDAE.mo

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -199,6 +199,7 @@ uniontype Var "variables"
199199
.DAE.InstDims arryDim "array dimensions of non-expanded var";
200200
.DAE.ElementSource source "origin of variable";
201201
Option< .DAE.VariableAttributes> values "values on built-in attributes";
202+
Option<TearingSelect> tearingSelectOption "value for TearingSelect";
202203
Option<SCode.Comment> comment "this contains the comment and annotation from Absyn";
203204
.DAE.ConnectorType connectorType "flow, stream, unspecified or not connector.";
204205
end VAR;
@@ -224,6 +225,14 @@ uniontype VarKind "variable kind"
224225
record OPT_FCONSTR end OPT_FCONSTR;
225226
end VarKind;
226227

228+
public uniontype TearingSelect
229+
record NEVER end NEVER;
230+
record AVOID end AVOID;
231+
record DEFAULT end DEFAULT;
232+
record PREFER end PREFER;
233+
record ALWAYS end ALWAYS;
234+
end TearingSelect;
235+
227236
public uniontype EquationKind "equation kind"
228237
record BINDING_EQUATION end BINDING_EQUATION;
229238
record DYNAMIC_EQUATION end DYNAMIC_EQUATION;

Compiler/BackEnd/BackendDAECreate.mo

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -582,6 +582,7 @@ algorithm
582582
DAE.ConnectorType ct;
583583
DAE.ElementSource source;
584584
Option<DAE.VariableAttributes> dae_var_attr;
585+
Option<BackendDAE.TearingSelect> ts;
585586
Option<SCode.Comment> comment;
586587
DAE.Type t;
587588
DAE.VarVisibility protection;
@@ -607,8 +608,9 @@ algorithm
607608
_ = BackendVariable.getMinMaxAsserts(dae_var_attr, name, source, kind_1, tp, {});
608609
_ = BackendVariable.getNominalAssert(dae_var_attr, name, source, kind_1, tp, {});
609610
(dae_var_attr, source, _) = Inline.inlineStartAttribute(dae_var_attr, source, (SOME(functionTree), {DAE.NORM_INLINE()}));
611+
ts = BackendDAEUtil.setTearingSelectAttribute(comment);
610612
then
611-
(BackendDAE.VAR(name, kind_1, dir, prl, tp, NONE(), NONE(), dims, source, dae_var_attr, comment, ct));
613+
(BackendDAE.VAR(name, kind_1, dir, prl, tp, NONE(), NONE(), dims, source, dae_var_attr, ts, comment, ct));
612614
end match;
613615
end lowerDynamicVar;
614616

@@ -635,6 +637,7 @@ algorithm
635637
DAE.ConnectorType ct;
636638
DAE.ElementSource source;
637639
Option<DAE.VariableAttributes> dae_var_attr;
640+
Option<BackendDAE.TearingSelect> ts;
638641
Option<SCode.Comment> comment;
639642
DAE.Type t;
640643
DAE.VarVisibility protection;
@@ -671,8 +674,9 @@ algorithm
671674
eqLst = buildAssertAlgorithms(assrtLst,source,assrtEqIn);
672675
// building an algorithm of the assert
673676
(dae_var_attr, source, _) = Inline.inlineStartAttribute(dae_var_attr, source, fnstpl);
677+
ts = NONE();
674678
then
675-
(BackendDAE.VAR(name, kind_1, dir, prl, tp, bind1, NONE(), dims, source, dae_var_attr, comment, ct), inlineHT,eqLst);
679+
(BackendDAE.VAR(name, kind_1, dir, prl, tp, bind1, NONE(), dims, source, dae_var_attr, ts, comment, ct), inlineHT,eqLst);
676680

677681
else
678682
equation
@@ -968,6 +972,7 @@ algorithm
968972
DAE.ConnectorType ct;
969973
DAE.ElementSource source;
970974
Option<DAE.VariableAttributes> dae_var_attr;
975+
Option<BackendDAE.TearingSelect> ts;
971976
Option<SCode.Comment> comment;
972977
DAE.Type t;
973978

@@ -986,8 +991,9 @@ algorithm
986991
tp = lowerType(t);
987992
(bind, source, _) = Inline.inlineExpOpt(bind, (SOME(functionTree), {DAE.NORM_INLINE()}), source);
988993
(dae_var_attr, source, _) = Inline.inlineStartAttribute(dae_var_attr, source, (SOME(functionTree), {DAE.NORM_INLINE()}));
994+
ts = NONE();
989995
then
990-
BackendDAE.VAR(name, kind_1, dir, prl, tp, bind, NONE(), dims, source, dae_var_attr, comment, ct);
996+
BackendDAE.VAR(name, kind_1, dir, prl, tp, bind, NONE(), dims, source, dae_var_attr, ts, comment, ct);
991997
end match;
992998
end lowerExtObjVar;
993999

Compiler/BackEnd/BackendDAEOptimize.mo

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1846,7 +1846,7 @@ algorithm
18461846
expVarName = DAE.CREF(componentRef, DAE.T_REAL_DEFAULT);
18471847
currEquation = BackendDAE.EQUATION(expVarName, exp, source, eqAttr);
18481848

1849-
currVariable = BackendDAE.VAR(componentRef, BackendDAE.VARIABLE(), DAE.OUTPUT(), DAE.NON_PARALLEL(), DAE.T_REAL_DEFAULT, NONE(), NONE(), {}, DAE.emptyElementSource, NONE(), NONE(), DAE.NON_CONNECTOR());
1849+
currVariable = BackendDAE.VAR(componentRef, BackendDAE.VARIABLE(), DAE.OUTPUT(), DAE.NON_PARALLEL(), DAE.T_REAL_DEFAULT, NONE(), NONE(), {}, DAE.emptyElementSource, NONE(), NONE(), NONE(), DAE.NON_CONNECTOR());
18501850

18511851
(equationList, variableList) = convertResidualsIntoSolvedEquations2(restEquationList, index+1,currEquation::iEquationList,currVariable::iVariableList);
18521852
then (equationList, variableList);
@@ -4171,7 +4171,7 @@ algorithm
41714171
ht = BaseHashTable.add((condition, index), ht);
41724172
crStr = "$whenCondition" + intString(index);
41734173

4174-
var = BackendDAE.VAR(DAE.CREF_IDENT(crStr, DAE.T_BOOL_DEFAULT, {}), BackendDAE.DISCRETE(), DAE.BIDIR(), DAE.NON_PARALLEL(), DAE.T_BOOL_DEFAULT, NONE(), NONE(), {}, inSource, NONE(), NONE(), DAE.NON_CONNECTOR());
4174+
var = BackendDAE.VAR(DAE.CREF_IDENT(crStr, DAE.T_BOOL_DEFAULT, {}), BackendDAE.DISCRETE(), DAE.BIDIR(), DAE.NON_PARALLEL(), DAE.T_BOOL_DEFAULT, NONE(), NONE(), {}, inSource, NONE(), NONE(), NONE(), DAE.NON_CONNECTOR());
41754175
var = BackendVariable.setVarFixed(var, true);
41764176
eqn = BackendDAE.EQUATION(DAE.CREF(DAE.CREF_IDENT(crStr, DAE.T_BOOL_DEFAULT, {}), DAE.T_BOOL_DEFAULT), condition, inSource, BackendDAE.EQ_ATTR_DEFAULT_DYNAMIC);
41774177

@@ -4349,7 +4349,7 @@ algorithm
43494349
case (DAE.ARRAY(array={condition}), _, index) equation
43504350
crStr = "$whenCondition" + intString(index);
43514351

4352-
var = BackendDAE.VAR(DAE.CREF_IDENT(crStr, DAE.T_BOOL_DEFAULT, {}), BackendDAE.DISCRETE(), DAE.BIDIR(), DAE.NON_PARALLEL(), DAE.T_BOOL_DEFAULT, NONE(), NONE(), {}, inSource, NONE(), NONE(), DAE.NON_CONNECTOR());
4352+
var = BackendDAE.VAR(DAE.CREF_IDENT(crStr, DAE.T_BOOL_DEFAULT, {}), BackendDAE.DISCRETE(), DAE.BIDIR(), DAE.NON_PARALLEL(), DAE.T_BOOL_DEFAULT, NONE(), NONE(), {}, inSource, NONE(), NONE(), NONE(), DAE.NON_CONNECTOR());
43534353
var = BackendVariable.setVarFixed(var, true);
43544354
stmt = DAE.STMT_ASSIGN(DAE.T_BOOL_DEFAULT, DAE.CREF(DAE.CREF_IDENT(crStr, DAE.T_BOOL_DEFAULT, {}), DAE.T_BOOL_DEFAULT), condition, inSource);
43554355

@@ -4365,7 +4365,7 @@ algorithm
43654365
case (condition, _, index) equation
43664366
crStr = "$whenCondition" + intString(index);
43674367

4368-
var = BackendDAE.VAR(DAE.CREF_IDENT(crStr, DAE.T_BOOL_DEFAULT, {}), BackendDAE.DISCRETE(), DAE.BIDIR(), DAE.NON_PARALLEL(), DAE.T_BOOL_DEFAULT, NONE(), NONE(), {}, inSource, NONE(), NONE(), DAE.NON_CONNECTOR());
4368+
var = BackendDAE.VAR(DAE.CREF_IDENT(crStr, DAE.T_BOOL_DEFAULT, {}), BackendDAE.DISCRETE(), DAE.BIDIR(), DAE.NON_PARALLEL(), DAE.T_BOOL_DEFAULT, NONE(), NONE(), {}, inSource, NONE(), NONE(), NONE(), DAE.NON_CONNECTOR());
43694369
var = BackendVariable.setVarFixed(var, true);
43704370
stmt = DAE.STMT_ASSIGN(DAE.T_BOOL_DEFAULT, DAE.CREF(DAE.CREF_IDENT(crStr, DAE.T_BOOL_DEFAULT, {}), DAE.T_BOOL_DEFAULT), condition, inSource);
43714371

Compiler/BackEnd/BackendDAETransform.mo

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -540,6 +540,7 @@ algorithm
540540
Option<Values.Value> v;
541541
list<DAE.Dimension> dim;
542542
Option<DAE.VariableAttributes> attr;
543+
Option<BackendDAE.TearingSelect> ts;
543544
Option<SCode.Comment> comment;
544545
DAE.ConnectorType ct;
545546
DAE.ElementSource source;
@@ -554,12 +555,13 @@ algorithm
554555
arryDim = dim,
555556
source = source,
556557
values = attr,
558+
tearingSelectOption = ts,
557559
comment = comment,
558560
connectorType = ct))
559561
equation
560562
cr = ComponentReference.crefPrefixDer(cr);
561563
then
562-
BackendDAE.VAR(cr,BackendDAE.STATE_DER(),dir,prl,tp,exp,v,dim,source,attr,comment,ct);
564+
BackendDAE.VAR(cr,BackendDAE.STATE_DER(),dir,prl,tp,exp,v,dim,source,attr,ts,comment,ct);
563565

564566
else inVar;
565567
end match;

Compiler/BackEnd/BackendDAEUtil.mo

Lines changed: 35 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -377,7 +377,7 @@ algorithm
377377
name := Expression.reductionIterName(iter);
378378
cr := ComponentReference.makeCrefIdent(name,DAE.T_INTEGER_DEFAULT,{});
379379
backendVar := BackendDAE.VAR(cr,BackendDAE.VARIABLE(),DAE.BIDIR(),DAE.NON_PARALLEL(),DAE.T_INTEGER_DEFAULT,NONE(),NONE(),{},
380-
DAE.emptyElementSource,NONE(),NONE(),DAE.NON_CONNECTOR());
380+
DAE.emptyElementSource,NONE(),NONE(),NONE(),DAE.NON_CONNECTOR());
381381
end makeIterVariable;
382382

383383
protected function checkEquationSize"author: Frenkel TUD 2010-12
@@ -924,6 +924,7 @@ algorithm
924924
DAE.InstDims dims;
925925
DAE.ElementSource src;
926926
Option<DAE.VariableAttributes> va;
927+
Option<BackendDAE.TearingSelect> ts;
927928
Option<SCode.Comment> c;
928929
DAE.ConnectorType ct;
929930
Values.Value v;
@@ -936,7 +937,7 @@ algorithm
936937
inVar;
937938
case BackendDAE.VAR(varName = cr, varKind = vk, varDirection = vd, varParallelism = prl,
938939
varType = ty, bindExp = SOME(e), arryDim = dims, source = src,
939-
values = va, comment = c, connectorType = ct)
940+
values = va, tearingSelectOption = ts, comment = c, connectorType = ct)
940941
equation
941942
// wbraun: Evaluate parameter expressions only if they are
942943
// constant at compile time otherwise we solve them
@@ -945,7 +946,7 @@ algorithm
945946
true = Expression.isConst(e);
946947
(_, v, _) = Ceval.ceval(cache, graph, e, false, NONE(), Absyn.NO_MSG(),0);
947948
then
948-
BackendDAE.VAR(cr, vk, vd, prl, ty, SOME(e), SOME(v), dims, src, va, c, ct);
949+
BackendDAE.VAR(cr, vk, vd, prl, ty, SOME(e), SOME(v), dims, src, va, ts, c, ct);
949950
else inVar;
950951
end matchcontinue;
951952
end calculateValue;
@@ -1633,6 +1634,32 @@ algorithm
16331634
end simplifySubscript;
16341635

16351636

1637+
public function setTearingSelectAttribute
1638+
input Option<SCode.Comment> comment;
1639+
output Option<BackendDAE.TearingSelect> ts;
1640+
protected
1641+
SCode.Annotation ann;
1642+
Absyn.Exp val;
1643+
String ts_str;
1644+
algorithm
1645+
try
1646+
SOME(SCode.COMMENT(annotation_ = SOME(ann))) := comment;
1647+
val := SCode.getNamedAnnotation(ann, "tearingSelect");
1648+
ts_str := Absyn.crefIdent(Absyn.expCref(val));
1649+
ts := match(ts_str)
1650+
case "always" then SOME(BackendDAE.ALWAYS());
1651+
case "prefer" then SOME(BackendDAE.PREFER());
1652+
case "avoid" then SOME(BackendDAE.AVOID());
1653+
case "never" then SOME(BackendDAE.NEVER());
1654+
case "default" then SOME(BackendDAE.DEFAULT());
1655+
else NONE();
1656+
end match;
1657+
else
1658+
ts := NONE();
1659+
end try;
1660+
end setTearingSelectAttribute;
1661+
1662+
16361663
/*******************************************
16371664
Functions that deals with BackendDAE as input
16381665
********************************************/
@@ -6371,6 +6398,7 @@ algorithm
63716398
DAE.ComponentRef cref;
63726399
list<DAE.Dimension> instdims;
63736400
Option<DAE.VariableAttributes> attr;
6401+
Option<BackendDAE.TearingSelect> ts;
63746402
Type_a ext_arg_1,ext_arg_2;
63756403
VarKind varKind;
63766404
DAE.VarDirection varDirection;
@@ -6383,18 +6411,18 @@ algorithm
63836411

63846412
case (NONE(),_,_) then (NONE(),inTypeA);
63856413

6386-
case (SOME(BackendDAE.VAR(cref,varKind,varDirection,varParallelism,varType,SOME(e1),bindValue,instdims,source,attr,comment,ct)),_,_)
6414+
case (SOME(BackendDAE.VAR(cref,varKind,varDirection,varParallelism,varType,SOME(e1),bindValue,instdims,source,attr,ts,comment,ct)),_,_)
63876415
equation
63886416
(e1,ext_arg_1) = func(e1,inTypeA);
63896417
(attr,ext_arg_2) = traverseBackendDAEVarAttr(attr,func,ext_arg_1);
63906418
then
6391-
(SOME(BackendDAE.VAR(cref,varKind,varDirection,varParallelism,varType,SOME(e1),bindValue,instdims,source,attr,comment,ct)),ext_arg_2);
6419+
(SOME(BackendDAE.VAR(cref,varKind,varDirection,varParallelism,varType,SOME(e1),bindValue,instdims,source,attr,ts,comment,ct)),ext_arg_2);
63926420

6393-
case (SOME(BackendDAE.VAR(cref,varKind,varDirection,varParallelism,varType,NONE(),bindValue,instdims,source,attr,comment,ct)),_,_)
6421+
case (SOME(BackendDAE.VAR(cref,varKind,varDirection,varParallelism,varType,NONE(),bindValue,instdims,source,attr,ts,comment,ct)),_,_)
63946422
equation
63956423
(attr,ext_arg_2) = traverseBackendDAEVarAttr(attr,func,inTypeA);
63966424
then
6397-
(SOME(BackendDAE.VAR(cref,varKind,varDirection,varParallelism,varType,NONE(),bindValue,instdims,source,attr,comment,ct)),ext_arg_2);
6425+
(SOME(BackendDAE.VAR(cref,varKind,varDirection,varParallelism,varType,NONE(),bindValue,instdims,source,attr,ts,comment,ct)),ext_arg_2);
63986426

63996427
else
64006428
equation

Compiler/BackEnd/BackendEquation.mo

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2105,7 +2105,7 @@ algorithm
21052105

21062106
case (_, DAE.RELATION(e1, DAE.LESS(_), e2, _, _)) equation
21072107
lhs = ComponentReference.makeCrefIdent(conCrefName, DAE.T_REAL_DEFAULT, {});
2108-
dummyVar = BackendDAE.VAR(lhs, conKind, DAE.OUTPUT(), DAE.NON_PARALLEL(), DAE.T_REAL_DEFAULT, NONE(), NONE(), {}, DAE.emptyElementSource, NONE(), NONE(), DAE.NON_CONNECTOR());
2108+
dummyVar = BackendDAE.VAR(lhs, conKind, DAE.OUTPUT(), DAE.NON_PARALLEL(), DAE.T_REAL_DEFAULT, NONE(), NONE(), {}, DAE.emptyElementSource, NONE(), NONE(), NONE(), DAE.NON_CONNECTOR());
21092109
rhs = Expression.expSub(e1,e2);
21102110
(rhs, _) = ExpressionSimplify.simplify1(rhs);
21112111
expNull = DAE.RCONST(0.0);
@@ -2115,7 +2115,7 @@ algorithm
21152115

21162116
case (_, DAE.RELATION(e1, DAE.LESSEQ(_), e2, _, _)) equation
21172117
lhs = ComponentReference.makeCrefIdent(conCrefName, DAE.T_REAL_DEFAULT, {});
2118-
dummyVar = BackendDAE.VAR(lhs, conKind, DAE.OUTPUT(), DAE.NON_PARALLEL(), DAE.T_REAL_DEFAULT, NONE(), NONE(), {}, DAE.emptyElementSource, NONE(), NONE(), DAE.NON_CONNECTOR());
2118+
dummyVar = BackendDAE.VAR(lhs, conKind, DAE.OUTPUT(), DAE.NON_PARALLEL(), DAE.T_REAL_DEFAULT, NONE(), NONE(), {}, DAE.emptyElementSource, NONE(), NONE(), NONE(), DAE.NON_CONNECTOR());
21192119
rhs = Expression.expSub(e1,e2);
21202120
(rhs, _) = ExpressionSimplify.simplify1(rhs);
21212121
expNull = DAE.RCONST(0.0);
@@ -2125,7 +2125,7 @@ algorithm
21252125

21262126
case (_, DAE.RELATION(e1, DAE.GREATER(_), e2, _, _)) equation
21272127
lhs = ComponentReference.makeCrefIdent(conCrefName, DAE.T_REAL_DEFAULT, {});
2128-
dummyVar = BackendDAE.VAR(lhs, conKind, DAE.OUTPUT(), DAE.NON_PARALLEL(), DAE.T_REAL_DEFAULT, NONE(), NONE(), {}, DAE.emptyElementSource, NONE(), NONE(), DAE.NON_CONNECTOR());
2128+
dummyVar = BackendDAE.VAR(lhs, conKind, DAE.OUTPUT(), DAE.NON_PARALLEL(), DAE.T_REAL_DEFAULT, NONE(), NONE(), {}, DAE.emptyElementSource, NONE(), NONE(), NONE(), DAE.NON_CONNECTOR());
21292129
rhs = Expression.expSub(e2,e1);
21302130
(rhs, _) = ExpressionSimplify.simplify1(rhs);
21312131
expNull = DAE.RCONST(0.0);
@@ -2135,7 +2135,7 @@ algorithm
21352135

21362136
case (_, DAE.RELATION(e1, DAE.GREATEREQ(_), e2, _, _)) equation
21372137
lhs = ComponentReference.makeCrefIdent(conCrefName, DAE.T_REAL_DEFAULT, {});
2138-
dummyVar = BackendDAE.VAR(lhs, conKind, DAE.OUTPUT(), DAE.NON_PARALLEL(), DAE.T_REAL_DEFAULT, NONE(), NONE(), {}, DAE.emptyElementSource, NONE(), NONE(), DAE.NON_CONNECTOR());
2138+
dummyVar = BackendDAE.VAR(lhs, conKind, DAE.OUTPUT(), DAE.NON_PARALLEL(), DAE.T_REAL_DEFAULT, NONE(), NONE(), {}, DAE.emptyElementSource, NONE(), NONE(), NONE(), DAE.NON_CONNECTOR());
21392139
rhs = Expression.expSub(e2,e1);
21402140
(rhs, _) = ExpressionSimplify.simplify(rhs);
21412141
expNull = DAE.RCONST(0.0);
@@ -2145,7 +2145,7 @@ algorithm
21452145

21462146
case (_, DAE.RELATION(e1, DAE.EQUAL(_), e2, _, _)) equation
21472147
lhs = ComponentReference.makeCrefIdent(conCrefName, DAE.T_REAL_DEFAULT, {});
2148-
dummyVar = BackendDAE.VAR(lhs, conKind, DAE.OUTPUT(), DAE.NON_PARALLEL(), DAE.T_REAL_DEFAULT, NONE(), NONE(), {}, DAE.emptyElementSource, NONE(), NONE(), DAE.NON_CONNECTOR());
2148+
dummyVar = BackendDAE.VAR(lhs, conKind, DAE.OUTPUT(), DAE.NON_PARALLEL(), DAE.T_REAL_DEFAULT, NONE(), NONE(), {}, DAE.emptyElementSource, NONE(), NONE(), NONE(), DAE.NON_CONNECTOR());
21492149
rhs = Expression.expSub(e2,e1);
21502150
(rhs, _) = ExpressionSimplify.simplify(rhs);
21512151
expNull = DAE.RCONST(0.0);
@@ -2160,7 +2160,7 @@ algorithm
21602160
end try;
21612161

21622162
lhs := ComponentReference.makeCrefIdent(conCrefName, DAE.T_REAL_DEFAULT, {});
2163-
dummyVar := BackendDAE.VAR(lhs, conKind, DAE.OUTPUT(), DAE.NON_PARALLEL(), DAE.T_REAL_DEFAULT, NONE(), NONE(), {}, DAE.emptyElementSource, NONE(), NONE(), DAE.NON_CONNECTOR());
2163+
dummyVar := BackendDAE.VAR(lhs, conKind, DAE.OUTPUT(), DAE.NON_PARALLEL(), DAE.T_REAL_DEFAULT, NONE(), NONE(), {}, DAE.emptyElementSource, NONE(), NONE(), NONE(), DAE.NON_CONNECTOR());
21642164
dummyVar := BackendVariable.mergeAliasVars(dummyVar, v, false, knvars);
21652165
eqn := BackendDAE.SOLVED_EQUATION(lhs, e1, Source, BackendDAE.EQ_ATTR_DEFAULT_UNKNOWN);
21662166
then ({eqn}, dummyVar);

Compiler/BackEnd/BackendInline.mo

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -503,18 +503,19 @@ algorithm
503503
Option<Values.Value> bindValue;
504504
DAE.InstDims arrayDim;
505505
Option<DAE.VariableAttributes> values,values1;
506+
Option<BackendDAE.TearingSelect> ts;
506507
Option<SCode.Comment> comment;
507508
DAE.ConnectorType ct;
508509
BackendDAE.Var var;
509510
DAE.ElementSource source;
510511
Option<DAE.Exp> bind;
511512
Boolean b1,b2;
512-
case(BackendDAE.VAR(varName,varKind,varDirection,varParallelism,varType,bind,bindValue,arrayDim,source,values,comment,ct),fns)
513+
case(BackendDAE.VAR(varName,varKind,varDirection,varParallelism,varType,bind,bindValue,arrayDim,source,values,ts,comment,ct),fns)
513514
equation
514515
(bind,source,b1) = Inline.inlineExpOpt(bind,fns,source);
515516
(values1,source,b2) = Inline.inlineStartAttribute(values,source,fns);
516517
then
517-
(BackendDAE.VAR(varName,varKind,varDirection,varParallelism,varType,bind,bindValue,arrayDim,source,values1,comment,ct),b1 or b2);
518+
(BackendDAE.VAR(varName,varKind,varDirection,varParallelism,varType,bind,bindValue,arrayDim,source,values1,ts,comment,ct),b1 or b2);
518519
case(var,_) then (var,false);
519520
end match;
520521
end inlineVar;

0 commit comments

Comments
 (0)