LLVM talks 1: Clang for Chromium

bearophile bearophileHUGS at lycos.com
Sat Dec 17 02:54:58 PST 2011


Walter:

> > x = x++;
> 
> Define order of evaluation as rvalue, then lvalue.

So I presume your desire is to define the semantics of all code like that, and statically refuse no cases like that. This is an acceptable solution.

The advantage of this solution is that it gives no restrictions on the acceptable D code, and it avoids complexities caused by choosing what are the cases to refuse statically. Some of its disadvantages are that programmers are free to write very unreadable D code that essentially only the compiler is able to understand, and that is hard to port to C/C++.

Bye,
bearophile


More information about the Digitalmars-d mailing list