[Issue 14225] [REG2.067a] GDB: error reading variable (string + dup)
https://issues.dlang.org/show_bug.cgi?id=14225 --- Comment #16 from github-bugzi...@puremagic.com --- Commits pushed to stable at https://github.com/D-Programming-Language/dmd https://github.com/D-Programming-Language/dmd/commit/c89d666984b74bcd6d50afbdf2d478370f3c52a9 fix Issue 14225 - GDB: error reading variable (string + dup) https://github.com/D-Programming-Language/dmd/commit/7cb0b4fe2a56d187b4ef8c6416446dc15e1218cf Merge pull request #4494 from MartinNowak/fix14225 --
[Issue 14225] [REG2.067a] GDB: error reading variable (string + dup)
https://issues.dlang.org/show_bug.cgi?id=14225 --- Comment #15 from github-bugzi...@puremagic.com --- Commit pushed to master at https://github.com/D-Programming-Language/dmd https://github.com/D-Programming-Language/dmd/commit/c4a2d7c74897c0114e1c4c1896620abec65c91a0 Merge pull request #4494 from MartinNowak/fix14225 --
[Issue 14225] [REG2.067a] GDB: error reading variable (string + dup)
https://issues.dlang.org/show_bug.cgi?id=14225 Martin Krejcirik m...@krej.cz changed: What|Removed |Added Keywords||symdeb --
[Issue 14225] [REG2.067a] GDB: error reading variable (string + dup)
https://issues.dlang.org/show_bug.cgi?id=14225 --- Comment #14 from github-bugzi...@puremagic.com --- Commit pushed to 2.067 at https://github.com/D-Programming-Language/dmd https://github.com/D-Programming-Language/dmd/commit/c4a2d7c74897c0114e1c4c1896620abec65c91a0 Merge pull request #4494 from MartinNowak/fix14225 fix Issue 14225 - GDB: error reading variable (string + dup) --
[Issue 14225] [REG2.067a] GDB: error reading variable (string + dup)
https://issues.dlang.org/show_bug.cgi?id=14225 --- Comment #10 from Martin Nowak c...@dawg.eu --- (In reply to Walter Bright from comment #9) What is the prospect of this being done in time for 2.067? I'm working on that, but dwarf.c is a mess. So far everything I tried had to touch too much code, likely resulting in a regression. I think the simplest solution is to throw out DW_AT_siblings, it's not that useful anyhow. --
[Issue 14225] [REG2.067a] GDB: error reading variable (string + dup)
https://issues.dlang.org/show_bug.cgi?id=14225 --- Comment #13 from github-bugzi...@puremagic.com --- Commits pushed to master at https://github.com/D-Programming-Language/dmd https://github.com/D-Programming-Language/dmd/commit/c89d666984b74bcd6d50afbdf2d478370f3c52a9 fix Issue 14225 - GDB: error reading variable (string + dup) - tysize(t-Tty) for TYref was -1 - fixed by omitting the explicit byte_size for pointers - the debugger will use the address_size for the compilation unit instead https://github.com/D-Programming-Language/dmd/commit/7cb0b4fe2a56d187b4ef8c6416446dc15e1218cf Merge pull request #4494 from MartinNowak/fix14225 fix Issue 14225 - GDB: error reading variable (string + dup) --
[Issue 14225] [REG2.067a] GDB: error reading variable (string + dup)
https://issues.dlang.org/show_bug.cgi?id=14225 github-bugzi...@puremagic.com changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --
[Issue 14225] [REG2.067a] GDB: error reading variable (string + dup)
https://issues.dlang.org/show_bug.cgi?id=14225 --- Comment #11 from Martin Nowak c...@dawg.eu --- OK, found it. For TYref we set the pointer byte_size to -1. Wondering why we're emitting TYref for arrays though. --
[Issue 14225] [REG2.067a] GDB: error reading variable (string + dup)
https://issues.dlang.org/show_bug.cgi?id=14225 Martin Nowak c...@dawg.eu changed: What|Removed |Added Keywords||pull --- Comment #12 from Martin Nowak c...@dawg.eu --- https://github.com/D-Programming-Language/dmd/pull/4494 --
[Issue 14225] [REG2.067a] GDB: error reading variable (string + dup)
https://issues.dlang.org/show_bug.cgi?id=14225 --- Comment #9 from Walter Bright bugzi...@digitalmars.com --- (In reply to Martin Nowak from comment #8) Indeed, fixing the type repetition of debug infos for arrays fixes the issue. The code is pretty ugly and needs some refactoring before fixing the incorrect hashing, but that'd be my preferred fix as it get's rid of a lot of unnecessary debug info. What is the prospect of this being done in time for 2.067? --
[Issue 14225] [REG2.067a] GDB: error reading variable (string + dup)
https://issues.dlang.org/show_bug.cgi?id=14225 --- Comment #7 from Martin Nowak c...@dawg.eu --- For yet unknown reason gdb reads an incorrect sizeof for the .length variable of the string. This only applies to the arrays in main not the ones passed to the dup functions. It also works in lldb. It would be more optimal if dmd cached and emitted only a single instance per array type. Will try to implement that and see if it helps before spending more hours debugging gdb. --
[Issue 14225] [REG2.067a] GDB: error reading variable (string + dup)
https://issues.dlang.org/show_bug.cgi?id=14225 --- Comment #8 from Martin Nowak c...@dawg.eu --- (In reply to Martin Nowak from comment #7) It would be more optimal if dmd cached and emitted only a single instance per array type. Will try to implement that and see if it helps before spending more hours debugging gdb. Indeed, fixing the type repetition of debug infos for arrays fixes the issue. The code is pretty ugly and needs some refactoring before fixing the incorrect hashing, but that'd be my preferred fix as it get's rid of a lot of unnecessary debug info. --
[Issue 14225] [REG2.067a] GDB: error reading variable (string + dup)
https://issues.dlang.org/show_bug.cgi?id=14225 Walter Bright bugzi...@digitalmars.com changed: What|Removed |Added CC||bugzi...@digitalmars.com --- Comment #6 from Walter Bright bugzi...@digitalmars.com --- Any news? --
[Issue 14225] [REG2.067a] GDB: error reading variable (string + dup)
https://issues.dlang.org/show_bug.cgi?id=14225 Martin Nowak c...@dawg.eu changed: What|Removed |Added CC||c...@dawg.eu --- Comment #4 from Martin Nowak c...@dawg.eu --- Confirmed, doesn't depend on ld.bfd vs. ld.gold. Neither dwarfdump nor readelf --debug-dump report any error. --
[Issue 14225] [REG2.067a] GDB: error reading variable (string + dup)
https://issues.dlang.org/show_bug.cgi?id=14225 Vladimir Panteleev thecybersha...@gmail.com changed: What|Removed |Added CC||thecybersha...@gmail.com --- Comment #3 from Vladimir Panteleev thecybersha...@gmail.com --- Pull request in question: https://github.com/D-Programming-Language/druntime/pull/1031 --
[Issue 14225] [REG2.067a] GDB: error reading variable (string + dup)
https://issues.dlang.org/show_bug.cgi?id=14225 --- Comment #5 from Martin Nowak c...@dawg.eu --- .debug_frame and .debug_ranges changed and look indeed weird. There is an overlapping PC range. 00c0 0024 FDE cie= pc=..0084 DW_CFA_advance_loc: 1 to 0001 DW_CFA_def_cfa_offset: 16 DW_CFA_offset: r6 (rbp) at cfa-16 DW_CFA_advance_loc: 2 to 0003 DW_CFA_def_cfa_register: r6 (rbp) DW_CFA_advance_loc: 6 to 0009 DW_CFA_offset: r1 (rdx) at cfa-80 DW_CFA_nop DW_CFA_nop DW_CFA_nop DW_CFA_nop DW_CFA_nop 00e8 0024 FDE cie= pc=..0053 DW_CFA_advance_loc: 1 to 0001 DW_CFA_def_cfa_offset: 16 DW_CFA_offset: r6 (rbp) at cfa-16 DW_CFA_advance_loc: 2 to 0003 DW_CFA_def_cfa_register: r6 (rbp) DW_CFA_advance_loc: 6 to 0009 DW_CFA_offset: r1 (rdx) at cfa-24 DW_CFA_nop DW_CFA_nop DW_CFA_nop DW_CFA_nop DW_CFA_nop 0084 0053 Further investigation tomorrow ;). --
[Issue 14225] [REG2.067a] GDB: error reading variable (string + dup)
https://issues.dlang.org/show_bug.cgi?id=14225 --- Comment #2 from Martin Krejcirik m...@krej.cz --- Small correction: -gc doesn't make it work. Also the problem is not limited to recent gdb version, 7.4.1-debian is affected too for example. --
[Issue 14225] [REG2.067a] GDB: error reading variable (string + dup)
https://issues.dlang.org/show_bug.cgi?id=14225 Martin Krejcirik m...@krej.cz changed: What|Removed |Added Component|DMD |druntime Summary|[REG2.067a] GDB: error |[REG2.067a] GDB: error |reading variable (string + |reading variable (string + |char[]) |dup) --- Comment #1 from Martin Krejcirik m...@krej.cz --- Introduced by https://github.com/D-Programming-Language/druntime/commit/5a5d1c5c4d9f27785422191178fc4e2876a0a097 --