diff options
Diffstat (limited to 'gcc/fortran/intrinsic.c')
-rw-r--r-- | gcc/fortran/intrinsic.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/gcc/fortran/intrinsic.c b/gcc/fortran/intrinsic.c index 180e7ae..be23556 100644 --- a/gcc/fortran/intrinsic.c +++ b/gcc/fortran/intrinsic.c @@ -949,10 +949,14 @@ add_functions (void) gfc_check_fn_c, gfc_simplify_aimag, gfc_resolve_aimag, z, BT_COMPLEX, dz, REQUIRED); + make_alias ("imag", GFC_STD_GNU); + make_alias ("imagpart", GFC_STD_GNU); + add_sym_1 ("dimag", 1, 1, BT_REAL, dd, GFC_STD_GNU, NULL, gfc_simplify_aimag, gfc_resolve_aimag, z, BT_COMPLEX, dd, REQUIRED); + make_generic ("aimag", GFC_ISYM_AIMAG, GFC_STD_F77); add_sym_2 ("aint", 1, 1, BT_REAL, dr, GFC_STD_F77, @@ -1813,6 +1817,11 @@ add_functions (void) gfc_check_real, gfc_simplify_real, gfc_resolve_real, a, BT_UNKNOWN, dr, REQUIRED, kind, BT_INTEGER, di, OPTIONAL); + /* This provides compatibility with g77. */ + add_sym_1 ("realpart", 1, 0, BT_REAL, dr, GFC_STD_GNU, + gfc_check_fn_c, gfc_simplify_realpart, gfc_resolve_realpart, + a, BT_UNKNOWN, dr, REQUIRED); + add_sym_1 ("float", 1, 0, BT_REAL, dr, GFC_STD_F77, NULL, gfc_simplify_float, NULL, a, BT_INTEGER, di, REQUIRED); |