This in theory reduce some kind of bugs, when one forget to mark method as virtual.

It doesn't reduce bugs, it introduces noticeable bugs and slightly lowers performance. All at the benefit of not having to write' virtual'.

/pedantic

As for the actual DIP, I don't like final(false). It's simply far too verbose, and a double negative (not not overridable), same for @nogc(false). I slightly prefer !final (though it's again a double negative, but at least it's more consistent with bools and not function invocation), but even then it's not a nice solution. Only decent one I can think of though, short of adding virtual.

Reply via email to