Aleix Conchillo Flaqué <aconchi...@gmail.com> writes:
> I'm trying to add guile-curl to homebrew-guile but ran into > compilation issues in type.c using the tarball from your email. I can confirm this. (I just tried to upgrade the guile-curl package in Guix.) I’m getting this error output when building with Guile 2.2: --8<---------------cut here---------------start------------->8--- In file included from /gnu/store/l6id6m9fjx5bphgyf1kp6srbmdwspqkn-guile-2.2.7/include/guile/2.2/libguile/__scm.h:398:0, from /gnu/store/l6id6m9fjx5bphgyf1kp6srbmdwspqkn-guile-2.2.7/include/guile/2.2/libguile.h:31, from type.c:21: type.c: In function '_scm_is_handle': type.c:41:27: error: 'handle_tag' undeclared (first use in this function); did you mean 'handle_post_t'? if (SCM_SMOB_PREDICATE (handle_tag, x)) ^ /gnu/store/l6id6m9fjx5bphgyf1kp6srbmdwspqkn-guile-2.2.7/include/guile/2.2/libguile/tags.h:390:33: note: in definition of macro 'SCM_HAS_HEAP_TYPE' (SCM_NIMP (x) && type (x) == (tag)) ^~~ /gnu/store/l6id6m9fjx5bphgyf1kp6srbmdwspqkn-guile-2.2.7/include/guile/2.2/libguile/smob.h:53:38: note: in expansion of macro 'SCM_HAS_TYP16' #define SCM_SMOB_PREDICATE(tag, obj) SCM_HAS_TYP16 (obj, tag) ^~~~~~~~~~~~~ type.c:41:7: note: in expansion of macro 'SCM_SMOB_PREDICATE' if (SCM_SMOB_PREDICATE (handle_tag, x)) ^~~~~~~~~~~~~~~~~~ type.c:41:27: note: each undeclared identifier is reported only once for each function it appears in if (SCM_SMOB_PREDICATE (handle_tag, x)) ^ /gnu/store/l6id6m9fjx5bphgyf1kp6srbmdwspqkn-guile-2.2.7/include/guile/2.2/libguile/tags.h:390:33: note: in definition of macro 'SCM_HAS_HEAP_TYPE' (SCM_NIMP (x) && type (x) == (tag)) ^~~ /gnu/store/l6id6m9fjx5bphgyf1kp6srbmdwspqkn-guile-2.2.7/include/guile/2.2/libguile/smob.h:53:38: note: in expansion of macro 'SCM_HAS_TYP16' #define SCM_SMOB_PREDICATE(tag, obj) SCM_HAS_TYP16 (obj, tag) ^~~~~~~~~~~~~ type.c:41:7: note: in expansion of macro 'SCM_SMOB_PREDICATE' if (SCM_SMOB_PREDICATE (handle_tag, x)) ^~~~~~~~~~~~~~~~~~ In file included from /gnu/store/l6id6m9fjx5bphgyf1kp6srbmdwspqkn-guile-2.2.7/include/guile/2.2/libguile.h:94:0, from type.c:21: type.c: In function '_scm_from_handle': type.c:65:26: error: 'handle_tag' undeclared (first use in this function); did you mean 'handle_post_t'? SCM_NEWSMOB (s_handle, handle_tag, x); ^ /gnu/store/l6id6m9fjx5bphgyf1kp6srbmdwspqkn-guile-2.2.7/include/guile/2.2/libguile/smob.h:101:22: note: in definition of macro 'SCM_NEWSMOB' z = scm_new_smob ((tc), (scm_t_bits)(data)) ^~ type.c: In function 'cl_init_type': type.c:486:37: warning: passing argument 3 of 'scm_make_foreign_object_type' from incompatible pointer type [-Wincompatible-pointer-types] gc_free_handle); ^~~~~~~~~~~~~~ In file included from /gnu/store/l6id6m9fjx5bphgyf1kp6srbmdwspqkn-guile-2.2.7/include/guile/2.2/libguile.h:56:0, from type.c:21: /gnu/store/l6id6m9fjx5bphgyf1kp6srbmdwspqkn-guile-2.2.7/include/guile/2.2/libguile/foreign-object.h:30:13: note: expected 'scm_t_struct_finalize {aka void (*)(struct scm_unused_struct *)}' but argument is of type 'size_t (*)(struct scm_unused_struct *) {aka long unsigned int (*)(struct scm_unused_struct *)}' SCM_API SCM scm_make_foreign_object_type (SCM name, SCM slot_names, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ type.c:489:3: error: 'handle_tag' undeclared (first use in this function); did you mean 'handle_post_t'? handle_tag = scm_make_smob_type ("handle", sizeof (handle_post_t)); ^~~~~~~~~~ handle_post_t make[2]: *** [Makefile:539: libguile_curl_la-type.lo] Error 1 make[2]: *** Waiting for unfinished jobs.... --8<---------------cut here---------------end--------------->8--- I get very similar output with Guile 3.0. -- Ricardo