Reading about D: few questions

Denis Shelomovskij verylonglogin.reg at
Sat Dec 24 09:01:46 PST 2011

23.12.2011 22:51, bearophile пишет:
>> ++a[] works, but a[]++ doesn't.
> Already known compiler bug.

Is it a joke? Array expression in D are for performance reasons to 
generate x2-x100 faster code without any compiler optimisations. Link to 
one of these epic comments (even x100 more epic because of '%' use 
instead of 'x###'):

But `a[]++` should store a copy of `a`, increment elements and return 
stored copy. It is hidden GC allocation. We already have a silent 
allocation in closures, but here a _really large_ peace of data can be 
allocated. Yes, this allocation sometimes can be optimized out but not 

IMHO, D should not have `a[]++` operator.

More information about the Digitalmars-d-learn mailing list