testsuite/
* lib/gdb.exp (gdb_test_multiple): Handle "y or [n]", "[y] or n", and the breakpoint menu. Do not call perror if a prompt is seen. Consume the following GDB prompt. * gdb.cp/method2.exp (test_break): Use gdb_test_multiple. * gdb.cp/namespace.exp: Use gdb_test. * gdb.cp/templates.exp: Use gdb_test. (test_template_breakpoints): Use gdb_test_multiple.
This commit is contained in:
parent
d48cc9dd6f
commit
b598bfda9b
@ -1,3 +1,13 @@
|
||||
2009-11-12 Daniel Jacobowitz <dan@codesourcery.com>
|
||||
|
||||
* lib/gdb.exp (gdb_test_multiple): Handle "y or [n]", "[y] or n",
|
||||
and the breakpoint menu. Do not call perror if a prompt is seen.
|
||||
Consume the following GDB prompt.
|
||||
* gdb.cp/method2.exp (test_break): Use gdb_test_multiple.
|
||||
* gdb.cp/namespace.exp: Use gdb_test.
|
||||
* gdb.cp/templates.exp: Use gdb_test.
|
||||
(test_template_breakpoints): Use gdb_test_multiple.
|
||||
|
||||
2009-11-12 Daniel Jacobowitz <dan@codesourcery.com>
|
||||
|
||||
* gdb.base/break1.c (struct some_struct, values): Move earlier.
|
||||
|
@ -50,15 +50,12 @@ proc test_break { lang } {
|
||||
"" \
|
||||
"setting language $lang"
|
||||
|
||||
send_gdb "break A::method\n"
|
||||
gdb_expect {
|
||||
gdb_test_multiple "break A::method" "breaking in method ($lang)" {
|
||||
-re ".0. cancel.*\[\r\n\]*.1. all.*\[\r\n\]*.2. A::method\\(A\\*\\) at .*\[\r\n\]*.3. A::method\\(int\\) at .*\[\r\n\]*\[\r\n\]*.4. A::method\\(\\) at .*\[\r\n\]*> $" {
|
||||
gdb_test "0" \
|
||||
"canceled" \
|
||||
"breaking in method ($lang)"
|
||||
}
|
||||
-re ".*$gdb_prompt $" { fail "breaking in method ($lang)" }
|
||||
default { fail "breaking in method ($lang) (timeout)" }
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -163,14 +163,8 @@ gdb_expect {
|
||||
|
||||
# Break on a function in a namespace
|
||||
|
||||
send_gdb "break AAA::xyzq\n"
|
||||
gdb_expect {
|
||||
-re "Breakpoint.*at $hex: file.*namespace.cc, line 42\\.\r\n$gdb_prompt $" {
|
||||
pass "break AAA::xyzq"
|
||||
}
|
||||
-re ".*$gdb_prompt $" { fail "break AAA::xyzq" }
|
||||
timeout { fail "(timeout) break AAA::xyzq" }
|
||||
}
|
||||
gdb_test "break AAA::xyzq" \
|
||||
"Breakpoint.*at $hex: file.*namespace.cc, line 42\\."
|
||||
|
||||
# Call a function in a nested namespace
|
||||
|
||||
@ -194,14 +188,8 @@ gdb_expect {
|
||||
|
||||
# Break on a function in a nested namespace
|
||||
|
||||
send_gdb "break BBB::CCC::xyzq\n"
|
||||
gdb_expect {
|
||||
-re "Breakpoint.*at $hex: file.*namespace.cc, line 58\\.\r\n$gdb_prompt $" {
|
||||
pass "break BBB::CCC::xyzq"
|
||||
}
|
||||
-re ".*$gdb_prompt $" { fail "break BBB::CCC::xyzq" }
|
||||
timeout { fail "(timeout) break BBB::CCC::xyzq" }
|
||||
}
|
||||
gdb_test "break BBB::CCC::xyzq" \
|
||||
"Breakpoint.*at $hex: file.*namespace.cc, line 58\\."
|
||||
|
||||
# Print address of a function in a class in a namespace
|
||||
|
||||
@ -225,14 +213,8 @@ gdb_expect {
|
||||
|
||||
# Break on a function in a class in a namespace
|
||||
|
||||
send_gdb "break BBB::Class::xyzq\n"
|
||||
gdb_expect {
|
||||
-re "Breakpoint.*at $hex: file.*namespace.cc, line 63\\.\r\n$gdb_prompt $" {
|
||||
pass "break BBB::Class::xyzq"
|
||||
}
|
||||
-re ".*$gdb_prompt $" { fail "break BBB::Class::xyzq" }
|
||||
timeout { fail "(timeout) break BBB::Class::xyzq" }
|
||||
}
|
||||
gdb_test "break BBB::Class::xyzq" \
|
||||
"Breakpoint.*at $hex: file.*namespace.cc, line 63\\."
|
||||
|
||||
# Test to see if the appropriate namespaces are in scope when trying
|
||||
# to print out stuff from within a function defined within a
|
||||
|
@ -112,8 +112,7 @@ proc test_template_breakpoints {} {
|
||||
global srcdir
|
||||
global hp_aCC_compiler
|
||||
|
||||
send_gdb "break T5<int>::T5\n"
|
||||
gdb_expect {
|
||||
gdb_test_multiple "break T5<int>::T5" "constructor breakpoint" {
|
||||
-re "0. cancel.*\[\r\n\]*.1. all.*\[\r\n\]*.2. T5<int>::T5\\(int\\) at .*\[\r\n\]*.3. T5<int>::T5\\((T5<int> const|const T5<int>) ?&\\) at .*\[\r\n\]*> $" {
|
||||
gdb_test "0" \
|
||||
"canceled" \
|
||||
@ -135,8 +134,6 @@ proc test_template_breakpoints {} {
|
||||
"nonsense intended to insure that this test fails" \
|
||||
"constructor breakpoint (bad menu choices)"
|
||||
}
|
||||
-re ".*$gdb_prompt $" { fail "constructor breakpoint" }
|
||||
default { fail "constructor breakpoint (timeout)" }
|
||||
}
|
||||
|
||||
# See CLLbs14792
|
||||
@ -546,9 +543,5 @@ gdb_expect {
|
||||
|
||||
# djb - 06-03-2000
|
||||
# Now should work fine
|
||||
send_gdb "break Garply<Garply<char> >::garply\n"
|
||||
gdb_expect {
|
||||
-re "Breakpoint \[0-9\]* at $hex: file .*templates.cc, line.*\r\n$gdb_prompt $" { pass "break Garply<Garply<char> >::garply" }
|
||||
-re ".*$gdb_prompt $" { fail "break Garply<Garply<char> >::garply" }
|
||||
timeout { fail "break Garply<Garply<char> >::garply (timeout)" }
|
||||
}
|
||||
gdb_test "break Garply<Garply<char> >::garply" \
|
||||
"Breakpoint \[0-9\]* at $hex: file .*templates.cc, line.*"
|
||||
|
@ -763,10 +763,16 @@ proc gdb_test_multiple { command message user_code } {
|
||||
fail "$message"
|
||||
set result -1
|
||||
}
|
||||
-re "\\(y or n\\) " {
|
||||
-re "\\((y or n|y or \\\[n\\\]|\\\[y\\\] or n)\\) " {
|
||||
send_gdb "n\n"
|
||||
perror "Got interactive prompt."
|
||||
fail "$message"
|
||||
gdb_expect -re "$gdb_prompt $"
|
||||
fail "$message (got interactive prompt)"
|
||||
set result -1
|
||||
}
|
||||
-re "\\\[0\\\] cancel\r\n\\\[1\\\] all.*\r\n> $" {
|
||||
send_gdb "0\n"
|
||||
gdb_expect -re "$gdb_prompt $"
|
||||
fail "$message (got breakpoint menu)"
|
||||
set result -1
|
||||
}
|
||||
eof {
|
||||
|
Loading…
x
Reference in New Issue
Block a user