Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Clang 15 installation failure #14

Closed
vladimirtemnikov opened this issue Nov 25, 2022 · 2 comments
Closed

Clang 15 installation failure #14

vladimirtemnikov opened this issue Nov 25, 2022 · 2 comments

Comments

@vladimirtemnikov
Copy link

vladimirtemnikov commented Nov 25, 2022

Hello.

Trying to install sorted_set with clang 15 and getting the following error.

As a workaround:

gem install rbtree -- --with-cflags="-Wno-int-conversion"
Error
current directory: /Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/lib/ruby/gems/3.1.0/gems/rbtree-0.4.5
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/bin/ruby -I /Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/lib/ruby/3.1.0 extconf.rb
checking for rb_exec_recursive() in ruby.h... yes
checking for rb_exec_recursive_paired() in ruby.h... yes
checking for rb_proc_lambda_p() in ruby.h... yes
checking for rb_ary_resize() in ruby.h... yes
checking for rb_obj_hide() in ruby.h... yes
checking for rb_safe_level() in ruby.h... no
checking for rb_cData() in ruby.h... yes
creating Makefile

current directory: /Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/lib/ruby/gems/3.1.0/gems/rbtree-0.4.5
make DESTDIR\= sitearchdir\=./.gem.20221125-54755-inhzlg sitelibdir\=./.gem.20221125-54755-inhzlg clean

current directory: /Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/lib/ruby/gems/3.1.0/gems/rbtree-0.4.5
make DESTDIR\= sitearchdir\=./.gem.20221125-54755-inhzlg sitelibdir\=./.gem.20221125-54755-inhzlg
compiling dict.c
compiling rbtree.c
rbtree.c:137:14: error: incompatible pointer to integer conversion passing 'const void *' to parameter of type 'VALUE' (aka 'unsigned long') [-Wint-conversion]
    if (TYPE(key1) == T_STRING && TYPE(key2) == T_STRING)
             ^~~~
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/value_type.h:107:52: note: expanded from macro 'TYPE'
#define TYPE(_)           RBIMPL_CAST((int)rb_type(_))
                                                   ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/cast.h:31:29: note: expanded from macro 'RBIMPL_CAST'
# define RBIMPL_CAST(expr) (expr)
                            ^~~~
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/value_type.h:224:15: note: passing argument to parameter 'obj' here
rb_type(VALUE obj)
              ^
rbtree.c:137:40: error: incompatible pointer to integer conversion passing 'const void *' to parameter of type 'VALUE' (aka 'unsigned long') [-Wint-conversion]
    if (TYPE(key1) == T_STRING && TYPE(key2) == T_STRING)
                                       ^~~~
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/value_type.h:107:52: note: expanded from macro 'TYPE'
#define TYPE(_)           RBIMPL_CAST((int)rb_type(_))
                                                   ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/cast.h:31:29: note: expanded from macro 'RBIMPL_CAST'
# define RBIMPL_CAST(expr) (expr)
                            ^~~~
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/value_type.h:224:15: note: passing argument to parameter 'obj' here
rb_type(VALUE obj)
              ^
rbtree.c:168:24: warning: incompatible function pointer types passing 'VALUE (VALUE *)' (aka 'unsigned long (unsigned long *)') to parameter of type 'VALUE (*)(VALUE)' (aka 'unsigned long (*)(unsigned long)') [-Wincompatible-function-pointer-types]
    result = rb_ensure(rbtree_user_cmp_body, (VALUE)&args,
                       ^~~~~~~~~~~~~~~~~~~~
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/iterator.h:425:25: note: passing argument to parameter 'b_proc' here
VALUE rb_ensure(VALUE (*b_proc)(VALUE), VALUE data1, VALUE (*e_proc)(VALUE), VALUE data2);
                        ^
rbtree.c:169:24: warning: incompatible function pointer types passing 'VALUE (rbtree_t *)' (aka 'unsigned long (rbtree_t *)') to parameter of type 'VALUE (*)(VALUE)' (aka 'unsigned long (*)(unsigned long)') [-Wincompatible-function-pointer-types]
                       rbtree_user_cmp_ensure, (VALUE)rbtree);
                       ^~~~~~~~~~~~~~~~~~~~~~
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/iterator.h:425:62: note: passing argument to parameter 'e_proc' here
VALUE rb_ensure(VALUE (*b_proc)(VALUE), VALUE data1, VALUE (*e_proc)(VALUE), VALUE data2);
                                                             ^
rbtree.c:376:15: warning: incompatible function pointer types passing 'VALUE (rbtree_insert_arg_t *)' (aka 'unsigned long (rbtree_insert_arg_t *)') to parameter of type 'VALUE (*)(VALUE)' (aka 'unsigned long (*)(unsigned long)') [-Wincompatible-function-pointer-types]
    rb_ensure(insert_node_body, (VALUE)&arg,
              ^~~~~~~~~~~~~~~~
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/iterator.h:425:25: note: passing argument to parameter 'b_proc' here
VALUE rb_ensure(VALUE (*b_proc)(VALUE), VALUE data1, VALUE (*e_proc)(VALUE), VALUE data2);
                        ^
rbtree.c:377:15: warning: incompatible function pointer types passing 'VALUE (rbtree_insert_arg_t *)' (aka 'unsigned long (rbtree_insert_arg_t *)') to parameter of type 'VALUE (*)(VALUE)' (aka 'unsigned long (*)(unsigned long)') [-Wincompatible-function-pointer-types]
              insert_node_ensure, (VALUE)&arg);
              ^~~~~~~~~~~~~~~~~~
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/iterator.h:425:62: note: passing argument to parameter 'e_proc' here
VALUE rb_ensure(VALUE (*b_proc)(VALUE), VALUE data1, VALUE (*e_proc)(VALUE), VALUE data2);
                                                             ^
rbtree.c:632:22: warning: incompatible function pointer types passing 'VALUE (rbtree_each_arg_t *)' (aka 'unsigned long (rbtree_each_arg_t *)') to parameter of type 'VALUE (*)(VALUE)' (aka 'unsigned long (*)(unsigned long)') [-Wincompatible-function-pointer-types]
    return rb_ensure(rbtree_each_body, (VALUE)&each_arg,
                     ^~~~~~~~~~~~~~~~
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/iterator.h:425:25: note: passing argument to parameter 'b_proc' here
VALUE rb_ensure(VALUE (*b_proc)(VALUE), VALUE data1, VALUE (*e_proc)(VALUE), VALUE data2);
                        ^
rbtree.c:644:22: warning: incompatible function pointer types passing 'VALUE (rbtree_each_arg_t *)' (aka 'unsigned long (rbtree_each_arg_t *)') to parameter of type 'VALUE (*)(VALUE)' (aka 'unsigned long (*)(unsigned long)') [-Wincompatible-function-pointer-types]
    return rb_ensure(rbtree_each_body, (VALUE)&each_arg,
                     ^~~~~~~~~~~~~~~~
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/iterator.h:425:25: note: passing argument to parameter 'b_proc' here
VALUE rb_ensure(VALUE (*b_proc)(VALUE), VALUE data1, VALUE (*e_proc)(VALUE), VALUE data2);
                        ^
rbtree.c:768:5: warning: 'rb_gc_force_recycle' is deprecated: this is now a no-op function [-Wdeprecated-declarations]
    rb_gc_force_recycle(temp);
    ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/intern/gc.h:213:1: note: 'rb_gc_force_recycle' has been explicitly marked deprecated here
RBIMPL_ATTR_DEPRECATED(("this is now a no-op function"))
^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/attr/deprecated.h:36:53: note: expanded from macro 'RBIMPL_ATTR_DEPRECATED'
# define RBIMPL_ATTR_DEPRECATED(msg) __attribute__((__deprecated__ msg))
                                                    ^
rbtree.c:948:22: warning: incompatible function pointer types passing 'VALUE (rbtree_remove_if_arg_t *)' (aka 'unsigned long (rbtree_remove_if_arg_t *)') to parameter of type 'VALUE (*)(VALUE)' (aka 'unsigned long (*)(unsigned long)') [-Wincompatible-function-pointer-types]
    return rb_ensure(rbtree_remove_if_body, (VALUE)&arg,
                     ^~~~~~~~~~~~~~~~~~~~~
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/iterator.h:425:25: note: passing argument to parameter 'b_proc' here
VALUE rb_ensure(VALUE (*b_proc)(VALUE), VALUE data1, VALUE (*e_proc)(VALUE), VALUE data2);
                        ^
rbtree.c:949:22: warning: incompatible function pointer types passing 'VALUE (rbtree_remove_if_arg_t *)' (aka 'unsigned long (rbtree_remove_if_arg_t *)') to parameter of type 'VALUE (*)(VALUE)' (aka 'unsigned long (*)(unsigned long)') [-Wincompatible-function-pointer-types]
                     rbtree_remove_if_ensure, (VALUE)&arg);
                     ^~~~~~~~~~~~~~~~~~~~~~~
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/iterator.h:425:62: note: passing argument to parameter 'e_proc' here
VALUE rb_ensure(VALUE (*b_proc)(VALUE), VALUE data1, VALUE (*e_proc)(VALUE), VALUE data2);
                                                             ^
rbtree.c:1280:5: warning: 'RB_OBJ_INFECT' is deprecated: taintedness turned out to be a wrong idea. [-Wdeprecated-declarations]
    OBJ_INFECT(ary, self);
    ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/fl_type.h:147:25: note: expanded from macro 'OBJ_INFECT'
#define OBJ_INFECT      RB_OBJ_INFECT      /**< @old{RB_OBJ_INFECT} */
                        ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/fl_type.h:114:30: note: expanded from macro 'RB_OBJ_INFECT'
#define RB_OBJ_INFECT        RB_OBJ_INFECT
                             ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/fl_type.h:880:1: note: 'RB_OBJ_INFECT' has been explicitly marked deprecated here
RBIMPL_ATTR_DEPRECATED(("taintedness turned out to be a wrong idea."))
^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/attr/deprecated.h:36:53: note: expanded from macro 'RBIMPL_ATTR_DEPRECATED'
# define RBIMPL_ATTR_DEPRECATED(msg) __attribute__((__deprecated__ msg))
                                                    ^
rbtree.c:1306:5: warning: 'RB_OBJ_INFECT' is deprecated: taintedness turned out to be a wrong idea. [-Wdeprecated-declarations]
    OBJ_INFECT(hash, self);
    ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/fl_type.h:147:25: note: expanded from macro 'OBJ_INFECT'
#define OBJ_INFECT      RB_OBJ_INFECT      /**< @old{RB_OBJ_INFECT} */
                        ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/fl_type.h:114:30: note: expanded from macro 'RB_OBJ_INFECT'
#define RB_OBJ_INFECT        RB_OBJ_INFECT
                             ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/fl_type.h:880:1: note: 'RB_OBJ_INFECT' has been explicitly marked deprecated here
RBIMPL_ATTR_DEPRECATED(("taintedness turned out to be a wrong idea."))
^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/attr/deprecated.h:36:53: note: expanded from macro 'RBIMPL_ATTR_DEPRECATED'
# define RBIMPL_ATTR_DEPRECATED(msg) __attribute__((__deprecated__ msg))
                                                    ^
rbtree.c:1341:5: warning: 'RB_OBJ_INFECT' is deprecated: taintedness turned out to be a wrong idea. [-Wdeprecated-declarations]
    OBJ_INFECT(result, str);
    ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/fl_type.h:147:25: note: expanded from macro 'OBJ_INFECT'
#define OBJ_INFECT      RB_OBJ_INFECT      /**< @old{RB_OBJ_INFECT} */
                        ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/fl_type.h:114:30: note: expanded from macro 'RB_OBJ_INFECT'
#define RB_OBJ_INFECT        RB_OBJ_INFECT
                             ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/fl_type.h:880:1: note: 'RB_OBJ_INFECT' has been explicitly marked deprecated here
RBIMPL_ATTR_DEPRECATED(("taintedness turned out to be a wrong idea."))
^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/attr/deprecated.h:36:53: note: expanded from macro 'RBIMPL_ATTR_DEPRECATED'
# define RBIMPL_ATTR_DEPRECATED(msg) __attribute__((__deprecated__ msg))
                                                    ^
rbtree.c:1347:5: warning: 'RB_OBJ_INFECT' is deprecated: taintedness turned out to be a wrong idea. [-Wdeprecated-declarations]
    OBJ_INFECT(result, str);
    ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/fl_type.h:147:25: note: expanded from macro 'OBJ_INFECT'
#define OBJ_INFECT      RB_OBJ_INFECT      /**< @old{RB_OBJ_INFECT} */
                        ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/fl_type.h:114:30: note: expanded from macro 'RB_OBJ_INFECT'
#define RB_OBJ_INFECT        RB_OBJ_INFECT
                             ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/fl_type.h:880:1: note: 'RB_OBJ_INFECT' has been explicitly marked deprecated here
RBIMPL_ATTR_DEPRECATED(("taintedness turned out to be a wrong idea."))
^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/attr/deprecated.h:36:53: note: expanded from macro 'RBIMPL_ATTR_DEPRECATED'
# define RBIMPL_ATTR_DEPRECATED(msg) __attribute__((__deprecated__ msg))
                                                    ^
rbtree.c:1366:5: warning: 'RB_OBJ_INFECT' is deprecated: taintedness turned out to be a wrong idea. [-Wdeprecated-declarations]
    OBJ_INFECT(result, str);
    ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/fl_type.h:147:25: note: expanded from macro 'OBJ_INFECT'
#define OBJ_INFECT      RB_OBJ_INFECT      /**< @old{RB_OBJ_INFECT} */
                        ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/fl_type.h:114:30: note: expanded from macro 'RB_OBJ_INFECT'
#define RB_OBJ_INFECT        RB_OBJ_INFECT
                             ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/fl_type.h:880:1: note: 'RB_OBJ_INFECT' has been explicitly marked deprecated here
RBIMPL_ATTR_DEPRECATED(("taintedness turned out to be a wrong idea."))
^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/attr/deprecated.h:36:53: note: expanded from macro 'RBIMPL_ATTR_DEPRECATED'
# define RBIMPL_ATTR_DEPRECATED(msg) __attribute__((__deprecated__ msg))
                                                    ^
rbtree.c:1371:5: warning: 'RB_OBJ_INFECT' is deprecated: taintedness turned out to be a wrong idea. [-Wdeprecated-declarations]
    OBJ_INFECT(result, str);
    ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/fl_type.h:147:25: note: expanded from macro 'OBJ_INFECT'
#define OBJ_INFECT      RB_OBJ_INFECT      /**< @old{RB_OBJ_INFECT} */
                        ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/fl_type.h:114:30: note: expanded from macro 'RB_OBJ_INFECT'
#define RB_OBJ_INFECT        RB_OBJ_INFECT
                             ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/fl_type.h:880:1: note: 'RB_OBJ_INFECT' has been explicitly marked deprecated here
RBIMPL_ATTR_DEPRECATED(("taintedness turned out to be a wrong idea."))
^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/attr/deprecated.h:36:53: note: expanded from macro 'RBIMPL_ATTR_DEPRECATED'
# define RBIMPL_ATTR_DEPRECATED(msg) __attribute__((__deprecated__ msg))
                                                    ^
rbtree.c:1374:5: warning: 'RB_OBJ_INFECT' is deprecated: taintedness turned out to be a wrong idea. [-Wdeprecated-declarations]
    OBJ_INFECT(result, self);
    ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/fl_type.h:147:25: note: expanded from macro 'OBJ_INFECT'
#define OBJ_INFECT      RB_OBJ_INFECT      /**< @old{RB_OBJ_INFECT} */
                        ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/fl_type.h:114:30: note: expanded from macro 'RB_OBJ_INFECT'
#define RB_OBJ_INFECT        RB_OBJ_INFECT
                             ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/fl_type.h:880:1: note: 'RB_OBJ_INFECT' has been explicitly marked deprecated here
RBIMPL_ATTR_DEPRECATED(("taintedness turned out to be a wrong idea."))
^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/attr/deprecated.h:36:53: note: expanded from macro 'RBIMPL_ATTR_DEPRECATED'
# define RBIMPL_ATTR_DEPRECATED(msg) __attribute__((__deprecated__ msg))
                                                    ^
rbtree.c:1569:26: warning: incompatible function pointer types passing 'VALUE (rbtree_bound_arg_t *)' (aka 'unsigned long (rbtree_bound_arg_t *)') to parameter of type 'VALUE (*)(VALUE)' (aka 'unsigned long (*)(unsigned long)') [-Wincompatible-function-pointer-types]
        return rb_ensure(rbtree_bound_body, (VALUE)&arg,
                         ^~~~~~~~~~~~~~~~~
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/iterator.h:425:25: note: passing argument to parameter 'b_proc' here
VALUE rb_ensure(VALUE (*b_proc)(VALUE), VALUE data1, VALUE (*e_proc)(VALUE), VALUE data2);
                        ^
rbtree.c:1736:12: warning: 'rb_iterate' is deprecated: by: rb_block_call since 1.9 [-Wdeprecated-declarations]
    return rb_iterate(pp_group, (VALUE)&group_args, pp_value, (VALUE)pair_arg);
           ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/iterator.h:269:1: note: 'rb_iterate' has been explicitly marked deprecated here
RBIMPL_ATTR_DEPRECATED(("by: rb_block_call since 1.9"))
^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/attr/deprecated.h:36:53: note: expanded from macro 'RBIMPL_ATTR_DEPRECATED'
# define RBIMPL_ATTR_DEPRECATED(msg) __attribute__((__deprecated__ msg))
                                                    ^
rbtree.c:1736:53: warning: incompatible function pointer types passing 'VALUE (VALUE, pp_pair_arg_t *)' (aka 'unsigned long (unsigned long, pp_pair_arg_t *)') to parameter of type 'rb_block_call_func_t' (aka 'unsigned long (*)(unsigned long, unsigned long, int, const unsigned long *, unsigned long)') [-Wincompatible-function-pointer-types]
    return rb_iterate(pp_group, (VALUE)&group_args, pp_value, (VALUE)pair_arg);
                                                    ^~~~~~~~
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/iterator.h:283:75: note: passing argument to parameter 'proc' here
VALUE rb_iterate(VALUE (*func1)(VALUE), VALUE data1, rb_block_call_func_t proc, VALUE data2);
                                                                          ^
rbtree.c:1765:5: warning: 'rb_iterate' is deprecated: by: rb_block_call since 1.9 [-Wdeprecated-declarations]
    rb_iterate(pp_group, (VALUE)&group_args, pp_pair, (VALUE)&pair_arg);
    ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/iterator.h:269:1: note: 'rb_iterate' has been explicitly marked deprecated here
RBIMPL_ATTR_DEPRECATED(("by: rb_block_call since 1.9"))
^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/attr/deprecated.h:36:53: note: expanded from macro 'RBIMPL_ATTR_DEPRECATED'
# define RBIMPL_ATTR_DEPRECATED(msg) __attribute__((__deprecated__ msg))
                                                    ^
rbtree.c:1765:46: warning: incompatible function pointer types passing 'VALUE (VALUE, pp_pair_arg_t *)' (aka 'unsigned long (unsigned long, pp_pair_arg_t *)') to parameter of type 'rb_block_call_func_t' (aka 'unsigned long (*)(unsigned long, unsigned long, int, const unsigned long *, unsigned long)') [-Wincompatible-function-pointer-types]
    rb_iterate(pp_group, (VALUE)&group_args, pp_pair, (VALUE)&pair_arg);
                                             ^~~~~~~
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/iterator.h:283:75: note: passing argument to parameter 'proc' here
VALUE rb_iterate(VALUE (*func1)(VALUE), VALUE data1, rb_block_call_func_t proc, VALUE data2);
                                                                          ^
rbtree.c:1796:5: warning: 'rb_iterate' is deprecated: by: rb_block_call since 1.9 [-Wdeprecated-declarations]
    rb_iterate(pp_group, (VALUE)&group_args, pp_each_pair, (VALUE)rbtree_arg);
    ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/iterator.h:269:1: note: 'rb_iterate' has been explicitly marked deprecated here
RBIMPL_ATTR_DEPRECATED(("by: rb_block_call since 1.9"))
^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/attr/deprecated.h:36:53: note: expanded from macro 'RBIMPL_ATTR_DEPRECATED'
# define RBIMPL_ATTR_DEPRECATED(msg) __attribute__((__deprecated__ msg))
                                                    ^
rbtree.c:1796:46: warning: incompatible function pointer types passing 'VALUE (VALUE, pp_rbtree_arg_t *)' (aka 'unsigned long (unsigned long, pp_rbtree_arg_t *)') to parameter of type 'rb_block_call_func_t' (aka 'unsigned long (*)(unsigned long, unsigned long, int, const unsigned long *, unsigned long)') [-Wincompatible-function-pointer-types]
    rb_iterate(pp_group, (VALUE)&group_args, pp_each_pair, (VALUE)rbtree_arg);
                                             ^~~~~~~~~~~~
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/iterator.h:283:75: note: passing argument to parameter 'proc' here
VALUE rb_iterate(VALUE (*func1)(VALUE), VALUE data1, rb_block_call_func_t proc, VALUE data2);
                                                                          ^
rbtree.c:1823:12: warning: 'rb_iterate' is deprecated: by: rb_block_call since 1.9 [-Wdeprecated-declarations]
    return rb_iterate(pp_rbtree_group, (VALUE)&arg, pp_rbtree, (VALUE)&arg);
           ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/iterator.h:269:1: note: 'rb_iterate' has been explicitly marked deprecated here
RBIMPL_ATTR_DEPRECATED(("by: rb_block_call since 1.9"))
^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/attr/deprecated.h:36:53: note: expanded from macro 'RBIMPL_ATTR_DEPRECATED'
# define RBIMPL_ATTR_DEPRECATED(msg) __attribute__((__deprecated__ msg))
                                                    ^
rbtree.c:1823:53: warning: incompatible function pointer types passing 'VALUE (VALUE, pp_rbtree_arg_t *)' (aka 'unsigned long (unsigned long, pp_rbtree_arg_t *)') to parameter of type 'rb_block_call_func_t' (aka 'unsigned long (*)(unsigned long, unsigned long, int, const unsigned long *, unsigned long)') [-Wincompatible-function-pointer-types]
    return rb_iterate(pp_rbtree_group, (VALUE)&arg, pp_rbtree, (VALUE)&arg);
                                                    ^~~~~~~~~
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/iterator.h:283:75: note: passing argument to parameter 'proc' here
VALUE rb_iterate(VALUE (*func1)(VALUE), VALUE data1, rb_block_call_func_t proc, VALUE data2);
                                                                          ^
rbtree.c:1902:9: warning: 'rb_cData' is deprecated: by: rb_cObject.  Will be removed in 3.1. [-Wdeprecated-declarations]
        rb_cData
        ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/core/rdata.h:394:18: note: expanded from macro 'rb_cData'
#define rb_cData rb_cData()
                 ^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/core/rdata.h:372:1: note: 'rb_cData' has been explicitly marked deprecated here
RBIMPL_ATTR_DEPRECATED(("by: rb_cObject.  Will be removed in 3.1."))
^
/Users/vladimirtemnikov/.asdf/installs/ruby/3.1.3/include/ruby-3.1.0/ruby/internal/attr/deprecated.h:36:53: note: expanded from macro 'RBIMPL_ATTR_DEPRECATED'
# define RBIMPL_ATTR_DEPRECATED(msg) __attribute__((__deprecated__ msg))
                                                    ^
26 warnings and 2 errors generated.
make: *** [rbtree.o] Error 1

make failed, exit code 2
Additional environment info
@vladimirtemnikov vladimirtemnikov changed the title Ruby 3.1.3 installation failure Clang 15 installation failure Nov 25, 2022
@bf4
Copy link

bf4 commented Dec 24, 2023

I think this is resolved by rbtree 0.4.6

@vladimirtemnikov
Copy link
Author

That's true, I'll close this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants