What has changed in GDB?
(Organized release by release)
-*** Changes since GDB 7.11
+*** Changes since GDB 7.12
+
+* Building GDB and GDBserver now requires a C++11 compiler.
+
+ For example, GCC 4.8 or later.
+
+ It is no longer possible to build GDB or GDBserver with a C
+ compiler. The --disable-build-with-cxx configure option has been
+ removed.
+
+* Building GDB and GDBserver now requires GNU make >= 3.81.
+
+ It is no longer supported to build GDB or GDBserver with another
+ implementation of the make program or an earlier version of GNU make.
+
+* Native debugging on MS-Windows supports command-line redirection
+
+ Command-line arguments used for starting programs on MS-Windows can
+ now include redirection symbols supported by native Windows shells,
+ such as '<', '>', '>>', '2>&1', etc. This affects GDB commands such
+ as "run", "start", and "set args", as well as the corresponding MI
+ features.
+
+* Support for thread names on MS-Windows.
+
+ GDB now catches and handles the special exception that programs
+ running on MS-Windows use to assign names to threads in the
+ debugger.
+
+* Support for Java programs compiled with gcj has been removed.
+
+* User commands now accept an unlimited number of arguments.
+ Previously, only up to 10 was accepted.
+
+* The "eval" command now expands user-defined command arguments.
+
+ This makes it easier to process a variable number of arguments:
+
+ define mycommand
+ set $i = 0
+ while $i < $argc
+ eval "print $arg%d", $i
+ set $i = $i + 1
+ end
+ end
+
+* New targets
+
+Synopsys ARC arc*-*-elf32
+
+*** Changes in GDB 7.12
+
+* GDB and GDBserver now build with a C++ compiler by default.
+
+ The --enable-build-with-cxx configure option is now enabled by
+ default. One must now explicitly configure with
+ --disable-build-with-cxx in order to build with a C compiler. This
+ option will be removed in a future release.
+
+* GDBserver now supports recording btrace without maintaining an active
+ GDB connection.
* GDB now supports a negative repeat count in the 'x' command to examine
memory backward from the given address. For example:
language. See https://www.rust-lang.org/ for more information about
Rust.
+* Support for running interpreters on specified input/output devices
+
+ GDB now supports a new mechanism that allows frontends to provide
+ fully featured GDB console views, as a better alternative to
+ building such views on top of the "-interpreter-exec console"
+ command. See the new "new-ui" command below. With that command,
+ frontends can now start GDB in the traditional command-line mode
+ running in an embedded terminal emulator widget, and create a
+ separate MI interpreter running on a specified i/o device. In this
+ way, GDB handles line editing, history, tab completion, etc. in the
+ console all by itself, and the GUI uses the separate MI interpreter
+ for its own control and synchronization, invisible to the command
+ line.
+
+* The "catch syscall" command catches groups of related syscalls.
+
+ The "catch syscall" command now supports catching a group of related
+ syscalls using the 'group:' or 'g:' prefix.
+
* New commands
skip -file file
maint selftest
Run any GDB unit tests that were compiled in.
+new-ui INTERP TTY
+ Start a new user interface instance running INTERP as interpreter,
+ using the TTY file for input/output.
+
+* Python Scripting
+
+ ** gdb.Breakpoint objects have a new attribute "pending", which
+ indicates whether the breakpoint is pending.
+ ** Three new breakpoint-related events have been added:
+ gdb.breakpoint_created, gdb.breakpoint_modified, and
+ gdb.breakpoint_deleted.
+
+signal-event EVENTID
+ Signal ("set") the given MS-Windows event object. This is used in
+ conjunction with the Windows JIT debugging (AeDebug) support, where
+ the OS suspends a crashing process until a debugger can attach to
+ it. Resuming the crashing process, in order to debug it, is done by
+ signalling an event.
+
* Support for tracepoints and fast tracepoints on s390-linux and s390x-linux
was added in GDBserver, including JIT compiling fast tracepoint's
conditional expression bytecode into native code.
=record-started,thread-group="i1",method="btrace",format="bts"
+* MI async record =thread-selected now includes the frame field. For example:
+
+ =thread-selected,id="3",frame={level="0",addr="0x00000000004007c0"}
+
+* New targets
+
+Andes NDS32 nds32*-*-elf
+
*** Changes in GDB 7.11
* GDB now supports debugging kernel-based threads on FreeBSD.