diff options
author | Douglas Gregor <dgregor@apple.com> | 2009-11-04 00:56:37 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2009-11-04 00:56:37 +0000 |
commit | 71395fa1d5f3dac15f4930143c481292ec715cb3 (patch) | |
tree | b29aec6089ef8728412eeaa15b96e50870db11fd /clang/lib/Parse/Parser.cpp | |
parent | 71609a28742370150b2c97dcc9d9e670779d74d7 (diff) | |
download | bcm5719-llvm-71395fa1d5f3dac15f4930143c481292ec715cb3.tar.gz bcm5719-llvm-71395fa1d5f3dac15f4930143c481292ec715cb3.zip |
Implement support for parsing dependent template-ids that refer to
overloaded operators, e.g.,
p->template operator+<T>()
llvm-svn: 85989
Diffstat (limited to 'clang/lib/Parse/Parser.cpp')
-rw-r--r-- | clang/lib/Parse/Parser.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/clang/lib/Parse/Parser.cpp b/clang/lib/Parse/Parser.cpp index d1baa91b65a..6836c307d32 100644 --- a/clang/lib/Parse/Parser.cpp +++ b/clang/lib/Parse/Parser.cpp @@ -940,13 +940,16 @@ bool Parser::TryAnnotateTypeOrScopeToken(bool EnteringContext) { if (TemplateNameKind TNK = Actions.isTemplateName(CurScope, SS, TemplateName, /*ObjectType=*/0, EnteringContext, - Template)) - if (AnnotateTemplateIdToken(Template, TNK, &SS)) { + Template)) { + // Consume the identifier. + ConsumeToken(); + if (AnnotateTemplateIdToken(Template, TNK, &SS, TemplateName)) { // If an unrecoverable error occurred, we need to return true here, // because the token stream is in a damaged state. We may not return // a valid identifier. return Tok.isNot(tok::identifier); } + } } // The current token, which is either an identifier or a |