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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P2
   Last reconfirmed|2021-08-13 00:00:00         |2024-10-14

--- Comment #13 from Richard Biener <rguenth at gcc dot gnu.org> ---
The BINFO is allocated from

#0  0x00000000012abfdf in copy_binfo (binfo=<tree 0x0>, 
    type=<record_type 0x7ffff69b82a0 C>, 
    t=<record_type 0x7ffff69b8f18 StructDecoder>, igo_prev=0x7fffffffd270, 
    virt=0) at ../../src/gcc/gcc/cp/tree.cc:2090
#1  0x0000000000fc5650 in xref_basetypes (
    ref=<record_type 0x7ffff69b8f18 StructDecoder>, 
    base_list=<tree_list 0x7ffff69d1028>) at ../../src/gcc/gcc/cp/decl.cc:17048
#2  0x000000000114b7de in cp_parser_class_head (parser=0x7ffff69b8b28, 
    nested_name_specifier_p=0x7fffffffd5a7)
    at ../../src/gcc/gcc/cp/parser.cc:28045
#3  0x0000000001148db3 in cp_parser_class_specifier (parser=0x7ffff69b8b28)
    at ../../src/gcc/gcc/cp/parser.cc:27094

and ->binfo.offset is never initialized and thus left NULL_TREE.

But dwarf2out.cc definitely expects something there.

It's easy to plug the "hole" here, for example by doing nothing for this
BINFO in add_data_member_location_attribute.  But I have no idea what's
expected here in the end.

The inhertitance DIE produced sofar is

DIE    0: DW_TAG_inheritance (0x7ffff68334b0)
  abbrev id: 0 offset: 0 mark: 0
  DW_AT_type: die -> 0 (0x7ffff6833500)


Jason?

Reply via email to