diff options
-rw-r--r-- | gdb/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/testsuite/gdb.ada/arrayptr.exp | 9 | ||||
-rw-r--r-- | gdb/testsuite/gdb.ada/arrayptr/foo.adb | 7 |
3 files changed, 21 insertions, 0 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index fc02e25..9723a04 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,5 +1,10 @@ 2011-04-01 Joel Brobecker <brobecker@adacore.com> + * gdb.ada/arrayptr/foo.adb: Add access to constrained array. + * gdb.ada/arrayptr.exp: Add new tests. + +2011-04-01 Joel Brobecker <brobecker@adacore.com> + * gdb.ada/mi_catch_ex: New testcase. 2011-04-01 Pedro Alves <pedro@codesourcery.com> diff --git a/gdb/testsuite/gdb.ada/arrayptr.exp b/gdb/testsuite/gdb.ada/arrayptr.exp index 85d920d..ba30d61 100644 --- a/gdb/testsuite/gdb.ada/arrayptr.exp +++ b/gdb/testsuite/gdb.ada/arrayptr.exp @@ -41,4 +41,13 @@ gdb_test "print string_p" \ "= \\(foo\\.string_access\\) 0x\[0-9a-zA-Z\]+" \ "print string_p" +gdb_test "print string_p (3..4)" "= \"ll\"" + gdb_test "print null_string" "= \\(foo\\.string_access\\) 0x0" + +gdb_test "print arr_ptr" "= \\(access foo\\.little_array\\) 0x\[0-9a-zA-Z\]+" + +gdb_test "print arr_ptr (2)" "= 22" + +gdb_test "print arr_ptr (3..4)" "= \\(3 => 23, 24\\)" + diff --git a/gdb/testsuite/gdb.ada/arrayptr/foo.adb b/gdb/testsuite/gdb.ada/arrayptr/foo.adb index fe2a424..e8596c2 100644 --- a/gdb/testsuite/gdb.ada/arrayptr/foo.adb +++ b/gdb/testsuite/gdb.ada/arrayptr/foo.adb @@ -20,7 +20,14 @@ procedure Foo is String_P : String_Access := new String'("Hello"); Null_String : String_Access := null; + + -- Same situation, but constrained array. + type Little_Array is array (1 .. 10) of Integer; + type Little_Array_Ptr is access all Little_Array; + Arr_Ptr: Little_Array_Ptr := + new Little_Array'(21, 22, 23, 24, 25, 26, 27, 28, 29, 30); begin Do_Nothing (String_P'Address); -- STOP Do_Nothing (Null_String'Address); + Do_Nothing (Arr_Ptr'Address); end Foo; |