## This test ensures that LLVM will not crash when converting a Mach-O object
## file with a malformed symbol whose n_sect points to an invalid offset.
# RUN: yaml2obj %s -o %t
# RUN: not llvm-gsymutil --convert %t -o %t.o 2>&1 | FileCheck %s
# CHECK: Loaded 0 functions from symbol table.
--- !mach-o
FileHeader:
magic: 0xFEEDFACF
cputype: 0x01000007
cpusubtype: 0x00000003
filetype: 0x0000000A
ncmds: 1
sizeofcmds: 100
flags: 0x00000000
reserved: 0x00000000
LoadCommands:
- cmd: LC_SYMTAB
cmdsize: 24
symoff: 4096
nsyms: 1
stroff: 4144
strsize: 6
LinkEditData:
NameList:
- n_strx: 2 # _foo
n_type: 0x0e
n_sect: 3 # Points to an invalid offset.
n_desc: 0
n_value: 1234
StringTable:
- ''
- ''
- _foo