This is the mail archive of the gdb-cvs@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[binutils-gdb] Fortran, testsuite: Add testcases for nested structures.


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=86d8a84882643db4d8c28cea8e4a358465cb11f5

commit 86d8a84882643db4d8c28cea8e4a358465cb11f5
Author: Bernhard Heckel <bernhard.heckel@intel.com>
Date:   Wed May 25 08:47:18 2016 +0200

    Fortran, testsuite: Add testcases for nested structures.
    
    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-25  Bernhard Heckel  <bernhard.heckel@intel.com>
    
    gdb/testsuite/Changelog:
    	* gdb.fortran/vla-type.exp: Access elements in nested structs.

Diff:
---
 gdb/testsuite/ChangeLog                |  4 ++++
 gdb/testsuite/gdb.fortran/vla-type.exp | 25 +++++++++++++++++++++++++
 2 files changed, 29 insertions(+)

diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index c8f6ceb..463f723 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,5 +1,9 @@
 2016-05-25  Bernhard Heckel  <bernhard.heckel@intel.com>
 
+	* gdb.fortran/vla-type.exp: Access elements in nested structs.
+
+2016-05-25  Bernhard Heckel  <bernhard.heckel@intel.com>
+
 	* gdb.fortran/type.f90: Add nested structures.
 	* gdb.fortran/whatis-type.exp: Whatis/ptype nested structures.
 	* gdb.fortran/derived-type.exp: Adapt expected output.
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" ]


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]