~ chicken-core (chicken-5) 7b1614cd47dc4665ca75a129d5c526f2632a057e
commit 7b1614cd47dc4665ca75a129d5c526f2632a057e Author: felix <felix@call-with-current-continuation.org> AuthorDate: Sat May 15 23:01:50 2010 +0200 Commit: felix <felix@call-with-current-continuation.org> CommitDate: Sat May 15 23:01:50 2010 +0200 div-by-0 checks is done at C level for fx/ and fxmod diff --git a/library.scm b/library.scm index 275582fe..00500fe5 100644 --- a/library.scm +++ b/library.scm @@ -694,17 +694,11 @@ EOF (define (fxodd? x) (##core#inline "C_i_fixnumoddp" x)) (define (fxeven? x) (##core#inline "C_i_fixnumevenp" x)) -(define-inline (fx-check-divison-by-zero x y loc) - (when (eq? 0 y) - (##sys#error-hook (foreign-value "C_DIVISION_BY_ZERO_ERROR" int) loc x y) ) ) - (define (fx/ x y) - (fx-check-divison-by-zero x y 'fx/) - (##core#inline "C_u_fixnum_divide" x y) ) + (##core#inline "C_fixnum_divide" x y) ) (define (fxmod x y) - (fx-check-divison-by-zero x y 'fxmod) - (##core#inline "C_u_fixnum_modulo" x y) ) + (##core#inline "C_fixnum_modulo" x y) ) (define maximum-flonum (foreign-value "DBL_MAX" double)) (define minimum-flonum (foreign-value "DBL_MIN" double))Trap