https://gcc.gnu.org/bugzilla/show_bug.cgi?id=126305
--- Comment #18 from Steve Kargl <kargl at gcc dot gnu.org> --- Comment on attachment 65108 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=65108 Patch to provide additional long double math routines I think this is fine with the following caveats. In c99_protos.h, can you add a comment above the first occurrence of the following idiom: +#if (defined(USE_LIBQUADLIB) || defined(HAVE_ACOS)) && !defined(HAVE_ACOSL) Something, like /* On HPUX, some long double functions are mapped to functions in libquadmath, e.g., acosl(x) maps to acosq((__float128)x). */ This makes it clear to a future reader that some special handling is occurring. In libgfortran/configure, the arithmetic has changed: -#define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) +#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31)) why? Yes, I know configure is a generated file. Are your autotools at the correct version? In c99_functions.c, can you repeat the comment from c99_protos.h above the first occurence of +#if (defined(USE_LIBQUADLIB) || defined(HAVE_ERF)) && !defined(HAVE_ERFL) Finally, I notice that you are pulling in some fdlibm code with the a Sun Microsystem license. I don't know if this is considered compatible with GPLv3 with library exception. Can you check that this is ok with a GCC maintainer?
