diff options
author | Xavier Roirand <roirand@adacore.com> | 2018-01-26 11:13:11 +0100 |
---|---|---|
committer | Xavier Roirand <roirand@adacore.com> | 2018-01-31 13:42:30 +0100 |
commit | bea298f9547372e6cb7854fabc2c0646e1d3d9be (patch) | |
tree | 3e344dc77f6480fb5612f00bbb54367adbffebd4 /gdb/doc | |
parent | 56ecd069f031d6bcdaa46664c68a16cb27b379c3 (diff) | |
download | gdb-bea298f9547372e6cb7854fabc2c0646e1d3d9be.zip gdb-bea298f9547372e6cb7854fabc2c0646e1d3d9be.tar.gz gdb-bea298f9547372e6cb7854fabc2c0646e1d3d9be.tar.bz2 |
(Ada) Add gdb-mi support for stopping at start of exception handler.
Following my previous commit which add support for stopping at start of
exception handler, this commit adds required gdb-mi support for this
feature.
gdb/ChangeLog:
* mi/mi-cmd-catch.c (mi_cmd_catch_handlers): New function.
* mi/mi-cmds.c (mi_cmds): Add catch-handlers command.
* mi/mi-cmds.h (mi_cmd_catch_handlers): Add external declaration.
* NEWS: Document "-catch-handlers" command.
gdb/doc/ChangeLog:
* gdb.texinfo (Ada Exception gdb/mi Catchpoints): Add
documentation for new "-catch-handlers" command.
gdb/testsuite/ChangeLog:
* gdb.ada/mi_catch_ex_hand.exp: New testcase.
* gdb.ada/mi_catch_ex_hand/foo.adb: New file.
Tested on x86_64-linux.
Diffstat (limited to 'gdb/doc')
-rw-r--r-- | gdb/doc/gdb.texinfo | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo index 9ddfba5..4ed5f6b 100644 --- a/gdb/doc/gdb.texinfo +++ b/gdb/doc/gdb.texinfo @@ -28537,6 +28537,50 @@ times="0",original-location="__gnat_debug_raise_exception"@} (gdb) @end smallexample +@subheading The @code{-catch-handlers} Command +@findex -catch-handlers + +@subsubheading Synopsis + +@smallexample + -catch-handlers [ -c @var{condition}] [ -d ] [ -e @var{exception-name} ] + [ -t ] +@end smallexample + +Add a catchpoint stopping when Ada exceptions are handled. +By default, the command stops the program when any Ada exception +gets handled. But it is also possible, by using some of the +optional parameters described below, to create more selective +catchpoints. + +The possible optional parameters for this command are: + +@table @samp +@item -c @var{condition} +Make the catchpoint conditional on @var{condition}. +@item -d +Create a disabled catchpoint. +@item -e @var{exception-name} +Only stop when @var{exception-name} is handled. +@item -t +Create a temporary catchpoint. +@end table + +@subsubheading @value{GDBN} Command + +The corresponding @value{GDBN} command is @samp{catch handlers}. + +@subsubheading Example + +@smallexample +-catch-handlers -e Constraint_Error +^done,bkptno="4",bkpt=@{number="4",type="breakpoint",disp="keep", +enabled="y",addr="0x0000000000402f68", +what="`Constraint_Error' Ada exception handlers",thread-groups=["i1"], +times="0",original-location="__gnat_begin_handler"@} +(gdb) +@end smallexample + @c %%%%%%%%%%%%%%%%%%%%%%%%%%%% SECTION %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @node GDB/MI Program Context @section @sc{gdb/mi} Program Context |