[Issue 3113] final overriding

d-bugmail at puremagic.com d-bugmail at puremagic.com
Thu Jun 16 08:11:07 PDT 2011


http://d.puremagic.com/issues/show_bug.cgi?id=3113



--- Comment #9 from klickverbot <code at klickverbot.at> 2011-06-16 08:06:26 PDT ---
(In reply to comment #8)
> This occurs even when I mark DerivedClass' function as final.

I think it is quite clear that the example you gave shouldn't compile, as the
spec has: »Functions marked as final may not be overridden in a derived class,
unless they are also private.«

The question now is whether the same behavior should also apply to the example
from above. I'm strongly in favor of that, because otherwise, there can be
situation where the following two pieces of code don't refer to the same
»bar()«, which is completely contrary to how classes usually work in D:

---
auto foo = new Derived();
foo.bar();
---

---
Base foo = new Derived();
foo.bar();
---

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------


More information about the Digitalmars-d-bugs mailing list