summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShiro Kawai <shiro@acm.org>2024-03-05 23:47:09 -1000
committerShiro Kawai <shiro@acm.org>2024-03-05 23:47:09 -1000
commiteace914c53994e3000076ebc8c11689e0404b39f (patch)
treea7f7c0c77a24db790e8d0a3d8181dfe863941bff
parente7aa04c764b7fb0969bdaa349bb1418845c81d8b (diff)
Avoid platform-difference of denormalized flonum support
Denormalized flonum support may differ between the target platform and the precompiling platform, so we cannot compute least-positive-flonum at the precompile time. We ensure it is done at load time using without-precompiling form.
-rw-r--r--ext/scheme/flonum.scm6
1 files changed, 5 insertions, 1 deletions
diff --git a/ext/scheme/flonum.scm b/ext/scheme/flonum.scm
index cb38c16ff..ebb8ea10c 100644
--- a/ext/scheme/flonum.scm
+++ b/ext/scheme/flonum.scm
@@ -120,7 +120,11 @@
(define-constant fl-gamma-2/3 (gamma 2/3))
(define-constant fl-greatest (greatest-positive-flonum))
-(define-constant fl-least (least-positive-flonum))
+;; NB: Denormalized flonum support may differ between the target platform
+;; and the precompiling platform. Without-precompiling ensures the call
+;; to least-positive-flonum is done at the load time.
+(without-precompiling
+ (define-constant fl-least (least-positive-flonum)))
(define-constant fl-epsilon (flonum-epsilon))
(define-constant fl-fast-fl+* #t)