diff options
-rw-r--r-- | lib/Transforms/Scalar/ObjCARC.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/Transforms/Scalar/ObjCARC.cpp b/lib/Transforms/Scalar/ObjCARC.cpp index c74c353e81..5e878cf459 100644 --- a/lib/Transforms/Scalar/ObjCARC.cpp +++ b/lib/Transforms/Scalar/ObjCARC.cpp @@ -2596,8 +2596,9 @@ ObjCARCOpt::Visit(Function &F, Order.push_back(Stack.pop_back_val().first); } bool BottomUpNestingDetected = false; - while (!Order.empty()) { - BasicBlock *BB = Order.pop_back_val(); + for (SmallVectorImpl<BasicBlock *>::const_reverse_iterator I = + Order.rbegin(), E = Order.rend(); I != E; ++I) { + BasicBlock *BB = *I; BottomUpNestingDetected |= VisitBottomUp(BB, BBStates, Retains); } |