digitalmars.D.bugs - cyclic classes/interfaces not rejected by dmd .121
-
zwang
(10/10)
Apr 20 2005
- Thomas Kuehne (15/25) Apr 20 2005 -----BEGIN PGP SIGNED MESSAGE-----
- xs0 (8/37) Apr 21 2005 Hmm, if you think about it, it could actually be allowed (interfaces
<code> class A:B{} class B:A{} </code> and <code> interface A:B{} interface B:A{} </code> are silently accepted by dmd.
Apr 20 2005
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 zwang schrieb am Wed, 20 Apr 2005 16:05:47 +0800:<code> class A:B{} class B:A{} </code> and <code> interface A:B{} interface B:A{} </code> are silently accepted by dmd.segfaults under Linux Added to DStress as http://dstress.kuehne.cn/nocompile/class_13.d http://dstress.kuehne.cn/nocompile/class_14.d http://dstress.kuehne.cn/nocompile/interface_15.d http://dstress.kuehne.cn/nocompile/interface_16.d Thomas -----BEGIN PGP SIGNATURE----- iD8DBQFCZk3d3w+/yD4P9tIRAihPAJ91qQZ1mwplvzoTKPamHvkjYso/qQCgq/tf uCGuxxlI24mJZDIfWGgkTCs= =0glA -----END PGP SIGNATURE-----
Apr 20 2005
Thomas Kuehne wrote:-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 zwang schrieb am Wed, 20 Apr 2005 16:05:47 +0800:Hmm, if you think about it, it could actually be allowed (interfaces only, classes have an overload problem) - if A is a B and B is an A, obviously A equals B, and they could be merged, while both A and B become aliases to the merged interface. OTOH, I see no absolutely no use this could have, and it's far more likely that a bug in the code is involved.. xs0<code> class A:B{} class B:A{} </code> and <code> interface A:B{} interface B:A{} </code> are silently accepted by dmd.segfaults under Linux Added to DStress as http://dstress.kuehne.cn/nocompile/class_13.d http://dstress.kuehne.cn/nocompile/class_14.d http://dstress.kuehne.cn/nocompile/interface_15.d http://dstress.kuehne.cn/nocompile/interface_16.d Thomas
Apr 21 2005