diff --git a/clang/lib/Lex/ModuleMap.cpp b/clang/lib/Lex/ModuleMap.cpp
index 3f8af87..b815400 100644
--- a/clang/lib/Lex/ModuleMap.cpp
+++ b/clang/lib/Lex/ModuleMap.cpp
@@ -655,8 +655,8 @@
   };
 
   /// \brief The set of attributes that can be attached to a module.
-  struct Attribute {
-    Attribute() : IsSystem() { }
+  struct Attributes {
+    Attributes() : IsSystem() { }
 
     /// \brief Whether this is a system module.
     unsigned IsSystem : 1;
@@ -709,7 +709,7 @@
     void parseUmbrellaDirDecl(SourceLocation UmbrellaLoc);
     void parseExportDecl();
     void parseInferredModuleDecl(bool Framework, bool Explicit);
-    bool parseOptionalAttributes(Attribute &Attrs);
+    bool parseOptionalAttributes(Attributes &Attrs);
 
     const DirectoryEntry *getOverriddenHeaderSearchDir();
     
@@ -1007,7 +1007,7 @@
   SourceLocation ModuleNameLoc = Id.back().second;
   
   // Parse the optional attribute list.
-  Attribute Attrs;
+  Attributes Attrs;
   parseOptionalAttributes(Attrs);
   
   // Parse the opening brace.
@@ -1475,7 +1475,7 @@
   }
 
   // Parse optional attributes.
-  Attribute Attrs;
+  Attributes Attrs;
   parseOptionalAttributes(Attrs);
 
   if (ActiveModule) {
@@ -1576,7 +1576,7 @@
 /// \param Attrs Will be filled in with the parsed attributes.
 ///
 /// \returns true if an error occurred, false otherwise.
-bool ModuleMapParser::parseOptionalAttributes(Attribute &Attrs) {
+bool ModuleMapParser::parseOptionalAttributes(Attributes &Attrs) {
   bool HadError = false;
   
   while (Tok.is(MMToken::LSquare)) {
