anchor.diff:          (let* ((body (expand-top body))
                  (fn-names (mapcar (lambda (x) `(function ,(car x))) labels))
                  (var-names (append (mapcar #'car hoisted-vars) vars)))
  +          (when (null exprs)
  +            (warn "No expressions in `local' form"))
             (multiple-value-bind (var-decls decls)
                 (partition-declarations var-names decls)
               (multiple-value-bind (fn-decls decls)
  
positive.code:       (adder 2))
      => 4
  
  \(At the moment this does *not* work for macros.\)
  
  The value returned by the `local` form is that of the last form in
  BODY. Note that definitions have return values in `local' just like
  
negative.code: 
  - `def', for lexical variables (as with `letrec')
  - `defun', for local functions (as with `labels')
  - `defalias', to bind values in the function namespace (like `fbindrec*')
  - `declaim', to make declarations (as with `declare')
  - `defconstant' and `defconst', which behave exactly like symbol macros
  
  Also, with some restrictions, you can use:
  
  - `defmacro', for local macros (as with `defmacro')
  - `define-symbol-macro', to bind symbol macros (as with `symbol-macrolet')
  
  \(Note that the top-level definition forms defined by Common Lisp
  are (necessarily) supplemented by two from Serapeum: `def' and
  