1 # Copyright
2005-2019 Free Software Foundation
, Inc.
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.
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.
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
/>.
18 if { [skip_ada_tests
] } { return -1 }
20 standard_ada_testfile pa
22 if {[gdb_compile_ada
"${srcfile}" "${binfile}" executable {debug}] != ""} {
26 clean_restart $
{testfile
}
28 set bp_location
[gdb_get_line_number
"STOP" ${testdir}/pa.adb]
29 runto
"pa.adb:$bp_location"
31 gdb_test
"print var" \
32 "= \\(4 => true, false, true, false, true\\)" \
35 # Try printing the value and the type definition of a reference
38 gdb_test
"ptype &var" \
39 "type = access array \\(4 \\.\\. 8\\) of boolean <packed: 1-bit elements>" \
42 gdb_test
"print &var" \
43 "= \\(access pa.packed_array\\) 0x.*" \
46 # Print the value of U_Var
, an unconstrainted packed array.
48 set test
"print u_var"
49 gdb_test_multiple
"$test" "$test" {
50 -re
"= \\(true, false, false, true, true, false\\)\[\r\n\]+$gdb_prompt $" {
53 -re
"= \\(warning: unable to get bounds of array.*\\)\[\r\n\]+$gdb_prompt $" {
54 # The compiler forgot to emit the packed array
's ___XA type,
55 # preventing us from determining the what the array bounds
56 # are. Observed with (FSF GNU Ada 4.5.3 20110124).