master: (coerce 1 'list) should signal an error

stassats via Sbcl-commits <[email protected]> Sat, 30 May 2026 14:24:17 +0000
Newsgroups gmane.lisp.steel-bank.cvs
Message-ID <[email protected]>
The branch "master" has been updated in SBCL:
       via  8c7db506073866892480ecd686f164db8a4447aa (commit)
      from  54d7e2b9026bbcb2954a727d67b809fd503d91d8 (commit)

- Log -----------------------------------------------------------------
commit 8c7db506073866892480ecd686f164db8a4447aa
Author: Stas Boukarev <[email protected]>
Date:   Sat May 30 17:17:00 2026 +0300

    (coerce 1 'list) should signal an error
---
 src/code/coerce.lisp   | 4 +++-
 tests/coerce.pure.lisp | 5 +++++
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/code/coerce.lisp b/src/code/coerce.lisp
index 8d1c295c7..d915c4b24 100644
--- a/src/code/coerce.lisp
+++ b/src/code/coerce.lisp
@@ -148,7 +148,9 @@
          (vector
           (vector-to-list object))
          (sequence
-          (sb-sequence:make-sequence-like nil (length object) :initial-contents object))))
+          (sb-sequence:make-sequence-like nil (length object) :initial-contents object))
+         (t
+          (coerce-error))))
       (function
        (coerce-to-fun object))
       (t
diff --git a/tests/coerce.pure.lisp b/tests/coerce.pure.lisp
index 32f2fce05..1510cf057 100644
--- a/tests/coerce.pure.lisp
+++ b/tests/coerce.pure.lisp
@@ -226,3 +226,8 @@
    (lambda (x y)
      (coerce (the (not real) x) y))
    (not real)))
+
+(with-test (:name :numbero-to-list-error)
+  (assert-error (coerce (opaque-identity 1)
+                        (opaque-identity 'list))
+                type-error))

-----------------------------------------------------------------------


hooks/post-receive
-- 
SBCL