]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - gdb/testsuite/gdb.guile/scm-type.exp
gdb: fix getting range of flexible array member in Python
[thirdparty/binutils-gdb.git] / gdb / testsuite / gdb.guile / scm-type.exp
index 8778cdb36cb1e24352ad5264bb9f717d7fc3a288..517c99f8369d69b6b8b7304f665f8b4489208fdc 100644 (file)
@@ -261,6 +261,18 @@ proc test_range {} {
                "ERROR: .*: Wrong type argument in position 1 \\(expecting ranged type\\): .*" \
                "check range for non ranged type"
        }
+
+       with_test_prefix "on flexible array member" {
+           gdb_scm_test_silent_cmd "print f" "print value (f)"
+           gdb_scm_test_silent_cmd "guile (define f (history-ref 0))" \
+               "get value (f) from history"
+           gdb_test "guile (print (type-range (field-type (type-field (value-type (value-dereference f)) \"items\"))))" \
+               "= \\(0 0\\)"
+           gdb_test "guile (print (value-subscript (value-field (value-dereference f) \"items\") 0))" \
+               "= 111"
+           gdb_test "guile (print (value-subscript (value-field (value-dereference f) \"items\") 1))" \
+               "= 222"
+       }
     }
 }