https://issues.dlang.org/show_bug.cgi?id=18386
--- Comment #3 from Nick Treleaven <[email protected]> --- I think mixing in an eponymous template should be an error as it is confusing. Reduced: void main() { template b(alias d) { enum b = ``; } int a; { pragma(msg, is(typeof(b) == string)); // false mixin b!a; pragma(msg, is(typeof(b) == string)); // true mixin b!a; // error } } As before, if the {} scope block braces are removed, there's no error. --
