106 lines · yaml
1# This is DWARF where we placed a zero-sized type2# at an offset that is the parent DW_AT_byte_size. Check3# that we don't report an error in such cases.4#5# DW_TAG_compile_unit6# DW_AT_name ("main.cpp")7# DW_AT_language (DW_LANG_C)8#9# DW_TAG_structure_type10# DW_AT_name ("Bar")11# DW_AT_byte_size (0x00)12#13# DW_TAG_structure_type14# DW_AT_name ("Foo")15# DW_AT_byte_size (0x04)16#17# DW_TAG_member18# DW_AT_name ("mem")19# DW_AT_data_member_location ("0x04")20# DW_AT_type (0x00000011 "Bar")21#22# NULL23#24# NULL25 26# RUN: yaml2obj %s > %t27# RUN: lldb-test symbols --name=Foo --find=type %t 2>&1 | FileCheck %s28 29# CHECK: Found 1 types:30 31--- !ELF32FileHeader:33 Class: ELFCLASS6434 Data: ELFDATA2LSB35 Type: ET_EXEC36 Machine: EM_X86_6437DWARF:38 debug_str:39 - main.cpp40 - Bar41 - Foo42 - mem43 debug_abbrev:44 - ID: 045 Table:46 - Code: 0x147 Tag: DW_TAG_compile_unit48 Children: DW_CHILDREN_yes49 Attributes:50 - Attribute: DW_AT_name51 Form: DW_FORM_strp52 - Attribute: DW_AT_language53 Form: DW_FORM_udata54 - Code: 0x255 Tag: DW_TAG_structure_type56 Children: DW_CHILDREN_no57 Attributes:58 - Attribute: DW_AT_name59 Form: DW_FORM_strp60 - Attribute: DW_AT_byte_size61 Form: DW_FORM_data162 - Code: 0x363 Tag: DW_TAG_structure_type64 Children: DW_CHILDREN_yes65 Attributes:66 - Attribute: DW_AT_name67 Form: DW_FORM_strp68 - Attribute: DW_AT_byte_size69 Form: DW_FORM_data170 - Code: 0x471 Tag: DW_TAG_member72 Children: DW_CHILDREN_no73 Attributes:74 - Attribute: DW_AT_name75 Form: DW_FORM_strp76 - Attribute: DW_AT_type77 Form: DW_FORM_ref478 - Attribute: DW_AT_data_member_location79 Form: DW_FORM_data180 debug_info:81 - Version: 482 AbbrevTableID: 083 AbbrOffset: 0x084 AddrSize: 885 Entries:86 - AbbrCode: 0x187 Values:88 - Value: 0x089 - Value: 0x290 - AbbrCode: 0x291 Values:92 - Value: 0x993 - Value: 0x094 - AbbrCode: 0x395 Values:96 - Value: 0x0d97 - Value: 0x0498 - AbbrCode: 0x499 Values:100 - Value: 0x11101 - Value: 0x11102 - Value: 0x04103 - AbbrCode: 0x0104 - AbbrCode: 0x0105...106