From 8c07a5f4b4d3b5694ee8fb299ec6f3d0b866cf2d Mon Sep 17 00:00:00 2001 From: Francois-Xavier Coudert Date: Sun, 16 Aug 2015 19:47:02 +0000 Subject: 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 --- gcc/fortran/trans-intrinsic.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'gcc/fortran/trans-intrinsic.c') 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. */ -- cgit v1.1