public Expression CreateExpressionTree(BlockContext ec, Location loc)
{
ArrayList initializers = new ArrayList(Count);
foreach (Parameter p in FixedParameters)
{
//
// Each parameter expression is stored to local variable
// to save some memory when referenced later.
//
StatementExpression se = new StatementExpression(p.CreateExpressionTreeVariable(ec));
if (se.Resolve(ec))
{
ec.CurrentBlock.AddScopeStatement(se);
}
initializers.Add(p.ExpressionTreeVariableReference());
}
return(new ArrayCreation(
Parameter.ResolveParameterExpressionType(ec, loc),
"[]", initializers, loc));
}