Эх сурвалжийг харах

Simplify diagnosis of misplaced attributes in module-declarations.

No functional change intended.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@358463 91177308-0d34-0410-b5e6-96231b3b80d8
Richard Smith 6 жил өмнө
parent
commit
a9be1eb7d9
1 өөрчлөгдсөн 3 нэмэгдсэн , 4 устгасан
  1. 3 4
      lib/Parse/Parser.cpp

+ 3 - 4
lib/Parse/Parser.cpp

@@ -2170,8 +2170,8 @@ Parser::DeclGroupPtrTy Parser::ParseModuleDecl(bool IsFirstDecl) {
   SourceLocation ModuleLoc = ConsumeToken();
 
   // Attributes appear after the module name, not before.
-  if (Tok.is(tok::l_square))
-    CheckProhibitedCXX11Attribute();
+  // FIXME: Suggest moving the attributes later with a fixit.
+  DiagnoseAndSkipCXX11Attributes();
 
   // Parse a global-module-fragment, if present.
   if (getLangOpts().CPlusPlusModules && Tok.is(tok::semi)) {
@@ -2197,8 +2197,7 @@ Parser::DeclGroupPtrTy Parser::ParseModuleDecl(bool IsFirstDecl) {
     }
     ConsumeToken();
     SourceLocation PrivateLoc = ConsumeToken();
-    if (Tok.is(tok::l_square))
-      CheckProhibitedCXX11Attribute();
+    DiagnoseAndSkipCXX11Attributes();
     ExpectAndConsumeSemi(diag::err_private_module_fragment_expected_semi);
     return Actions.ActOnPrivateModuleFragmentDecl(ModuleLoc, PrivateLoc);
   }