[GDC] Evaluation order: Please update the dmd backend

Iain Buclaw ibuclaw at gdcproject.org
Tue Apr 1 05:58:17 PDT 2014


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

So you can write the patches then? :o)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/digitalmars-d/attachments/20140401/1bd2a557/attachment.html>


More information about the Digitalmars-d mailing list