diff options
Diffstat (limited to 'llvm/lib/ToolDrivers/llvm-lib/LibDriver.cpp')
-rw-r--r-- | llvm/lib/ToolDrivers/llvm-lib/LibDriver.cpp | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/llvm/lib/ToolDrivers/llvm-lib/LibDriver.cpp b/llvm/lib/ToolDrivers/llvm-lib/LibDriver.cpp index 2d44686..34a8314 100644 --- a/llvm/lib/ToolDrivers/llvm-lib/LibDriver.cpp +++ b/llvm/lib/ToolDrivers/llvm-lib/LibDriver.cpp @@ -211,14 +211,9 @@ int llvm::libDriverMain(ArrayRef<const char *> ArgsArr) { // llvm-lib uses relative paths for both regular and thin archives, unlike // standard GNU ar, which only uses relative paths for thin archives and // basenames for regular archives. - for (NewArchiveMember &Member : Members) { - if (sys::path::is_relative(Member.MemberName)) { - Expected<std::string> PathOrErr = - computeArchiveRelativePath(OutputPath, Member.MemberName); - if (PathOrErr) - Member.MemberName = Saver.save(*PathOrErr); - } - } + for (NewArchiveMember &Member : Members) + Member.MemberName = + Saver.save(computeArchiveRelativePath(OutputPath, Member.MemberName)); if (Error E = writeArchive(OutputPath, Members, |