]> granicus.if.org Git - clang/commitdiff
Fixup comments.
authorAnders Carlsson <andersca@mac.com>
Fri, 25 Mar 2011 14:55:14 +0000 (14:55 +0000)
committerAnders Carlsson <andersca@mac.com>
Fri, 25 Mar 2011 14:55:14 +0000 (14:55 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128280 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Parse/ParseDeclCXX.cpp
lib/Sema/SemaDeclCXX.cpp

index eb6b8fb05beae61ad8025c75cc76244791614d16..dac40d87139ff65df2a2dcc4d083e6b0106f4b6b 100644 (file)
@@ -810,7 +810,7 @@ void Parser::ParseClassSpecifier(tok::TokenKind TagTokKind,
   // There are four options here.  If we have 'struct foo;', then this
   // is either a forward declaration or a friend declaration, which
   // have to be treated differently.  If we have 'struct foo {...',
-  // 'struct foo :...' or 'struct foo <class-virt-specifier>' then this is a
+  // 'struct foo :...' or 'struct foo final[opt]' then this is a
   // definition. Otherwise we have something like 'struct foo xyz', a reference.
   // However, in some contexts, things look like declarations but are just
   // references, e.g.
index 3515ad4ed3c07c1b23e43b74b8ee3325c5e9144e..b193c6021848ff64b98dc118f09cda6c88387379 100644 (file)
@@ -563,10 +563,9 @@ Sema::CheckBaseSpecifier(CXXRecordDecl *Class,
   CXXRecordDecl * CXXBaseDecl = cast<CXXRecordDecl>(BaseDecl);
   assert(CXXBaseDecl && "Base type is not a C++ type");
 
-  // C++ [class.derived]p2:
-  //   If a class is marked with the class-virt-specifier final and it appears
-  //   as a base-type-specifier in a base-clause (10 class.derived), the program
-  //   is ill-formed.
+  // C++ [class]p3:
+  //   If a class is marked final and it appears as a base-type-specifier in 
+  //   base-clause, the program is ill-formed.
   if (CXXBaseDecl->hasAttr<FinalAttr>()) {
     Diag(BaseLoc, diag::err_class_marked_final_used_as_base) 
       << CXXBaseDecl->getDeclName();