I think this is unnecessary. Even a `FuncExp` is on template arguments, `FuncExp::semantic()` would be called first. See `TemplateInstance::semanticTiargs` process.