xref: /netbsd-src/external/gpl3/gdb.old/dist/gdb/testsuite/gdb.threads/switch-threads.exp (revision 8b657b0747480f8989760d71343d6dd33f8d4cf9)
1# Copyright (C) 2003-2023 Free Software Foundation, Inc.
2
3# This program is free software; you can redistribute it and/or modify
4# it under the terms of the GNU General Public License as published by
5# the Free Software Foundation; either version 3 of the License, or
6# (at your option) any later version.
7#
8# This program is distributed in the hope that it will be useful,
9# but WITHOUT ANY WARRANTY; without even the implied warranty of
10# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11# GNU General Public License for more details.
12#
13# You should have received a copy of the GNU General Public License
14# along with this program.  If not, see <http://www.gnu.org/licenses/>.
15
16# This file was written by Daniel Jacobowitz <drow@mvista.com>.
17#
18# It tests that the correct thread is single-stepped.  Prior to the
19# introduction of vCont, we didn't pass enough information to remote
20# multi-threaded stubs to reliably get this correct; gdbserver defaulted
21# to the first thread.
22
23# TODO: we should also test explicitly changing threads with the "thread"
24# command.
25
26standard_testfile
27
28if {[gdb_compile_pthreads "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable debug] != "" } {
29    return -1
30}
31
32clean_restart ${binfile}
33
34runto_main
35
36gdb_breakpoint thread_func
37gdb_continue_to_breakpoint "continue to thread_func"
38gdb_test "next" ".*foo \\(\\);"
39
40