anchor.diff:    "A list collecting the forms corresponding to EXECUTE, ITERATE,
   READ, REVERSE, and SORT commands in reverse order.")
   
  +(defvar *bst-function-call-sequence* '()
  +  "A list of BST-FUNCTION structures.  It records the call order in
  +the BST file in reverse order.")
  +
   (defvar *bib-entries-symbol* nil
     "The name of the lexical variable in *main-lisp-body* that stores
   the bib entries.")
  +
  +(defvar *relaxed-compilation* t
  +  "If non-nil, try to compile the BST program even if it is slightly
  +broken.  In an IF$ with bad stack use, fill up one of the branches and
  +signal a runtime error from there.")
   
   ;; The type system.  NIL means no value fits, T means all values fit.
   ;; A list of symbols means values of all listed types fit.
  
positive.code:   ;; flow through variable X.  Hence, we can make the variable lexical
    ;; in every function where it is used.
    (loop for bst-function being each hash-value in *bst-functions*
  	when (member (bst-function-type bst-function)
  		     '(str-global-var int-global-var))
  	do (setf (bst-function-lexical-p bst-function) t))
    (loop for bst-function being each hash-value in *bst-functions*
  	when (eq (bst-function-type bst-function) 'compiled-wiz-defined)
  
negative.code: 
  (defun pop-single-value-form (&rest args)
    "Like pop-form, but package the return values in a MVFORM object."
    (multiple-value-bind (form type side-effects empty-p)
        (apply 'pop-form args)
      (if empty-p
  	nil
  	(make-mvform :form form :types (list type)
  		     :side-effects side-effects))))
  
  (defun push-form (mvform)
    "Push MVFORM onto *FORM-STACK*."
  