anchor.diff:          ((\#cond)
            (let ((op "#if"))
              (dolist (clause clauses)
  -             (if (find (first clause) '(t (quote t)) :test (function equal))
  -               (emit :fresh-line "#else" :newline)
  -               (progn (emit :fresh-line op " ")
  -                      (generate-expression (first clauses))
  -                      (emit :newline)
  -                      (setf op "#elif")))
  -             (dolist (item (rest clauses))
  -               (generate item)))))
  +             (destructuring-bind (condi &rest body) clause
  +              (if (find condi '(t (quote t)) :test (function equal))
  +                  (emit :fresh-line "#else" :newline)
  +                  (progn (emit :fresh-line op " ")
  +                         (generate-expression condi)
  +                         (emit :newline)
  +                         (setf op "#elif")))
  +              (dolist (item body)
  +                (generate item))))))
   
           ((\#if \#ifdef \#ifndef)
            (destructuring-bind (\#test ?condition ?then &optional ?else) expression
  
positive.code:            (emit :fresh-line "#endif" :newline)))
        
          ((\#define)
           (destructuring-bind (?operator ?name &rest ?arguments)
               (if (listp ?name)
                 (in-continuation-lines
                  (emit "#define" " " (first ?name))
  
negative.code:      (emit "extern" " ")
       (generate-expression ?string)
       (with-parens "{}"
         (dolist (?declaration ?declarations)
           (generate-declaration ?declaration)))
       (emit :newline))
      
  