Go back to asking CodeGenTypes whether a type is zero-initializable.
Make CGT defer to the ABI on all member pointer types.
This requires giving CGT a handle to the ABI.
It's way easier to make that work if we avoid lazily creating the ABI.
Make it so.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111786 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/CGCXX.cpp b/lib/CodeGen/CGCXX.cpp
index b805d13..8fb3fe3 100644
--- a/lib/CodeGen/CGCXX.cpp
+++ b/lib/CodeGen/CGCXX.cpp
@@ -393,10 +393,7 @@
                                          MD->getParent()->getTypeForDecl()));
 }
 
-bool CGCXXABI::RequiresNonZeroInitializer(QualType T) {
-  return false;
-}
-
-bool CGCXXABI::RequiresNonZeroInitializer(const CXXRecordDecl *D) {
-  return RequiresNonZeroInitializer(QualType(D->getTypeForDecl(), 0));
+bool CGCXXABI::isZeroInitializable(const MemberPointerType *MPT) {
+  // Fake answer.
+  return true;
 }