August 01, 2010 [Issue 4557] New: accepts-invalid Overriding static functions inherited from interfaces | ||||
---|---|---|---|---|
| ||||
http://d.puremagic.com/issues/show_bug.cgi?id=4557 Summary: accepts-invalid Overriding static functions inherited from interfaces Product: D Version: D2 Platform: Other OS/Version: Windows Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: nobody@puremagic.com ReportedBy: andrej.mitrovich@gmail.com --- Comment #0 from Andrej Mitrovic <andrej.mitrovich@gmail.com> 2010-08-01 14:18:25 PDT --- From the page http://www.digitalmars.com/d/2.0/interface.html, the 4th example: interface D { void bar(); static void foo() { } final void abc() { } } class C : D { void bar() { } // ok void foo() { } // error, cannot override static D.foo() void abc() { } // error, cannot override final D.abc() } The abc() definition will error out, but the foo() one will not. This is contrary to what it states in the docs: "Classes that inherit from an interface may not override final or static interface member functions." -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
June 15, 2011 [Issue 4557] Overriding static functions inherited from interfaces | ||||
---|---|---|---|---|
| ||||
Posted in reply to Andrej Mitrovic | http://d.puremagic.com/issues/show_bug.cgi?id=4557 yebblies <yebblies@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED CC| |yebblies@gmail.com Resolution| |INVALID --- Comment #1 from yebblies <yebblies@gmail.com> 2011-06-15 07:45:33 PDT --- There is no error, as foo is _not_ overriding anything. If you add the override keyword it makes this very clear: Error: function testx.C.foo does not override any function -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
Copyright © 1999-2021 by the D Language Foundation