std.range this._input.opIndex(index) error
Attempting to compile the following from snippet auto r = iota(0, 10, 1); assert(equal(r, [0, 1, 2, 3, 4, 5, 6, 7, 8, 9][])); from the documentation, I encountered following error range.d(1184): Error: this._input.opIndex(index) is not an lvalue Looking at the code I find return _input[index]; on line 1184. The variable _input is defined as R _input in the template Take(R) which is the template instantiated to create iota. Problem is, it is obvious why this doesn't work since the Range data variable _input is accessed the same way on multiple occasions throughout the file, a Range variable can obviously supports random access, and no attempt is being made to modify the range at this point in the code. Any information would be greatly appreciated? Thanks in advance, Andrew
std.range this._input.opIndex(index) error
Attempting to compile the following from snippet auto r = iota(0, 10, 1); assert(equal(r, [0, 1, 2, 3, 4, 5, 6, 7, 8, 9][])); from the documentation, I encountered following error range.d(1184): Error: this._input.opIndex(index) is not an lvalue Looking at the code I find return _input[index]; on line 1184. The variable _input is defined as R _input in the template Take(R) which is the template instantiated to create iota. Problem is, it is not obvious why this doesn't work since the Range data variable _input is accessed the same way on multiple occasions throughout the file, a Range variable can obviously supports random access, and no attempt is being made to modify the range at this point in the code. Any information would be greatly appreciated? Thanks in advance, Andrew