summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-ar/llvm-ar.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2013-07-23 11:02:16 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2013-07-23 11:02:16 +0000
commit188bfd26a871d5234614d20d406cb80b686a556f (patch)
tree2fcf0d2b9d6c6e1062fd6e7753a77c72e7372846 /llvm/tools/llvm-ar/llvm-ar.cpp
parentce7f52db48167eb950775e904c300a65cd056d60 (diff)
downloadbcm5719-llvm-188bfd26a871d5234614d20d406cb80b686a556f.tar.gz
bcm5719-llvm-188bfd26a871d5234614d20d406cb80b686a556f.zip
Fix the build in c++03 mode.
llvm-svn: 186935
Diffstat (limited to 'llvm/tools/llvm-ar/llvm-ar.cpp')
-rw-r--r--llvm/tools/llvm-ar/llvm-ar.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/llvm/tools/llvm-ar/llvm-ar.cpp b/llvm/tools/llvm-ar/llvm-ar.cpp
index db87f76d81d..116143e1685 100644
--- a/llvm/tools/llvm-ar/llvm-ar.cpp
+++ b/llvm/tools/llvm-ar/llvm-ar.cpp
@@ -643,7 +643,7 @@ static void writeSymbolTable(
unsigned StartOffset = 0;
unsigned MemberNum = 0;
std::vector<StringRef> SymNames;
- std::vector<OwningPtr<object::ObjectFile> > DeleteIt;
+ std::vector<object::ObjectFile *> DeleteIt;
for (ArrayRef<NewArchiveIterator>::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<object::ObjectFile>(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<object::ObjectFile *>::iterator I = DeleteIt.begin(),
+ E = DeleteIt.end();
+ I != E; ++I) {
+ object::ObjectFile *O = *I;
+ delete O;
+ }
+
if (StartOffset == 0)
return;
OpenPOWER on IntegriCloud