1 # Copyright
2009-2024 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 require allow_ada_tests
20 standard_ada_testfile foo
22 foreach_gnat_encoding scenario flags
{all minimal
} {
25 if {[gdb_compile_ada
"${srcfile}" "${binfile}-${scenario}" executable $flags] != ""} {
29 clean_restart $
{testfile
}-$
{scenario
}
31 set bp_location
[gdb_get_line_number
"START" ${testdir}/foo.adb]
32 runto
"foo.adb:$bp_location"
34 set test
"print my_buffer"
35 gdb_test_multiple
"$test" $test {
36 -re
"= \\(size => 8, buffer => \\(1, 2, 3, 4, 5, 6, 7, 0\\), length => 8\\)\[\r\n\]+$gdb_prompt $" {
39 -re
"= \\(size => 8, length => 8, buffer => \\(1, 2, 3, 4, 5, 6, 7, 0\\)\\)\[\r\n\]+$gdb_prompt $" {
42 -re
" = \\(size => 8, length => 8, buffer => warning: could not find bounds information on packed array.*$gdb_prompt $" {
43 # GNAT
>= 11.0 has the needed fix here.
44 if {$scenario
== "minimal" && [gnat_version_compare < 11]} {
45 setup_kfail
"minimal encodings" *-*-*
51 gdb_test
"print my_buffer'Address" \
52 "= \\(system\\.address\\) $hex" \
55 set test
"print {foo.octal_buffer}($)"
56 gdb_test_multiple
"$test" $test {
57 -re
"= \\(size => 8, buffer => \\(1, 2, 3, 4, 5, 6, 7, 0\\), length => 8\\)\[\r\n\]+$gdb_prompt $" {
60 -re
"= \\(size => 8, length => 8, buffer => \\(1, 2, 3, 4, 5, 6, 7, 0\\)\\)\[\r\n\]+$gdb_prompt $" {
63 -re
" = \\(size => 8, length => 8, buffer => warning: could not find bounds information on packed array.*$gdb_prompt $" {
64 # GNAT
>= 11.0 has the needed fix here.
65 if {$scenario
== "minimal" && [gnat_version_compare < 11]} {
66 setup_kfail
"minimal encodings" *-*-*