~ 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