anchor.diff:  				    s)
   			  (cons '(nil) s))
     	      (with ((head tail) (expex-expr x))
  -    	    (cons (nconc head (if (expex-returnable? (car tail))
  -								  `((%setq ,s ,@tail))
  -								  tail))
  +    	    (cons (append head (if (expex-returnable? (car tail))
  +								   `((%setq ,s ,@tail))
  +								   tail))
   		  	      s))))))
   
   ;; Move subexpressions out of a parent.
  
positive.code: ;; replaced arguments.
  (defun expex-args (x)
    (with ((pre main) (assoc-splice (mapcar #'expex-assignment x)))
      (values (apply #'nconc pre)
  			main)))
  
  (defun expex-argexpand-do (fun args)
    (mapcar #'((x)
  			   (if (and (consp x)
  						(eq '&rest (car x)))
  				   (simple-quote-expand (cdr x))
  				   x))
  		  (cdrlist (argument-expand (function-arguments (symbol-function fun)) args t))))
  
  
negative.code: (defun expex-list (x)
    (when x
       (with ((head tail) (expex-expr (car x)))
         (append head tail (expex-list (cdr x))))))
  
  ;; Expand VM-SCOPE body and have the return value of the
  ;; last expression assigned to a gensym which will replace
  