<div>Here is a reduced test case. Before filing a bug report, just wanted to make sure if I am doing something obviously wrong here.</div><div><br></div><div>import std.stdio;</div><div>struct Foo(IF, size_t N) { }</div><div>

interface Bar { }</div><div>void main() {</div><div>  void printFoo(T: Foo!(IF, N), IF, size_t N)(T foo)</div><div>    if(is(IF == interface)) {</div><div>    writeln("Type: ", T.stringof);</div><div>  }</div><div>

  Foo!(Bar, 1) foo;</div><div>  printFoo(foo);</div><div>}</div><div><br></div>