diff options
-rw-r--r-- | gdb/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/ada-valprint.c | 23 |
2 files changed, 18 insertions, 11 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 221868b..baedb0b 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,11 @@ 2010-11-03 Joel Brobecker <brobecker@adacore.com> + * ada-valprint.c (ada_val_print_array): Move variables `eltlen' + and `len' declaration and computation inside block where they + are being used. + +2010-11-03 Joel Brobecker <brobecker@adacore.com> + * valprint.c (val_print_array_elements): Put back handling of empty arrays. diff --git a/gdb/ada-valprint.c b/gdb/ada-valprint.c index 2ab2ba2..ae2a47d 100644 --- a/gdb/ada-valprint.c +++ b/gdb/ada-valprint.c @@ -603,23 +603,24 @@ ada_val_print_array (struct type *type, const gdb_byte *valaddr, { enum bfd_endian byte_order = gdbarch_byte_order (get_type_arch (type)); struct type *elttype = TYPE_TARGET_TYPE (type); - unsigned int eltlen; - unsigned int len; int result = 0; - if (elttype == NULL) - eltlen = 0; - else - eltlen = TYPE_LENGTH (elttype); - if (eltlen == 0) - len = 0; - else - len = TYPE_LENGTH (type) / eltlen; - /* For an array of chars, print with string syntax. */ if (ada_is_string_type (type) && (options->format == 0 || options->format == 's')) { + unsigned int eltlen; + unsigned int len; + + if (elttype == NULL) + eltlen = 0; + else + eltlen = TYPE_LENGTH (elttype); + if (eltlen == 0) + len = 0; + else + len = TYPE_LENGTH (type) / eltlen; + if (options->prettyprint_arrays) print_spaces_filtered (2 + 2 * recurse, stream); |