Current diagnostic says "expected expression" or "reference to non-static member function must be called". This should fix PR13566 and PR18995
Details
Details
Diff Detail
Diff Detail
Event Timeline
lib/Parse/ParseTemplate.cpp | ||
---|---|---|
1233–1240 | This looks wrong: it will parse anything that could be a template argument list as a template argument list. In ambiguous cases, we must parse as a < operator. | |
test/SemaTemplate/dependent-template-recover.cpp | ||
14–15 | I think you will incorrectly treat (*t).f2<0>(0); ... as a dependent template name. Instead, it's required to be parsed as ((*t.f2) < 0) > 0; | |
35 | This diagnostic is incorrect. |
This looks wrong: it will parse anything that could be a template argument list as a template argument list. In ambiguous cases, we must parse as a < operator.