When it comes to templates it's not until instantiation time - when the compiler see the code being used. So this is just an issue during compilation.
The docs on static if may shed some more light: https://dlang.org/spec/version.html#staticif
The docs on static if may shed some more light: https://dlang.org/spec/version.html#staticif
Template arguments need to be known at compile time, and the extra set of parens is how templates parameters are declared in D.