This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[patch] testsuite cleanup: use gdb_test_sequence more


Hi.
This is the promised follow-up to
http://sourceware.org/ml/gdb-patches/2010-11/msg00266.html

I'm checking this in.
[regression tested on amd64-linux]

2010-11-29  Doug Evans  <dje@google.com>

	* lib/gdb.exp (gdb_test_sequence): Return result of gdb_expect_list.
	(gdb_expect_list): Fix spelling errors in comments.
	* gdb.arch/system-gcore.exp: Use gdb_test_sequence instead of
	send_gdb/gdb_expect_list where applicable.
	* gdb.base/call-ar-st.exp: Ditto.
	* gdb.base/funcargs.exp: Ditto.
	* gdb.base/gcore.exp: Ditto.
	* gdb.base/page.exp: Ditto.
	* gdb.base/sigaltstack.exp: Ditto.
	* gdb.base/siginfo.exp: Ditto.
	* gdb.base/sigstep.exp: Ditto.
	* gdb.base/trace-commands.exp: Ditto.

Index: gdb.arch/system-gcore.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.arch/system-gcore.exp,v
retrieving revision 1.2
diff -u -p -r1.2 system-gcore.exp
--- gdb.arch/system-gcore.exp	5 May 2010 18:06:57 -0000	1.2
+++ gdb.arch/system-gcore.exp	30 Nov 2010 02:16:17 -0000
@@ -154,17 +154,16 @@ gdb_expect {
     }
 }
 
-send_gdb "where\n"
-gdb_expect_list "where in corefile" ".*$gdb_prompt $" {
-    ".*\[\r\n\]+#0 .* terminal_func \\(\\) at "
-    ".*\[\r\n\]+#1 .* array_func \\(\\) at "
-    ".*\[\r\n\]+#2 .* factorial_func \\(value=1\\) at "
-    ".*\[\r\n\]+#3 .* factorial_func \\(value=2\\) at "
-    ".*\[\r\n\]+#4 .* factorial_func \\(value=3\\) at "
-    ".*\[\r\n\]+#5 .* factorial_func \\(value=4\\) at "
-    ".*\[\r\n\]+#6 .* factorial_func \\(value=5\\) at "
-    ".*\[\r\n\]+#7 .* factorial_func \\(value=6\\) at "
-    ".*\[\r\n\]+#8 .* main \\(.*\\) at "
+gdb_test_sequence "where" "where in corefile" {
+    "\[\r\n\]+#0 .* terminal_func \\(\\) at "
+    "\[\r\n\]+#1 .* array_func \\(\\) at "
+    "\[\r\n\]+#2 .* factorial_func \\(value=1\\) at "
+    "\[\r\n\]+#3 .* factorial_func \\(value=2\\) at "
+    "\[\r\n\]+#4 .* factorial_func \\(value=3\\) at "
+    "\[\r\n\]+#5 .* factorial_func \\(value=4\\) at "
+    "\[\r\n\]+#6 .* factorial_func \\(value=5\\) at "
+    "\[\r\n\]+#7 .* factorial_func \\(value=6\\) at "
+    "\[\r\n\]+#8 .* main \\(.*\\) at "
 }
 
 set post_corefile_regs [capture_command_output "info registers" ""]
Index: gdb.base/call-ar-st.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.base/call-ar-st.exp,v
retrieving revision 1.28
diff -u -p -r1.28 call-ar-st.exp
--- gdb.base/call-ar-st.exp	18 Aug 2010 16:37:21 -0000	1.28
+++ gdb.base/call-ar-st.exp	30 Nov 2010 02:16:17 -0000
@@ -86,21 +86,19 @@ gdb_test continue \
 #call print_double_array(double_array)
 if {![gdb_skip_float_test "print print_double_array(double_array)"] && \
     ![gdb_skip_stdio_test "print print_double_array(double_array)"] } {
-  send_gdb "print print_double_array(double_array)\n"
-  gdb_expect_list "print print_double_array(double_array)" ".*$gdb_prompt $" {
+    gdb_test_sequence "print print_double_array(double_array)" "" {
 	"\[ \t\r\n\]+array_d :"
 	"\[ \t\r\n\]+========="
 	"\[ \t\r\n\]+0.000000"
 	"\[ \t\r\n\]+23.456\[0-9\]*  46.913\[0-9\]*  70.370\[0-9\]*  93.826\[0-9\]*  117.283\[0-9\]*  140.740\[0-9\]*  164.196\[0-9\]*  187.653\[0-9\]"
 	"\[ \t\r\n\]+"
-  }
+    }
 }
 
 #call print_char_array(char_array)
 
 if ![gdb_skip_stdio_test "print_char_array(char_array)"] {
-    send_gdb "print print_char_array(char_array)\n"
-    gdb_expect_list "print print_char_array(char_array)" ".*$gdb_prompt $" {
+    gdb_test_sequence "print print_char_array(char_array)" "" {
 	"\[ \t\r\n\]+array_c :"
 	"\[ \t\r\n\]+========="
 	"\[ \t\r\n\]+\[ \t\r\n\]+Z"
@@ -110,17 +108,13 @@ if ![gdb_skip_stdio_test "print_char_arr
     }
 }
 
-
-
-
 #go -until 1216
 gdb_test "tbreak 1216" \
 "Temporary breakpoint.*file.*$srcfile, line 1216.*" \
 "tbreakpoint line 1216"
 
 if ![gdb_skip_stdio_test "continue to 1216"] {
-    send_gdb "continue\n"
-    gdb_expect_list "continue to 1216" ".*$gdb_prompt $" {
+    gdb_test_sequence "continue" "continue to 1216" {
 	"\[ \t\r\n\]+array_c :"
 	"\[ \t\r\n\]+========="
 	"\[ \t\r\n\]+\[ \t\r\n\]+Z"
@@ -154,18 +148,17 @@ gdb_test "tbreak 1220" \
 
 if {![gdb_skip_float_test "continuing to breakpoint 1220"] && \
     ![gdb_skip_stdio_test "continuing to breakpoint 1220"] } {
-    send_gdb "continue\n"
-    gdb_expect_list "continuing to breakpoint 1220" ".*$gdb_prompt $" {
+    gdb_test_sequence "continue" "continuing to breakpoint 1220" {
 	"Continuing\\."
 	"\[ \t\r\n\]+array_d :"
 	"\[ \t\r\n\]+========="
 	"\[ \t\r\n\]+0.000000"
 	"\[ \t\r\n\]+23.456\[0-9\]*  46.913\[0-9\]*  70.370\[0-9\]*  93.826\[0-9\]*  117.283\[0-9\]*  140.740\[0-9\]*  164.196\[0-9\]*  187.653\[0-9\]*"
 	"\[ \t\r\n\]+"
-	".*array_f :"
-	".*student id :\[\t \]+.*YELLOW"
-	".*array_i :"
-	".*main \\(\\) at .*call-ar-st.c:1220\[ \t\r\n\]+.*print_all_arrays\\(integer_array, char_array, float_array, double_array\\)."
+	"array_f :"
+	"student id :\[\t \]+.*YELLOW"
+	"array_i :"
+	"main \\(\\) at .*call-ar-st.c:1220\[ \t\r\n\]+.*print_all_arrays\\(integer_array, char_array, float_array, double_array\\)."
     }
 } else {
     gdb_test "continue" ".*" ""
@@ -188,8 +181,7 @@ if ![gdb_skip_stdio_test "next over prin
 #call print_double_array(array_d)
 if {![gdb_skip_float_test "print print_double_array(array_d)"] && \
     ![gdb_skip_stdio_test "print print_double_array(array_d)"] } {
-    send_gdb "print print_double_array(array_d)\n"
-    gdb_expect_list "print print_double_array(array_d)" ".*$gdb_prompt $" {
+    gdb_test_sequence "print print_double_array(array_d)" "" {
 	"array_d :"
 	"\[ \t\r\n\]+========="
 	"\[ \t\r\n\]+\[ \t\r\n\]+0.000000"
@@ -205,10 +197,9 @@ gdb_test "tbreak 1236" \
 
 if {![gdb_skip_float_test "continuing to 1236"] && \
     ![gdb_skip_stdio_test "continuing to 1236"] } {
-    send_gdb "continue\n"
-    gdb_expect_list "continuing to 1236"  ".*$gdb_prompt $" {
+    gdb_test_sequence "continue" "continuing to 1236" {
 	"Continuing\\..*array_c"
-	".*array_f"
+	"array_f"
 	"\[ \t\r\n\]+array_d :"
 	"\[ \t\r\n\]+========="
 	"\[ \t\r\n\]+0.000000"
@@ -304,8 +295,7 @@ if ![gdb_skip_stdio_test "continuing to 
 
 if {![gdb_skip_float_test "print print_small_structs(...)"] && \
     ![gdb_skip_stdio_test "print print_small_structs(...)"] } {
-    send_gdb "print print_small_structs(*struct1, *struct2, *struct3, *struct4, *flags, *flags_combo, *three_char, *five_char, *int_char_combo, *d1, *d2, *d3, *f1, *f2, *f3)\n"
-    gdb_expect_list "print print_small_structs" ".*$gdb_prompt $" {
+    gdb_test_sequence "print print_small_structs(*struct1, *struct2, *struct3, *struct4, *flags, *flags_combo, *three_char, *five_char, *int_char_combo, *d1, *d2, *d3, *f1, *f2, *f3)" "print print_small_structs" {
 	"\[\t\r\n \]+alpha"
 	"\[\t\r\n \]+gamma"
 	"\[\t\r\n \]+epsilon"
@@ -353,8 +343,7 @@ gdb_test "print compute_with_small_struc
 
 if {![gdb_skip_float_test "print print_ten_doubles(...)"] && \
     ![gdb_skip_stdio_test "print print_ten_doubles(...)"]} {
-    send_gdb "print print_ten_doubles(123.456, 123.456, -0.12, -1.23, 343434.8, 89.098, 3.14, -5678.12345, -0.11111111, 216.97065)\n"
-    gdb_expect_list "print print_ten_doubles" ".*$gdb_prompt $" {
+    gdb_test_sequence "print print_ten_doubles(123.456, 123.456, -0.12, -1.23, 343434.8, 89.098, 3.14, -5678.12345, -0.11111111, 216.97065)" "print print_ten_doubles" {
 	"\[\t\r\n \]+Two Doubles : 123.45\[0-9\]*.*123.45\[0-9\]*"
 	"\[\t\r\n \]+Two Doubles : -0.1200\[0-9\]*.*-1.2300\[0-9\]*"
 	"\[\t\r\n \]+Two Doubles : 343434.\[0-9\]*.*89.09\[0-9\]*"
@@ -428,8 +417,7 @@ if {![gdb_skip_float_test "print_small_s
 	setup_kfail "gdb/1539" "sparc-*-*"
     }
 
-    send_gdb "print print_small_structs(struct1, struct2, struct3, struct4, flags, flags_combo, three_char, five_char, int_char_combo, d1, d2, d3, f1, f2, f3)\n"
-    gdb_expect_list "print print_small_structs from print_long_arg_list" ".*$gdb_prompt $" {
+    gdb_test_sequence "print print_small_structs(struct1, struct2, struct3, struct4, flags, flags_combo, three_char, five_char, int_char_combo, d1, d2, d3, f1, f2, f3)" "print print_small_structs from print_long_arg_list" {
 	"\[\t\r\n \]+alpha"
 	"\[\t\r\n \]+gamma"
 	"\[\t\r\n \]+epsilon"
@@ -510,8 +498,7 @@ if {$hp_aCC_compiler} {setup_xfail "hppa
 
 if {![gdb_skip_float_test "print print_long_arg_list"] && \
     ![gdb_skip_stdio_test "print print_long_arg_list"] } {
-    send_gdb "print print_long_arg_list(a, b, c, d, e, f, *struct1, *struct2, *struct3, *struct4, *flags, *flags_combo, *three_char, *five_char, *int_char_combo, *d1, *d2, *d3, *f1, *f2, *f3)\n"
-    gdb_expect_list "print print_long_arg_list" ".*$gdb_prompt $" {
+    gdb_test_sequence "print print_long_arg_list(a, b, c, d, e, f, *struct1, *struct2, *struct3, *struct4, *flags, *flags_combo, *three_char, *five_char, *int_char_combo, *d1, *d2, *d3, *f1, *f2, *f3)" "print print_long_arg_list" {
 	"\[ \n\r\t\]+double : 22.250000"
 	"\[ \n\r\t\]+double : 33.375000"
 	"\[ \n\r\t\]+int : 0"
@@ -571,9 +558,8 @@ if ![gdb_skip_stdio_test "print sum_stru
 
 #call print_struct_rep(*struct1, *struct2, *struct3)
 if ![gdb_skip_stdio_test "print print_struct_rep(...)"] {
-    send_gdb "print print_struct_rep(*struct1, *struct2, *struct3)\n"
-    gdb_expect_list "print print_struct_rep(*struct1, *struct2, *struct3)" \
-	    ".*$gdb_prompt $" {
+    gdb_test_sequence "print print_struct_rep(*struct1, *struct2, *struct3)" \
+	"print print_struct_rep(*struct1, *struct2, *struct3)" {
 	"\[ \t\n\r\]+Contents of struct1:"
 	"\[ \t\n\r\]+        22         0"
 	"\[ \t\n\r\]+Contents of struct2:"
Index: gdb.base/funcargs.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.base/funcargs.exp,v
retrieving revision 1.20
diff -u -p -r1.20 funcargs.exp
--- gdb.base/funcargs.exp	1 Jun 2010 21:29:21 -0000	1.20
+++ gdb.base/funcargs.exp	30 Nov 2010 02:16:17 -0000
@@ -469,11 +469,10 @@ proc discard_and_shuffle {} {
 
     gdb_continue call6b
 
-    send_gdb "backtrace 100\n"
-    if [gdb_expect_list "backtrace from call6b" ".*$gdb_prompt $" {
-	".*\[\r\n\]#0 .* call6b \\(s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#1 .* call6a \\(c=97 'a', s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#2 .* main \\(.*\\) " 
+    if [gdb_test_sequence "backtrace 100" "backtrace from call6b" {
+	"\[\r\n\]#0 .* call6b \\(s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#1 .* call6a \\(c=97 'a', s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#2 .* main \\(.*\\) at "
     } ] {
 	gdb_suppress_tests;
     }
@@ -483,12 +482,11 @@ proc discard_and_shuffle {} {
 
     gdb_continue call6c
 
-    send_gdb "backtrace 100\n"
-    if [gdb_expect_list "backtrace from call6c" ".*$gdb_prompt $" {
-	".*\[\r\n\]#0 .* call6c \\(i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#1 .* call6b \\(s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#2 .* call6a \\(c=97 'a', s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#3 .* main \\(.*\\) "
+    if [gdb_test_sequence "backtrace 100" "backtrace from call6c" {
+	"\[\r\n\]#0 .* call6c \\(i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#1 .* call6b \\(s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#2 .* call6a \\(c=97 'a', s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#3 .* main \\(.*\\) at "
     } ] {
 	gdb_suppress_tests;
     }
@@ -497,13 +495,12 @@ proc discard_and_shuffle {} {
 
     gdb_continue call6d
 
-    send_gdb "backtrace 100\n"
-    if [gdb_expect_list "backtrace from call6d" ".*$gdb_prompt $" {
-	".*\[\r\n\]#0 .* call6d \\(l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#1 .* call6c \\(i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#2 .* call6b \\(s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#3 .* call6a \\(c=97 'a', s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#4 .* main \\(.*\\) "
+    if [gdb_test_sequence "backtrace 100" "backtrace from call6d" {
+	"\[\r\n\]#0 .* call6d \\(l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#1 .* call6c \\(i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#2 .* call6b \\(s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#3 .* call6a \\(c=97 'a', s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#4 .* main \\(.*\\) at "
     } ] {
 	gdb_suppress_tests;
     }
@@ -513,14 +510,13 @@ proc discard_and_shuffle {} {
 
     gdb_continue call6e
 
-    send_gdb "backtrace 100\n"
-    if [gdb_expect_list "backtrace from call6e" ".*$gdb_prompt $" {
-	".*\[\r\n\]#0 .* call6e \\(f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#1 .* call6d \\(l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#2 .* call6c \\(i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#3 .* call6b \\(s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#4 .* call6a \\(c=97 'a', s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#5 .* main \\(.*\\) "
+    if [gdb_test_sequence "backtrace 100" "backtrace from call6e" {
+	"\[\r\n\]#0 .* call6e \\(f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#1 .* call6d \\(l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#2 .* call6c \\(i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#3 .* call6b \\(s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#4 .* call6a \\(c=97 'a', s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#5 .* main \\(.*\\) at "
     } ] {
 	gdb_suppress_tests;
     }
@@ -530,15 +526,14 @@ proc discard_and_shuffle {} {
 
     gdb_continue call6f
 
-    send_gdb "backtrace 100\n"
-    if [gdb_expect_list "backtrace from call6f" ".*$gdb_prompt $" {
-	".*\[\r\n\]#0 .* call6f \\(d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#1 .* call6e \\(f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#2 .* call6d \\(l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#3 .* call6c \\(i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#4 .* call6b \\(s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#5 .* call6a \\(c=97 'a', s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#6 .* main \\(.*\\) "
+    if [gdb_test_sequence "backtrace 100" "backtrace from call6f" {
+	"\[\r\n\]#0 .* call6f \\(d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#1 .* call6e \\(f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#2 .* call6d \\(l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#3 .* call6c \\(i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#4 .* call6b \\(s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#5 .* call6a \\(c=97 'a', s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#6 .* main \\(.*\\) at "
     } ] {
 	gdb_suppress_tests;
     }
@@ -548,16 +543,15 @@ proc discard_and_shuffle {} {
 
     gdb_continue call6g
 
-    send_gdb "backtrace 100\n"
-    if [gdb_expect_list "backtrace from call6g" ".*$gdb_prompt $" {
-	".*\[\r\n\]#0 .* call6g \\(uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#1 .* call6f \\(d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#2 .* call6e \\(f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#3 .* call6d \\(l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#4 .* call6c \\(i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#5 .* call6b \\(s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#6 .* call6a \\(c=97 'a', s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#7 .* main \\(.*\\) "
+    if [gdb_test_sequence "backtrace 100" "backtrace from call6g" {
+	"\[\r\n\]#0 .* call6g \\(uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#1 .* call6f \\(d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#2 .* call6e \\(f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#3 .* call6d \\(l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#4 .* call6c \\(i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#5 .* call6b \\(s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#6 .* call6a \\(c=97 'a', s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#7 .* main \\(.*\\) at "
     } ] {
 	gdb_suppress_tests;
     }
@@ -567,17 +561,16 @@ proc discard_and_shuffle {} {
 
     gdb_continue call6h
 
-    send_gdb "backtrace 100\n"
-    if [gdb_expect_list "backtrace from call6h" ".*$gdb_prompt $" {
-	".*\[\r\n\]#0 .* call6h \\(us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#1 .* call6g \\(uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#2 .* call6f \\(d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#3 .* call6e \\(f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#4 .* call6d \\(l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#5 .* call6c \\(i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#6 .* call6b \\(s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#7 .* call6a \\(c=97 'a', s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#8 .* main \\(.*\\) "
+    if [gdb_test_sequence "backtrace 100" "backtrace from call6h" {
+	"\[\r\n\]#0 .* call6h \\(us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#1 .* call6g \\(uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#2 .* call6f \\(d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#3 .* call6e \\(f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#4 .* call6d \\(l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#5 .* call6c \\(i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#6 .* call6b \\(s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#7 .* call6a \\(c=97 'a', s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#8 .* main \\(.*\\) at "
     } ] {
 	gdb_suppress_tests;
     }
@@ -594,18 +587,17 @@ proc discard_and_shuffle {} {
 
     gdb_continue call6i
 
-    send_gdb "backtrace 100\n"
-    if [gdb_expect_list "backtrace from call6i" ".*$gdb_prompt $" {
-	".*\[\r\n\]#0 .* call6i \\(ui=7, ul=8\\) "
-	".*\[\r\n\]#1 .* call6h \\(us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#2 .* call6g \\(uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#3 .* call6f \\(d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#4 .* call6e \\(f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#5 .* call6d \\(l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#6 .* call6c \\(i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#7 .* call6b \\(s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#8 .* call6a \\(c=97 'a', s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#9 .* main \\(.*\\) "
+    if [gdb_test_sequence "backtrace 100" "backtrace from call6i" {
+	"\[\r\n\]#0 .* call6i \\(ui=7, ul=8\\) "
+	"\[\r\n\]#1 .* call6h \\(us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#2 .* call6g \\(uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#3 .* call6f \\(d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#4 .* call6e \\(f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#5 .* call6d \\(l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#6 .* call6c \\(i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#7 .* call6b \\(s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#8 .* call6a \\(c=97 'a', s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#9 .* main \\(.*\\) at "
     } ] {
 	gdb_suppress_tests;
     }
@@ -615,19 +607,18 @@ proc discard_and_shuffle {} {
 
     gdb_continue call6j
 
-    send_gdb "backtrace 100\n"
-    if [gdb_expect_list "backtrace from call6j" ".*$gdb_prompt $" {
-	".*\[\r\n\]#0 .* call6j \\(ul=8\\) "
-	".*\[\r\n\]#1 .* call6i \\(ui=7, ul=8\\) "
-	".*\[\r\n\]#2 .* call6h \\(us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#3 .* call6g \\(uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#4 .* call6f \\(d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#5 .* call6e \\(f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#6 .* call6d \\(l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#7 .* call6c \\(i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#8 .* call6b \\(s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#9 .* call6a \\(c=97 'a', s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#10 .* main \\(.*\\) "
+    if [gdb_test_sequence "backtrace 100" "backtrace from call6j" {
+	"\[\r\n\]#0 .* call6j \\(ul=8\\) "
+	"\[\r\n\]#1 .* call6i \\(ui=7, ul=8\\) "
+	"\[\r\n\]#2 .* call6h \\(us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#3 .* call6g \\(uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#4 .* call6f \\(d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#5 .* call6e \\(f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#6 .* call6d \\(l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#7 .* call6c \\(i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#8 .* call6b \\(s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#9 .* call6a \\(c=97 'a', s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#10 .* main \\(.*\\) at "
     } ] {
 	gdb_suppress_tests;
     }
@@ -636,20 +627,19 @@ proc discard_and_shuffle {} {
     # Print backtrace.
     gdb_continue call6k
 
-    send_gdb "backtrace 100\n"
-    if [gdb_expect_list "backtrace from call6k" ".*$gdb_prompt $" {
-	".*\[\r\n\]#0 .* call6k \\(\\) "
-	".*\[\r\n\]#1 .* call6j \\(ul=8\\) "
-	".*\[\r\n\]#2 .* call6i \\(ui=7, ul=8\\) "
-	".*\[\r\n\]#3 .* call6h \\(us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#4 .* call6g \\(uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#5 .* call6f \\(d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#6 .* call6e \\(f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#7 .* call6d \\(l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#8 .* call6c \\(i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#9 .* call6b \\(s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#10 .* call6a \\(c=97 'a', s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
-	".*\[\r\n\]#11 .* main \\(.*\\) "
+    if [gdb_test_sequence "backtrace 100" "backtrace from call6k" {
+	"\[\r\n\]#0 .* call6k \\(\\) "
+	"\[\r\n\]#1 .* call6j \\(ul=8\\) "
+	"\[\r\n\]#2 .* call6i \\(ui=7, ul=8\\) "
+	"\[\r\n\]#3 .* call6h \\(us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#4 .* call6g \\(uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#5 .* call6f \\(d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#6 .* call6e \\(f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#7 .* call6d \\(l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#8 .* call6c \\(i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#9 .* call6b \\(s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#10 .* call6a \\(c=97 'a', s=1, i=2, l=3, f=4, d=5, uc=98 'b', us=6, ui=7, ul=8\\) "
+	"\[\r\n\]#11 .* main \\(.*\\) at "
     } ] {
 	gdb_suppress_tests;
     }
@@ -708,11 +698,10 @@ proc shuffle_round_robin {} {
 
     if {$gcc_compiled} then { setup_xfail "rs6000-*-*" }
 
-    send_gdb "backtrace 100\n"
-    gdb_expect_list "backtrace from call7b" ".*$gdb_prompt $" {
-	".*\[\r\n\]#0 .* call7b \\(i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a'\\) "
-	".*\[\r\n\]#1 .* call7a \\(c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7\\) "
-	".*\[\r\n\]#2 .* main \\(.*\\) "
+    gdb_test_sequence "backtrace 100" "backtrace from call7b" {
+	"\[\r\n\]#0 .* call7b \\(i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a'\\) "
+	"\[\r\n\]#1 .* call7a \\(c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7\\) "
+	"\[\r\n\]#2 .* main \\(.*\\) at "
     }
 
     # Continue; should stop at call7c and print actual arguments.
@@ -720,12 +709,11 @@ proc shuffle_round_robin {} {
 
     gdb_continue call7c
 
-    send_gdb "backtrace 100\n"
-    gdb_expect_list "backtrace from call7c" ".*$gdb_prompt $" {
-	".*\[\r\n\]#0 .* call7c \\(s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2\\) "
-	".*\[\r\n\]#1 .* call7b \\(i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a'\\) "
-	".*\[\r\n\]#2 .* call7a \\(c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7\\) "
-	".*\[\r\n\]#3 .* main \\(.*\\) "
+    gdb_test_sequence "backtrace 100" "backtrace from call7c" {
+	"\[\r\n\]#0 .* call7c \\(s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2\\) "
+	"\[\r\n\]#1 .* call7b \\(i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a'\\) "
+	"\[\r\n\]#2 .* call7a \\(c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7\\) "
+	"\[\r\n\]#3 .* main \\(.*\\) at "
     }
 
     # Continue; should stop at call7d and print actual arguments.
@@ -733,25 +721,23 @@ proc shuffle_round_robin {} {
 
     gdb_continue call7d
 
-    send_gdb "backtrace 100\n"
-    gdb_expect_list "backtrace from call7d" ".*$gdb_prompt $" {
-	".*\[\r\n\]#0 .* call7d \\(l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1\\) "
-	".*\[\r\n\]#1 .* call7c \\(s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2\\) "
-	".*\[\r\n\]#2 .* call7b \\(i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a'\\) "
-	".*\[\r\n\]#3 .* call7a \\(c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7\\) "
-	".*\[\r\n\]#4 .* main \\(.*\\) "
+    gdb_test_sequence "backtrace 100" "backtrace from call7d" {
+	"\[\r\n\]#0 .* call7d \\(l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1\\) "
+	"\[\r\n\]#1 .* call7c \\(s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2\\) "
+	"\[\r\n\]#2 .* call7b \\(i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a'\\) "
+	"\[\r\n\]#3 .* call7a \\(c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7\\) "
+	"\[\r\n\]#4 .* main \\(.*\\) at "
     }
 
     gdb_continue call7e
 
-    send_gdb "backtrace 100\n"
-    gdb_expect_list "backtrace from call7e" ".*$gdb_prompt $" {
-	".*\[\r\n\]#0 .* call7e \\(f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3\\) "
-	".*\[\r\n\]#1 .* call7d \\(l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1\\) "
-	".*\[\r\n\]#2 .* call7c \\(s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2\\) "
-	".*\[\r\n\]#3 .* call7b \\(i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a'\\) "
-	".*\[\r\n\]#4 .* call7a \\(c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7\\) "
-	".*\[\r\n\]#5 .* main \\(.*\\) "
+    gdb_test_sequence "backtrace 100" "backtrace from call7e" {
+	"\[\r\n\]#0 .* call7e \\(f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3\\) "
+	"\[\r\n\]#1 .* call7d \\(l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1\\) "
+	"\[\r\n\]#2 .* call7c \\(s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2\\) "
+	"\[\r\n\]#3 .* call7b \\(i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a'\\) "
+	"\[\r\n\]#4 .* call7a \\(c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7\\) "
+	"\[\r\n\]#5 .* main \\(.*\\) at "
     }
 
     # Continue; should stop at call7f and print actual arguments.
@@ -759,15 +745,14 @@ proc shuffle_round_robin {} {
 
     gdb_continue call7f
 
-    send_gdb "backtrace 100\n"
-    gdb_expect_list "backtrace from call7f" ".*$gdb_prompt $" {
-	".*\[\r\n\]#0 .* call7f \\(uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4\\) "
-	".*\[\r\n\]#1 .* call7e \\(f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3\\) "
-	".*\[\r\n\]#2 .* call7d \\(l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1\\) "
-	".*\[\r\n\]#3 .* call7c \\(s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2\\) "
-	".*\[\r\n\]#4 .* call7b \\(i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a'\\) "
-	".*\[\r\n\]#5 .* call7a \\(c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7\\) "
-	".*\[\r\n\]#6 .* main \\(.*\\) "
+    gdb_test_sequence "backtrace 100" "backtrace from call7f" {
+	"\[\r\n\]#0 .* call7f \\(uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4\\) "
+	"\[\r\n\]#1 .* call7e \\(f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3\\) "
+	"\[\r\n\]#2 .* call7d \\(l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1\\) "
+	"\[\r\n\]#3 .* call7c \\(s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2\\) "
+	"\[\r\n\]#4 .* call7b \\(i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a'\\) "
+	"\[\r\n\]#5 .* call7a \\(c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7\\) "
+	"\[\r\n\]#6 .* main \\(.*\\) at "
     }
 
     # Continue; should stop at call7g and print actual arguments.
@@ -775,31 +760,29 @@ proc shuffle_round_robin {} {
 
     gdb_continue call7g
 
-    send_gdb "backtrace 100\n"
-    gdb_expect_list "backtrace from call7g" ".*$gdb_prompt $" {
-	".*\[\r\n\]#0 .* call7g \\(d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b'\\) "
-	".*\[\r\n\]#1 .* call7f \\(uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4\\) "
-	".*\[\r\n\]#2 .* call7e \\(f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3\\) "
-	".*\[\r\n\]#3 .* call7d \\(l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1\\) "
-	".*\[\r\n\]#4 .* call7c \\(s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2\\) "
-	".*\[\r\n\]#5 .* call7b \\(i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a'\\) "
-	".*\[\r\n\]#6 .* call7a \\(c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7\\) "
-	".*\[\r\n\]#7 .* main \\(.*\\) "
+    gdb_test_sequence "backtrace 100" "backtrace from call7g" {
+	"\[\r\n\]#0 .* call7g \\(d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b'\\) "
+	"\[\r\n\]#1 .* call7f \\(uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4\\) "
+	"\[\r\n\]#2 .* call7e \\(f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3\\) "
+	"\[\r\n\]#3 .* call7d \\(l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1\\) "
+	"\[\r\n\]#4 .* call7c \\(s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2\\) "
+	"\[\r\n\]#5 .* call7b \\(i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a'\\) "
+	"\[\r\n\]#6 .* call7a \\(c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7\\) "
+	"\[\r\n\]#7 .* main \\(.*\\) at "
     }
 
     gdb_continue call7h
 
-    send_gdb "backtrace 100\n"
-    gdb_expect_list "backtrace from call7h" ".*$gdb_prompt $" {
-	".*\[\r\n\]#0 .* call7h \\(us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5\\) "
-	".*\[\r\n\]#1 .* call7g \\(d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b'\\) "
-	".*\[\r\n\]#2 .* call7f \\(uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4\\) "
-	".*\[\r\n\]#3 .* call7e \\(f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3\\) "
-	".*\[\r\n\]#4 .* call7d \\(l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1\\) "
-	".*\[\r\n\]#5 .* call7c \\(s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2\\) "
-	".*\[\r\n\]#6 .* call7b \\(i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a'\\) "
-	".*\[\r\n\]#7 .* call7a \\(c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7\\) "
-	".*\[\r\n\]#8 .* main \\(.*\\) "
+    gdb_test_sequence "backtrace 100" "backtrace from call7h" {
+	"\[\r\n\]#0 .* call7h \\(us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5\\) "
+	"\[\r\n\]#1 .* call7g \\(d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b'\\) "
+	"\[\r\n\]#2 .* call7f \\(uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4\\) "
+	"\[\r\n\]#3 .* call7e \\(f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3\\) "
+	"\[\r\n\]#4 .* call7d \\(l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1\\) "
+	"\[\r\n\]#5 .* call7c \\(s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2\\) "
+	"\[\r\n\]#6 .* call7b \\(i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a'\\) "
+	"\[\r\n\]#7 .* call7a \\(c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7\\) "
+	"\[\r\n\]#8 .* main \\(.*\\) at "
     }
 
     # monitor only allows 8 breakpoints; w89k board allows 10, so
@@ -814,18 +797,17 @@ proc shuffle_round_robin {} {
 
     gdb_continue call7i
 
-    send_gdb "backtrace 100\n"
-    gdb_expect_list "backtrace from call7i" ".*$gdb_prompt $" {
-	".*\[\r\n\]#0 .* call7i \\(ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6\\) "
-	".*\[\r\n\]#1 .* call7h \\(us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5\\) "
-	".*\[\r\n\]#2 .* call7g \\(d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b'\\) "
-	".*\[\r\n\]#3 .* call7f \\(uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4\\) "
-	".*\[\r\n\]#4 .* call7e \\(f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3\\) "
-	".*\[\r\n\]#5 .* call7d \\(l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1\\) "
-	".*\[\r\n\]#6 .* call7c \\(s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2\\) "
-	".*\[\r\n\]#7 .* call7b \\(i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a'\\) "
-	".*\[\r\n\]#8 .* call7a \\(c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7\\) "
-	".*\[\r\n\]#9 .* main \\(.*\\) "
+    gdb_test_sequence "backtrace 100" "backtrace from call7i" {
+	"\[\r\n\]#0 .* call7i \\(ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6\\) "
+	"\[\r\n\]#1 .* call7h \\(us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5\\) "
+	"\[\r\n\]#2 .* call7g \\(d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b'\\) "
+	"\[\r\n\]#3 .* call7f \\(uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4\\) "
+	"\[\r\n\]#4 .* call7e \\(f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3\\) "
+	"\[\r\n\]#5 .* call7d \\(l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1\\) "
+	"\[\r\n\]#6 .* call7c \\(s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2\\) "
+	"\[\r\n\]#7 .* call7b \\(i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a'\\) "
+	"\[\r\n\]#8 .* call7a \\(c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7\\) "
+	"\[\r\n\]#9 .* main \\(.*\\) at "
     }
 
     # Continue; should stop at call7j and print actual arguments.
@@ -833,19 +815,18 @@ proc shuffle_round_robin {} {
 
     gdb_continue call7j
 
-    send_gdb "backtrace 100\n"
-    gdb_expect_list "backtrace from call7j" ".*$gdb_prompt $" {
-	".*\[\r\n\]#0 .* call7j \\(ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8\\) "
-	".*\[\r\n\]#1 .* call7i \\(ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6\\) "
-	".*\[\r\n\]#2 .* call7h \\(us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5\\) "
-	".*\[\r\n\]#3 .* call7g \\(d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b'\\) "
-	".*\[\r\n\]#4 .* call7f \\(uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4\\) "
-	".*\[\r\n\]#5 .* call7e \\(f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3\\) "
-	".*\[\r\n\]#6 .* call7d \\(l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1\\) "
-	".*\[\r\n\]#7 .* call7c \\(s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2\\) "
-	".*\[\r\n\]#8 .* call7b \\(i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a'\\) "
-	".*\[\r\n\]#9 .* call7a \\(c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7\\) "
-	".*\[\r\n\]#10 .* main \\(.*\\) "
+    gdb_test_sequence "backtrace 100" "backtrace from call7j" {
+	"\[\r\n\]#0 .* call7j \\(ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8\\) "
+	"\[\r\n\]#1 .* call7i \\(ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6\\) "
+	"\[\r\n\]#2 .* call7h \\(us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5\\) "
+	"\[\r\n\]#3 .* call7g \\(d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b'\\) "
+	"\[\r\n\]#4 .* call7f \\(uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4\\) "
+	"\[\r\n\]#5 .* call7e \\(f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3\\) "
+	"\[\r\n\]#6 .* call7d \\(l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1\\) "
+	"\[\r\n\]#7 .* call7c \\(s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2\\) "
+	"\[\r\n\]#8 .* call7b \\(i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a'\\) "
+	"\[\r\n\]#9 .* call7a \\(c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7\\) "
+	"\[\r\n\]#10 .* main \\(.*\\) at "
     }
 
     # Continue; should stop at call7k and print actual arguments.
@@ -854,20 +835,19 @@ proc shuffle_round_robin {} {
     gdb_continue call7k
 
     if {!$gcc_compiled} then { setup_xfail "mips-sgi-irix*" }
-    send_gdb "backtrace 100\n"
-    gdb_expect_list "backtrace from call7k" ".*$gdb_prompt $" {
-	".*\[\r\n\]#0 .* call7k \\(c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7\\) "
-	".*\[\r\n\]#1 .* call7j \\(ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8\\) "
-	".*\[\r\n\]#2 .* call7i \\(ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6\\) "
-	".*\[\r\n\]#3 .* call7h \\(us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5\\) "
-	".*\[\r\n\]#4 .* call7g \\(d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b'\\) "
-	".*\[\r\n\]#5 .* call7f \\(uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4\\) "
-	".*\[\r\n\]#6 .* call7e \\(f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3\\) "
-	".*\[\r\n\]#7 .* call7d \\(l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1\\) "
-	".*\[\r\n\]#8 .* call7c \\(s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2\\) "
-	".*\[\r\n\]#9 .* call7b \\(i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a'\\) "
-	".*\[\r\n\]#10 .* call7a \\(c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7\\) "
-	".*\[\r\n\]#11 .* main \\(.*\\) "
+    gdb_test_sequence "backtrace 100" "backtrace from call7k" {
+	"\[\r\n\]#0 .* call7k \\(c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7\\) "
+	"\[\r\n\]#1 .* call7j \\(ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8\\) "
+	"\[\r\n\]#2 .* call7i \\(ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6\\) "
+	"\[\r\n\]#3 .* call7h \\(us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5\\) "
+	"\[\r\n\]#4 .* call7g \\(d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b'\\) "
+	"\[\r\n\]#5 .* call7f \\(uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3, f=4\\) "
+	"\[\r\n\]#6 .* call7e \\(f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1, l=3\\) "
+	"\[\r\n\]#7 .* call7d \\(l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2, s=1\\) "
+	"\[\r\n\]#8 .* call7c \\(s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a', i=2\\) "
+	"\[\r\n\]#9 .* call7b \\(i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7, c=97 'a'\\) "
+	"\[\r\n\]#10 .* call7a \\(c=97 'a', i=2, s=1, l=3, f=4, uc=98 'b', d=5, us=6, ul=8, ui=7\\) "
+	"\[\r\n\]#11 .* main \\(.*\\) at "
     }
     gdb_stop_suppressing_tests;
 }
@@ -896,16 +876,15 @@ proc recursive_structs_by_value {} {
     }
 
     if ![istarget sparclet-*-*] {
-	send_gdb "backtrace 100\n"
-	gdb_expect_list "recursive passing of structs by value" ".*$gdb_prompt $" {
-	    ".*\[\r\n\]#0 .* hitbottom \\(\\) "
-	    ".*\[\r\n\]#1 .* recurse \\(a=\{s = 0, i = 0, l = 0\}, depth=0\\) "
-	    ".*\[\r\n\]#2 .* recurse \\(a=\{s = 1, i = 1, l = 1\}, depth=1\\) "
-	    ".*\[\r\n\]#3 .* recurse \\(a=\{s = 2, i = 2, l = 2\}, depth=2\\) "
-	    ".*\[\r\n\]#4 .* recurse \\(a=\{s = 3, i = 3, l = 3\}, depth=3\\) "
-	    ".*\[\r\n\]#5 .* recurse \\(a=\{s = 4, i = 4, l = 4\}, depth=4\\) "
-	    ".*\[\r\n\]#6 .* test_struct_args \\(\\) "
-	    ".*\[\r\n\]#7 .* main \\(.*\\) "
+	gdb_test_sequence "backtrace 100" "recursive passing of structs by value" {
+	    "\[\r\n\]#0 .* hitbottom \\(\\) "
+	    "\[\r\n\]#1 .* recurse \\(a=\{s = 0, i = 0, l = 0\}, depth=0\\) "
+	    "\[\r\n\]#2 .* recurse \\(a=\{s = 1, i = 1, l = 1\}, depth=1\\) "
+	    "\[\r\n\]#3 .* recurse \\(a=\{s = 2, i = 2, l = 2\}, depth=2\\) "
+	    "\[\r\n\]#4 .* recurse \\(a=\{s = 3, i = 3, l = 3\}, depth=3\\) "
+	    "\[\r\n\]#5 .* recurse \\(a=\{s = 4, i = 4, l = 4\}, depth=4\\) "
+	    "\[\r\n\]#6 .* test_struct_args \\(\\) "
+	    "\[\r\n\]#7 .* main \\(.*\\) at "
 	}
     } else {
 	fail "recursive passing of structs by value (sparclet)"
Index: gdb.base/gcore.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.base/gcore.exp,v
retrieving revision 1.18
diff -u -p -r1.18 gcore.exp
--- gdb.base/gcore.exp	24 May 2010 22:06:59 -0000	1.18
+++ gdb.base/gcore.exp	30 Nov 2010 02:16:18 -0000
@@ -138,17 +138,16 @@ gdb_test_multiple "core ${objdir}/${subd
     }
 }
 
-send_gdb "where\n"
-gdb_expect_list "where in corefile" ".*$gdb_prompt $" {
-    ".*\[\r\n\]+#0 .* terminal_func \\(\\) at "
-    ".*\[\r\n\]+#1 .* array_func \\(\\) at "
-    ".*\[\r\n\]+#2 .* factorial_func \\(value=1\\) at "
-    ".*\[\r\n\]+#3 .* factorial_func \\(value=2\\) at "
-    ".*\[\r\n\]+#4 .* factorial_func \\(value=3\\) at "
-    ".*\[\r\n\]+#5 .* factorial_func \\(value=4\\) at "
-    ".*\[\r\n\]+#6 .* factorial_func \\(value=5\\) at "
-    ".*\[\r\n\]+#7 .* factorial_func \\(value=6\\) at "
-    ".*\[\r\n\]+#8 .* main \\(.*\\) at "
+gdb_test_sequence "where" "where in corefile" {
+    "\[\r\n\]+#0 .* terminal_func \\(\\) at "
+    "\[\r\n\]+#1 .* array_func \\(\\) at "
+    "\[\r\n\]+#2 .* factorial_func \\(value=1\\) at "
+    "\[\r\n\]+#3 .* factorial_func \\(value=2\\) at "
+    "\[\r\n\]+#4 .* factorial_func \\(value=3\\) at "
+    "\[\r\n\]+#5 .* factorial_func \\(value=4\\) at "
+    "\[\r\n\]+#6 .* factorial_func \\(value=5\\) at "
+    "\[\r\n\]+#7 .* factorial_func \\(value=6\\) at "
+    "\[\r\n\]+#8 .* main \\(.*\\) at "
 }
 
 set post_corefile_regs [capture_command_output "info registers" ""]
Index: gdb.base/page.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.base/page.exp,v
retrieving revision 1.11
diff -u -p -r1.11 page.exp
--- gdb.base/page.exp	1 Jun 2010 21:29:21 -0000	1.11
+++ gdb.base/page.exp	30 Nov 2010 02:16:18 -0000
@@ -25,8 +25,7 @@ gdb_start
 
 gdb_test_no_output "set pagination off"
 gdb_test "show pagination" "State of pagination is off.*" "pagination is off"
-send_gdb "help\n"
-gdb_expect_list "unpaged help" ".*$gdb_prompt $" {
+gdb_test_sequence "help" "unpaged help" {
     "List of classes of commands:"
     ""
     "aliases -- Aliases of other commands"
Index: gdb.base/sigaltstack.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.base/sigaltstack.exp,v
retrieving revision 1.13
diff -u -p -r1.13 sigaltstack.exp
--- gdb.base/sigaltstack.exp	25 May 2010 21:01:59 -0000	1.13
+++ gdb.base/sigaltstack.exp	30 Nov 2010 02:16:18 -0000
@@ -63,8 +63,7 @@ gdb_test "continue" ".* catcher .*" "con
 gdb_test "next"
 
 # Full backtrace?
-send_gdb "bt\n"
-gdb_expect_list "backtrace" ".*$gdb_prompt $" {
+gdb_test_sequence "bt" "backtrace" {
     "\[\r\n\]+.0 \[^\r\n\]* catcher "
     "\[\r\n\]+.1  .signal handler called."
     "\[\r\n\]+.2 \[^\r\n\]* thrower .next_level=INNER"
@@ -72,7 +71,7 @@ gdb_expect_list "backtrace" ".*$gdb_prom
     "\[\r\n\]+.4  .signal handler called."
     "\[\r\n\]+.5 \[^\r\n\]* thrower .next_level=OUTER"
     "\[\r\n\]+.6 \[^\r\n\]* catcher "
-    "\[\r\n\]+.7 \[^\r\n\]* main .*"
+    "\[\r\n\]+.7 \[^\r\n\]* main "
 }
 
 proc finish_test { pattern msg } {
Index: gdb.base/siginfo.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.base/siginfo.exp,v
retrieving revision 1.11
diff -u -p -r1.11 siginfo.exp
--- gdb.base/siginfo.exp	25 May 2010 21:01:59 -0000	1.11
+++ gdb.base/siginfo.exp	30 Nov 2010 02:16:18 -0000
@@ -62,11 +62,10 @@ if { ![runto_main] } then {
 # Run to the signal handler, validate the backtrace.
 gdb_test "break handler"
 gdb_test "continue" ".* handler .*" "continue to stepi handler"
-send_gdb "bt\n"
-gdb_expect_list "backtrace for nexti" ".*$gdb_prompt $" {
+gdb_test_sequence "bt" "backtrace for nexti" {
     "\[\r\n\]+.0 \[^\r\n\]* handler "
     "\[\r\n\]+.1  .signal handler called."
-    "\[\r\n\]+.2 \[^\r\n\]* main .*"
+    "\[\r\n\]+.2 \[^\r\n\]* main "
 }
 
 # Check that GDB can step the inferior back to main
Index: gdb.base/sigstep.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.base/sigstep.exp,v
retrieving revision 1.22
diff -u -p -r1.22 sigstep.exp
--- gdb.base/sigstep.exp	1 Jun 2010 21:29:21 -0000	1.22
+++ gdb.base/sigstep.exp	30 Nov 2010 02:16:18 -0000
@@ -61,11 +61,10 @@ if { ![runto_main] } then {
 # Run to the signal handler, validate the backtrace.
 gdb_test "break handler"
 gdb_test "continue" ".* handler .*" "continue to stepi handler"
-send_gdb "bt\n"
-gdb_expect_list "backtrace for nexti" ".*$gdb_prompt $" {
+gdb_test_sequence "bt" "backtrace for nexti" {
     "\[\r\n\]+.0 \[^\r\n\]* handler "
     "\[\r\n\]+.1  .signal handler called."
-    "\[\r\n\]+.2 \[^\r\n\]* main .*"
+    "\[\r\n\]+.2 \[^\r\n\]* main "
 }
 
 proc advance { i } {
Index: gdb.base/trace-commands.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.base/trace-commands.exp,v
retrieving revision 1.7
diff -u -p -r1.7 trace-commands.exp
--- gdb.base/trace-commands.exp	1 Jun 2010 21:29:21 -0000	1.7
+++ gdb.base/trace-commands.exp	30 Nov 2010 02:16:18 -0000
@@ -48,8 +48,7 @@ gdb_test "show trace-commands" "State of
 	 "show trace-commands says off"
 
 # Source the script with verbose mode.
-send_gdb "source -v tracecommandsscript\n"
-gdb_expect_list "source -v" ".*$gdb_prompt $" {
+gdb_test_sequence "source -v tracecommandsscript" "source -v" {
   {[\r\n]\+echo in tracecommandsscript\\n}
   {[\r\n]\+define func}
   {[\r\n]\+if 1}
@@ -73,8 +72,8 @@ gdb_test "show trace-commands" \
 gdb_test "echo hi\\n" {\+echo hi\\n[\r\n]+hi} "simple trace-commands test"
 
 # Nested test
-send_gdb "if 1\nset \$i = 0\nwhile \$i < 5\nfunc \$i\nset \$i += 1\nend\nend\n"
-gdb_expect_list	"nested trace-commands test" ".*$gdb_prompt $" {
+gdb_test_sequence "if 1\nset \$i = 0\nwhile \$i < 5\nfunc \$i\nset \$i += 1\nend\nend" \
+    "nested trace-commands test" {
   {[\r\n]\+if 1}
   {[\r\n]\+\+set \$i = 0}
   {[\r\n]\+\+while \$i < 5}
@@ -96,12 +95,11 @@ gdb_expect_list	"nested trace-commands t
 }
 
 # Function with source works
-send_gdb "define topfunc\nsource tracecommandsscript\nend\n"
-gdb_expect_list "define user command" ".*$gdb_prompt $" {
+gdb_test_sequence "define topfunc\nsource tracecommandsscript\nend" \
+    "define user command" {
   {[\r\n]\+define topfunc}
 }
-send_gdb "topfunc\n"
-gdb_expect_list "nested trace-commands test with source" ".*$gdb_prompt $" {
+gdb_test_sequence "topfunc" "nested trace-commands test with source" {
   {[\r\n]\+topfunc}
   {[\r\n]\+\+source tracecommandsscript}
   {[\r\n]\+\+echo in tracecommandsscript\\n}
@@ -116,8 +114,8 @@ gdb_expect_list "nested trace-commands t
 }
 
 # Test nest depth resets properly on error
-send_gdb "if 1\nif 2\nload\necho should not get here\\n\nend\nend\n"
-gdb_expect_list "depth resets on error part 1" ".*$gdb_prompt $" {
+gdb_test_sequence "if 1\nif 2\nload\necho should not get here\\n\nend\nend" \
+    "depth resets on error part 1" {
   {[\r\n]\+if 1}
   {[\r\n]\+\+if 2}
   {[\r\n]\+\+\+load}
Index: lib/gdb.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/lib/gdb.exp,v
retrieving revision 1.159
diff -u -p -r1.159 gdb.exp
--- lib/gdb.exp	23 Nov 2010 22:25:37 -0000	1.159
+++ lib/gdb.exp	30 Nov 2010 02:16:18 -0000
@@ -936,6 +936,11 @@ proc gdb_test_no_output { args } {
 #
 # Like gdb_test and gdb_test_multiple, the output is expected to end with the
 # gdb prompt, which must not be specified in EXPECTED_OUTPUT_LIST.
+#
+# Returns:
+#    1 if the test failed,
+#    0 if the test passes,
+#   -1 if there was an internal error.
 
 proc gdb_test_sequence { command test_name expected_output_list } {
     global gdb_prompt
@@ -944,7 +949,7 @@ proc gdb_test_sequence { command test_na
     }
     lappend expected_output_list ""; # implicit ".*" before gdb prompt
     send_gdb "$command\n"
-    gdb_expect_list $test_name "$gdb_prompt $" $expected_output_list
+    return [gdb_expect_list $test_name "$gdb_prompt $" $expected_output_list]
 }
 
 
@@ -2376,10 +2381,10 @@ proc gdb_expect { args } {
     }
 }
 
-# gdb_expect_list MESSAGE SENTINEL LIST -- expect a sequence of outputs
+# gdb_expect_list TEST SENTINEL LIST -- expect a sequence of outputs
 #
 # Check for long sequence of output by parts.
-# MESSAGE: is the test message to be printed with the test success/fail.
+# TEST: is the test message to be printed with the test success/fail.
 # SENTINEL: Is the terminal pattern indicating that output has finished.
 # LIST: is the sequence of outputs to match.
 # If the sentinel is recognized early, it is considered an error.
@@ -2388,7 +2393,7 @@ proc gdb_expect { args } {
 #    1 if the test failed,
 #    0 if the test passes,
 #   -1 if there was an internal error.
-#
+
 proc gdb_expect_list {test sentinel list} {
     global gdb_prompt
     global suppress_flag


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]