diff options
author | Joel Brobecker <brobecker@gnat.com> | 2011-04-01 16:59:58 +0000 |
---|---|---|
committer | Joel Brobecker <brobecker@gnat.com> | 2011-04-01 16:59:58 +0000 |
commit | 956a9fb9fb6573a18dca4726f8c2ae083bc4a508 (patch) | |
tree | a1aafd7d3745dde014c5fdaa0ba243f889735a4f /gdb/breakpoint.h | |
parent | d0c4d64237a01d1f05677ebe7bf69290e2fef357 (diff) | |
download | gdb-956a9fb9fb6573a18dca4726f8c2ae083bc4a508.zip gdb-956a9fb9fb6573a18dca4726f8c2ae083bc4a508.tar.gz gdb-956a9fb9fb6573a18dca4726f8c2ae083bc4a508.tar.bz2 |
improve Ada exception catchpoint MI notification
This rewrites the code generating the Ada exception catchpoint hit
notification for both the GDB/MI case as well as the non-MI case,
by using the relevant ui_out_* functions to generate the output.
the MI notifications for Ada exception catchpoints now include
the stop reason, and the breakpoint "disp", much like other breakpoint
events do. It also introduces a new field "exception-name" for
exception catchpoints (excluding "failed assertion catchpoints,
where we just want to know that it was a failed assertion).
gdb/ChangeLog:
* breakpoint.h (bpdisp_text): Add declaration.
* breakpoint.c (bpdisp_text): Make non-static.
* ada-lang.c: #include "mi/mi-common.h".
(print_it_exception): Rewrite to improve GDB/MI output.
gdb/doc/ChangeLog:
* gdb.texinfo (GDB/MI Ada Exception Information): Document
the "exception-name" field in the *stopped async record.
gdb/testsuite/ChangeLog:
* gdb.ada/mi_catch_ex: New testcase.
Diffstat (limited to 'gdb/breakpoint.h')
-rw-r--r-- | gdb/breakpoint.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gdb/breakpoint.h b/gdb/breakpoint.h index 18a7ce7..7a9c2d4 100644 --- a/gdb/breakpoint.h +++ b/gdb/breakpoint.h @@ -961,6 +961,10 @@ extern void breakpoint_auto_delete (bpstat); is hit. */ extern struct command_line *breakpoint_commands (struct breakpoint *b); +/* Return a string image of DISP. The string is static, and thus should + NOT be deallocated after use. */ +const char *bpdisp_text (enum bpdisp disp); + extern void break_command (char *, int); extern void hbreak_command_wrapper (char *, int); |