﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
1415	array bindings need to be handled better in the compiler	Martin Sjölund	Martin Sjölund	"{{{#!mo
  class ArrayCall
    function fn
      input Real r;
      output Real array[10];
    algorithm
      array := 1:10.0;
      array := cos(r*array);
    end fn;
    Real x[10] = fn(time);
  end ArrayCall;
}}}

Either we do common subexpression elimination in the backend or keep the arrays non-expanded. Common subexpression elimination would of course be preferrable as then we could do things like:
{{{#!mo
class ArrayCall
  Real x[10] = fn(time);
  Real y[10] = fn(time)*2;
  Real z[10] = fn(time)*3;
end ArrayCall;
}}}
And only call fn once. We probably need to introduce temporary variables to deal with duplicated function calls."	defect	closed	high	1.9.0	Backend		fixed		Martin Sjölund AlexeyLebedev Frenkel TUD Willi Braun
