[Issue 7850] New: Cannot call overloaded function from inherited class
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Sat Apr 7 11:39:29 PDT 2012
http://d.puremagic.com/issues/show_bug.cgi?id=7850
Summary: Cannot call overloaded function from inherited class
Product: D
Version: unspecified
Platform: x86_64
OS/Version: Windows
Status: NEW
Severity: minor
Priority: P2
Component: DMD
AssignedTo: nobody at puremagic.com
ReportedBy: gaboonviper at gmx.net
--- Comment #0 from Boyd <gaboonviper at gmx.net> 2012-04-07 11:40:07 PDT ---
When a class overloads a function from its super class, the overloaded function
cannot be found by DMD.
Example:
-------------------
import std.stdio;
public class A
{
public int X = 12;
public void DoSomething(int x)
{
writeln(x);
}
}
public class B: A
{
public void DoSomething()
{
DoSomething(X);
}
}
void main()
{
auto b = new B();
b.DoSomething();
}
-------------------
This code causes the compiler error: function OverloadBug.B.DoSomething() is
not callable using types (int).
You can work around the problem by using super.DoSomething(X) instead.
--
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