On 11 December 2014 at 21:02, Stefan Koch via Digitalmars-d <[email protected]> wrote: > On Thursday, 11 December 2014 at 10:59:24 UTC, Daniel Murphy wrote: > >> Why? If the inliner is out because of DMD's merging process, then so is >> the rest of the frontend. > > > It is not out! > > But my question was not about dmd specific things, I meant it more > generally.
I've often thought one of the biggest wins that would seem to affect my code would be comprehensive value range propagation. assert's and contracts can give value range information to the compiler, also comparison statements, bit masks, casts, etc, can truncate the possible value range, which can create many opportunities for optimisations. It would also be really nice to eliminate errors associated with down-casting.
