anchor.diff:       `(fli:define-foreign-function (,ff-name ,name :source)
             ,(mapcar (lambda (ty) (list (gensym) (convert-foreign-type ty)))
                      types)
  -        :result-type ,rettype
  +        :result-type ,(convert-foreign-type rettype)
           :language :ansi-c
  -        :calling-convention :cdecl)
  +        ;; avoid warning about cdecl not being supported on mac platforms
  +        #-mac ,@'(:calling-convention :cdecl))
        `(,ff-name ,@args))))
   
   ;;;# Callbacks
  
positive.code:     (setf ptr (inc-ptr ptr offset)))
    (setf (fli:dereference ptr :type (convert-foreign-type type)) value))
  
  (defun test-foreign-aref ()
    (with-foreign-ptr (p 100)
      (setf (%mem-ref p :double) pi)
      (%mem-ref p :double)))
  
  ;;;# Foreign Type Operations
  
  
negative.code: 
  (defmacro foreign-var-ptr (name)
    "Return a pointer pointing to the foreign variable NAME."
    `(load-time-value (fli:make-pointer :symbol-name ,name :type :void)))
  