From: Rafael Espindola Date: Tue, 23 Jul 2013 11:02:16 +0000 (+0000) Subject: Fix the build in c++03 mode. X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=af02bf4a581dc9548ba3160b9d654a4893a12491;p=oota-llvm.git Fix the build in c++03 mode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186935 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/tools/llvm-ar/llvm-ar.cpp b/tools/llvm-ar/llvm-ar.cpp index db87f76d81d..116143e1685 100644 --- a/tools/llvm-ar/llvm-ar.cpp +++ b/tools/llvm-ar/llvm-ar.cpp @@ -643,7 +643,7 @@ static void writeSymbolTable( unsigned StartOffset = 0; unsigned MemberNum = 0; std::vector SymNames; - std::vector > DeleteIt; + std::vector DeleteIt; for (ArrayRef::iterator I = Members.begin(), E = Members.end(); I != E; ++I, ++MemberNum) { @@ -665,7 +665,7 @@ static void writeSymbolTable( } if (!Obj) continue; - DeleteIt.push_back(OwningPtr(Obj)); + DeleteIt.push_back(Obj); if (!StartOffset) { printMemberHeader(Out, "", sys::TimeValue::now(), 0, 0, 0, 0); StartOffset = Out.tell(); @@ -698,6 +698,13 @@ static void writeSymbolTable( Out << '\0'; } + for (std::vector::iterator I = DeleteIt.begin(), + E = DeleteIt.end(); + I != E; ++I) { + object::ObjectFile *O = *I; + delete O; + } + if (StartOffset == 0) return;