From 98deb0daaefbe4fd9a2664a636aa71fb8aa678dd Mon Sep 17 00:00:00 2001 From: Vladimir Prus Date: Fri, 1 Feb 2008 16:24:47 +0000 Subject: * breakpoint.c (break_command_1): Return void. (break_command_really): Return void. Rethrow exceptions instead of returning. (gdb_breakpoint): Remove the error_message parameter. Return void. Rename to set_breakpoint. * gdb.h (gdb_breakpoint): Rename and move to... * breakpoint.h (set_breakpoint): ...here. * mi/mi-cmb-break.c (mi_cmd_break_insert): Restore event hooks even if exception is thrown. Adjust to gdb_breakpoint interface changes. --- gdb/testsuite/gdb.mi/mi-break.exp | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'gdb/testsuite/gdb.mi/mi-break.exp') diff --git a/gdb/testsuite/gdb.mi/mi-break.exp b/gdb/testsuite/gdb.mi/mi-break.exp index 6933a34..9f10364 100644 --- a/gdb/testsuite/gdb.mi/mi-break.exp +++ b/gdb/testsuite/gdb.mi/mi-break.exp @@ -181,6 +181,18 @@ proc test_error {} { mi_gdb_test "-break-insert function_that_does_not_exist" \ ".*\\^error,msg=\"Function \\\\\"function_that_does_not_exist\\\\\" not defined.\"" \ "breakpoint at nonexistent function" + + # We used to have a bug whereby -break-insert that failed would not + # clear some event hooks. As result, whenever we evaluate expression + # containing function call, the internal breakpoint created to handle + # function call would be reported, messing up MI output. + mi_gdb_test "-var-create V * return_1()" \ + "\\^done,name=\"V\",numchild=\"0\",value=\"1\",type=\"int\"" \ + "create varobj for function call" + + mi_gdb_test "-var-update *" \ + "\\^done,changelist=\\\[\\\]" \ + "update varobj for function call" } test_tbreak_creation_and_listing -- cgit v1.1