anchor.diff:             (rec (bindings rest)
                (if bindings
                    (with-gensyms (tmp)
  -                   (destructuring-bind (v c-type &key (count 1) free ptr)
  +                   (destructuring-bind (v c-type &key (count 1) (free free-default) ptr)
                          (car bindings)
                        (if ptr
                            (if (keywordp c-type)
  
positive.code:     (first (rec bindings rest))))
  
  (defmacro c-let (bindings &body body)
    (make-bindings bindings body :free-default nil))
  
  (defmacro c-with (bindings &body body)
    (make-bindings bindings body :free-default t))
  
negative.code:  ;; c-let
  
  (defun make-bindings (free-default bindings rest)
    (labels ((maybe-make-macro (bindings rest tmp v c-type)
               (with-gensyms (r)
                 `((macrolet ((,v (&rest ,r)
  