Hi everyone,

I hope I'm not misunderstanding the spec when this won't compile:

---
import std.conv;
enum Test { a = 0 }
void main() {
    ulong l = 0;
    auto t = l.to!Test;
}
---

It doesn't compile due to the template not instantiating.

If l is an int, uint or byte, it compiles fine. I'm assuming the fault lies in the β€˜is(S : OriginalType!T)’ constraint.

So, um, is this intended behaviour? And why are string enums not supported? Wouldn't the β€˜==’ operator work just fine on them too (so the function body would stay the same)?

Thanks,
Matej

Reply via email to