aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.mi
diff options
context:
space:
mode:
authorKeith Seitz <keiths@redhat.com>2013-07-26 18:15:07 +0000
committerKeith Seitz <keiths@redhat.com>2013-07-26 18:15:07 +0000
commit5b32ae97d7cb616e5066c5d4ba640e96df43d554 (patch)
tree8311fcfaaaccdc15bd22e82d89cd4e946a665539 /gdb/testsuite/gdb.mi
parent43234a1e148a36771f22dab2d8bc126110efd8a9 (diff)
downloadgdb-5b32ae97d7cb616e5066c5d4ba640e96df43d554.zip
gdb-5b32ae97d7cb616e5066c5d4ba640e96df43d554.tar.gz
gdb-5b32ae97d7cb616e5066c5d4ba640e96df43d554.tar.bz2
* gdb.mi/mi-var-child-f.exp: Pass f90 to gdb_compile instead
of f77. Allow for compiler variations of integer types. Use mi_create_varobj. Use mi_list_varobj_children for the immediate children of `array'. Add "has_more" attribute for grandchildren test.
Diffstat (limited to 'gdb/testsuite/gdb.mi')
-rw-r--r--gdb/testsuite/gdb.mi/mi-var-child-f.exp22
1 files changed, 14 insertions, 8 deletions
diff --git a/gdb/testsuite/gdb.mi/mi-var-child-f.exp b/gdb/testsuite/gdb.mi/mi-var-child-f.exp
index 762a90d..79d49bd 100644
--- a/gdb/testsuite/gdb.mi/mi-var-child-f.exp
+++ b/gdb/testsuite/gdb.mi/mi-var-child-f.exp
@@ -28,7 +28,7 @@ if [mi_gdb_start] {
standard_testfile array.f
if {[gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" \
- executable {debug f77}] != ""} {
+ executable {debug f90}] != ""} {
return -1
}
@@ -37,14 +37,20 @@ mi_gdb_load ${binfile}
mi_runto MAIN__
-mi_gdb_test "-var-create array * array" \
- "\\^done,name=\"array\",numchild=\"3\",value=\".*\",type=\"integer \\(2,-1:1\\)\"" \
- "create local variable array"
+mi_create_varobj "array" "array" "create local variable array"
-mi_gdb_test "-var-list-children --all-values array" \
- "\\^done,numchild=\"3\",children=\\\[child=\{name=\"array.-1\",exp=\"-1\",numchild=\"2\",value=\"\\\[2\\\]\",type=\"integer \\(2\\)\"\},child=\{name=\"array.0\",exp=\"0\",numchild=\"2\",value=\"\\\[2\\\]\",type=\"integer \\(2\\)\"\},child=\{name=\"array.1\",exp=\"1\",numchild=\"2\",value=\"\\\[2\\\]\",type=\"integer \\(2\\)\"\}\\\]" \
- "get children of array"
+
+# Depending on the compiler version being used, the name of the 4-byte integer
+# and real types can be printed differently. For instance, gfortran-4.1 uses
+# "int4" whereas gfortran-4.3 uses "integer(kind=4)".
+set int4 "(int4|integer\\(kind=4\\))"
+
+set children [list [list "array.-1" "-1" 2 "$int4 \\(2\\)"] \
+ [list "array.0" "0" 2 "$int4 \\(2\\)"] \
+ [list "array.1" "1" 2 "$int4 \\(2\\)"]]
+
+mi_list_varobj_children "array" $children "get children of array"
mi_gdb_test "-var-list-children --all-values array.-1" \
- "\\^done,numchild=\"2\",children=\\\[child=\{name=\"array.-1.1\",exp=\"1\",numchild=\"0\",value=\"11\",type=\"integer\"\},child=\{name=\"array.-1.2\",exp=\"2\",numchild=\"0\",value=\"21\",type=\"integer\"\}\\\]" \
+ "\\^done,numchild=\"2\",children=\\\[child=\{name=\"array.-1.1\",exp=\"1\",numchild=\"0\",value=\"11\",type=\"$int4\"\},child=\{name=\"array.-1.2\",exp=\"2\",numchild=\"0\",value=\"21\",type=\"$int4\"\}\\\],has_more=\"0\"" \
"get grandchildren of array (children of first element of second index)"