xxxxxxxxxx
import std.stdio;
struct Outer(T) {}
struct Inner(T) {}
void fun(T)(Outer!(Inner!T) arg) { writeln("Outer!(Inner!T)"); }
void fun(T)(Outer!T arg) { writeln("Outer!T"); }
void main() {
Outer!(Inner!int) x;
fun(x);
}