gdb/python: exception trying to create empty array
The following python command fails: (gdb) python print gdb.lookup_type('char').array(1, 0) Traceback (most recent call last): File "<string>", line 1, in <module> ValueError: Array length must not be negative Error while executing Python code. The above is trying to create an empty array, which is fairly command in Ada. gdb/ChangeLog: * python/py-type.c (typy_array_1): Do not raise negative-length exception if N2 is equal to N1 - 1. gdb/testsuite/ChangeLog: * gdb.python/py-type.exp: Add a couple test about empty array creation, and negative-length array creation.
This commit is contained in:
parent
533d0af0b8
commit
8503d6e1e5
|
@ -1,3 +1,8 @@
|
|||
2015-01-06 Joel Brobecker <brobecker@adacore.com>
|
||||
|
||||
* python/py-type.c (typy_array_1): Do not raise negative-length
|
||||
exception if N2 is equal to N1 - 1.
|
||||
|
||||
2015-01-03 Doug Evans <xdje42@gmail.com>
|
||||
|
||||
* c-exp.y: Whitespace cleanup.
|
||||
|
|
|
@ -528,7 +528,7 @@ typy_array_1 (PyObject *self, PyObject *args, int is_vector)
|
|||
n1 = 0;
|
||||
}
|
||||
|
||||
if (n2 < n1)
|
||||
if (n2 < n1 - 1)
|
||||
{
|
||||
PyErr_SetString (PyExc_ValueError,
|
||||
_("Array length must not be negative"));
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
2015-01-06 Joel Brobecker <brobecker@adacore.com>
|
||||
|
||||
* gdb.python/py-type.exp: Add a couple test about empty
|
||||
array creation, and negative-length array creation.
|
||||
|
||||
2015-01-02 Doug Evans <xdje42@gmail.com>
|
||||
|
||||
* gdb.cp/nsalias.exp: Fix output of external/declaration flags.
|
||||
|
|
|
@ -247,6 +247,12 @@ restart_gdb "${binfile}"
|
|||
# Skip all tests if Python scripting is not enabled.
|
||||
if { [skip_python_tests] } { continue }
|
||||
|
||||
gdb_test "python print gdb.lookup_type('char').array(1, 0)" \
|
||||
"char \\\[0\\\]"
|
||||
|
||||
gdb_test "python print gdb.lookup_type('char').array(1, -1)" \
|
||||
"Array length must not be negative.*"
|
||||
|
||||
with_test_prefix "lang_c" {
|
||||
runto_bp "break to inspect struct and array."
|
||||
test_fields "c"
|
||||
|
|
Loading…
Reference in New Issue