Should I file the following as a bug? import std.traits; void foo(int) { } void bar(ref int) { } void main() { pragma(msg, ParameterTypeTuple!foo); // (int) pragma(msg, ParameterTypeTuple!bar); // (ref int) static assert(is(ParameterTypeTuple!foo == ParameterTypeTuple!bar)); // pass }