Improve error recovery from missing '>' in template argument list.
authorRichard Smith <richard@metafoo.co.uk>
Sat, 28 Mar 2020 01:50:02 +0000 (18:50 -0700)
committerRichard Smith <richard@metafoo.co.uk>
Sat, 28 Mar 2020 01:59:01 +0000 (18:59 -0700)
commit0c42539df3d4c697fa3bf6fc88e94b127d334a57
tree2b85cc0355c8f6af82399f1b1255c4ea01a0a75a
parentfec6c5ac5e5756c33c0a3d57464298ec701e4821
Improve error recovery from missing '>' in template argument list.

Produce the conventional "to match this '<'" note, so that the user
knows why we expected a '>', and properly handle '>>' in C++11 onwards.
15 files changed:
clang/include/clang/Parse/Parser.h
clang/include/clang/Sema/ParsedTemplate.h
clang/lib/Parse/ParseObjc.cpp
clang/lib/Parse/ParseTemplate.cpp
clang/test/CXX/basic/basic.lookup/basic.lookup.unqual/p3.cpp
clang/test/CXX/drs/dr3xx.cpp
clang/test/Parser/cxx-member-initializers.cpp
clang/test/Parser/cxx-template-argument.cpp
clang/test/Parser/cxx-template-decl.cpp
clang/test/Parser/objc-error-qualified-implementation.m
clang/test/SemaCXX/decltype.cpp
clang/test/SemaCXX/implicit-exception-spec.cpp
clang/test/SemaCXX/injected-class-name-crash.cpp
clang/test/SemaObjC/crash-on-type-args-protocols.m
clang/test/SemaTemplate/ms-delayed-default-template-args.cpp