Allocate BaseOrMemberInitializers and CXXBaseSpecifier nodes
via ASTContext.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76758 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Sema/SemaDeclCXX.cpp b/lib/Sema/SemaDeclCXX.cpp
index 1dcac3f..2b8d0a8 100644
--- a/lib/Sema/SemaDeclCXX.cpp
+++ b/lib/Sema/SemaDeclCXX.cpp
@@ -359,7 +359,7 @@
   }
 
   if (BaseType->isDependentType())
-    return new CXXBaseSpecifier(SpecifierRange, Virtual, 
+    return new (Context) CXXBaseSpecifier(SpecifierRange, Virtual, 
                                 Class->getTagKind() == RecordDecl::TK_class,
                                 Access, BaseType);
 
@@ -416,7 +416,7 @@
   
   // Create the base specifier.
   // FIXME: Allocate via ASTContext?
-  return new CXXBaseSpecifier(SpecifierRange, Virtual, 
+  return new (Context) CXXBaseSpecifier(SpecifierRange, Virtual, 
                               Class->getTagKind() == RecordDecl::TK_class, 
                               Access, BaseType);
 }
@@ -697,8 +697,8 @@
 
     if (Member) {
       // FIXME: Perform direct initialization of the member.
-      return new CXXBaseOrMemberInitializer(Member, (Expr **)Args, NumArgs, 
-                                            IdLoc);
+      return new (Context) CXXBaseOrMemberInitializer(Member, (Expr **)Args, 
+                                                      NumArgs, IdLoc);
     }
   }
   // It didn't name a member, so see if it names a class.
@@ -770,8 +770,8 @@
     << SourceRange(IdLoc, RParenLoc);
     
 
-  return new CXXBaseOrMemberInitializer(BaseType, (Expr **)Args, NumArgs, 
-                                        IdLoc);
+  return new (Context) CXXBaseOrMemberInitializer(BaseType, (Expr **)Args, 
+                                                  NumArgs, IdLoc);
 }
 
 static void *GetKeyForTopLevelField(FieldDecl *Field) {