From: Joel Brobecker Date: Fri, 1 Apr 2011 17:03:52 +0000 (+0000) Subject: extend scope of testing in gdb.ada/arrayptr X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=af57139d017fd821ea0cca4c107bd7946a016111;p=binutils-gdb.git extend scope of testing in gdb.ada/arrayptr We add testing of taking a slice of an array access. And we also introduce the same amount of testing, but with an access to a constrained array. gdb/testsuite/ChangeLog: * gdb.ada/arrayptr/foo.adb: Add access to constrained array. * gdb.ada/arrayptr.exp: Add new tests. --- diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index fc02e259cc1..9723a040aea 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2011-04-01 Joel Brobecker + + * gdb.ada/arrayptr/foo.adb: Add access to constrained array. + * gdb.ada/arrayptr.exp: Add new tests. + 2011-04-01 Joel Brobecker * gdb.ada/mi_catch_ex: New testcase. diff --git a/gdb/testsuite/gdb.ada/arrayptr.exp b/gdb/testsuite/gdb.ada/arrayptr.exp index 85d920da914..ba30d612db6 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 fe2a424ee16..e8596c2cf60 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;