]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - gdb/testsuite/gdb.modula2/unbounded-array.exp
* Makefile.in gdb.ada/gnat_ada.gpr, gdb.base/gcore-buffer-overflow.c,
[thirdparty/binutils-gdb.git] / gdb / testsuite / gdb.modula2 / unbounded-array.exp
CommitLineData
0fb0cc75 1# Copyright 2007, 2008, 2009 Free Software Foundation, Inc.
e831e7b6
GM
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
d53a7b30 5# the Free Software Foundation; either version 3 of the License, or
e831e7b6 6# (at your option) any later version.
d53a7b30 7#
e831e7b6
GM
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.
d53a7b30 12#
e831e7b6 13# You should have received a copy of the GNU General Public License
d53a7b30 14# along with this program. If not, see <http://www.gnu.org/licenses/>.
e831e7b6
GM
15
16# This file is part of the gdb testsuite. It contains tests for printing
17# the elements of an unbounded array using the Modula-2 language mode of
18# gdb.
19
20if $tracelevel then {
21 strace $tracelevel
22}
23
24set testfile "unbounded1"
25set srcfile ${testfile}.c
26set binfile ${objdir}/${subdir}/${testfile}
27
28if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug quiet}] != "" } {
29 untested "Couldn't compile ${srcfile}"
30 return -1
31}
32
33gdb_exit
34gdb_start
35gdb_reinitialize_dir $srcdir/$subdir
36gdb_load ${binfile}
37
38if ![runto foo] then {
39 perror "couldn't run to breakpoint foo"
40 continue
41}
42
43gdb_test "set lang modula-2" ".*does not match.*" "switch to modula-2"
44
45# gdb test "ptype a" ".*ARRAY OF.*" "print out unbounded ARRAY type"
46
47gdb_test "print HIGH(a)" ".*= 4.*" "print the last legal element of array a"
48
49gdb_test "print a" ".*abcde.*HIGH.*4.*" "print unbounded array contents"
50
51gdb_test "print/c a\[0\]" ".*a.*" "print the 1st element of array a"
52gdb_test "print/c a\[1\]" ".*b.*" "print the 2nd element of array a"
53gdb_test "print/c a\[2\]" ".*c.*" "print the 3rd element of array a"
54gdb_test "print/c a\[3\]" ".*d.*" "print the 4th element of array a"
55gdb_test "print/c a\[4\]" ".*e.*" "print the 5th element of array a"