diff options
Diffstat (limited to 'gdb/f-lang.c')
-rw-r--r-- | gdb/f-lang.c | 98 |
1 files changed, 44 insertions, 54 deletions
diff --git a/gdb/f-lang.c b/gdb/f-lang.c index 7adb48b..19c1316 100644 --- a/gdb/f-lang.c +++ b/gdb/f-lang.c @@ -355,60 +355,50 @@ build_fortran_types (struct gdbarch *gdbarch) struct builtin_f_type *builtin_f_type = GDBARCH_OBSTACK_ZALLOC (gdbarch, struct builtin_f_type); - builtin_f_type->builtin_void = - init_type (TYPE_CODE_VOID, 1, - 0, - "VOID", (struct objfile *) NULL); - - builtin_f_type->builtin_character = - init_type (TYPE_CODE_INT, TARGET_CHAR_BIT / TARGET_CHAR_BIT, - 0, - "character", (struct objfile *) NULL); - - builtin_f_type->builtin_logical_s1 = - init_type (TYPE_CODE_BOOL, TARGET_CHAR_BIT / TARGET_CHAR_BIT, - TYPE_FLAG_UNSIGNED, - "logical*1", (struct objfile *) NULL); - - builtin_f_type->builtin_integer_s2 = - init_type (TYPE_CODE_INT, - gdbarch_short_bit (gdbarch) / TARGET_CHAR_BIT, - 0, "integer*2", (struct objfile *) NULL); - - builtin_f_type->builtin_logical_s2 = - init_type (TYPE_CODE_BOOL, - gdbarch_short_bit (gdbarch) / TARGET_CHAR_BIT, - TYPE_FLAG_UNSIGNED, "logical*2", (struct objfile *) NULL); - - builtin_f_type->builtin_integer = - init_type (TYPE_CODE_INT, - gdbarch_int_bit (gdbarch) / TARGET_CHAR_BIT, - 0, "integer", (struct objfile *) NULL); - - builtin_f_type->builtin_logical = - init_type (TYPE_CODE_BOOL, - gdbarch_int_bit (gdbarch) / TARGET_CHAR_BIT, - TYPE_FLAG_UNSIGNED, "logical*4", (struct objfile *) NULL); - - builtin_f_type->builtin_real = - init_float_type (gdbarch_float_bit (gdbarch), - "real", NULL); - builtin_f_type->builtin_real_s8 = - init_float_type (gdbarch_double_bit (gdbarch), - "real*8", NULL); - builtin_f_type->builtin_real_s16 = - init_float_type (gdbarch_long_double_bit (gdbarch), - "real*16", NULL); - - builtin_f_type->builtin_complex_s8 = - init_complex_type ("complex*8", - builtin_f_type->builtin_real); - builtin_f_type->builtin_complex_s16 = - init_complex_type ("complex*16", - builtin_f_type->builtin_real_s8); - builtin_f_type->builtin_complex_s32 = - init_complex_type ("complex*32", - builtin_f_type->builtin_real_s16); + builtin_f_type->builtin_void + = arch_type (gdbarch, TYPE_CODE_VOID, 1, "VOID"); + + builtin_f_type->builtin_character + = arch_integer_type (gdbarch, TARGET_CHAR_BIT, 0, "character"); + + builtin_f_type->builtin_logical_s1 + = arch_boolean_type (gdbarch, TARGET_CHAR_BIT, 1, "logical*1"); + + builtin_f_type->builtin_integer_s2 + = arch_integer_type (gdbarch, gdbarch_short_bit (gdbarch), 0, + "integer*2"); + + builtin_f_type->builtin_logical_s2 + = arch_boolean_type (gdbarch, gdbarch_short_bit (gdbarch), 1, + "logical*2"); + + builtin_f_type->builtin_integer + = arch_integer_type (gdbarch, gdbarch_int_bit (gdbarch), 0, + "integer"); + + builtin_f_type->builtin_logical + = arch_boolean_type (gdbarch, gdbarch_int_bit (gdbarch), 1, + "logical*4"); + + builtin_f_type->builtin_real + = arch_float_type (gdbarch, gdbarch_float_bit (gdbarch), + "real", NULL); + builtin_f_type->builtin_real_s8 + = arch_float_type (gdbarch, gdbarch_double_bit (gdbarch), + "real*8", NULL); + builtin_f_type->builtin_real_s16 + = arch_float_type (gdbarch, gdbarch_long_double_bit (gdbarch), + "real*16", NULL); + + builtin_f_type->builtin_complex_s8 + = arch_complex_type (gdbarch, "complex*8", + builtin_f_type->builtin_real); + builtin_f_type->builtin_complex_s16 + = arch_complex_type (gdbarch, "complex*16", + builtin_f_type->builtin_real_s8); + builtin_f_type->builtin_complex_s32 + = arch_complex_type (gdbarch, "complex*32", + builtin_f_type->builtin_real_s16); return builtin_f_type; } |