anchor.diff:        ((and initial-contents cubes)
          (%make-cube-texture tex-obj dimensions mipmap layer-count cubes
   			   buffer-storage rectangle multisample immutable
  -			   initial-contents image-format lod-bias min-lod
  -			   max-lod minify-filter magnify-filter wrap compare
  -                           generate-mipmaps))
  +			   initial-contents image-format generate-mipmaps))
         ;; initialize content needs to be turned into c-array
         ((and initial-contents (typep initial-contents 'uploadable-lisp-seq))
          (%make-texture-with-lisp-data tex-obj dimensions mipmap layer-count cubes
                                        buffer-storage rectangle multisample
  -                                     immutable initial-contents lod-bias min-lod
  -                                     max-lod minify-filter magnify-filter wrap
  -                                     compare generate-mipmaps element-type
  -				     image-format))
  +                                     immutable initial-contents generate-mipmaps
  +				     element-type image-format))
         ;; buffer backed - note that by now if there were intitial contents, they
         ;;                 are now a c-array
         (buffer-storage
          (%make-buffer-texture tex-obj
   			     (%texture-dimensions initial-contents dimensions)
                                image-format mipmap layer-count cubes
  -                             rectangle multisample immutable initial-contents
  -                             lod-bias min-lod max-lod minify-filter
  -                             magnify-filter wrap compare))
  +                             rectangle multisample immutable initial-contents))
         ;; all other cases
         (t (%make-texture tex-obj dimensions mipmap layer-count cubes
   			buffer-storage rectangle multisample immutable
  -			initial-contents image-format lod-bias min-lod max-lod
  -                        minify-filter magnify-filter wrap compare
  -                        generate-mipmaps)))))
  +			initial-contents image-format generate-mipmaps)))))
   
   ;;-   -   -   -   -   -   -   -   -   -   -   -   -   -   -   -
   
  
positive.code: (defun %make-texture-with-lisp-data
      (tex-obj dimensions mipmap layer-count cubes buffer-storage
       rectangle multisample immutable initial-contents
       lod-bias min-lod max-lod minify-filter
       magnify-filter wrap compare generate-mipmaps
       element-type image-format)
    (declare (ignore element-type))
    (let ((element-type (image-format->lisp-type image-format)))
      (with-c-array (tmp (make-c-array initial-contents :dimensions dimensions
  				     :element-type element-type))
        (make-texture-now tex-obj tmp nil nil mipmap layer-count cubes rectangle
  			multisample immutable buffer-storage lod-bias min-lod
  			max-lod minify-filter magnify-filter wrap compare
  			generate-mipmaps))))
  
  (defun %make-cube-texture (tex-obj dimensions mipmap layer-count cubes buffer-storage
                             rectangle multisample immutable initial-contents
                             image-format lod-bias min-lod max-lod minify-filter
                             magnify-filter wrap compare generate-mipmaps)
    (assert (= 6 (length initial-contents)))
    (let* ((target-dim (or dimensions (dimensions (first initial-contents))))
           (dim (if (every (lambda (_) (equal target-dim (dimensions _)))
  
negative.code: 
  (defun %make-buffer-texture (tex-obj dimensions image-format mipmap layer-count
  			     cubes rectangle multisample immutable
  			     initial-contents)
    (declare (ignore immutable))
    (let* ((dimensions (listify dimensions))
           (element-type (if initial-contents
  