From b6d03bb2b65ac5c919f1d08674bbaa2a9bfb2d0c Mon Sep 17 00:00:00 2001 From: Andrew Burgess Date: Wed, 13 Feb 2019 17:10:18 +0000 Subject: gdb/fortran: Additional builtin procedures Add some additional builtin procedures for Fortran, these are MOD, CEILING, FLOOR, MODULO, and CMPLX. gdb/ChangeLog: * f-exp.y (BINOP_INTRINSIC): New token. (exp): New parser rule handling BINOP_INTRINSIC. (f77_keywords): Add new builtin procedures. * f-lang.c (evaluate_subexp_f): Handle BINOP_MOD, UNOP_FORTRAN_CEILING, UNOP_FORTRAN_FLOOR, BINOP_FORTRAN_MODULO, BINOP_FORTRAN_CMPLX. (operator_length_f): Handle UNOP_FORTRAN_CEILING, UNOP_FORTRAN_FLOOR, BINOP_FORTRAN_MODULO, BINOP_FORTRAN_CMPLX. (print_unop_subexp_f): New function. (print_binop_subexp_f): New function. (print_subexp_f): Handle UNOP_FORTRAN_CEILING, UNOP_FORTRAN_FLOOR, BINOP_FORTRAN_MODULO, BINOP_FORTRAN_CMPLX. (dump_subexp_body_f): Likewise. (operator_check_f): Likewise. * fortran-operator.def: Add UNOP_FORTRAN_CEILING, UNOP_FORTRAN_FLOOR, BINOP_FORTRAN_MODULO, BINOP_FORTRAN_CMPLX gdb/testsuite/ChangeLog: * gdb.fortran/intrinsics.exp: Extend to cover MOD, CEILING, FLOOR, MODULO, CMPLX. --- gdb/fortran-operator.def | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'gdb/fortran-operator.def') diff --git a/gdb/fortran-operator.def b/gdb/fortran-operator.def index c3176de..cb40108 100644 --- a/gdb/fortran-operator.def +++ b/gdb/fortran-operator.def @@ -19,4 +19,9 @@ /* Single operand builtins. */ OP (UNOP_FORTRAN_KIND) +OP (UNOP_FORTRAN_FLOOR) +OP (UNOP_FORTRAN_CEILING) +/* Two operand builtins. */ +OP (BINOP_FORTRAN_CMPLX) +OP (BINOP_FORTRAN_MODULO) -- cgit v1.1