~ chicken-core (chicken-5) 570e398f10571036f9b4972f24ed80e3dc65c968
commit 570e398f10571036f9b4972f24ed80e3dc65c968
Author: Evan Hanson <evhan@foldling.org>
AuthorDate: Sun May 22 17:35:00 2016 +1200
Commit: Evan Hanson <evhan@foldling.org>
CommitDate: Sun May 22 17:50:37 2016 +1200
Add +plus-signs+ to list constants in c-platform
This is a workaround for #1286, which causes the constant definition of
`extended-bindings` to be ignored and the (null, default) value from
core to be used instead.
diff --git a/c-platform.scm b/c-platform.scm
index 9d596dc3..f95a2380 100644
--- a/c-platform.scm
+++ b/c-platform.scm
@@ -143,19 +143,19 @@
list-ref abs char-ready? peek-char list->string string->list
current-input-port current-output-port) )
-(define-constant flonum-bindings
+(define-constant +flonum-bindings+
(map (lambda (x) (symbol-append 'chicken.flonum# x))
'(fp/? fp+ fp- fp* fp/ fp> fp< fp= fp>= fp<= fpmin fpmax fpneg fpgcd
fpfloor fpceiling fptruncate fpround fpsin fpcos fptan fpasin fpacos
fpatan fpatan2 fpexp fpexpt fplog fpsqrt fpabs fpinteger?)))
-(define-constant fixnum-bindings
+(define-constant +fixnum-bindings+
(map (lambda (x) (symbol-append 'chicken.fixnum# x))
'(fx* fx*? fx+ fx+? fx- fx-? fx/ fx/? fx< fx<= fx= fx> fx>= fxand
fxeven? fxgcd fxior fxlen fxmax fxmin fxmod fxneg fxnot fxodd?
fxrem fxshl fxshr fxxor)))
-(define-constant extended-bindings
+(define-constant +extended-bindings+
'(bignum? cplxnum? fixnum? flonum? ratnum?
chicken.bitwise#integer-length
chicken.bitwise#bitwise-and chicken.bitwise#bitwise-not
@@ -217,7 +217,7 @@
chicken.format#printf chicken.format#sprintf chicken.format#fprintf))
(set! default-extended-bindings
- (append fixnum-bindings flonum-bindings extended-bindings))
+ (append +fixnum-bindings+ +flonum-bindings+ +extended-bindings+))
(set! internal-bindings
'(##sys#slot ##sys#setslot ##sys#block-ref ##sys#block-set!
Trap