From: Guinevere Larsen Date: Mon, 13 Jan 2025 17:04:04 +0000 (-0300) Subject: gdb: Deprecate stabs debug info X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ed9bb21c6e18bf9a041a6e426581d38256be2170;p=thirdparty%2Fbinutils-gdb.git gdb: Deprecate stabs debug info GCC has deprecated stabs generation in GCC 12 and entirely removed it in GCC 13, which was released in April 2023. At the time it was proposed that GDB deprecate stabs as well, but the decision was to support it a bit longer. With this patch, it'll be deprecated on GDB 17, and removed on GDB 18, which following the current cadence, will be released early 2026, meaning we will have supported stabs for nearly 3 years longer than GCC, which I think is reasonable. As pointed out in the previous discussion on this topic[1], there are several existing issues on the code, and none of the current maintainers knows how to fix it. Unless someone steps up to fix this before the removal on GDB 18, I don't see why we should keep this old code that breaks all conventions of modern debuginfo readers and doesn't even work, instead of being able to further advance adjacent code. Finally, deprecating and removing stabs will make a.out/dbx inferiors be essentially unsupported, as the only debuginfo GDB supports for those formats is stabs, meaning users would only have assembly-level debugging for that format. With that in mind, this commit deprecates the a.out/dbx format as well. [1] https://inbox.sourceware.org/gdb-patches/20230119174156.654402-1-tom@tromey.com/ Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=31210 Approved-By: Tom Tromey --- diff --git a/gdb/NEWS b/gdb/NEWS index e678de55ce6..e757326877c 100644 --- a/gdb/NEWS +++ b/gdb/NEWS @@ -60,6 +60,9 @@ binary-upload in qSupported reply stub doesn't report this feature supported, then GDB will not use the 'x' packet. +* Support for stabs debugging format and the a.out/dbx object format is + deprecated, and will be removed in GDB 18. + *** Changes in GDB 16 * Support for Nios II targets has been removed as this architecture