anchor.diff:  
   ;;;;;; DEFREADTABLE &c.
   
  -(defmacro defreadtable (name &rest options)
  +(defmacro defreadtable (name &body options)
     "Define a new named readtable, whose name is given by the symbol NAME.
   Or, if a readtable is already registered under that name, redefines that one.
   
  
positive.code: 					    ;; be used which is not necessarily what we want.
  					    :merge ',(rest (first merge-clauses)))))
  		  ;; We have to grovel all MERGE-CLAUSES for the redefinition case.
  		  
  		  ,@(loop for option in merge-clauses
  			  collect (process-option option 'read-table))
  		  ,@(loop for option in case-clauses
  
negative.code:              ((:dispatch-macro-char disp-char sub-char function)
                `(set-dispatch-macro-character ,disp-char ,sub-char ,function ,var))
               ((:macro-char char function &optional non-terminating-p)
  	      (if (eq function :dispatch)
  		  ;; FIXME: This is not perfect as SBCL signals an
  		  ;; error on already existing dispatch macros. I sent
  		  ;; an appropriate patch upstream.
  		  `(make-dispatch-macro-character ,char ,non-terminating-p ,var)
  		  `(set-macro-character ,char ,function ,non-terminating-p ,var)))
  	     ((:case mode)
  	      `(setf (readtable-case ,var) ,mode))))
  	 (member-of (&rest rest) #'(lambda (x) (member x rest))))
  