anchor.diff:  (in-package #:clutter)
   
   (declaim (optimize debug))
  +
  +(defstruct (split-val (:constructor split-val (llvm clutter)))
  +  llvm
  +  clutter)
   
   (defvar *context* (llvm:global-context))
   (defvar *module*)
  
positive.code:   (setf *builder* (llvm:make-builder))
    (unwind-protect
         (progn
           (compile-func main (make-env))
           (llvm:dump-module *module*))
      (llvm:dispose-module *module*)
      (llvm:dispose-builder *builder*)))
  
negative.code:     (mapc (lambda (arg name)
              (setf (llvm:value-name arg) (clutter-symbol-name name))
              (extend fenv name
                      (split-val (llvm:build-alloca *builder* (llvm:type-of arg) (clutter-symbol-name name))
                                 nil))
              (llvm:build-store *builder* arg (split-val-llvm (lookup name fenv))))
            (llvm:params fobj)
            args)
      (let ((ret))
  