summaryrefslogtreecommitdiffstats
path: root/clang/lib/Parse/ParseDecl.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'clang/lib/Parse/ParseDecl.cpp')
-rw-r--r--clang/lib/Parse/ParseDecl.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/clang/lib/Parse/ParseDecl.cpp b/clang/lib/Parse/ParseDecl.cpp
index 278c80f72c3..71353d27b6c 100644
--- a/clang/lib/Parse/ParseDecl.cpp
+++ b/clang/lib/Parse/ParseDecl.cpp
@@ -427,7 +427,7 @@ void Parser::ParseDeclarationSpecifiers(DeclSpec &DS) {
// Only annotate C++ scope. Allow class-name as an identifier in case
// it's a constructor.
if (getLang().CPlusPlus)
- TryAnnotateScopeToken();
+ TryAnnotateCXXScopeToken();
switch (Tok.getKind()) {
default:
@@ -985,8 +985,7 @@ void Parser::ParseEnumSpecifier(DeclSpec &DS) {
Attr = ParseAttributes();
CXXScopeSpec SS;
- if (isTokenCXXScopeSpecifier()) {
- ParseCXXScopeSpecifier(SS);
+ if (getLang().CPlusPlus && MaybeParseCXXScopeSpecifier(SS)) {
if (Tok.isNot(tok::identifier)) {
Diag(Tok, diag::err_expected_ident);
if (Tok.isNot(tok::l_brace)) {
@@ -1435,8 +1434,8 @@ void Parser::ParseDirectDeclarator(Declarator &D) {
CXXScopeSpec &SS = D.getCXXScopeSpec();
DeclaratorScopeObj DeclScopeObj(*this, SS);
- if (D.mayHaveIdentifier() && isTokenCXXScopeSpecifier()) {
- ParseCXXScopeSpecifier(SS);
+ if (D.mayHaveIdentifier() &&
+ getLang().CPlusPlus && MaybeParseCXXScopeSpecifier(SS)) {
// Change the declaration context for name lookup, until this function is
// exited (and the declarator has been parsed).
DeclScopeObj.EnterDeclaratorScope();
OpenPOWER on IntegriCloud