[cfe-commits] r150147 - /cfe/trunk/lib/CodeGen/CGExprCXX.cpp

Eli Friedman eli.friedman at gmail.com
Wed Feb 8 19:47:20 PST 2012


Author: efriedma
Date: Wed Feb  8 21:47:20 2012
New Revision: 150147

URL: http://llvm.org/viewvc/llvm-project?rev=150147&view=rev
Log:
Use RAII object for cleanups.


Modified:
    cfe/trunk/lib/CodeGen/CGExprCXX.cpp

Modified: cfe/trunk/lib/CodeGen/CGExprCXX.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGExprCXX.cpp?rev=150147&r1=150146&r2=150147&view=diff
==============================================================================
--- cfe/trunk/lib/CodeGen/CGExprCXX.cpp (original)
+++ cfe/trunk/lib/CodeGen/CGExprCXX.cpp Wed Feb  8 21:47:20 2012
@@ -1784,7 +1784,8 @@
 }
 
 void CodeGenFunction::EmitLambdaExpr(const LambdaExpr *E, AggValueSlot Slot) {
-  EHScopeStack::stable_iterator CleanupDepth = EHStack.stable_begin();
+  RunCleanupsScope Scope(*this);
+
   CXXRecordDecl::field_iterator CurField = E->getLambdaClass()->field_begin();
   for (LambdaExpr::capture_init_iterator i = E->capture_init_begin(),
                                          e = E->capture_init_end();
@@ -1809,5 +1810,4 @@
                                                 RD->getDestructor(),
                                                 Slot.getAddr());
   }
-  PopCleanupBlocks(CleanupDepth);
 }





More information about the cfe-commits mailing list