anchor.diff:  ;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
   ;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
   
  -;; $Id: basic-types.lisp,v 1.12 2008-04-11 18:51:57 espen Exp $
  +;; $Id: basic-types.lisp,v 1.13 2008-10-08 16:27:09 espen Exp $
   
   (in-package "GFFI")
   
  
positive.code: :PEEK or :GET")
  (define-type-generic destroy-function (type &key temp inlined)
    "Returns a function taking an address and optional offset which when
  called will destroy the reference at the given location. This may
  involve freeing the foreign object being referenced or decreasing it's
  ref. count. If TEMP is non NIL then the reference is expected to
  have been written as temporal.")
  (define-type-generic copy-function (type &key inlined))
  
  (define-type-generic unbound-value (type-spec)
    "Returns a value which should be interpreted as unbound for slots with virtual allocation")
  
negative.code:       (declare (ignore location offset))))
  
  (define-type-method copy-function ((type copy-of) &key (inlined nil inlined-p))
    (if inlined-p
        (copy-function (second (type-expand-to 'copy-of type)) :inlined inlined)
      (copy-function (second (type-expand-to 'copy-of type)))))
  
  
  ;;; Static
  