diff options
Diffstat (limited to 'llvm/tools/llvm-nm/llvm-nm.cpp')
-rw-r--r-- | llvm/tools/llvm-nm/llvm-nm.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/llvm/tools/llvm-nm/llvm-nm.cpp b/llvm/tools/llvm-nm/llvm-nm.cpp index 1934051c65d..4ad0d95d67f 100644 --- a/llvm/tools/llvm-nm/llvm-nm.cpp +++ b/llvm/tools/llvm-nm/llvm-nm.cpp @@ -486,6 +486,10 @@ static void darwinPrintSymbol(SymbolicFile &Obj, SymbolListT::iterator I, break; } Sec = *SecOrErr; + if (Sec == MachO->section_end()) { + outs() << "(?,?) "; + break; + } } else { Sec = I->Section; } @@ -997,6 +1001,8 @@ static char getSymbolNMTypeChar(MachOObjectFile &Obj, basic_symbol_iterator I) { return 's'; } section_iterator Sec = *SecOrErr; + if (Sec == Obj.section_end()) + return 's'; DataRefImpl Ref = Sec->getRawDataRefImpl(); StringRef SectionName; Obj.getSectionName(Ref, SectionName); |