[llvm] r284867 - Fix a bug in the code of llvm-cxxdump in dumpArchive() when
Kevin Enderby via llvm-commits
llvm-commits at lists.llvm.org
Fri Oct 21 13:03:14 PDT 2016
Author: enderby
Date: Fri Oct 21 15:03:14 2016
New Revision: 284867
URL: http://llvm.org/viewvc/llvm-project?rev=284867&view=rev
Log:
Fix a bug in the code of llvm-cxxdump in dumpArchive() when
iterating over an archive with object and non-object members that
would cause an Abort because to was not calling consumeError()
when the code was wanting to ignore a non-object file.
Found by Justin Bogner!
Added:
llvm/trunk/test/tools/llvm-cxxdump/Inputs/mixed-archive.coff-i386 (with props)
Modified:
llvm/trunk/test/tools/llvm-cxxdump/trivial.test
llvm/trunk/tools/llvm-cxxdump/llvm-cxxdump.cpp
Added: llvm/trunk/test/tools/llvm-cxxdump/Inputs/mixed-archive.coff-i386
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-cxxdump/Inputs/mixed-archive.coff-i386?rev=284867&view=auto
==============================================================================
Binary file - no diff available.
Propchange: llvm/trunk/test/tools/llvm-cxxdump/Inputs/mixed-archive.coff-i386
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Modified: llvm/trunk/test/tools/llvm-cxxdump/trivial.test
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-cxxdump/trivial.test?rev=284867&r1=284866&r2=284867&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-cxxdump/trivial.test (original)
+++ llvm/trunk/test/tools/llvm-cxxdump/trivial.test Fri Oct 21 15:03:14 2016
@@ -4,6 +4,9 @@ RUN: | FileCheck %s --check-prefix=COF
RUN: llvm-cxxdump %p/Inputs/trivial.obj.elf-i386 \
RUN: | FileCheck %s --check-prefix=ELF-I386
+RUN: llvm-cxxdump %p/Inputs/mixed-archive.coff-i386 \
+RUN: | FileCheck %s --check-prefix=MIXEDARCOFF-I386
+
COFF-I386: ??_7S@@6B@[0]: ??_R4S@@6B@
COFF-I386-NEXT: ??_7S@@6B@[4]: ??_GS@@UAEPAXI at Z
COFF-I386-NEXT: ??_8S@@7B@[0]: -4
@@ -57,5 +60,7 @@ ELF-I386-NEXT: _ZTV1A[0]: 0
ELF-I386-NEXT: _ZTV1A[4]: _ZTI1A
ELF-I386-NEXT: _ZTV1A[8]: _ZN1A1fEv
+MIXEDARCOFF-I386: ??_7S@@6B@[0]: ??_R4S@@6B@
+
RUN: not llvm-cxxdump %t.blah 2>&1 | FileCheck --check-prefix=ENOENT %s
ENOENT: {{.*}}.blah: {{[Nn]}}o such file or directory
Modified: llvm/trunk/tools/llvm-cxxdump/llvm-cxxdump.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-cxxdump/llvm-cxxdump.cpp?rev=284867&r1=284866&r2=284867&view=diff
==============================================================================
--- llvm/trunk/tools/llvm-cxxdump/llvm-cxxdump.cpp (original)
+++ llvm/trunk/tools/llvm-cxxdump/llvm-cxxdump.cpp Fri Oct 21 15:03:14 2016
@@ -502,7 +502,7 @@ static void dumpArchive(const Archive *A
OS.flush();
reportError(Arc->getFileName(), Buf);
}
- ChildOrErr.takeError();
+ consumeError(ChildOrErr.takeError());
continue;
}
More information about the llvm-commits
mailing list