diff options
| author | Vedant Kumar <vsk@apple.com> | 2016-08-03 18:44:32 +0000 |
|---|---|---|
| committer | Vedant Kumar <vsk@apple.com> | 2016-08-03 18:44:32 +0000 |
| commit | bfb6072d84fbd6169d57afe9d812de1abca7b5d7 (patch) | |
| tree | ca63aef2231c865815c8d3af447996f6e9c34b96 /llvm/tools/llvm-ar | |
| parent | 23ee12e173762f977f1deeec14dccb32f6478204 (diff) | |
| download | bcm5719-llvm-bfb6072d84fbd6169d57afe9d812de1abca7b5d7.tar.gz bcm5719-llvm-bfb6072d84fbd6169d57afe9d812de1abca7b5d7.zip | |
Revert "More fixes to get good error messages for bad archives."
This reverts commit r277540. It breaks the build with:
../lib/Object/Archive.cpp:264:41: error: return type of out-of-line definition of 'llvm::object::ArchiveMemberHeader::getUID' differs from that in the declaration
Expected<unsigned> ArchiveMemberHeader::getUID() const {
~~~~~~~~~~~~~~~~~~ ^
include/llvm/Object/Archive.h:53:12: note: previous declaration is here
unsigned getUID() const;
~~~~~~~~ ^
llvm-svn: 277627
Diffstat (limited to 'llvm/tools/llvm-ar')
| -rw-r--r-- | llvm/tools/llvm-ar/llvm-ar.cpp | 31 |
1 files changed, 8 insertions, 23 deletions
diff --git a/llvm/tools/llvm-ar/llvm-ar.cpp b/llvm/tools/llvm-ar/llvm-ar.cpp index cf2f98f83e1..f52f9c376c1 100644 --- a/llvm/tools/llvm-ar/llvm-ar.cpp +++ b/llvm/tools/llvm-ar/llvm-ar.cpp @@ -338,24 +338,16 @@ static void printMode(unsigned mode) { // modification time are also printed. static void doDisplayTable(StringRef Name, const object::Archive::Child &C) { if (Verbose) { - Expected<sys::fs::perms> ModeOrErr = C.getAccessMode(); - failIfError(ModeOrErr.takeError()); - sys::fs::perms Mode = ModeOrErr.get(); + sys::fs::perms Mode = C.getAccessMode(); printMode((Mode >> 6) & 007); printMode((Mode >> 3) & 007); printMode(Mode & 007); - Expected<unsigned> UIDOrErr = C.getUID(); - failIfError(UIDOrErr.takeError()); - outs() << ' ' << UIDOrErr.get(); - Expected<unsigned> GIDOrErr = C.getGID(); - failIfError(GIDOrErr.takeError()); - outs() << '/' << GIDOrErr.get(); + outs() << ' ' << C.getUID(); + outs() << '/' << C.getGID(); Expected<uint64_t> Size = C.getSize(); failIfError(Size.takeError()); outs() << ' ' << format("%6llu", Size.get()); - Expected<sys::TimeValue> ModTimeOrErr = C.getLastModified(); - failIfError(ModTimeOrErr.takeError()); - outs() << ' ' << ModTimeOrErr.get().str(); + outs() << ' ' << C.getLastModified().str(); outs() << ' '; } outs() << Name << "\n"; @@ -365,9 +357,7 @@ static void doDisplayTable(StringRef Name, const object::Archive::Child &C) { // system. static void doExtract(StringRef Name, const object::Archive::Child &C) { // Retain the original mode. - Expected<sys::fs::perms> ModeOrErr = C.getAccessMode(); - failIfError(ModeOrErr.takeError()); - sys::fs::perms Mode = ModeOrErr.get(); + sys::fs::perms Mode = C.getAccessMode(); int FD; failIfError(sys::fs::openFileForWrite(Name, FD, sys::fs::F_None, Mode), Name); @@ -384,12 +374,9 @@ static void doExtract(StringRef Name, const object::Archive::Child &C) { // If we're supposed to retain the original modification times, etc. do so // now. - if (OriginalDates) { - Expected<sys::TimeValue> ModTimeOrErr = C.getLastModified(); - failIfError(ModTimeOrErr.takeError()); + if (OriginalDates) failIfError( - sys::fs::setLastModificationAndAccessTime(FD, ModTimeOrErr.get())); - } + sys::fs::setLastModificationAndAccessTime(FD, C.getLastModified())); if (close(FD)) fail("Could not close the file"); @@ -524,9 +511,7 @@ static InsertAction computeInsertAction(ArchiveOperation Operation, // operation. sys::fs::file_status Status; failIfError(sys::fs::status(*MI, Status), *MI); - Expected<sys::TimeValue> ModTimeOrErr = Member.getLastModified(); - failIfError(ModTimeOrErr.takeError()); - if (Status.getLastModificationTime() < ModTimeOrErr.get()) { + if (Status.getLastModificationTime() < Member.getLastModified()) { if (PosName.empty()) return IA_AddOldMember; return IA_MoveOldMember; |

