anchor.diff:          (if (< (length buffer) (* (setf (descriptor-height image) height)
                                     (setf (descriptor-width image) width)
                                     (setf (descriptor-ncomp image) ncomp)))
  -            (error "Invalid buffer supplied: ~A" buffer)
  +            (error 'invalid-buffer-supplied :buffer buffer)
               (setf (descriptor-buffer image) buffer))
           (setf (descriptor-buffer image)
                 (allocate-buffer (setf (descriptor-height image) height)
  
positive.code:         (setf term 0)
          (cond ((= #xe0 (logand #xf0 mk)) ; APPn marker
                 (read-app s))
                (t (cond ((= mk +M_DAC+) (error "Arithmetic encoding not supported"))
                         ((= mk +M_DRI+) (read-dri image s))
                         ((= mk +M_DHT+) (read-dht image s))
                         ((= mk +M_DQT+) (read-dqt image s))
  
negative.code:                     ((<= +M_RST0+ b2 +M_RST7+)
                       (throw 'marker 'restart))
                      ((= b2 +M_DNL+)
                       (error 'unsupported-dnl-marker))
                      (t (throw 'marker b2))))))
          (decf cnt)
          (setf bit (ash (logand b 255) -7))
  