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 }
Fixed DMD 0.170
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 d-bugmail@puremagic.com schrieb am 2006年10月09日: > http://d.puremagic.com/issues/show_bug.cgi?id=414 > http://paste.dprogramming.com/dpi6v8ch.php > interfaces shouldn't be able to inheit from classes <snip> Added to DStress as http://dstress.kuehne.cn/nocompile/i/interface_25_A.d http://dstress.kuehne.cn/nocompile/i/interface_25_B.d Thomas -----BEGIN PGP SIGNATURE----- iD8DBQFFOixCLK5blCcjpWoRAqidAJ43AN588E9oakaelzyHC7oedpEs/gCfZ+aC 9ia/LSwK8hO7X2+GMymVKGA= =TleA -----END PGP SIGNATURE-----
AltStyle によって変換されたページ (->オリジナル) / アドレス: モード: デフォルト 音声ブラウザ ルビ付き 配色反転 文字拡大 モバイル