anchor.diff:              relative-function)
       (format f "~&~%/* Compute Absolute Transforms */")
       (format f "~&void ~A~&( const double * AA_RESTRICT rel, double * AA_RESTRICT abs );"
  -            absolute-function))
  +            absolute-function)
  +    (ifdef-c++ f "}"))
     ;; source
     (with-open-file (f source-file :direction :output :if-exists :supersede)
       (format f "~&/* AUTOGENERATED BY REFLEX FRAME GENERATOR */")
  
positive.code:          (:fixed (emit-fixed-frame frame stream "e"))
           (otherwise (error "Unknown type of frame ~A" (frame-name frame)))))
    (format stream "~&}"))
  
  
  (defun emit-abs-fun (name frames &key normalize (stream t))
  
negative.code:              for p = (frame-parent f)
               collect (if p p -1))))
  
  (defun emit-axes-array (name frames &key (stream t))
    (format stream "~&const double ~A[][3] = {" name )
    (loop for f in frames
       for a = (frame-axis f)
       when a
       do (format stream "~&    {~{~A~^, ~}}, /* ~A */"
                  a (frame-name f)))
    (format stream "~&};"))
  
  
  (defun emit-names-array (name frames &key (stream t))
    (format stream "~&const char * ~A[] = {~&~{~&    \"~A\"~^,~}~&};"
  