]> granicus.if.org Git - clang/commitdiff
Constify.
authorAnders Carlsson <andersca@mac.com>
Fri, 2 Apr 2010 03:38:04 +0000 (03:38 +0000)
committerAnders Carlsson <andersca@mac.com>
Fri, 2 Apr 2010 03:38:04 +0000 (03:38 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@100174 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Sema/SemaDeclCXX.cpp

index 8a2e4b0560a5766bbb157cce40c6191a96010057..c8d47fa3f229c22b4711cbe8bcb1820e49b1a430 100644 (file)
@@ -1705,7 +1705,7 @@ static void *GetKeyForMember(CXXBaseOrMemberInitializer *Member,
 
 static void
 DiagnoseBaseOrMemInitializerOrder(Sema &SemaRef,
-                                  CXXConstructorDecl *Constructor,
+                                  const CXXConstructorDecl *Constructor,
                                   CXXBaseOrMemberInitializer **MemInits,
                                   unsigned NumMemInits) {
   if (Constructor->isDependentContext())
@@ -1721,15 +1721,15 @@ DiagnoseBaseOrMemInitializerOrder(Sema &SemaRef,
   // of 1) base class declarations and 2) order of non-static data members.
   llvm::SmallVector<const void*, 32> AllBaseOrMembers;
 
-  CXXRecordDecl *ClassDecl
-    = cast<CXXRecordDecl>(Constructor->getDeclContext());
+  const CXXRecordDecl *ClassDecl = Constructor->getParent();
+
   // Push virtual bases before others.
-  for (CXXRecordDecl::base_class_iterator VBase =
+  for (CXXRecordDecl::base_class_const_iterator VBase =
        ClassDecl->vbases_begin(),
        E = ClassDecl->vbases_end(); VBase != E; ++VBase)
     AllBaseOrMembers.push_back(GetKeyForBase(VBase->getType()));
 
-  for (CXXRecordDecl::base_class_iterator Base = ClassDecl->bases_begin(),
+  for (CXXRecordDecl::base_class_const_iterator Base = ClassDecl->bases_begin(),
        E = ClassDecl->bases_end(); Base != E; ++Base) {
     // Virtuals are alread in the virtual base list and are constructed
     // first.