There are issues when using Variant with types that have their own overloaded operators:
struct S {
static int opBinaryRight(string op : "|", T)(T rhs) {
return 3;
}
}
unittest {
import std.variant;
S s;
Variant v;
auto b = v | s;
}
std\variant.d(1004): Error: no property min for type S
In addition, Variant's operator overloads are of the old kind (opAdd, opMul, and so on). These should be updated anyway.
Comment #1 by github-bugzilla — 2018-09-02T07:07:28Z