diff options
author | Richard Smith <richard-llvm@metafoo.co.uk> | 2017-06-07 00:29:44 +0000 |
---|---|---|
committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2017-06-07 00:29:44 +0000 |
commit | 17c59472e8598ff369ef1accb6a05ebe86d79d69 (patch) | |
tree | 0f2667771faba6c4ee74c56d46c3250edb8a77a6 /llvm/lib/Object/Binary.cpp | |
parent | b34fd817ba23401b30d8ab4227417d2d1d24c661 (diff) | |
download | llvm-17c59472e8598ff369ef1accb6a05ebe86d79d69.zip llvm-17c59472e8598ff369ef1accb6a05ebe86d79d69.tar.gz llvm-17c59472e8598ff369ef1accb6a05ebe86d79d69.tar.bz2 |
Improve error recovery for missing 'template' keyword in contexts where the
template is valid with or without it (with different meanings).
If we see "dependent.x<...", and what follows the '<' is a valid expression,
we must parse the '<' as a comparison rather than a template angle bracket.
When we later come to instantiate, if we find that the LHS of the '<' actually
names an overload set containing function templates, produce a diagnostic
suggesting that the 'template' keyword was missed rather than producing a
mysterious diagnostic saying that the function must be called (and pointing
at what looks to already be a function call!).
llvm-svn: 304852
Diffstat (limited to 'llvm/lib/Object/Binary.cpp')
0 files changed, 0 insertions, 0 deletions