По какой-то причине gcc не нравится, когда параметр шаблона является глобальным символом пространства имен, т.е.
TemplateClass<::GlobalSymbol>
Он работает, когда я
TemplateClass< ::GlobalSymbol>
То есть gcc не любитчтобы увидеть <:: </p>
Можно ли предотвратить без изменения источников (которые автоматически генерируются)?
UPD: я не хочу изменять источники.Я обнаружил, что -fpermissive, кажется, меняет это на предупреждение вместо ошибки, но пока не нашел, как включить его из кода (например, с использованием прагм).
UPD: Хорошо, я обнаружил, что
#pragma GCC diagnostic ignored "-fpermissive"
добивается цели, в любом случае я принимаю ответ, который помог мне выяснить это.