Test Case: import std.range, std.array, std.stdio; void main() { writeln(array(iota(-5, 5))); // FAIL writeln(array(iota(-5, 5, 1))); // FAIL writeln(array(iota(-5.0, 5.0))); // Works. } Output: 4294967291 4294967292 4294967293 4294967294 4294967295 0 1 2 3 4 4294967291 4294967292 4294967293 4294967294 4294967295 0 1 2 3 4 -5 -4 -3 -2 -1 0 1 2 3 4
Cannot reproduce on Phobos r1824. I think it is fixed already.
You're right. Iota was revamped for 2.048 and this apparently got fixed.