anchor.diff:  //
   //      void (* free)(struct git_odb_backend *);
   //   };
  -   git_odb_backend_read          = function (var buffer_p: PByte; var len_p: size_t; var type_p: git_otype; backend: Pgit_odb_backend; const oid: Pgit_oid ): Integer; cdecl;
  -   git_odb_backend_read_prefix   = function (id: Pgit_oid; var buffer_p: PByte; var len_p: size_t; var type_p: git_otype; backend: Pgit_odb_backend; const short_oid: Pgit_oid; len: UInt): Integer; cdecl;
  -   git_odb_backend_read_header   = function (var len_p: size_t; var type_p: git_otype; backend: Pgit_odb_backend; const oid: Pgit_oid ): Integer; cdecl;
  -   git_odb_backend_write         = function (id: Pgit_oid; backend: Pgit_odb_backend; const data: PByte; len: size_t; type_: git_otype): Integer; cdecl;
  -   git_odb_backend_writestream   = function (var stream_out: Pgit_odb_stream; backend: Pgit_odb_backend; length: size_t; type_: git_otype): Integer; cdecl;
  -   git_odb_backend_readstream    = function (var stream_out: Pgit_odb_stream; backend: Pgit_odb_backend; const oid: Pgit_oid): Integer; cdecl;
  -   git_odb_backend_exists        = function (backend: Pgit_odb_backend; const oid: Pgit_oid): Integer; cdecl;
  -   git_odb_backend_free          = procedure (backend: Pgit_odb_backend); cdecl;
  +   git_odb_backend_read          = function (var buffer_p: PByte; var len_p: size_t; var type_p: git_otype; backend: Pgit_odb_backend; const oid: Pgit_oid ): Integer; stdcall;
  +   git_odb_backend_read_prefix   = function (id: Pgit_oid; var buffer_p: PByte; var len_p: size_t; var type_p: git_otype; backend: Pgit_odb_backend; const short_oid: Pgit_oid; len: UInt): Integer; stdcall;
  +   git_odb_backend_read_header   = function (var len_p: size_t; var type_p: git_otype; backend: Pgit_odb_backend; const oid: Pgit_oid ): Integer; stdcall;
  +   git_odb_backend_write         = function (id: Pgit_oid; backend: Pgit_odb_backend; const data: PByte; len: size_t; type_: git_otype): Integer; stdcall;
  +   git_odb_backend_writestream   = function (var stream_out: Pgit_odb_stream; backend: Pgit_odb_backend; length: size_t; type_: git_otype): Integer; stdcall;
  +   git_odb_backend_readstream    = function (var stream_out: Pgit_odb_stream; backend: Pgit_odb_backend; const oid: Pgit_oid): Integer; stdcall;
  +   git_odb_backend_exists        = function (backend: Pgit_odb_backend; const oid: Pgit_oid): Integer; stdcall;
  +   git_odb_backend_free          = procedure (backend: Pgit_odb_backend); stdcall;
   
      git_odb_backend = record
         odb:                                               Pgit_odb;
  
positive.code: var
    libgit2: THandle;
  
  function git_blob_lookup(var blob: Pgit_blob; repo: Pgit_repository; const id: Pgit_oid): Integer cdecl;
  begin
     // return git_object_lookup((git_object **)blob, repo, id, GIT_OBJ_BLOB);
     Result := git_object_lookup(Pgit_object(blob), repo, id, GIT_OBJ_BLOB);
  end;
  
  function git_commit_lookup(var commit: Pgit_commit; repo: Pgit_repository; const id: Pgit_oid): Integer cdecl;
  begin
     // return git_object_lookup((git_object **)commit, repo, id, GIT_OBJ_COMMIT);
     Result := git_object_lookup(Pgit_object(commit), repo, id, GIT_OBJ_COMMIT);
  end;
  
  function git_tag_lookup(var tag: Pgit_tag; repo: Pgit_repository; const id: Pgit_oid): Integer cdecl;
  begin
     // return git_object_lookup((git_object **)tag, repo, id, GIT_OBJ_TAG);
     Result := git_object_lookup(Pgit_object(tag), repo, id, GIT_OBJ_TAG);
  end;
  
  function git_tree_lookup(var tree: Pgit_tree; repo: Pgit_repository; const id: Pgit_oid): Integer cdecl;
  begin
     // return git_object_lookup((git_object **)tree, repo, id, GIT_OBJ_TREE);
     Result := git_object_lookup(Pgit_object(tree), repo, id, GIT_OBJ_TREE);
  
negative.code:    Pgit_config_file_foreach = ^git_config_file_foreach;
     Pgit_config_file_free = ^git_config_file_free;
  
     git_config_file_open    = function (f: Pgit_config_file): Integer; stdcall;
     git_config_file_get     = function (f: Pgit_config_file; const key: PAnsiChar; out value: PAnsiChar): Integer; stdcall;
     git_config_file_set     = function (f: Pgit_config_file; const key, value: PAnsiChar): Integer; stdcall;
     git_config_file_foreach = function (f: Pgit_config_file; fn: Pgit_config_file_foreach_callback; data: PByte): Integer; stdcall;
     git_config_file_free    = function (f: Pgit_config_file): Integer; stdcall;
  
  //   struct git_config_file {
  //      struct git_config *cfg;
  