Bug 21156 – DWARF: member functions are not represented as children of the aggregate, struct or class

Status
NEW
Severity
minor
Priority
P3
Component
dmd
Product
D
Version
D2
Platform
All
OS
Linux
Creation time
2020-08-13T15:08:40Z
Last change time
2024-12-13T19:11:01Z
Assigned to
No Owner
Creator
LucienPe
Moved to GitHub: dmd#17981 →

Comments

Comment #0 by lucien.perregaux — 2020-08-13T15:08:40Z
program: --- module bar; void main() { Bar b = Bar(); b.foo(); } struct Bar { void foo() { } } --- DMD: --- 0x0000007b: DW_TAG_structure_type DW_AT_name ("bar.Bar") DW_AT_byte_size (0x00) 0x000000c1: DW_TAG_subprogram DW_AT_sibling (0x0000010c) DW_AT_name ("bar.Bar.foo") DW_AT_MIPS_linkage_name ("_D3bar3Bar3fooMFZv") DW_AT_decl_file ("/home/lucien/Documents/Programmation/D/b9800/src/main.d") DW_AT_decl_line (12) DW_AT_external (0x01) DW_AT_low_pc (0x000000000003f6b8) DW_AT_high_pc (0x000000000003f6c6) DW_AT_frame_base (0x0000004c: [0x000000000003f6b8, 0x000000000003f6b9): DW_OP_breg7 RSP+8 [0x000000000003f6b9, 0x000000000003f6bb): DW_OP_breg7 RSP+16 [0x000000000003f6bb, 0x000000000003f6c6): DW_OP_breg6 RBP+16) 0x000000fd: DW_TAG_formal_parameter DW_AT_name ("this") DW_AT_type (0x000000bc "bar.Bar&") DW_AT_artificial (0x00) DW_AT_location (DW_OP_fbreg -24) 0x0000010b: NULL --- LDC: --- 0x0000005c: DW_TAG_structure_type DW_AT_name ("Bar") DW_AT_byte_size (0x01) DW_AT_decl_file ("src/main.d") DW_AT_decl_line (10) DW_AT_alignment (1) 0x00000065: DW_TAG_subprogram DW_AT_low_pc (0x0000000000000800) DW_AT_high_pc (0x0000000000000806) DW_AT_frame_base (DW_OP_reg6 RBP) DW_AT_object_pointer (0x00000082) DW_AT_linkage_name ("_D3bar3Bar3fooMFZv") DW_AT_name ("foo") DW_AT_decl_file ("src/main.d") DW_AT_decl_line (12) DW_AT_external (true) 0x00000082: DW_TAG_formal_parameter DW_AT_location (DW_OP_breg5 RDI+0) DW_AT_name ("this") DW_AT_decl_file ("src/main.d") DW_AT_decl_line (12) DW_AT_type (0x000000d9 "Bar*") DW_AT_artificial (true) 0x00000090: NULL 0x00000091: NULL ---
Comment #1 by robert.schadek — 2024-12-13T19:11:01Z
THIS ISSUE HAS BEEN MOVED TO GITHUB https://github.com/dlang/dmd/issues/17981 DO NOT COMMENT HERE ANYMORE, NOBODY WILL SEE IT, THIS ISSUE HAS BEEN MOVED TO GITHUB