Ensure C++ checkers actually instantiate templates.

When using `-fsyntax-only`, GCC checks mostly for syntax errors, doing only quite basic analysis. It won't attempt to instantiate templates. This is unlike Clang, which reports all warnings and errors, including the errors, for example, deep in the bowels of some template code.

This changeset ensures both compilers will show errors on ill-formed code, even in presence of templates.