GDB 12 debugger release

GDB 12.1 debugger released (first release of 12.x series, 12.0 branch used for development). GDB supports source-level debugging for a wide range of programming languages ​​(Ada, C, C++, Objective-C, Pascal, Go, Rust, etc.) on various hardware (i386, amd64, ARM, Power, Sparc, RISC- V, etc.) and software platforms (GNU/Linux, *BSD, Unix, Windows, macOS).

Key improvements:

  • By default, multi-threaded mode for loading debugging symbols is enabled, speeding up startup.
  • Improved support for C++ templates.
  • Support for working on the FreeBSD platform in asynchronous mode (async) has been implemented.
  • It is possible to disable the use of GNU Source Highlight and use the Pygments library for syntax highlighting.
  • The "clone-inferior" command checks that the TTY, CMD and ARGS settings are copied from the original debug object (inferior) to the new debug object. It also ensures that all changes to environment variables made using the 'set environment' or 'unset environment' commands are copied to the new debug object.
  • The "print" command provides support for printing floating point numbers, specifying the format of the underlying value, such as hexadecimal ("/x").
  • Added support for running the debugger and GDBserver on the GNU/Linux/OpenRISC architecture (or1k*-*-linux*). Added support for debugging applications for the GNU/Linux/LoongArch target platform (loongarch*-*-linux*). Support for the S+core target platform (score-*-*) has been discontinued.
  • GDB 12 is announced as the last release to support building with Python 2.
  • Deprecated and will be removed in GDB 13 DBX compatibility mode.
  • The GDB/MI management API allows the '-add-inferior' command to be used without parameters or with the '--no-connection' flag to inherit a connection from the current debug object or run without a connection.
  • Improvements have been made to the Python API. The ability to implement GDB/MI commands in Python is provided. Added new events gdb.events.gdb_exiting and gdb.events.connection_removed, gdb.Architecture.integer_type() function, gdb.TargetConnection object, gdb.Inferior.connection property, gdb.RemoteTargetConnection.send_packet method and gdb.InferiorThread.details attributes, gdb.Type.is_scalar and gdb.Type.is_signed.

Source: opennet.ru

Add a comment