anchor.diff:                       (loop
                           :for c :across ,l-arr
                           :for index := (- c base)
  -                        :unless (and (< index fp)
  -                                     (att-array (aref arrs index)))
  +                        :unless (or (= index +discard-attachment+)
  +                                    (and (< index fp)
  +                                         (att-array (aref arrs index))))
                           :do (throw-missing-col-attrs
                                ,l-arr current-fbo arrs fp))))))
              (release-unwind-protect
  
positive.code:     arr))
  
  (define-compiler-macro color-attachments (&rest vals)
    (let* ((known (remove-if-not #'numberp vals))
           (unknown (remove-if #'numberp vals))
           (known-array
            (make-array
             (length known) :element-type 'gl-enum-value
             :initial-contents (mapcar #'color-attachment-enum known))))
      (if unknown
          `(%color-attachments ,known-array (list ,@unknown) ,(length vals))
          known-array)))
  
  (defn attachment-pattern (&rest (vals extended-attachment-num))
      (simple-array gl-enum-value (*))
  
negative.code:   (%with-cepl-context-slots (default-framebuffer) (cepl-context)
      (%bind-fbo default-framebuffer :framebuffer)))
  
  (defn-inline color-attachments (&rest (vals extended-attachment-num))
      (simple-array gl-enum-value (*))
    (declare (optimize (speed 3) (safety 1) (debug 1)))
  