0.pre7.74:
[sbcl.git] / src / code / array.lisp
index b5a380b..36ceafb 100644 (file)
 (defun array-element-type (array)
   #!+sb-doc
   "Return the type of the elements of the array"
-  (let ((type (get-type array)))
+  (let ((widetag (widetag-of array)))
     (macrolet ((pick-element-type (&rest stuff)
                 `(cond ,@(mapcar #'(lambda (stuff)
                                      (cons
                                                t)
                                               ((listp item)
                                                (cons 'or
-                                                     (mapcar #'(lambda (x)
-                                                                 `(= type ,x))
+                                                     (mapcar (lambda (x)
+                                                               `(= widetag ,x))
                                                              item)))
                                               (t
-                                               `(= type ,item))))
+                                               `(= widetag ,item))))
                                       (cdr stuff)))
                                                   stuff))))
       ;; FIXME: The data here are redundant with