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

--- Comment #1 from Tom de Vries <vries at gcc dot gnu.org> ---
Minimal example:
...
$ cat derivation.cc
class A {
public:
  A() {}
  int afoo() { return 1; }
};

A a_instance;

int
main (void)
{
    return 0;
}
...

compiled as:
...
$ g++ derivation.cc -g -fdebug-types-section
...

DW_AT_object_pointer is missing here in .debug_info:
...
 <2><109>: Abbrev Number: 11 (DW_TAG_subprogram)
    <10a>   DW_AT_external    : 1
    <10a>   DW_AT_name        : (indirect string, offset: 0x20c): afoo
    <10e>   DW_AT_decl_file   : 1
    <10f>   DW_AT_decl_line   : 4
    <110>   DW_AT_linkage_name: (indirect string, offset: 0x285): _ZN1A4afooEv
    <114>   DW_AT_type        : <0x125>
    <118>   DW_AT_accessibility: 1      (public)
    <119>   DW_AT_declaration : 1
...
but not here in .debug_types:
...
 <2><47>: Abbrev Number: 5 (DW_TAG_subprogram)
    <48>   DW_AT_external    : 1
    <48>   DW_AT_name        : (indirect string, offset: 0x20c): afoo
    <4c>   DW_AT_decl_file   : 1
    <4d>   DW_AT_decl_line   : 4
    <4e>   DW_AT_linkage_name: (indirect string, offset: 0x285): _ZN1A4afooEv
    <52>   DW_AT_type        : <0x68>
    <56>   DW_AT_accessibility: 1       (public)
    <57>   DW_AT_declaration : 1
    <57>   DW_AT_object_pointer: <0x5b>
...

Reply via email to