<p dir="ltr">On 1 Apr 2014 14:45, "Daniel Murphy" <<a href="mailto:yebbliesnospam@gmail.com">yebbliesnospam@gmail.com</a>> wrote:<br>
><br>
> "Johannes Pfau"  wrote in message news:lhe96q$27ua$1@digitalmars.com...<br>
><br>
><br>
>> So I need someone with dmd backend knowledge to fix the evaluation<br>
>> order of extern(C) function parameters to be LTR.<br>
>> Evaluation order of assignments should also be fixed to be LTR in the<br>
>> dmd backend. Although not strictly required for the array op changes<br>
>> it'd be inconsistent to have array op assignments execute LTR but<br>
>> normal assignments RTL:<br>
>> a()[] = b()[] + c()[]; //Array op assignment<br>
>> a() = b() + c();       //Normal assignment<br>
>>  |      |    |<br>
>>  1      2    3<br>
><br>
><br>
> It shouldn't need backend changes, just a glue layer fix to evaluate all args to a temporary before the actual call expression.<br>
><br>
> Something similar to the way <a href="https://d.puremagic.com/issues/show_bug.cgi?id=8396">https://d.puremagic.com/issues/show_bug.cgi?id=8396</a> was done should work. </p>
<p dir="ltr">So you can write the patches then? :o)</p>