gdb/testsuite/
[deliverable/binutils-gdb.git] / gdb / testsuite / gdb.ada / lang_switch.exp
CommitLineData
0fb0cc75 1# Copyright 2008, 2009 Free Software Foundation, Inc.
b5dd68e2
JB
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
16if $tracelevel then {
17 strace $tracelevel
18}
19
20load_lib "ada.exp"
21
22set testdir "lang_switch"
23set testfile "${testdir}/lang_switch"
24set cfile "${testdir}/foo"
25set adasrcfile ${srcdir}/${subdir}/${testfile}.adb
26set csrcfile ${srcdir}/${subdir}/${cfile}.c
27set cobject ${objdir}/${subdir}/${cfile}.o
28set binfile ${objdir}/${subdir}/${testfile}
29
30file mkdir ${objdir}/${subdir}/${testdir}
31gdb_compile "${csrcfile}" "${cobject}" object [list debug]
32if {[gdb_compile_ada "${adasrcfile}" "${binfile}" executable [list debug]] != "" } {
33 return -1
34}
35
36gdb_exit
37gdb_start
38gdb_reinitialize_dir $srcdir/$subdir
39gdb_load ${binfile}
40
41set bp_location [gdb_get_line_number "STOP" ${testdir}/foo.c]
42runto "foo.c:$bp_location"
43
f8a8dce6
JB
44gdb_test "set print frame-arguments all" ""
45
b5dd68e2
JB
46# Make sure that the language is switched to Ada for the second frame
47# by checking the string parameter.
48gdb_test "bt" \
49 ".*#1.*lang_switch\\.ada_procedure\\s*\\(msg=$hex\\).*" \
50 "backtrace"
51
52# Now, make sure that the language doesn't get automatically switched
53# if the current language is not "auto".
54gdb_test "set lang c"
55gdb_test "bt" \
56 ".*#1.*lang_switch\\.ada_procedure\\s*\\(msg={.*\\).*" \
57 "backtrace"
58
This page took 0.129299 seconds and 4 git commands to generate.