http://d.puremagic.com/issues/show_bug.cgi?id=5798
--- Comment #3 from [email protected] 2011-04-25 02:14:51 PDT --- Comma expression is also used in for-loops, which may trigger this bug. In particular, the equal() function since commit ec2c8460* does not work with a range with pure popFront() since it says for (; !r1.empty; r1.popFront(), r2.popFront()) // ^ For instance, the following code, which works in 2.052, no longer work in the git master version: ----------------------------------------------------------------- import std.array, std.algorithm; struct X { int _front; pure nothrow: @property int front() const { return _front; } void popFront() { ++ _front; } @property bool empty() const { return _front == 10; } } void main() { X x; //assert(equal(array(x), [0,1,2,3,4,5,6,7,8,9])); // ok x._front = 0; assert(equal(x, [0,1,2,3,4,5,6,7,8,9])); // asserts } ----------------------------------------------------------------- * https://github.com/D-Programming-Language/phobos/commit/ec2c8460#L0R4324 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
