blob: 9fe8adc306dae9c4d6fd68551cdd4640b0a228cc [file] [log] [blame]
# Copyright 2018-2021 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# The purpose of this test is to verify that GDB is able to handle
# the "-list-thread-groups --available" command, even when there is
# no inferior. In particular, we want to verify that GDB does not
# crash.
load_lib mi-support.exp
set MIFLAGS "-i=mi"
gdb_exit
if [mi_gdb_start] {
continue
}
# Try the "-list-thread-groups --available". This command can generate
# a very large amount of output, potentially exceeding expect's buffer
# size. So we consume the output in chunks.
set test "-list-thread-groups --available"
gdb_test_multiple $test $test {
-re "\}" {
exp_continue
}
-re "\r\n$gdb_prompt " {
pass $test
}
}
# Verify that GDB is still alive.
mi_gdb_test "-data-evaluate-expression 1" \
".*\\^done,value=\"1\"" \
"GDB is still alive"