diff options
-rw-r--r-- | gdb/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/testsuite/gdb.ada/packed_array.exp | 44 | ||||
-rw-r--r-- | gdb/testsuite/gdb.ada/packed_array/pa.adb | 29 |
3 files changed, 78 insertions, 0 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index bc58353..567558b 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2005-02-15 Joel Brobecker <brobecker@adacore.com> + + * gdb.ada/packed_array/pa.adb: New file. + * gdb.ada/packed_array.exp: New testcase. + 2005-02-10 Mark Kettenis <kettenis@gnu.org> * gdb.dwarf2/dw2-intermix.exp, gdb.dwarf2/dw2-intermix.S: New diff --git a/gdb/testsuite/gdb.ada/packed_array.exp b/gdb/testsuite/gdb.ada/packed_array.exp new file mode 100644 index 0000000..6192470 --- /dev/null +++ b/gdb/testsuite/gdb.ada/packed_array.exp @@ -0,0 +1,44 @@ +# Copyright 2005 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 2 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, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, +# USA. + +if $tracelevel then { + strace $tracelevel +} + +load_lib "ada.exp" + +set testdir "packed_array" +set testfile "${testdir}/pa" +set srcfile ${srcdir}/${subdir}/${testfile}.adb +set binfile ${objdir}/${subdir}/${testfile} + +if {[gdb_compile_ada "${srcfile}" "${binfile}" executable [list debug ]] != "" } { + return -1 +} + +gdb_exit +gdb_start +gdb_reinitialize_dir $srcdir/$subdir +gdb_load ${binfile} + +set bp_location [gdb_get_line_number "STOP" ${testdir}/pa.adb] +runto "pa.adb:$bp_location" + +gdb_test "print var" \ + ".* = \\(4 => true, false, true, false, true\\)" \ + "print var" + diff --git a/gdb/testsuite/gdb.ada/packed_array/pa.adb b/gdb/testsuite/gdb.ada/packed_array/pa.adb new file mode 100644 index 0000000..ca439e3 --- /dev/null +++ b/gdb/testsuite/gdb.ada/packed_array/pa.adb @@ -0,0 +1,29 @@ +-- Copyright 2005 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 2 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, write to the Free Software +-- Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + +procedure PA is + + type Packed_Array is array (4 .. 8) of Boolean; + pragma pack (Packed_Array); + + Var : Packed_Array; + +begin + + Var := (True, False, True, False, True); + Var (8) := False; -- STOP + +end PA; |