anchor.diff:            ;; Must be inside the block, so the special stack pointer is saved correctly.
             (sys.int::%%push-special-stack ,(block-information-env-var info)
                                            ',(block-information-env-offset info))
  -          (multiple-value-prog1
  -              (progn ,@(mapcar #'lsb-form (cddr form)))
  -            (sys.int::%%disestablish-block-or-tagbody))))
  +          ,(list 'multiple-value-prog1
  +                 `(progn ,@(mapcar #'lsb-form (cddr form)))
  +                 '(sys.int::%%disestablish-block-or-tagbody))))
         (t ;; Local block.
          `(block ,info ,@(mapcar #'lsb-form (cddr form)))))))
   
  
positive.code:       (cond
          ((tagbody-information-env-var info)
           ;; Escaping TAGBODY.
           `(progn
              ;; Must be outside the tagbody, so the special stack pointer is saved correctly.
              (sys.int::%%push-special-stack ,(tagbody-information-env-var info)
                                             ',(tagbody-information-env-offset info))
              ,(frob-tagbody)
              (sys.int::%%disestablish-block-or-tagbody)
              'nil))
          (t ;; Local TAGBODY.
           (frob-tagbody))))))
  
  
negative.code:                     'nil
                      (sys.int::raise-bad-block ',(block-information-name tag)))
                    (return-from ,tag
                      ,(list
                        'multiple-value-prog1
                        (lsb-form value-form)
                        `(sys.int::%%unwind-to (sys.int::%%block-info-binding-stack-pointer ,info)))
                      ,info))))
            (t
             ;; Local RETURN-FROM, locate the matching BLOCK and emit any unwind forms required.
  