# The test proper. See description above.
proc test {condition_eval target_non_stop non_stop displaced} {
- global binfile srcfile
- global gdb_prompt
- global decimal
- global bp_lineno
- global GDBFLAGS
-
# Number of threads started by the program.
set n_threads 10
- save_vars { GDBFLAGS } {
- append GDBFLAGS " -ex \"maint set target-non-stop $target_non_stop\""
- append GDBFLAGS " -ex \"set non-stop $non_stop\""
- append GDBFLAGS " -ex \"set displaced $displaced\""
- append GDBFLAGS " -ex \"set schedule-multiple on\""
- clean_restart $binfile
+ save_vars { ::GDBFLAGS } {
+ append ::GDBFLAGS " -ex \"maint set target-non-stop $target_non_stop\""
+ append ::GDBFLAGS " -ex \"set non-stop $non_stop\""
+ append ::GDBFLAGS " -ex \"set displaced $displaced\""
+ append ::GDBFLAGS " -ex \"set schedule-multiple on\""
+ clean_restart $::binfile
}
- set test_spawn_id [spawn_wait_for_attach $binfile]
+ set test_spawn_id [spawn_wait_for_attach $::binfile]
set testpid [spawn_id_get_pid $test_spawn_id]
set any "\[^\r\n\]*"
gdb_test "add-inferior" "Added inferior 2.*"
gdb_test "inferior 2" "Switching to .*"
- gdb_load $binfile
+ gdb_load $::binfile
if ![runto setup_done] then {
fail "can't run to setup_done"
kill_wait_spawned_process $test_spawn_id
# Get the PID of the test process.
set pid_inf2 ""
gdb_test_multiple "p mypid" "get pid of inferior 2" {
- -re " = ($decimal)\r\n$gdb_prompt $" {
+ -re " = ($::decimal)\r\n$::gdb_prompt $" {
set pid_inf2 $expect_out(1,string)
pass $gdb_test_name
}
# Prevent -readnow timeout.
exp_continue
}
- -re "is a zombie - the process has already terminated.*$gdb_prompt " {
+ -re "is a zombie - the process has already terminated.*$::gdb_prompt " {
fail $gdb_test_name
}
- -re "Unable to attach: .*$gdb_prompt " {
+ -re "Unable to attach: .*$::gdb_prompt " {
fail $gdb_test_name
}
- -re "\r\n$gdb_prompt " {
+ -re "\r\n$::gdb_prompt " {
if { $saw_attaching } {
set attached 1
pass $test
}
# Set threads stepping over a breakpoint continuously.
- gdb_test "break $srcfile:$bp_lineno if 0" "Breakpoint.*" \
+ gdb_test "break $::srcfile:$::bp_lineno if 0" "Breakpoint.*" \
"break LOC if 0"
if {$attempt < $attempts} {
set cont_cmd_re [string_to_regexp $cont_cmd]
gdb_test_multiple $cont_cmd "" {
- -re "^$cont_cmd_re\r\nContinuing\.\r\n$gdb_prompt " {
+ -re "^$cont_cmd_re\r\nContinuing\.\r\n$::gdb_prompt " {
pass $gdb_test_name
}
}
incr running_count
exp_continue
}
- -re "Cannot execute this command while the target is running.*$gdb_prompt $" {
+ -re "Cannot execute this command while the target is running.*$::gdb_prompt $" {
# Testing against a remote server that doesn't do
# non-stop mode. Explicitly interrupt. This
# doesn't test the same code paths in GDB, but
# it's still something.
set interrupted 1
gdb_test_multiple "interrupt" "" {
- -re "$gdb_prompt " {
+ -re "$::gdb_prompt " {
gdb_test_multiple "" $gdb_test_name {
-re "received signal SIGINT, Interrupt" {
pass $gdb_test_name
}
}
}
- -re "$gdb_prompt $" {
+ -re "$::gdb_prompt $" {
gdb_assert {$running_count == ($n_threads + 1) * 2} $gdb_test_name
}
}