aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/trans-intrinsic.c
diff options
context:
space:
mode:
authorFrancois-Xavier Coudert <fxcoudert@gcc.gnu.org>2015-08-16 19:47:02 +0000
committerFrançois-Xavier Coudert <fxcoudert@gcc.gnu.org>2015-08-16 19:47:02 +0000
commit8c07a5f4b4d3b5694ee8fb299ec6f3d0b866cf2d (patch)
tree0716788970dbc7122ed5e1f510ac16dacf243fa2 /gcc/fortran/trans-intrinsic.c
parentc541d5217e6571a0a5d8bf56db831c1ad63756ff (diff)
downloadgcc-8c07a5f4b4d3b5694ee8fb299ec6f3d0b866cf2d.zip
gcc-8c07a5f4b4d3b5694ee8fb299ec6f3d0b866cf2d.tar.gz
gcc-8c07a5f4b4d3b5694ee8fb299ec6f3d0b866cf2d.tar.bz2
re PR fortran/54656 (ICE with software REAL(16) for NORM2)
PR fortran/54656 * trans-intrinsic.c (gfc_build_intrinsic_lib_fndecls): Add decl for quadruple precision BUILT_IN_SQRT. * gfortran.dg/norm_4.f90: Rename to... * gfortran.dg/norm2_4.f90: this. * gfortran.dg/norm2_5.f90: New test. From-SVN: r226929
Diffstat (limited to 'gcc/fortran/trans-intrinsic.c')
-rw-r--r--gcc/fortran/trans-intrinsic.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/fortran/trans-intrinsic.c b/gcc/fortran/trans-intrinsic.c
index 60e18b8..f5b270f 100644
--- a/gcc/fortran/trans-intrinsic.c
+++ b/gcc/fortran/trans-intrinsic.c
@@ -676,6 +676,11 @@ gfc_build_intrinsic_lib_fndecls (void)
#undef DEFINE_MATH_BUILTIN
#undef DEFINE_MATH_BUILTIN_C
+ /* There is one built-in we defined manually, because it gets called
+ with builtin_decl_for_precision() or builtin_decl_for_float_type()
+ even though it is not an OTHER_BUILTIN: it is SQRT. */
+ quad_decls[BUILT_IN_SQRT] = define_quad_builtin ("sqrtq", func_1, true);
+
}
/* Add GCC builtin functions. */