1# Copyright 2016-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 16load_lib mi-support.exp 17 18standard_testfile 19 20if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug}] != "" } { 21 untested "failed to compile" 22 return -1 23} 24 25# Test the resolution of PR 18077 26# 27# When doing an -exec-run with a fresh copy of GDB, it would result in 28# synchronous execution, even though mi-async was on. 29 30proc test_async_run {} { 31 global GDBFLAGS 32 33 save_vars { GDBFLAGS } { 34 global binfile 35 36 set GDBFLAGS [concat $GDBFLAGS " -ex \"set mi-async on\""] 37 38 gdb_exit 39 if [mi_gdb_start] { 40 return 41 } 42 43 mi_gdb_load ${binfile} 44 mi_run_cmd 45 mi_gdb_test "123-exec-interrupt --all" "123\\^done" "send interrupt command" 46 mi_expect_interrupt "expect interrupt" 47 } 48} 49 50test_async_run 51