﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
5084	The NF does not evaluate protected parameters depending on Evaluate = true parameters through function	Francesco Casella	Per Östlund	"Consider the following test model
{{{
model TestEvaluateParameter
  parameter Real n[3] = {0, 1, 0} annotation(Evaluate = true);
protected
  parameter Real q[3] = Modelica.Math.Vectors.normalizeWithAssert(n);
end TestEvaluateParameter;
}}}
The old FE flattens this to
{{{
class TestEvaluateParameter
  parameter Real n[1] = 0.0;
  parameter Real n[2] = 1.0;
  parameter Real n[3] = 0.0;
  protected parameter Real q[1] = 0.0;
  protected parameter Real q[2] = 1.0;
  protected parameter Real q[3] = 0.0;
end TestEvaluateParameter;
}}}
while the new FE outputs
{{{
class TestEvaluateParameter
  parameter Real n[1] = 0.0;
  parameter Real n[2] = 1.0;
  parameter Real n[3] = 0.0;
  protected parameter Real q[1] = Modelica.Math.Vectors.normalizeWithAssert({0.0, 1.0, 0.0})[1];
  protected parameter Real q[2] = Modelica.Math.Vectors.normalizeWithAssert({0.0, 1.0, 0.0})[2];
  protected parameter Real q[3] = Modelica.Math.Vectors.normalizeWithAssert({0.0, 1.0, 0.0})[3];
end TestEvaluateParameter;
}}}
This has a negative impact on the correct processing of MultiBody models, see #5083"	defect	closed	high	2.0.0	New Instantiation		fixed		
