Opened 19 years ago
Closed 19 years ago
#8 closed defect (fixed)
2-arg log function can't compute some logs
| Reported by: | Raymond Toy | Owned by: | somebody |
|---|---|---|---|
| Priority: | minor | Milestone: | |
| Component: | Core | Version: | 19c |
| Keywords: | log, special functions | Cc: |
Description
Consider the following snip of code. CMUCL should really be able to compute all of these. CMUCL fails mostly because it cannot convert some bignum to a double-float.
(defun test-log ()
(dolist (base (list nil 2 2.0 2d0
(ash 1 99) (ash 1 3000)
8/7 (/ (ash 1 3000) 7)))
(dolist (number (list 100 100.0 100d0
(ash 1 100) (ash 1 3500)
50/7 (/ (ash 1 3500) 7)))
(multiple-value-bind (result cond)
(ignore-errors (if base
(log number base)
(log number)))
(unless result
(format t "(log ~A ~A) ->~% ~S~%" number base cond))))))
Note: See
TracTickets for help on using
tickets.

Fixed. Should handle double-double-float's too.