[Issue 414] New: interfaces shouldn't be able to inheit from classes
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Mon Oct 9 07:42:17 PDT 2006
http://d.puremagic.com/issues/show_bug.cgi?id=414
Summary: interfaces shouldn't be able to inheit from classes
Product: D
Version: 0.169
Platform: PC
OS/Version: Windows
Status: NEW
Severity: normal
Priority: P2
Component: DMD
AssignedTo: bugzilla at digitalmars.com
ReportedBy: davidl at 126.com
http://paste.dprogramming.com/dpi6v8ch.php
interfaces shouldn't be able to inheit from classes
import std.c.stdio;
import std.stdio;
interface a{
int c();
}
void main()
{
class b:a{
int c(){writefln("b.c");return 1;}
}
class c:b{
int c(){writefln("c.c");return 1;}
}
class f:b{
int k(){writefln("f.k");return 1;}
}
interface u:c,f,a{
int c();
int k();
}
class d:u
{
int c(){writefln("d.c");return 2;}
int k(){writefln("d.k");return 2;}
}
d a= new d;
c v= cast(c)a;
f newf=cast(f)a;
a.k(); //prints d.k
newf.k(); //access violation
v.c(); //access violation
}
--
More information about the Digitalmars-d-bugs
mailing list