From d6a48b16f62054094a1f0c8cc133d5a6a9a09f1f Mon Sep 17 00:00:00 2001 From: Justin Bogner Date: Mon, 15 Aug 2016 22:41:42 +0000 Subject: [PATCH] Linker: Avoid some ridiculous indentation by using a temporary. NFC This was indented really awkwardly, and clang-format didn't seem to know how to do any better. Avoid the issue with a temporary variable. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@278756 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Linker/IRMover.cpp | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/lib/Linker/IRMover.cpp b/lib/Linker/IRMover.cpp index 12ceaa2d322..6def096ccd7 100644 --- a/lib/Linker/IRMover.cpp +++ b/lib/Linker/IRMover.cpp @@ -805,18 +805,17 @@ IRLinker::linkAppendingVarProto(GlobalVariable *DstGV, SmallVector SrcElements; getArrayElements(SrcGV->getInitializer(), SrcElements); - if (IsNewStructor) - SrcElements.erase( - remove_if(SrcElements, - [this](Constant *E) { - auto *Key = dyn_cast( - E->getAggregateElement(2)->stripPointerCasts()); - if (!Key) - return false; - GlobalValue *DGV = getLinkedToGlobal(Key); - return !shouldLink(DGV, *Key); - }), - SrcElements.end()); + if (IsNewStructor) { + auto It = remove_if(SrcElements, [this](Constant *E) { + auto *Key = + dyn_cast(E->getAggregateElement(2)->stripPointerCasts()); + if (!Key) + return false; + GlobalValue *DGV = getLinkedToGlobal(Key); + return !shouldLink(DGV, *Key); + }); + SrcElements.erase(It, SrcElements.end()); + } uint64_t NewSize = DstNumElements + SrcElements.size(); ArrayType *NewType = ArrayType::get(EltTy, NewSize);