This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: RFA: handle GDB prompt appearing in command output
- From: Jim Blandy <jimb at redhat dot com>
- To: Andrew Cagney <ac131313 at ges dot redhat dot com>
- Cc: Fernando Nasser <fnasser at redhat dot com>,gdb-patches at sources dot redhat dot com
- Date: 18 Jul 2002 19:04:24 -0500
- Subject: Re: RFA: handle GDB prompt appearing in command output
- References: <20020204035847.9B3805E9DE@zwingli.cygnus.com><npsn3hx10l.fsf@zwingli.cygnus.com> <3D2F64C3.7020908@ges.redhat.com>
Andrew Cagney <ac131313@ges.redhat.com> writes:
> As a side effect, this patch no longer checks that the order is
> correct. Is this intentional? gdb_expect_list might prove a better
> choice since it still enforces the order.
It wasn't deliberate, but I think I like it anyway. :)
If the output from 'info set' appears in a different order, but the
stuff we're looking for is all there, I don't think that's grounds for
a failure.
> Andrew
>
> From: Jim Blandy <jimb@redhat.com>
> Subject: Re: RFA: handle GDB prompt appearing in command output
> To: gdb-patches@sources.redhat.com
> Date: 20 Jun 2002 13:23:22 -0500
>
>
> Ping to testsuite maintainer: this patch needs review.
>
> Jim Blandy <jimb@cygnus.com> writes:
>
> > Sun Feb 3 19:52:31 2002 Jim Blandy <jimb@seadog.cygnus.com>
> >
> > * gdb.base/default.exp: Distinguish the GDB prompt as it appears
> > in "info set" and "show" output from the true prompt.
> >
> > Index: gdb/testsuite/gdb.base/default.exp
> > ===================================================================
> > RCS file: /cvs/cvsfiles/devo/gdb/testsuite/gdb.base/default.exp,v
> > retrieving revision 1.39.56.2
> > diff -c -r1.39.56.2 default.exp
> > *** gdb/testsuite/gdb.base/default.exp 2001/12/20 22:34:38 1.39.56.2
> > --- gdb/testsuite/gdb.base/default.exp 2002/02/04 03:51:57
> > ***************
> > *** 330,336 ****
> > # FIXME -- needs to match the entire output
> > # FIXME -- on native solaris 2.8, this test fails due to this line:
> > # prompt: Gdb's prompt is "(gdb) ".^M
> > ! gdb_test "info set" "confirm: Whether to confirm potentially dangerous operations is o\[a-z\]*..*\[\r\n\]+history filename: The filename in which to record the command history is .*\[\r\n\]+listsize: Number of source lines gdb will list by default is 10.*" "info set"
> > gdb_test "info symbol" "Argument required .address.."
> > #test info source
> > gdb_test "info source" "No current source file..*" "info source"
> > --- 330,368 ----
> > # FIXME -- needs to match the entire output
> > # FIXME -- on native solaris 2.8, this test fails due to this line:
> > # prompt: Gdb's prompt is "(gdb) ".^M
> > ! send_gdb "info set\n"
> > ! set seen_confirm 0
> > ! set seen_history 0
> > ! set seen_prompt 0
> > ! set seen_listsize 0
> > ! gdb_expect {
> > ! -re ".*confirm: Whether to confirm potentially dangerous operations is" {
> > ! set seen_confirm 1
> > ! exp_continue
> > ! }
> > ! -re ".*history filename: The filename in which to record the command history is" {
> > ! set seen_history 1
> > ! exp_continue
> > ! }
> > ! -re ".*listsize: Number of source lines gdb will list by default is 10" {
> > ! set seen_listsize 1
> > ! exp_continue
> > ! }
> > ! -re ".*prompt: Gdb's prompt is \"${gdb_prompt}" {
> > ! set seen_prompt 1
> > ! exp_continue
> > ! }
> > ! -re ".*\[\r\n\]+${gdb_prompt} $" {
> > ! }
> > ! timeout {
> > ! fail "info set (timeout)"
> > ! }
> > ! }
> > ! if {$seen_confirm && $seen_history && $seen_prompt && $seen_listsize} {
> > ! pass "info set"
> > ! } else {
> > ! fail "info set"
> > ! }
> > gdb_test "info symbol" "Argument required .address.."
> > #test info source
> > gdb_test "info source" "No current source file..*" "info source"
> > ***************
> > *** 663,669 ****
> > # This is only supported on targets which use exec.o.
> > gdb_test "show write" "Writing into executable and core files is o.*" "show write"
> > #test show
> > ! gdb_test "show" "confirm: *Whether to confirm potentially dangerous operations is on..*\[\r\n\]+history filename: *The filename in which to record the command history is .*\[\r\n\]+history save: *Saving of the history record on exit is on..*\[\r\n\]+history size: *The size of the command history is.*\[\r\n\]+listsize: *Number of source lines gdb will list by default is 10.*\[\r\n\]+print elements: *Limit on string chars or array elements to print is 200..*" "show"
> > #test stepi "si" abbreviation
> > setup_xfail "a29k-*-udi"
> > gdb_test "si" "The program is not being run." "stepi \"si\" abbreviation"
> > --- 695,749 ----
> > # This is only supported on targets which use exec.o.
> > gdb_test "show write" "Writing into executable and core files is o.*" "show write"
> > #test show
> > ! send_gdb "show\n"
> > ! set seen_confirm 0
> > ! set seen_history_filename 0
> > ! set seen_history_save 0
> > ! set seen_history_size 0
> > ! set seen_listsize 0
> > ! set seen_print_elements 0
> > ! set seen_prompt 0
> > ! gdb_expect {
> > ! -re ".*confirm: *Whether to confirm potentially dangerous operations is" {
> > ! set seen_confirm 1
> > ! exp_continue
> > ! }
> > ! -re ".*history filename: *The filename in which to record the command" {
> > ! set seen_history_filename 1
> > ! exp_continue
> > ! }
> > ! -re ".*history save: *Saving of the history record on exit is" {
> > ! set seen_history_save 1
> > ! exp_continue
> > ! }
> > ! -re ".*history size: *The size of the command history is" {
> > ! set seen_history_size 1
> > ! exp_continue
> > ! }
> > ! -re ".*listsize: *Number of source lines gdb will list by default is" {
> > ! set seen_listsize 1
> > ! exp_continue
> > ! }
> > ! -re ".*print elements: *Limit on string chars or array elements to" {
> > ! set seen_print_elements 1
> > ! exp_continue
> > ! }
> > ! -re "prompt: Gdb's prompt is \"${gdb_prompt}" {
> > ! set seen_prompt 1
> > ! exp_continue
> > ! }
> > ! -re ".*\[\r\n\]+${gdb_prompt} $" {
> > ! }
> > ! timeout {
> > ! fail "show (timeout)"
> > ! }
> > ! }
> > ! if {$seen_confirm && $seen_history_filename && $seen_history_save && $seen_history_size && $seen_listsize && $seen_print_elements && $seen_prompt} {
> > ! pass "show"
> > ! } else {
> > ! fail "show"
> > ! }
> > !
> > #test stepi "si" abbreviation
> > setup_xfail "a29k-*-udi"
> > gdb_test "si" "The program is not being run." "stepi \"si\" abbreviation"
>
> ----------