39 lines · plain
1# This test intentionally checks for fatal errors, and fatal errors aren't supported for testing when main is run twice.2# XFAIL: main-run-twice3## .dynamic section has invalid sh_entsize, check we report it.4# RUN: yaml2obj --docnum=1 %s -o %t.so5# RUN: not ld.lld %t.so -o /dev/null 2>&1 | FileCheck %s --check-prefix=ERR16# ERR1: error: {{.*}}.so: section [index 1] has invalid sh_entsize: expected 16, but got 2917 8--- !ELF9FileHeader:10 Class: ELFCLASS6411 Data: ELFDATA2LSB12 Type: ET_DYN13 Machine: EM_X86_6414Sections:15 - Name: .dynamic16 Type: SHT_DYNAMIC17 Flags: [ SHF_ALLOC ]18 Link: .strtab19 EntSize: 0x12320 21## The .dynamic section has invalid sh_size, which is too short and22## even less than entry size. Check we report it.23# RUN: yaml2obj --docnum=2 %s -o %t.so24# RUN: not ld.lld %t.so -o /dev/null 2>&1 | FileCheck %s --check-prefix=ERR225# ERR2: error: {{.*}}.so: section [index 1] has an invalid sh_size (1) which is not a multiple of its sh_entsize (16)26 27--- !ELF28FileHeader:29 Class: ELFCLASS6430 Data: ELFDATA2LSB31 Type: ET_DYN32 Machine: EM_X86_6433Sections:34 - Name: .dynamic35 Type: SHT_DYNAMIC36 Flags: [ SHF_ALLOC ]37 Link: .strtab38 Content: "00"39