anchor.diff:       (have-internal-subset :initform nil :accessor have-internal-subset)
        (stack :initform nil :accessor stack)
        (sink-omit-xml-declaration-p :initform nil
  -				  :initarg :omit-xml-declaration-p
  -				  :accessor sink-omit-xml-declaration-p)
  +                                  :initarg :omit-xml-declaration-p
  +                                  :accessor sink-omit-xml-declaration-p)
        (encoding :initarg :encoding :reader sink-encoding)))
   
   #-rune-is-character
  
positive.code: 
     Allows safe use of manual calls to SAX functions during the extent
     of @fun{with-xml-output},
     
     Determines the current output sink established by @fun{with-xml-output},
     as used by convenience serialization functions.  Writes delayed
     serialization events to the sink. Binds local variable @code{var} to the
  
negative.code:   (setf lname (rod lname))
    (maybe-emit-start-tag)
    (let* ((qname (or qname
                      (if prefix (concatenate 'rod prefix #":" lname) lname)))
           (uri (find-unparse-namespace (or prefix #"")))
           (*current-element*
            (cons (list uri lname qname)
                  (mapcar (lambda (x)
                            (destructuring-bind (prefix &rest uri) x
                              (sax:make-attribute
                               :namespace-uri #"http://www.w3.org/2000/xmlns/"
                               :local-name prefix
                               :qname (if (zerop (length prefix))
                                          #"xmlns"
                                          (concatenate 'rod #"xmlns:" prefix))
                               :value uri)))
                          *current-namespace-bindings*))))
      (multiple-value-prog1
          (let ((*current-namespace-bindings* nil))
            (funcall fn))
        (maybe-emit-start-tag)
        (sax:end-element *sink* uri lname qname))))
  
  