We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MAPCAN/MAPCON functions have two edge cases which are not correctly handled in ccl.
(mapcan #'identity '(1 2 3)) ; should error, returns 3 instead (mapcon #'car '(1 2 3)) ; same (setf *print-circle* t) ;; This returns #1=(1 2 . #1#), which is correct (let ((lst (list 1 2))) (flet ((f (x) (declare (ignore x)) lst)) (apply #'nconc (mapcar #'f '(1 2))))) ;; Should be equivalent to the previous example, but hangs instead. (let ((lst (list 1 2))) (flet ((f (x) (declare (ignore x)) lst)) (mapcan #'f '(1 2))))
Also please see https://gitlab.common-lisp.net/ansi-test/ansi-test/-/issues/39 .
Tested on ccl v1.12.1 (latest release)
The text was updated successfully, but these errors were encountered:
There's extensive discussion of this at https://gitlab.common-lisp.net/cmucl/cmucl/-/issues/196
Sorry, something went wrong.
@gzacharias maybe you'd be interested in looking at this?
CCL and CMUCL share similar source code for mapcan and friends, but there are a few CCL alterations that look like they were authored by you.
Fix issues with mapping and nconc accumulation
d35a179
Copied from CMUCL. https://gitlab.common-lisp.net/cmucl/cmucl/-/merge_requests/162 Fixes our #445.
No branches or pull requests
MAPCAN/MAPCON functions have two edge cases which are not correctly handled in ccl.
Also please see https://gitlab.common-lisp.net/ansi-test/ansi-test/-/issues/39 .
Tested on ccl v1.12.1 (latest release)
The text was updated successfully, but these errors were encountered: