anchor.diff:    (%font-options-create))
   
   (defbinding font-options-merge () nil
  -  (options1 font-options :return)
  +  (options1 font-options :in/return)
     (options2 font-options))
   
   (defbinding font-options-hash () unsigned-int
  
positive.code: 
  (defbinding %surface-destroy () nil
    (location pointer))
  
  (defmethod reference-foreign ((class (eql (find-class 'surface))) location)
    (%surface-reference location))
  
  (defmethod unreference-foreign ((class (eql (find-class 'surface))) location)
    (%surface-destroy location))
  
  (defbinding surface-create-similar () surface
    (other surface)
  
negative.code: ;;; Matrices
  
  (defbinding matrix-init () nil
    (matrix matrix :in/return)
    (xx double-float) (yx double-float) 
    (xy double-float) (yy double-float) 
    (x0 double-float) (y0 double-float))
  
  (defbinding matrix-init-identity () nil
    (matrix matrix :in/return))
  
  (defbinding matrix-init-translate () nil
    (matrix matrix :in/return)
    (tx double-float)
    (ty double-float))
  
  (defbinding matrix-init-scale () nil
    (matrix matrix :in/return)
    (sx double-float)
    (sy double-float))
  
  (defbinding matrix-init-rotate () nil
    (matrix matrix :in/return)
    (radians double-float))
  
  (defbinding matrix-translate () nil
    (matrix matrix :in/return)
    (tx double-float)
    (ty double-float))
  
  (defbinding matrix-scale () nil
    (matrix matrix :in/return)
    (sx double-float)
    (sy double-float))
  
  (defbinding matrix-rotate () nil
    (matrix matrix :in/return)
    (radians double-float))
  
  (defbinding matrix-invert () nil
    (matrix matrix :in/return))
  
  (defbinding matrix-multiply () nil
    (result matrix :out)
  