Why is the function called in the template at the line of .stringof? template t(alias fn) { static if(fn.stringof) // f(int i) isn't callable using () enum t = true; else enum t = false; } void main() { void f(int i) {} t!f; }