Evaluation order of index expressions

Artur Skawina via Digitalmars-d digitalmars-d at puremagic.com
Tue May 26 09:13:46 PDT 2015


On 05/26/15 14:54, Timon Gehr via Digitalmars-d wrote:
> On 05/26/2015 06:35 AM, "Ola Fosheim =?UTF-8?B?R3LDuHN0YWQi?= <ola.fosheim.grostad+dlang at gmail.com>" wrote:
>>
>> One of C's design mistakes is to make assignments expressions and not
>> statements.
> 
> I think it is more about returning void vs. returning the lvalue. The expression/statement distinction is unnecessary.

   int a, b, c;
   
   void f();
   f(a=b);

   void g(T...)(T) {}
   g(a=b);

   // and, even when 'void' is not a first class type:
   void h(int);
   h(((a=b), c));

artur


More information about the Digitalmars-d mailing list