diff options
author | Ulrich Weigand <uweigand@de.ibm.com> | 2009-05-18 13:51:52 +0000 |
---|---|---|
committer | Ulrich Weigand <uweigand@de.ibm.com> | 2009-05-18 13:51:52 +0000 |
commit | aaa88a990dbfc9c2d1f271a6d80c6080d87594a4 (patch) | |
tree | 9b6faab72ea5611691f7c697f82875befabd69fd /gdb/ada-valprint.c | |
parent | 17280b9f0a137dae1dbe2eb817b2d7ba18646cd6 (diff) | |
download | gdb-aaa88a990dbfc9c2d1f271a6d80c6080d87594a4.zip gdb-aaa88a990dbfc9c2d1f271a6d80c6080d87594a4.tar.gz gdb-aaa88a990dbfc9c2d1f271a6d80c6080d87594a4.tar.bz2 |
* ada-valprint.c (ada_val_print_1): Use val_print_string to print
result of ada_vax_float_print_function inferior call.
Diffstat (limited to 'gdb/ada-valprint.c')
-rw-r--r-- | gdb/ada-valprint.c | 20 |
1 files changed, 4 insertions, 16 deletions
diff --git a/gdb/ada-valprint.c b/gdb/ada-valprint.c index 3da58ea..1db677d 100644 --- a/gdb/ada-valprint.c +++ b/gdb/ada-valprint.c @@ -739,22 +739,10 @@ ada_val_print_1 (struct type *type, const gdb_byte *valaddr0, struct value *func = ada_vax_float_print_function (type); if (func != 0) { - static struct type *parray_of_char = NULL; - struct value *printable_val; - - if (parray_of_char == NULL) - parray_of_char = - make_pointer_type - (create_array_type - (NULL, builtin_type_true_char, - create_range_type (NULL, builtin_type_int32, 0, 32)), NULL); - - printable_val = - value_ind (value_cast (parray_of_char, - call_function_by_hand (func, 1, - &val))); - - fprintf_filtered (stream, "%s", value_contents (printable_val)); + CORE_ADDR addr; + addr = value_as_address (call_function_by_hand (func, 1, &val)); + val_print_string (builtin_type_true_char, + addr, -1, stream, options); return 0; } /* No special printing function. Do as best we can. */ |