anchor.diff:  		     (cadr successors)
   		     (car successors))
   		 (sicl-mir:make-assignment-instruction
  -		  ast
  +		  (sicl-mir:make-constant-input (sicl-ast:value ast))
   		  (car results)
   		  (if (null (sicl-ast:value ast))
   		      (cadr successors)
  
positive.code: ;;;
  ;;; Compile a LEXICAL-LOCATION object. 
  ;;;
  ;;; If the RESULTS is T, then we generate a PUT-VALUES-INSTRUCTION.
  ;;; In that case, we know that there is only one successor.  If there
  ;;; is a single successor and the RESULTS is the empty list, then a
  ;;; lexical variable occurs in a context where its value is not
  ;;; required, so we warn, and generate no additional code.  If there
  
negative.code: (defun make-temp (argument)
    (cond ((typep argument 'sicl-env:lexical-location)
  	 argument)
  	((typep argument 'sicl-ast:immediate-ast)
  	 (sicl-mir:make-immediate-input (sicl-ast:value argument)))
  	((typep argument 'sicl-ast:load-time-value-ast)
  