Calvin Wan <calvinwan@xxxxxxxxxx> writes: > diff --git a/contrib/libgit-rs/libgit-sys/public_symbol_export.c b/contrib/libgit-rs/libgit-sys/public_symbol_export.c > index 65d1620d28..07d6bfdd84 100644 > --- a/contrib/libgit-rs/libgit-sys/public_symbol_export.c > +++ b/contrib/libgit-rs/libgit-sys/public_symbol_export.c > @@ -33,6 +33,36 @@ int libgit_parse_maybe_bool(const char *val) > return git_parse_maybe_bool(val); > } > > +struct libgit_config_set *libgit_configset_alloc(void) > +{ > + return git_configset_alloc(); > +} git_configset_alloc() returns "struct config_set *" while this thing returns an incompatible pointer. Sent out an outdated version or something? This wouldn't have passed even a compile test, I suspect. $ make contrib/libgit-rs/libgit-sys/public_symbol_export.o CC contrib/libgit-rs/libgit-sys/public_symbol_export.o contrib/libgit-rs/libgit-sys/public_symbol_export.c: In function 'libgit_configset_alloc': contrib/libgit-rs/libgit-sys/public_symbol_export.c:38:16: error: returning 'struct config_set *' from a function with incompatible return type 'struct libgit_config_set *' [-Werror=incompatible-pointer-types] 38 | return git_configset_alloc(); | ^~~~~~~~~~~~~~~~~~~~~ contrib/libgit-rs/libgit-sys/public_symbol_export.c: In function 'libgit_configset_clear_and_free': contrib/libgit-rs/libgit-sys/public_symbol_export.c:43:38: error: passing argument 1 of 'git_configset_clear_and_free' from incompatible pointer type [-Werror=incompatible-pointer-types] 43 | git_configset_clear_and_free(cs); | ^~ | | | struct libgit_config_set * In file included from contrib/libgit-rs/libgit-sys/public_symbol_export.c:8: ./config.h:543:54: note: expected 'struct config_set *' but argument is of type 'struct libgit_config_set *' 543 | void git_configset_clear_and_free(struct config_set *cs); | ~~~~~~~~~~~~~~~~~~~^~ contrib/libgit-rs/libgit-sys/public_symbol_export.c: In function 'libgit_configset_init': contrib/libgit-rs/libgit-sys/public_symbol_export.c:48:28: error: passing argument 1 of 'git_configset_init' from incompatible pointer type [-Werror=incompatible-pointer-types] 48 | git_configset_init(cs); | ^~ | | | struct libgit_config_set * ./config.h:495:44: note: expected 'struct config_set *' but argument is of type 'struct libgit_config_set *' 495 | void git_configset_init(struct config_set *cs); | ~~~~~~~~~~~~~~~~~~~^~ contrib/libgit-rs/libgit-sys/public_symbol_export.c: In function 'libgit_configset_add_file': contrib/libgit-rs/libgit-sys/public_symbol_export.c:53:39: error: passing argument 1 of 'git_configset_add_file' from incompatible pointer type [-Werror=incompatible-pointer-types] 53 | return git_configset_add_file(cs, filename); | ^~ | | | struct libgit_config_set * ./config.h:504:47: note: expected 'struct config_set *' but argument is of type 'struct libgit_config_set *' 504 | int git_configset_add_file(struct config_set *cs, const char *filename); | ~~~~~~~~~~~~~~~~~~~^~ contrib/libgit-rs/libgit-sys/public_symbol_export.c: In function 'libgit_configset_get_int': contrib/libgit-rs/libgit-sys/public_symbol_export.c:58:38: error: passing argument 1 of 'git_configset_get_int' from incompatible pointer type [-Werror=incompatible-pointer-types] 58 | return git_configset_get_int(cs, key, dest); | ^~ | | | struct libgit_config_set * ./config.h:568:46: note: expected 'struct config_set *' but argument is of type 'struct libgit_config_set *' 568 | int git_configset_get_int(struct config_set *cs, const char *key, int *dest); | ~~~~~~~~~~~~~~~~~~~^~ contrib/libgit-rs/libgit-sys/public_symbol_export.c: In function 'libgit_configset_get_string': contrib/libgit-rs/libgit-sys/public_symbol_export.c:63:41: error: passing argument 1 of 'git_configset_get_string' from incompatible pointer type [-Werror=incompatible-pointer-types] 63 | return git_configset_get_string(cs, key, dest); | ^~ | | | struct libgit_config_set * ./config.h:567:49: note: expected 'struct config_set *' but argument is of type 'struct libgit_config_set *' 567 | int git_configset_get_string(struct config_set *cs, const char *key, char **dest); | ~~~~~~~~~~~~~~~~~~~^~ cc1: all warnings being treated as errors gmake: *** [Makefile:2802: contrib/libgit-rs/libgit-sys/public_symbol_export.o] Error 1