diff options
author | Ulrich Weigand <ulrich.weigand@de.ibm.com> | 2016-09-06 17:31:03 +0200 |
---|---|---|
committer | Ulrich Weigand <ulrich.weigand@de.ibm.com> | 2016-09-06 17:31:03 +0200 |
commit | 49f190bcb7f074ea2e27d4e967e4fae9ed7dafb6 (patch) | |
tree | ee2cd587d9bfd4df9156a6c70cbd60aae704317d /gdb/f-lang.c | |
parent | c413c44801e449f1f0b9828b81770e752b8219af (diff) | |
download | gdb-49f190bcb7f074ea2e27d4e967e4fae9ed7dafb6.zip gdb-49f190bcb7f074ea2e27d4e967e4fae9ed7dafb6.tar.gz gdb-49f190bcb7f074ea2e27d4e967e4fae9ed7dafb6.tar.bz2 |
Add missing format for built-in floating-point types
Many callers of init_float_type and arch_float_type still pass a NULL
floatformat. This commit changes those callers where the floatformat
that is supposed to be use is obvious. There are two categories where
this is the case:
- A number of built-in types are intended to match the platform ABI
floating-point types (i.e. types that use gdbarch_float_bit etc.).
Those places should use the platform ABI floating-point formats
defined via gdbarch_float_format etc.
- A number of language built-in types should simply use IEEE floating-
point formats, since the language actually defines that this is the
format that must be used to implement floating-point types for this
language. (This affects Java, Go, and Rust.) The same applies for
to the predefined "RS/6000" stabs floating-point built-in types.
gdb/ChangeLog:
* ada-lang.c (ada_language_arch_info): Use gdbarch-provided
platform ABI floating-point formats for built-in types.
* d-lang.c (build_d_types): Likewise.
* f-lang.c (build_fortran_types): Likewise.
* m2-lang.c (build_m2_types): Likewise.
* mdebugread.c (basic_type): Likewise.
* go-lang.c (build_go_types): Use IEEE floating-point formats
for language built-in types as mandanted by the language.
* jv-lang.c (build_java_types): Likewise.
* rust-lang.c (rust_language_arch_info): Likewise.
* stabsread.c (rs6000_builtin_type): Likewise.
Signed-off-by: Ulrich Weigand <ulrich.weigand@de.ibm.com>
Diffstat (limited to 'gdb/f-lang.c')
-rw-r--r-- | gdb/f-lang.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/gdb/f-lang.c b/gdb/f-lang.c index 58f58dd..29fdb3b 100644 --- a/gdb/f-lang.c +++ b/gdb/f-lang.c @@ -332,13 +332,13 @@ build_fortran_types (struct gdbarch *gdbarch) builtin_f_type->builtin_real = arch_float_type (gdbarch, gdbarch_float_bit (gdbarch), - "real", NULL); + "real", gdbarch_float_format (gdbarch)); builtin_f_type->builtin_real_s8 = arch_float_type (gdbarch, gdbarch_double_bit (gdbarch), - "real*8", NULL); + "real*8", gdbarch_double_format (gdbarch)); builtin_f_type->builtin_real_s16 = arch_float_type (gdbarch, gdbarch_long_double_bit (gdbarch), - "real*16", NULL); + "real*16", gdbarch_long_double_format (gdbarch)); builtin_f_type->builtin_complex_s8 = arch_complex_type (gdbarch, "complex*8", |