This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: [RFA]: pending breakpoint support [2/3]
On Wed, Jan 21, 2004 at 08:08:15PM -0500, J. Johnston wrote:
> @@ -269,6 +269,9 @@ proc gdb_breakpoint { function } {
> -re "Breakpoint \[0-9\]* at .*: file .*, line $decimal.\r\n$gdb_prompt $" {}
> -re "Breakpoint \[0-9\]*: file .*, line $decimal.\r\n$gdb_prompt $" {}
> -re "Breakpoint \[0-9\]* at .*$gdb_prompt $" {}
> + -re "Make breakpoint pending.*y or n. $" {
> + return gdb_test "n" "" "setting breakpoint at $function"
> + }
> -re "$gdb_prompt $" { fail "setting breakpoint at $function" ; return 0 }
> timeout { fail "setting breakpoint at $function (timeout)" ; return 0 }
> }
Well, that's not valid TCL. Stick to gdb_test on one line and return
on the next.
> +#
> +# Test setting, querying, and modifying pending breakpoints
> +#
> +
> +# Test deleting all breakpoints when there are none installed,
> +# GDB should not prompt for confirmation.
> +# Note that gdb-init.exp provides a "delete_breakpoints" proc
FYI, it's gdb.exp. Also this comment doesn't apply to this test
script...
> +# for general use elsewhere.
> +
> +gdb_test_multiple "break pendfunc1" "set pending breakpoint" {
> + -re ".*Make breakpoint pending.*y or n. $" {
> + gdb_test "y" "Breakpoint.*pendfunc1.*pending." "set pending breakpoint"
> + }
> +}
> +
> +send_gdb "commands 1\n"
> +send_gdb "print k\n"
> +send_gdb "end\n"
> +
> +gdb_test "info break" \
> + "Num Type\[ \]+Disp Enb Address\[ \]+What.*
> +\[0-9\]+\[\t \]+breakpoint keep n.*PENDING.*pendfunc1.*
> +\[\t \]+stop only if k == 1.*
> +\[\t \]+print k.*
> +\[0-9\]+\[\t \]+breakpoint keep y.* in main at .*$srcfile:$mainline" \
> +"pending disabled plus commands"
Again, whenever you use send_gdb you need to eat the output. I think
you can just use gdb_test for this; see commands.exp.
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer