diff options
-rw-r--r-- | gdb/ChangeLog | 3 | ||||
-rw-r--r-- | gdb/f-lang.c | 40 |
2 files changed, 41 insertions, 2 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 7126896..c4d9d79 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,8 @@ 2003-02-27 Michael Snyder <msnyder@redhat.com> + * f-lang.c (build_fortran_types): New function. + (_initialize_f_language): Gdbarch-register built-in fortran types. + * doublest.c (extract_floating): Fix warning text. 2003-02-27 Andrew Cagney <cagney@redhat.com> diff --git a/gdb/f-lang.c b/gdb/f-lang.c index 85866b3..84e3d81 100644 --- a/gdb/f-lang.c +++ b/gdb/f-lang.c @@ -483,8 +483,8 @@ const struct language_defn f_language_defn = LANG_MAGIC }; -void -_initialize_f_language (void) +static void +build_fortran_types (void) { builtin_type_f_void = init_type (TYPE_CODE_VOID, 1, @@ -556,6 +556,42 @@ _initialize_f_language (void) 0, "complex*32", (struct objfile *) NULL); TYPE_TARGET_TYPE (builtin_type_f_complex_s32) = builtin_type_f_real_s16; +} + +void +_initialize_f_language (void) +{ + build_fortran_types (); + register_gdbarch_swap (&builtin_type_f_character, + sizeof (struct type *), NULL); + register_gdbarch_swap (&builtin_type_f_logical, + sizeof (struct type *), NULL); + register_gdbarch_swap (&builtin_type_f_logical_s1, + sizeof (struct type *), NULL); + register_gdbarch_swap (&builtin_type_f_logical_s2, + sizeof (struct type *), NULL); + register_gdbarch_swap (&builtin_type_f_integer, + sizeof (struct type *), NULL); + register_gdbarch_swap (&builtin_type_f_integer_s2, + sizeof (struct type *), NULL); + register_gdbarch_swap (&builtin_type_f_real, + sizeof (struct type *), NULL); + register_gdbarch_swap (&builtin_type_f_real_s8, + sizeof (struct type *), NULL); + register_gdbarch_swap (&builtin_type_f_real_s16, + sizeof (struct type *), NULL); + register_gdbarch_swap (&builtin_type_f_complex_s8, + sizeof (struct type *), NULL); + register_gdbarch_swap (&builtin_type_f_complex_s16, + sizeof (struct type *), NULL); + register_gdbarch_swap (&builtin_type_f_complex_s32, + sizeof (struct type *), NULL); + register_gdbarch_swap (&builtin_type_f_void, + sizeof (struct type *), NULL); + register_gdbarch_swap (&builtin_type_string, + sizeof (struct type *), NULL); + + register_gdbarch_swap (NULL, 0, build_fortran_types); builtin_type_string = init_type (TYPE_CODE_STRING, TARGET_CHAR_BIT / TARGET_CHAR_BIT, |