https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113977

--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
This seems like a bug in gdb really.

GCC produces:
```
        .uleb128 0x3    # (DIE (0x2e) DW_TAG_structure_type)
        .ascii "s7\0"   # DW_AT_name
        .byte   0x7   # DW_AT_byte_size
                        # DW_AT_decl_file (1, /app/example.cpp)
        .byte   0x1   # DW_AT_decl_line
                        # DW_AT_decl_column (0x8)
        .long   0x41  # DW_AT_sibling
        .uleb128 0x4    # (DIE (0x38) DW_TAG_member)
        .ascii "_\0"    # DW_AT_name
                        # DW_AT_decl_file (1, /app/example.cpp)
        .byte   0x1   # DW_AT_decl_line
                        # DW_AT_decl_column (0x12)
        .long   0x41  # DW_AT_type
                        # DW_AT_data_member_location (0)
        .byte   0     # end of children of DIE 0x2e
        .uleb128 0x2    # (DIE (0x41) DW_TAG_array_type)
        .long   0x58  # DW_AT_type
        .long   0x51  # DW_AT_sibling
```

```
        .ascii "x\0"    # DW_AT_name
                        # DW_AT_decl_file (1, /app/example.cpp)
        .byte   0x7   # DW_AT_decl_line
                        # DW_AT_decl_column (0xd)
        .long   0xf1  # DW_AT_type
        .uleb128 0x2    # DW_AT_location
        .byte   0x91  # DW_OP_fbreg
        .sleb128 -30
```
```
        .uleb128 0x2    # (DIE (0xf1) DW_TAG_array_type)
        .long   0x2e  # DW_AT_type
        .long   0x101 # DW_AT_sibling
        .uleb128 0x1    # (DIE (0xfa) DW_TAG_subrange_type)
        .long   0x51  # DW_AT_type
        .byte   0x1   # DW_AT_upper_bound
        .byte   0     # end of children of DIE 0xf1
```

Reply via email to