Fix a compilation failure on svref of a symbol macro
[sbcl.git] / src / compiler / array-tran.lisp
index a595e63..d70cdb5 100644 (file)
 (define-source-transform svref (vector index)
   (let ((elt-type (or (when (symbolp vector)
                         (let ((var (lexenv-find vector vars)))
-                          (when var
+                          (when (lambda-var-p var)
                             (type-specifier
                              (array-type-declared-element-type (lambda-var-type var))))))
                       t)))
 (define-source-transform %svset (vector index value)
   (let ((elt-type (or (when (symbolp vector)
                         (let ((var (lexenv-find vector vars)))
-                          (when var
+                          (when (lambda-var-p var)
                             (type-specifier
                              (array-type-declared-element-type (lambda-var-type var))))))
                       t)))