]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - gdb/testsuite/gdb.mi/mi-return.exp
GDB copyright headers update after running GDB's copyright.py script.
[thirdparty/binutils-gdb.git] / gdb / testsuite / gdb.mi / mi-return.exp
CommitLineData
618f726f 1# Copyright 1999-2016 Free Software Foundation, Inc.
fb40c209
AC
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
e22f8b7c 5# the Free Software Foundation; either version 3 of the License, or
fb40c209 6# (at your option) any later version.
e22f8b7c 7#
fb40c209
AC
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.
e22f8b7c 12#
fb40c209 13# You should have received a copy of the GNU General Public License
e22f8b7c 14# along with this program. If not, see <http://www.gnu.org/licenses/>.
fb40c209 15
17282693
PA
16# Test Machine interface (MI) operations
17#
fb40c209 18# Verify that, using the MI, we can run a simple program and perform
17282693 19# exec-return.
fb40c209 20#
17282693
PA
21# The goal is not to test gdb functionality, which is done by other
22# tests, but to verify the correct output response to MI operations.
fb40c209
AC
23
24load_lib mi-support.exp
b30bf9ee 25set MIFLAGS "-i=mi"
fb40c209
AC
26
27gdb_exit
28if [mi_gdb_start] {
29 continue
30}
31
298a9cf0
TT
32standard_testfile basics.c
33
9357e021 34if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug}] != "" } {
b60f0898
JB
35 untested mi-return.exp
36 return -1
fb40c209
AC
37}
38
39mi_delete_breakpoints
40mi_gdb_reinitialize_dir $srcdir/$subdir
41mi_gdb_reinitialize_dir $srcdir/$subdir
42mi_gdb_load ${binfile}
43
fb40c209
AC
44
45proc test_return_simple {} {
46 global mi_gdb_prompt
76ff342d 47 global hex fullname_syntax srcfile
fb40c209 48
45f07fef 49 set line_callee3_head [gdb_get_line_number "callee3 ("]
471ba8c9 50 set line_callee3_call [expr $line_callee3_head + 2]
45f07fef
MC
51 set line_callee3_close_brace [expr $line_callee3_head + 3]
52
79aa92c1 53 mi_gdb_test "111-exec-return" "111\\^done,frame=\{level=\"0\",addr=\"$hex\",func=\"callee3\",args=\\\[.*\\\],file=\".*basics.c\",fullname=\"${fullname_syntax}${srcfile}\",line=\"($line_callee3_call|$line_callee3_close_brace)\"\}" "return from callee4 now"
fb40c209
AC
54}
55
6afa27b0
EZ
56mi_runto callee4
57
58mi_gdb_test "205-break-delete" \
59 "205\\^done.*" \
60 "delete all breakpoints"
61
fb40c209
AC
62test_return_simple
63
64mi_gdb_exit
65return 0