On 2 April 2015 at 00:15, Martin Nowak via Digitalmars-d <[email protected]> wrote: > On 04/01/2015 10:31 PM, novice2 wrote: >> Can DMD compiler do it itself, as one of optimizations? > > You could do it as part of LTO or whole program optimization. > It requires another compiler/linker phase, so it's not easy to achieve, > maybe the LDC/GDC people have LTO running? > > GCC5 comes with a big announcement about devirtualization. > https://www.gnu.org/software/gcc/gcc-5/changes.html#general
I've always said: Use LTO at your own risk. It has been broken for months at a time because I simply do not have time to give it the TLC it needs. I expect that devirtualisation capabilities to be a little more limiting than advertised by GCC, as you do not get these sorts of optimisations for free (may need some extra support from respective frontends). Regards Iain
