std.stdio.writeln should not accept infinite ranges?
Xinok via Digitalmars-d
digitalmars-d at puremagic.com
Thu Nov 12 17:18:12 PST 2015
The following code compiles and runs:
import std.stdio, std.random;
void main()
{
writeln(rndGen);
}
Since rndGen is an infinite range, this code runs forever. It
seems to be that we need to add a check for isInfinite on writeln
and other related functions.
Does anybody have a use case where this is actually practical? I
don't see a reason for allowing infinite ranges here, considering
how easy it is to write "range.take(n)".
More information about the Digitalmars-d
mailing list