From 4e845cd39a51d9ffa3d39f87e6fac27d0a723ba4 Mon Sep 17 00:00:00 2001 From: Michael Snyder Date: Thu, 27 Feb 2003 18:13:37 +0000 Subject: 2003-02-27 Michael Snyder * f-lang.c (build_fortran_types): New function. (_initialize_f_language): Gdbarch-register built-in fortran types. --- gdb/ChangeLog | 3 +++ gdb/f-lang.c | 40 ++++++++++++++++++++++++++++++++++++++-- 2 files changed, 41 insertions(+), 2 deletions(-) (limited to 'gdb') 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 + * 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 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, -- cgit v1.1