diff options
Diffstat (limited to 'gcc/fortran/iresolve.c')
-rw-r--r-- | gcc/fortran/iresolve.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/gcc/fortran/iresolve.c b/gcc/fortran/iresolve.c index eef424f..6df9583 100644 --- a/gcc/fortran/iresolve.c +++ b/gcc/fortran/iresolve.c @@ -269,6 +269,24 @@ gfc_resolve_atan2 (gfc_expr * f, gfc_expr * x, } +/* Resolve the BESYN and BESJN intrinsics. */ + +void +gfc_resolve_besn (gfc_expr * f, gfc_expr * n, gfc_expr * x) +{ + gfc_typespec ts; + + f->ts = x->ts; + if (n->ts.kind != gfc_c_int_kind) + { + ts.type = BT_INTEGER; + ts.kind = gfc_c_int_kind; + gfc_convert_type (n, &ts, 2); + } + f->value.function.name = gfc_get_string ("<intrinsic>"); +} + + void gfc_resolve_btest (gfc_expr * f, gfc_expr * i, gfc_expr * pos) { @@ -544,6 +562,16 @@ gfc_resolve_fraction (gfc_expr * f, gfc_expr * x) } +/* Resolve single-argument g77 math intrinsics, eg BESY0, ERF. */ + +void +gfc_resolve_g77_math1 (gfc_expr * f, gfc_expr * x) +{ + f->ts = x->ts; + f->value.function.name = gfc_get_string ("<intrinsic>"); +} + + void gfc_resolve_getgid (gfc_expr * f) { |