summaryrefslogtreecommitdiff
path: root/gdb/f-lang.c
diff options
context:
space:
mode:
authorsergiodj <sergiodj>2010-04-20 17:22:14 +0000
committersergiodj <sergiodj>2010-04-20 17:22:14 +0000
commit8ee302683860723cc53c405bf12cebfe2d70fae1 (patch)
treeb2ca23d5e8ba58a0516febd74017a06394a55b28 /gdb/f-lang.c
parentd7fff800bc0d0b41183b0d7171394ba23cfac48e (diff)
downloadgdb-8ee302683860723cc53c405bf12cebfe2d70fae1.tar.gz
gdb/ChangeLog:
2010-04-20 Jan Kratochvil <jan.kratochvil@redhat.com> * f-exp.y: Add new production to recognize the `logical*8' type. (LOGICAL_S8_KEYWORD): New token. * f-lang.c (enum f_primitive_types) <f_primitive_type_logical_s8>: New field. (f_language_arch_info): Handling `logical*8' type. (build_fortran_types): Building `logical*8' type. * f-lang.h (struct builtin_f_type) <builtin_logical_s8>: New field. gdb/testsuite/ChangeLog: 2010-04-20 Jan Kratochvil <jan.kratochvil@redhat.com> Sergio Durigan Junior <sergiodj@redhat.com> * gdb.fortran/logical.exp: New testcase. * gdb.fortran/logical.f90: New file.
Diffstat (limited to 'gdb/f-lang.c')
-rw-r--r--gdb/f-lang.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/gdb/f-lang.c b/gdb/f-lang.c
index b914b491529..0bee8f50e80 100644
--- a/gdb/f-lang.c
+++ b/gdb/f-lang.c
@@ -259,6 +259,7 @@ enum f_primitive_types {
f_primitive_type_logical,
f_primitive_type_logical_s1,
f_primitive_type_logical_s2,
+ f_primitive_type_logical_s8,
f_primitive_type_integer,
f_primitive_type_integer_s2,
f_primitive_type_real,
@@ -289,6 +290,8 @@ f_language_arch_info (struct gdbarch *gdbarch,
= builtin->builtin_logical_s1;
lai->primitive_type_vector [f_primitive_type_logical_s2]
= builtin->builtin_logical_s2;
+ lai->primitive_type_vector [f_primitive_type_logical_s8]
+ = builtin->builtin_logical_s8;
lai->primitive_type_vector [f_primitive_type_real]
= builtin->builtin_real;
lai->primitive_type_vector [f_primitive_type_real_s8]
@@ -372,6 +375,10 @@ build_fortran_types (struct gdbarch *gdbarch)
= arch_boolean_type (gdbarch, gdbarch_short_bit (gdbarch), 1,
"logical*2");
+ builtin_f_type->builtin_logical_s8
+ = arch_boolean_type (gdbarch, gdbarch_long_long_bit (gdbarch), 1,
+ "logical*8");
+
builtin_f_type->builtin_integer
= arch_integer_type (gdbarch, gdbarch_int_bit (gdbarch), 0,
"integer");