infinite loop in gdc-0.19 with tempaltes
Thomas Kuehne
thomas-dloop at kuehne.cn
Sat Nov 25 10:02:21 PST 2006
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
rm schrieb am 2006-10-04:
> On Gentoo (gdc-0.19), the following does land gdc in an infinite loop.
> Don't know whether it does the same with the dmd compiler.
>
> private import std.stdio;
>
> template TFoo(int v : 1)
> {
> const int TFoo = 1;
> }
>
> template TFoo(int v)
> {
> const int TFoo = v * TFoo!(v-1).TFoo;
> }
>
> void main()
> {
> std.stdio.writefln(TFoo!(5).TFoo);
> }
>
> changing the const int to an enum declaration does work though.
Added to DStress as
http://dstress.kuehne.cn/nocompile/t/template_48_A.d
http://dstress.kuehne.cn/compile/t/template_48_B.d
Thomas
-----BEGIN PGP SIGNATURE-----
iD8DBQFFaILxLK5blCcjpWoRAuuYAJ405a2ROUJVqY6O9NMIVwztVKRdigCeOKrG
392ncD9mibHpdjdwo1apbUA=
=61KY
-----END PGP SIGNATURE-----
More information about the D.gnu
mailing list