This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[PATCH V2 5/7] Fortran, testsuite: Add testcases for nested structures.
- From: Bernhard Heckel <bernhard dot heckel at intel dot com>
- To: qiyaoltc at gmail dot com
- Cc: gdb-patches at sourceware dot org, Bernhard Heckel <bernhard dot heckel at intel dot com>
- Date: Fri, 13 May 2016 11:34:44 +0200
- Subject: [PATCH V2 5/7] Fortran, testsuite: Add testcases for nested structures.
- Authentication-results: sourceware.org; auth=none
- References: <1463132086-17451-1-git-send-email-bernhard dot heckel at intel dot com>
As as result of printing only the outer elements of nested structures,
some testcases have to be added to check for corner cases with VLA's.
2016-05-13 Bernhard Heckel <bernhard.heckel@intel.com>
gdb/testsuite/Changelog:
* gdb.fortran/vla-type.exp: Access elements in nested structs.
---
gdb/testsuite/gdb.fortran/vla-type.exp | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/gdb/testsuite/gdb.fortran/vla-type.exp b/gdb/testsuite/gdb.fortran/vla-type.exp
index e1a5db1..6c547e2 100755
--- a/gdb/testsuite/gdb.fortran/vla-type.exp
+++ b/gdb/testsuite/gdb.fortran/vla-type.exp
@@ -101,6 +101,10 @@ gdb_test "ptype fivev" \
[multi_line "type = Type five" \
"\\s+Type one :: tone" \
"End Type five" ]
+gdb_test "ptype fivev%tone" \
+ [multi_line "type = Type one" \
+ " $int :: ivla\\(10,10,10\\)" \
+ "End Type one" ]
# Check array of types containing a VLA
gdb_breakpoint [gdb_get_line_number "fivearr-filled"]
@@ -114,10 +118,18 @@ gdb_test "ptype fivearr(1)" \
[multi_line "type = Type five" \
"\\s+Type one :: tone" \
"End Type five" ]
+gdb_test "ptype fivearr(1)%tone" \
+ [multi_line "type = Type one" \
+ " $int :: ivla\\(2,4,6\\)" \
+ "End Type one" ]
gdb_test "ptype fivearr(2)" \
[multi_line "type = Type five" \
"\\s+Type one :: tone" \
"End Type five" ]
+gdb_test "ptype fivearr(2)%tone" \
+ [multi_line "type = Type one" \
+ " $int :: ivla\\(12,14,16\\)" \
+ "End Type one" ]
# Check allocation status of dynamic array and it's dynamic members
gdb_test "ptype fivedynarr" "type = <not allocated>"
@@ -126,6 +138,11 @@ gdb_test "ptype fivedynarr(2)" \
[multi_line "type = Type five" \
"\\s+Type one :: tone" \
"End Type five" ]
+gdb_test "ptype fivedynarr(2)%tone" \
+ [multi_line "type = Type one" \
+ " $int :: ivla\\(<not allocated>\\)" \
+ "End Type one" ] \
+ "ptype fivedynarr(2)%tone, not allocated"
# Check dynamic array of types containing a VLA
gdb_breakpoint [gdb_get_line_number "fivedynarr-filled"]
@@ -139,7 +156,15 @@ gdb_test "ptype fivedynarr(1)" \
[multi_line "type = Type five" \
"\\s+Type one :: tone" \
"End Type five" ]
+gdb_test "ptype fivedynarr(1)%tone" \
+ [multi_line "type = Type one" \
+ " $int :: ivla\\(2,4,6\\)" \
+ "End Type one" ]
gdb_test "ptype fivedynarr(2)" \
[multi_line "type = Type five" \
"\\s+Type one :: tone" \
"End Type five" ]
+gdb_test "ptype fivedynarr(2)%tone" \
+ [multi_line "type = Type one" \
+ " $int :: ivla\\(12,14,16\\)" \
+ "End Type one" ]
--
2.7.1.339.g0233b80