## Check that llvm-objcopy reports a suitable error when it
## encounters invalid input during reading.
## Failed to read section data.
# RUN: yaml2obj %s --docnum=1 -o %t1
# RUN: not llvm-objcopy %t1 %t1.out 2>&1 | FileCheck %s -DFILE=%t1 --check-prefix=ERROR1
# ERROR1: error: '[[FILE]]': The end of the file was unexpectedly encountered: section data with offset 0x70 and size 0x20 goes past the end of the file
--- !XCOFF
FileHeader:
MagicNumber: 0x01DF
Sections:
- SectionData: '00007400'
FileOffsetToData: 0x70
Size: 0x20
## Failed to read relocations.
# RUN: yaml2obj %s --docnum=2 -o %t2
# RUN: not llvm-objcopy %t2 %t2.out 2>&1 | FileCheck %s -DFILE=%t2 --check-prefix=ERROR2
# ERROR2: error: '[[FILE]]': The end of the file was unexpectedly encountered: relocations with offset 0x3c and size 0x1e go past the end of the file
--- !XCOFF
FileHeader:
MagicNumber: 0x01DF
Sections:
- NumberOfRelocations: 0x3
Relocations:
- Address: 0xE
Symbol: 0x12
Info: 0xF
Type: 0x3
## Failed to read the symbols.
# RUN: yaml2obj %s --docnum=3 -o %t3
# RUN: not llvm-objcopy %t3 %t3.out 2>&1 | FileCheck %s -DFILE=%t3 --check-prefix=ERROR3
# ERROR3: error: '[[FILE]]': The end of the file was unexpectedly encountered: symbol table with offset 0x15 and size 0x36 goes past the end of the file
--- !XCOFF
FileHeader:
MagicNumber: 0x01DF
OffsetToSymbolTable: 0x15
EntriesInSymbolTable: 3
Symbols:
- Name: foo
AuxEntries:
- Type: AUX_CSECT