What has changed in GDB?
(Organized release by release)
-*** Changes since GDB 8.2
+*** Changes since GDB 8.3
+
+*** 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
* GDB in batch mode now exits with status 1 if the last command to be
executed failed.
-* Changes to the "frame", "select-frame", and "info frame" CLI
- commands. These commands all now take a frame specification which
- is either a frame level, or one of the keywords 'level', 'address',
- 'function', or 'view' followed by a parameter. Selecting a frame by
- address, or viewing a frame outside the current backtrace now
- requires the use of a keyword. Selecting a frame by level is
- unchanged. The MI comment "-stack-select-frame" is unchanged.
-
* The RISC-V target now supports target descriptions.
+* System call catchpoints now support system call aliases on FreeBSD.
+ When the ABI of a system call changes in FreeBSD, this is
+ implemented by leaving a compatibility system call using the old ABI
+ at the existing number and allocating a new system call number for
+ the new ABI. For example, FreeBSD 12 altered the layout of 'struct
+ kevent' used by the 'kevent' system call. As a result, FreeBSD 12
+ kernels ship with both 'kevent' and 'freebsd11_kevent' system calls.
+ The 'freebsd11_kevent' system call is assigned an alias of 'kevent'
+ so that a system call catchpoint for the 'kevent' system call will
+ catch invocations of both the 'kevent' and 'freebsd11_kevent'
+ binaries. This ensures that 'kevent' system calls are caught for
+ binaries using either the old or new ABIs.
+
+* Terminal styling is now available for the CLI and the TUI. GNU
+ Source Highlight can additionally be used to provide styling of
+ source code snippets. See the "set style" commands, below, for more
+ information.
+
+* 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
* Changed commands
+Changes to the "frame", "select-frame", and "info frame" CLI commands.
+ These commands all now take a frame specification which
+ is either a frame level, or one of the keywords 'level', 'address',
+ 'function', or 'view' followed by a parameter. Selecting a frame by
+ address, or viewing a frame outside the current backtrace now
+ requires the use of a keyword. Selecting a frame by level is
+ unchanged. The MI comment "-stack-select-frame" is unchanged.
+
target remote FILENAME
target extended-remote FILENAME
If FILENAME is a Unix domain socket, GDB will attempt to connect
show tui tab-width NCHARS
"set tui tab-width" replaces the "tabset" command, which has been deprecated.
+set style enabled [on|off]
+show style enabled
+ Enable or disable terminal styling. Styling is enabled by default
+ on most hosts, but disabled by default when in batch mode.
+
+set style filename foreground COLOR
+set style filename background COLOR
+set style filename intensity VALUE
+ Control the styling of file names.
+
+set style function foreground COLOR
+set style function background COLOR
+set style function intensity VALUE
+ Control the styling of function names.
+
+set style variable foreground COLOR
+set style variable background COLOR
+set style variable intensity VALUE
+ Control the styling of variable names.
+
+set style address foreground COLOR
+set style address background COLOR
+set style address intensity VALUE
+ Control the styling of addresses.
+
* MI changes
** The '-data-disassemble' MI command now accepts an '-a' option to
CSKY GNU/LINUX csky*-*-linux
FreeBSD/riscv riscv*-*-freebsd*
+* 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