Non-Purity of Algebraic opEquals
Nordlöw via Digitalmars-d
digitalmars-d at puremagic.com
Fri Sep 18 06:22:11 PDT 2015
Any suggestions on fixing
http://forum.dlang.org/post/mailman.5452.1422372219.9932.digitalmars-d-bugs@puremagic.com
I really need `opEquals` in
pure unittest
{
import std.variant : Algebraic;
import std.conv : to;
auto x = Algebraic!(long, double)(5.to!long);
assert(x.hasValue);
auto y = x;
assert(y == x);
}
to be pure. This currently fails as
t_algebraic.d(11,12): Error: pure function
't_algebraic.__unittestL3_1' cannot call impure function
'std.variant.VariantN!(8LU, long,
double).VariantN.opEquals!(VariantN!(8LU, long, double)).opEquals'
Ideas anyone?
More information about the Digitalmars-d
mailing list