anchor.diff:    (destructuring-bind (element-type &optional (length '*)) args
       (if (eq length '*)
   	(error "Can't use vector of variable size as return type")
  -      `(map-c-vector 'vector #'identity ',element-type ',length ,c-vector))))
  +      `(map-c-vector 'vector #'identity ,c-vector ',element-type ',length))))
   
   (defmethod cleanup-form (location (type (eql 'vector)) &rest args)
     (declare (ignore type))
  
positive.code:   (check-type id fixnum)
    (multiple-value-bind (user-data p) (gethash id *user-data*)
      (values (car user-data) p)))
  
  (defun destroy-user-data (id)
    (check-type id fixnum)
  
negative.code: 	(error "Can't use vector of variable size as return type")
        `(let ((c-vector ,c-vector))
  	(prog1
  	    (map-c-vector 'vector #'identity c-vector ',element-type ,length)
  	  (destroy-c-vector c-vector ',element-type ,length))))))
  
  (defmethod copy-from-alien-form (c-vector (type (eql 'vector)) &rest args)
  