On Friday, 6 December 2013 at 23:30:45 UTC, Walter Bright wrote:
On 12/6/2013 3:06 PM, Maxim Fomin wrote:
and what about holes in immutable, pure and rest type system?

If there are bugs in the type system, then that optimization breaks.

Bad news: there are many bugs in type system.


C doesn't have virtual functions.

Right, but you can (and people do) fake virtual functions with tables of function pointers. No, C doesn't devirtualize those.


Neither does D.

By the way, does D devirtualize them?

It does for classes/methods marked 'final'

this is essentially telling nothing, because these functions are not virtual. In your speaking, C 'devirtualizes' all direct calling.

and also in cases where it can statically tell that a class instance is the most derived type.

I haven't noticed that.

Reply via email to