aa[key] = val;

should be evaluated:

1. aa
2. key
3. val
4. aa[key] = val <-- allocating slot and set to it

Kenji Hara

2013/01/11 18:56 "deadalnix" <deadalnix@gmail.com>:
On Friday, 11 January 2013 at 08:55:55 UTC, Bernard Helyer wrote:
I completely agree. Doesn't the spec say that relying on
the order of assignment evaluation is undefined?

After a long discussion with Andrei, it seems that it is left to right.