Avoid generating invalid C++ code when template name are not valid C++ identifiers
Circumvent MSVC range check in debug mode