cat > bug.d << CODE import std.typecons: ReplaceType; enum E : string { one = "one" } pragma(msg, ReplaceType!(int, int, E)); static assert(is(ReplaceType!(int, int, E) == E)); CODE dmd -c bug Prints: bug.d(5): Error: static assert: is(string == E) is false Related to issue 15168
As of DMD 2.097.0, the example compiles successfully.