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

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|2012-04-12 11:50:00         |2015-9-18

--- Comment #6 from Jonathan Wakely <redi at gcc dot gnu.org> ---
(In reply to Andrew Pinski from comment #3)
> Confirmed, here is shorter example:
> template<typename V> void B(V a)
> {
>   a.Foo<int> ();
> }

We still give the same error, just with a caret location now:

templ.cc: In function ‘void B(V)’:
templ.cc:3:9: error: expected primary-expression before ‘int’
   a.Foo<int> ();
         ^
templ.cc:3:9: error: expected ‘;’ before ‘int’


whereas Clang is much better:

templ.cc:3:5: error: use 'template' keyword to treat 'Foo' as a dependent
template name
  a.Foo<int> ();
    ^
    template 
1 error generated.

Reply via email to