[Bug c++/16233] unhelpful error message when "template" is omitted

manu at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Mon Feb 22 23:06:00 GMT 2016


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=16233

--- Comment #9 from Manuel López-Ibáñez <manu at gcc dot gnu.org> ---
Very likely, we don't even try to parse this as a template function. We should
first try to parse it as we do now. When that fails, we should try to reparse
it as a template if we have seen <>, if that succeeds, it means the template
keyword was missing. Otherwise fail as we do now (we can even reparse it a
third time, since we know we will fail).

We need to be careful with stuff like v->Foo<2>(), so we cannot simply
backtrack if we see a type after <, it could be something like x < int(2.0).


More information about the Gcc-bugs mailing list