June 20, 2022
https://issues.dlang.org/show_bug.cgi?id=23198

          Issue ID: 23198
           Summary: rt_trap_exceptions_drt_gdb test fails with gdb 12
           Product: D
           Version: D2
          Hardware: x86_64
                OS: Linux
            Status: NEW
          Severity: minor
          Priority: P1
         Component: druntime
          Assignee: nobody@puremagic.com
          Reporter: opna2608@protonmail.com

Created attachment 1855
  --> https://issues.dlang.org/attachment.cgi?id=1855&action=edit
Log of failing rt_trap_exceptions_drt_gdb run

After we updated our gdb package from 11.2 to 12.1, the rt_trap_exceptions_drt_gdb test started to fail [1]. I've attached the full log for this test, but the gist is that the gdb backtrace

> #5  0x0000000000437709 in _Dmain (args=...) at src/rt_trap_exceptions_drt.d:9
doesn't match the grep

> grep "in D main (args=...) at .*rt_trap_exceptions_drt.d:9" > /dev/null < ./generated/linux/release/64/rt_trap_exceptions_drt_gdb.output
anymore, so the test fails.


Our workaround is to patch the grep expression in test/exceptions/Makefile to look for _Dmain instead [2], but I don't think that would work with older gdb versions.


[1] Original issue on Nixpkgs, with bisection down to the gdb bump:
https://github.com/NixOS/nixpkgs/issues/177320
[2] https://github.com/NixOS/nixpkgs/pull/178128

--