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: [email protected]
ReportedBy: [email protected]
--- Comment #0 from Boyd <[email protected]> 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: -------