The latest debugger release, GDB 18.1, has been presented, marking the first release of the 18.x series with the earlier 18.0 branch used for development. GDB boasts source-level debugging capabilities for a diverse array of programming languages, including C, C++, D, Go, Objective-C, Fortran, OpenCL C, Pascal, Rust, Assembly, Modula-2, and Ada, across a wide range of hardware platforms such as i386, amd64, ARM, Power, Sparc, RISC-V, and LoongArch, as well as software platforms like GNU/Linux, *BSD, Unix, Windows, and macOS.
Some of the most notable improvements in this release include:
- Added support for GNU/Linux/MicroBlaze (microblazeel-*linux*) and AArch64 MinGW platforms (aarch64-*-mingw*), while deprecating the 32-bit s390 architecture (s390-*) for removal.
- For Windows, new features include non-stop mode support for Windows 10 and newer, scheduler locking with the “set scheduler-locking on” command, and native TLS (Thread Local Storage) variables. Additionally, GDB now supports 24-bit colors, emoji, and UTF-8 encoding in Windows Terminal. File path normalization using slashes in CLI, TUI, MI, and DAP interfaces is now enforced to maintain consistency.
- All debug type symbols are now included in the .gdb_index index to address issues with type searches.
- The “info locals” command now highlights external variables overridden by internal ones through the “shadowed” annotation. Users can control the display using the new “set print shadowed on|off” setting.
- Commands like “set args”, “run”, “start”, and “starti” now support passing arguments with newline characters enclosed in quotes. Additionally, the “–no-escape-args” flag is introduced to disable escaping special characters in arguments.
- Support for the FPMR register on the AArch64 architecture and initial support for loading core files from systems with Intel AMX support have been added.
- GDB now supports trace events processed by the libipt 2.2 library and allows users to specify non-standard baud rates for debugging via a serial port.
- An “essential” mode has been introduced to the help command, offering new users an overview of essential commands they may need.
- Several new commands have been added for enhanced functionality, including set/show/un
/Reports, release notes, official announcements.