What has changed in GDB?
(Organized release by release)
-*** Changes since GDB 8.2
+*** Changes since GDB 8.3
+
+* New built-in convenience variables $_gdb_major and $_gdb_minor
+ provide the GDB version. They are handy for conditionally using
+ features available only in or since specific GDB versions, in
+ scripts that should work error-free with many different versions,
+ such as in system-wide init files.
+
+* GDB now supports Thread Local Storage (TLS) variables on several
+ FreeBSD architectures (amd64, i386, powerpc, riscv). Other
+ architectures require kernel changes. TLS is not yet supported for
+ amd64 and i386 process core dumps.
+
+* Support for Pointer Authentication on AArch64 Linux.
+
+* Two new convernience functions $_cimag and $_creal that extract the
+ imaginary and real parts respectively from complex numbers.
+
+* Python API
+
+ ** The gdb.Value type has a new method 'format_string' which returns a
+ string representing the value. The formatting is controlled by the
+ optional keyword arguments: 'raw', 'pretty_arrays', 'pretty_structs',
+ 'array_indexes', 'symbols', 'unions', 'deref_refs', 'actual_objects',
+ 'static_members', 'max_elements', 'repeat_threshold', and 'format'.
+
+*** Changes in GDB 8.3
* GDB and GDBserver now support access to additional registers on
PowerPC GNU/Linux targets: PPR, DSCR, TAR, EBB/PMU registers, and
* Removed support for old demangling styles arm, edg, gnu, hp and
lucid.
-* New targets
-
- NXP S12Z s12z-*-elf
- GNU/Linux/OpenRISC or1k*-*-linux*
-
* New commands
set debug compile-cplus-types
set style enabled [on|off]
show style enabled
Enable or disable terminal styling. Styling is enabled by default
- on most hosts.
+ on most hosts, but disabled by default when in batch mode.
+
+set style sources [on|off]
+show style sources
+ Enable or disable source code styling. Source code styling is
+ enabled by default, but only takes effect if styling in general is
+ enabled, and if GDB was linked with GNU Source Highlight.
set style filename foreground COLOR
set style filename background COLOR
* MI changes
+ ** The default version of the MI interpreter is now 3 (-i=mi3).
+
** The '-data-disassemble' MI command now accepts an '-a' option to
disassemble the whole function surrounding the given program
counter value or function name. Support for this feature can be
** Command responses and notifications that include a frame now include
the frame's architecture in a new "arch" attribute.
+ ** The output of information about multi-location breakpoints (which is
+ syntactically incorrect in MI 2) has changed in MI 3. This affects
+ the following commands and events:
+
+ - -break-insert
+ - -break-info
+ - =breakpoint-created
+ - =breakpoint-modified
+
+ The -fix-multi-location-breakpoint-output command can be used to enable
+ this behavior with previous MI versions.
+
* New native configurations
GNU/Linux/RISC-V riscv*-*-linux*
CSKY ELF csky*-*-elf
CSKY GNU/LINUX csky*-*-linux
FreeBSD/riscv riscv*-*-freebsd*
+NXP S12Z s12z-*-elf
+GNU/Linux/OpenRISC or1k*-*-linux*
+
+* Removed targets
+
+GDB no longer supports native debugging on versions of MS-Windows
+before Windows XP.
* Python API
+ ** GDB no longer supports Python versions less than 2.6.
+
** The gdb.Inferior type has a new 'progspace' property, which is the program
space associated to that inferior.
gdb.SYMBOL_TYPES_DOMAIN are now deprecated. These were never
correct and did not work properly.
+ ** The gdb.Value type has a new constructor, which is used to construct a
+ gdb.Value from a Python buffer object and a gdb.Type.
+
* Configure changes
--enable-ubsan