~ chicken-core (master) e0f11ad9e6c74a7ec49913df3d38cb4815f76c9a


commit e0f11ad9e6c74a7ec49913df3d38cb4815f76c9a
Author:     Felix Winkelmann <felix.winkelmann@bevuta.com>
AuthorDate: Tue Nov 4 18:33:29 2025 +0100
Commit:     Felix Winkelmann <felix.winkelmann@bevuta.com>
CommitDate: Tue Nov 4 18:33:29 2025 +0100

    use inline C call of C_i_exact_integerp to avoid bootstrapping issue

diff --git a/support.scm b/support.scm
index 31e434cb..2f55d02f 100644
--- a/support.scm
+++ b/support.scm
@@ -1601,7 +1601,7 @@
   (define (fits? n)
     (fx<= (integer-length n) 24))
   (cond ((immediate? lit))
-	((exact-integer? lit)
+	((##core#inline "C_i_exact_integerp" lit)
 	 ;; Could use integer-length, but that's trickier (minus
 	 ;; symbol etc).  If the string is too large to allocate,
 	 ;; we'll also get an exception!
Trap