GDB 17.1 released! Release 17.1 of GDB, the GNU Debugger, is now available. GDB is a source-level debugger for Ada, C, C++, Fortran, Go, Rust, and many other languages. GDB can target (i.e., debug programs running on) more than a dozen different processor architectures, and GDB itself can run on most popular GNU/Linux, Unix and Microsoft Windows variants. GDB is free (libre) software. You can download GDB from the GNU HTTPS server in the directory: https://ftp.gnu.org/gnu/gdb/?C=M;O=D The vital stats: Size sha256sum Name 24MiB 14996f5f74c9f68f5a543fdc45bca7800207f91f92aeea6c2e791822c7c6d876 gdb-17.1.tar.xz 41MiB 2b93c4c9726a4b8cfe771036e155377405dfa41c483d90945481319c5663c120 gdb-17.1.tar.gz There is a web page for GDB at: https://www.gnu.org/software/gdb/ That page includes information about GDB mailing lists (an announcement mailing list, developers discussion lists, etc.), details on how to access GDB's source repository, locations for development snapshots, preformatted documentation, and links to related information around the net. We will put errata notes and host-specific tips for this release on-line as any problems come up. All mailing lists archives are also browsable via the web. GDB 17.1 includes the following changes and enhancements: * x86-64 CET shadow stack support * Debugging Linux programs that use AArch64 Guarded Control Stacks * GDB record feature now supports rv64gc architectures * 'info threads' command support for two new options '-stopped' and '-running' to limit the list of displayed threads. * On Linux and FreeBSD, the addresses shown by the 'info sharedlibrary' command are now for the full memory range allocated to the shared library. * Linux checkpoints now work with multiple inferiors * Improved linker namespace support * Warnings and error messages now start with an emoji (warning sign, or cross mark) if supported by the host charset. Configurable. * Built-in support for TLS on Linux as backup when libthread_db is not available. Supported on the x86_64, aarch64, ppc64, s390x, and riscv architectures, when compiled with GLIBC or MUSL. * New command "set riscv numeric-register-names" to display risc-v registers using their numeric names instead of their ABI names. * The Alpha target now supports target descriptions. * Python API enhancements ** New class gdb.Color for dealing with colors, and new constant gdb.PARAM_COLOR ** New gdb.ParameterPrefix class, to create new 'set/show' command prefixes. ** New attribute gdb.Value.is_unavailable, this checks for unavailability like gdb.Value.is_optimized_out checks for optimized out values. ** New gdb.warning() function to print a warning message, with GDB's standard 'warning' prefix (see emoji support entry below) ** gdb.execute has an additional 'styling' argument. ** Prefix commands (gdb.Command sub-classes) that don't have an invoke method now behave like builtin prefix commands when invoked without a sub-command name. This means printing the help text for all sub-commands, unless the prefix command is a 'show' command, in which case the value of all sub-commands is printed. ** Setting the documentation string (__doc__) of a gdb.Parameter sub-class to the empty string, means GDB will only display the set_doc or show_doc strings in the set/show help output. * Guile API enhancements: ** New type for dealing with colors and constant PARAM_COLOR ** Prefix commands (using make-command) that don't have a #:invoke property will now behave like builtin prefix commands when invoked without a sub-command name. This means printing the help text for all sub-commands, unless the prefix command is a 'show' command, in which case the value of all sub-commands is printed. ** Eliding the #:doc string from make-parameter now means that GDB will use a default documentation string. Setting #:doc to the empty string for make-parameter means GDB will only display the #:set_doc or #:show_doc strings in the set/show help output. * Debugger Adapter Protocol changes ** GDB now supports the "completions" request. ** New "--binary-output" command line option to disable LF translations (Windows only) * New convenience variables ** $_colorsupport providing a comma-separated list of color space names supported by the terminal. ** $linker_namespace_count and $_linker_namespace provide the list of active linker namespaces. * Remote package additions and changes ** New 'binary-upload+' value in qSupported reply ** The 'vFile:stat' command implementation has been corrected to use stat rather than lstat. The documentation has also been clarified. ** New vFile:lstat packet, useful for handling symbolic links ** Support for the "id_str" attribute in 'qXfer:threads:read' XML answer. * GDB/MI changes ** The =library-unloaded event now includes the 'ranges' field, which has the same meaning as for the =library-loaded event. ** The =library-unloaded event now includes the 'still-in-use' field. * Configure changes ** Ability to select which file formats to include support for ** New option --disable-gdb-compile to disable support for the compile subsystem. ** New option --disable-gdb-dwarf-support to disable support for DWARF debug information in GDB. ** New option --disable-gdb-mdebug-support to disable support for mdebug/ecoff debug information. * Incompatible changes ** Support for Python versions older than 3.4 has been removed ** Support for stabs debugging format and the a.out/dbx object format is deprecated, and will be removed in GDB 18. ** UST (static tracepoint) gdbserver support has been removed For a complete list and more details on each item, please see the gdb/NEWS file, available at: https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=blob_plain;f=gdb/NEWS;hb=gdb-17.1-release