Raymond Toy pushed to branch issue-468-core-math-signals at cmucl / cmucl Commits: 7dbd0bcd by Raymond Toy at 2026-02-02T20:26:55-08:00 Fix merge mistake Extra #endif was accidentally left in. - - - - - 5de13d33 by Raymond Toy at 2026-02-02T20:37:41-08:00 Check for infinite arg for %asinh Also enable overflow check for %asinh of neg infinity. - - - - - 2 changed files: - src/lisp/irrat.c - tests/fdlibm.lisp Changes: ===================================== src/lisp/irrat.c ===================================== @@ -148,6 +148,11 @@ double lisp_asinh(double x) { #ifdef FEATURE_CORE_MATH + /* Signal overflow if x is infinite */ + if (isinf(x)) { + return fdlibm_setexception(x, FDLIBM_OVERFLOW); + } + return cr_asinh(x); #else return fdlibm_asinh(x); @@ -223,7 +228,6 @@ lisp_pow(double x, double y) * the failure. */ return __ieee754_pow(x, y); -#endif } double ===================================== tests/fdlibm.lisp ===================================== @@ -110,7 +110,6 @@ ;; overflow. (assert-error 'floating-point-overflow (kernel:%asinh ext:double-float-positive-infinity)) - #-core-math (assert-error 'floating-point-overflow (kernel:%asinh ext:double-float-negative-infinity)) (assert-true (ext:float-nan-p (kernel:%asinh *qnan*))) View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/-/compare/f055eed9555b420a07e70e8... -- View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/-/compare/f055eed9555b420a07e70e8... You're receiving this email because of your account on gitlab.common-lisp.net.
participants (1)
-
Raymond Toy (@rtoy)