Incautious type inference from compound types
Bug #309445 reported by
Nikodemus Siivola
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
SBCL |
Fix Released
|
High
|
Unassigned |
Bug Description
a. (reported by APD sbcl-devel 2002-09-17)
(DEFUN FOO (X)
(LET ((Y (CAR (THE (CONS INTEGER *) X))))
(SETF (CAR X) NIL)
(FORMAT NIL "~S IS ~S, Y = ~S"
(FOO ' (1 . 2)) => "NIL IS INTEGER, Y = 1"
b.
* (defun foo (x)
(declare (type (array * (4 4)) x))
(let ((y x))
(setq x (make-array '(4 4)))
(= (array-dimension y 0) (eval `(array-dimension ,y 0)))))
FOO
* (foo (make-array '(4 4) :adjustable t))
NIL
Changed in sbcl: | |
importance: | Undecided → High |
status: | New → Confirmed |
To post a comment you must log in.
In 1.0.28.2.