]> granicus.if.org Git - clang/commitdiff
Disable for now, doesn't play nice with the temporary code.
authorMike Stump <mrs@apple.com>
Fri, 4 Dec 2009 03:55:53 +0000 (03:55 +0000)
committerMike Stump <mrs@apple.com>
Fri, 4 Dec 2009 03:55:53 +0000 (03:55 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90537 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/CGException.cpp

index d7149110543c407244df6d5634b9b0e72e65fabf..5f54935361c19ed80f4f3014ba9de47774f510c1 100644 (file)
@@ -134,9 +134,12 @@ static void CopyObject(CodeGenFunction &CGF, const Expr *E, llvm::Value *N) {
     } else if (CXXConstructorDecl *CopyCtor
                = RD->getCopyConstructor(CGF.getContext(), 0)) {
       // All temporaries end before we call __cxa_throw
-      CodeGenFunction::CleanupScope TryScope(CGF);
+      // FIXME: Doesn't work well with eh31.C and PopCXXTemporary
+      // CodeGenFunction::CleanupScope TryScope(CGF);
       {
         // These actions are only on the exceptional edge.
+#if 0
+        // FIXME: Doesn't work well with eh31.C and PopCXXTemporary
         CodeGenFunction::DelayedCleanupBlock Scope(CGF, true);
 
         llvm::Constant *FreeExceptionFn = getFreeExceptionFn(CGF);
@@ -144,6 +147,7 @@ static void CopyObject(CodeGenFunction &CGF, const Expr *E, llvm::Value *N) {
           = llvm::Type::getInt8PtrTy(CGF.getLLVMContext());
         llvm::Value *ExceptionPtr = CGF.Builder.CreateBitCast(N, Int8PtrTy);
         CGF.Builder.CreateCall(FreeExceptionFn, ExceptionPtr);
+#endif
       }
 
       llvm::Value *Src = CGF.EmitLValue(E).getAddress();