(defmacro do-conset-elements ((constraint conset &optional result) &body body)
(with-unique-names (vector index start end
- ignore constraint-universe-end)
+ #-sb-xc-host ignore
+ #-sb-xc-host constraint-universe-end)
(let* ((constraint-universe #+sb-xc-host '*constraint-universe*
- #-sb-xc-host (gensym))
+ #-sb-xc-host (sb!xc:gensym "UNIVERSE"))
(with-array-data
#+sb-xc-host '(progn)
#-sb-xc-host `(with-array-data
ret))
(defun %conset-grow (conset new-size)
- (declare (index new-size))
+ (declare (type index new-size))
(setf (conset-vector conset)
(replace (the simple-bit-vector
(make-array
(declaim (inline conset-grow))
(defun conset-grow (conset new-size)
- (declare (index new-size))
+ (declare (type index new-size))
(when (< (length (conset-vector conset)) new-size)
(%conset-grow conset new-size))
(values))
(let ((new (make-constraint (length *constraint-universe*)
kind x y not-p)))
(vector-push-extend new *constraint-universe*
- (* 2 (length *constraint-universe*)))
+ (1+ (length *constraint-universe*)))
(conset-adjoin new (lambda-var-constraints x))
(when (lambda-var-p y)
(conset-adjoin new (lambda-var-constraints y)))
(ok-lvar-lambda-var (first args) constraints)
(if (ctype-p val)
val
- (specifier-type val))
+ (let ((*compiler-error-context* use))
+ (specifier-type val)))
nil)))))
((eq eql)
(let* ((arg1 (first args))