anchor.diff:  		   (setf (ref-pointer location offset) (make-pointer 0)))
   		 vector))))))))
   
  +
  +#-(or sbcl cmu)
  +(progn
  +  (define-type-method alien-arg-wrapper ((type unboxed-vector) var vector style form &optional copy-in-p)
  +    (check-unboxed-vector type)
  +    (destructuring-bind (element-type &optional (length '*))
  +	(rest (type-expand-to 'unboxed-vector type))
  +      (alien-arg-wrapper `(vector ,element-type ,length) var vector style form copy-in-p)))
  +
  +  (define-type-method to-alien-form ((type unboxed-vector) vector &optional copy-p)
  +    (check-unboxed-vector type)
  +    (destructuring-bind (element-type &optional (length '*))
  +	(rest (type-expand-to 'unboxed-vector type))
  +      (to-alien-form `(vector ,element-type ,length) vector copy-p)))
  +
  +  (define-type-method from-alien-form ((type unboxed-vector) form &key (ref :free))
  +    (check-unboxed-vector type)
  +    (destructuring-bind (element-type &optional (length '*))
  +	(rest (type-expand-to 'unboxed-vector type))
  +      (from-alien-form `(vector ,element-type ,length) form :ref ref)))
  +
  +  (define-type-method writer-function ((type unboxed-vector) &key temp inlined)
  +    (check-unboxed-vector type)
  +    (destructuring-bind (element-type &optional (length '*))
  +	(rest (type-expand-to 'unboxed-vector type))
  +      (writer-function `(vector ,element-type ,length) :temp temp :inlined inlined)))
  +
  +  (define-type-method reader-function ((type unboxed-vector) &key (ref :read) inlined)
  +    (check-unboxed-vector type)
  +    (destructuring-bind (element-type &optional (length '*))
  +	(rest (type-expand-to 'unboxed-vector type))
  +      (reader-function `(vector ,element-type ,length) :ref ref :inlined inlined))))
  +
   (define-type-method destroy-function ((type unboxed-vector) &key temp inlined)
     (declare (ignore temp))
  +  (check-unboxed-vector type)
     (destructuring-bind (element-type &optional (length '*))
         (rest (type-expand-to 'unboxed-vector type))
  -    (check-unboxed-vector type)
       (cond
        #+sbcl 
        ((eq length '*)
  
positive.code: 
  
    (define-type-method from-alien-form ((type unboxed-vector) form &key (ref :free))
      (destructuring-bind (element-type &optional (length '*))
  	(rest (type-expand-to 'unboxed-vector type))
        (check-unboxed-vector type)
        (when (eq length '*)
  	(error "Can't use vector of variable size as return type"))
        `(let ((c-vector ,form)
  
negative.code: 		  (* (length vector) (size-of element-type)))))))))
  
    (define-type-method reader-function ((type unboxed-vector) &key (ref :read) inlined)
      (check-unboxed-vector type)
      (destructuring-bind (element-type &optional (length '*))
  	(rest (type-expand-to 'unboxed-vector type))
        (cond
  	((eq length '*)
  	 (error "Can't create reader function for vector with variable size"))
  