[DRE-maint] Bug#888161: ruby-multimap: FTBFS on ruby2.5: error: void value not ignored as it ought to be

Chris West (Faux) debian at fau.xxx
Tue Jan 23 18:28:48 UTC 2018


Source: ruby-multimap
Version: 1.1.2+gh-2
Severity: important
User: debian-ruby at lists.debian.org
Usertags: ruby2.5

Dear Maintainer,

This package fails to build against ruby2.5. Soon, there will
be a transition to ruby2.5, and this package will FTBFS in sid.

There may be some details on the wiki about common problems:
https://wiki.debian.org/Teams/Ruby/Ruby25Transition

Build log excerpt:


┌──────────────────────────────────────────────────────────────────────────────┐
│ Build native extensions for ruby2.3                                          │
└──────────────────────────────────────────────────────────────────────────────┘

/usr/bin/ruby2.3 /usr/lib/ruby/vendor_ruby/gem2deb/extension_builder.rb /build/ruby-multimap-1.1.2+gh debian/ruby-multimap
current directory: /build/ruby-multimap-1.1.2+gh/ext
/usr/bin/ruby2.3 -r ./siteconf20180123-295-zokl7l.rb extconf.rb
creating Makefile
current directory: /build/ruby-multimap-1.1.2+gh/ext
make V=1 "DESTDIR=" clean
make[1]: Entering directory '/build/ruby-multimap-1.1.2+gh/ext'
rm -f 
rm -f nested_multimap_ext.so  *.o  *.bak mkmf.log .*.time
make[1]: Leaving directory '/build/ruby-multimap-1.1.2+gh/ext'
current directory: /build/ruby-multimap-1.1.2+gh/ext
make V=1 "DESTDIR="
make[1]: Entering directory '/build/ruby-multimap-1.1.2+gh/ext'
gcc -I. -I/usr/include/x86_64-linux-gnu/ruby-2.3.0 -I/usr/include/ruby-2.3.0/ruby/backward -I/usr/include/ruby-2.3.0 -I. -Wdate-time -D_FORTIFY_SOURCE=2   -fPIC -g -O2 -fdebug-prefix-map=/build/ruby2.3-KwDbD6/ruby2.3-2.3.6=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC  -o nested_multimap_ext.o -c nested_multimap_ext.c
nested_multimap_ext.c: In function 'rb_nested_multimap_aref':
nested_multimap_ext.c:16:3: warning: 'rb_hash_ifnone' is deprecated [-Wdeprecated-declarations]
   r = (i < argc) ? rb_hash_aref(h, argv[i]) : RHASH_IFNONE(h);
   ^
In file included from /usr/include/ruby-2.3.0/ruby/ruby.h:24:0,
                 from /usr/include/ruby-2.3.0/ruby.h:33,
                 from nested_multimap_ext.c:1:
/usr/include/ruby-2.3.0/ruby/intern.h:534:18: note: declared here
 DEPRECATED(VALUE rb_hash_ifnone(VALUE));
                  ^
/usr/include/x86_64-linux-gnu/ruby-2.3.0/ruby/config.h:126:52: note: in definition of macro 'DEPRECATED'
 #define DEPRECATED(x) __attribute__ ((deprecated)) x
                                                    ^
rm -f nested_multimap_ext.so
gcc -shared -o nested_multimap_ext.so nested_multimap_ext.o -L. -L/usr/lib/x86_64-linux-gnu -L. -Wl,-z,relro -Wl,-z,now -fstack-protector -rdynamic -Wl,-export-dynamic    -lruby-2.3  -lpthread -lgmp -ldl -lcrypt -lm   -lc
make[1]: Leaving directory '/build/ruby-multimap-1.1.2+gh/ext'
current directory: /build/ruby-multimap-1.1.2+gh/ext
make V=1 "DESTDIR=" install
make[1]: Entering directory '/build/ruby-multimap-1.1.2+gh/ext'
/bin/mkdir -p . ./.gem.20180123-295-ko5yp8
exit > .RUBYARCHDIR.time
/usr/bin/install -c -m 0755 nested_multimap_ext.so ./.gem.20180123-295-ko5yp8
make[1]: Leaving directory '/build/ruby-multimap-1.1.2+gh/ext'

┌──────────────────────────────────────────────────────────────────────────────┐
│ Build native extensions for ruby2.5                                          │
└──────────────────────────────────────────────────────────────────────────────┘

/usr/bin/ruby2.5 /usr/lib/ruby/vendor_ruby/gem2deb/extension_builder.rb /build/ruby-multimap-1.1.2+gh debian/ruby-multimap
"make clean"
make[1]: Entering directory '/build/ruby-multimap-1.1.2+gh/ext'
make[1]: Leaving directory '/build/ruby-multimap-1.1.2+gh/ext'
"make clean"
make[1]: Entering directory '/build/ruby-multimap-1.1.2+gh/ext'
make[1]: Leaving directory '/build/ruby-multimap-1.1.2+gh/ext'
current directory: /build/ruby-multimap-1.1.2+gh/ext
/usr/bin/ruby2.5 -r ./siteconf20180123-325-11zh9ye.rb extconf.rb
creating Makefile
current directory: /build/ruby-multimap-1.1.2+gh/ext
make V=1 "DESTDIR=" clean
make[1]: Entering directory '/build/ruby-multimap-1.1.2+gh/ext'
rm -f 
rm -f nested_multimap_ext.so  *.o  *.bak mkmf.log .*.time
make[1]: Leaving directory '/build/ruby-multimap-1.1.2+gh/ext'
current directory: /build/ruby-multimap-1.1.2+gh/ext
make V=1 "DESTDIR="
make[1]: Entering directory '/build/ruby-multimap-1.1.2+gh/ext'
gcc -I. -I/usr/include/x86_64-linux-gnu/ruby-2.5.0 -I/usr/include/ruby-2.5.0/ruby/backward -I/usr/include/ruby-2.5.0 -I. -Wdate-time -D_FORTIFY_SOURCE=2   -fPIC -g -O2 -fdebug-prefix-map=/build/ruby2.5-ed5dT1/ruby2.5-2.5.0=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC  -o nested_multimap_ext.o -c nested_multimap_ext.c
nested_multimap_ext.c: In function 'rb_nested_multimap_aref':
nested_multimap_ext.c:16:3: warning: 'rb_hash_ifnone' is deprecated [-Wdeprecated-declarations]
   r = (i < argc) ? rb_hash_aref(h, argv[i]) : RHASH_IFNONE(h);
   ^
In file included from /usr/include/ruby-2.5.0/ruby/ruby.h:24:0,
                 from /usr/include/ruby-2.5.0/ruby.h:33,
                 from nested_multimap_ext.c:1:
/usr/include/ruby-2.5.0/ruby/backward.h:25:33: note: declared here
 DECLARE_DEPRECATED_FEATURE(2.2, rb_hash_ifnone);
                                 ^
/usr/include/x86_64-linux-gnu/ruby-2.5.0/ruby/config.h:129:52: note: in definition of macro 'NORETURN'
 #define NORETURN(x) __attribute__ ((__noreturn__)) x
                                                    ^
/usr/include/ruby-2.5.0/ruby/backward.h:13:14: note: in expansion of macro 'ERRORFUNC'
     NORETURN(ERRORFUNC(("deprecated since "#ver), DEPRECATED(void func(void))))
              ^~~~~~~~~
/usr/include/ruby-2.5.0/ruby/backward.h:13:51: note: in expansion of macro 'DEPRECATED'
     NORETURN(ERRORFUNC(("deprecated since "#ver), DEPRECATED(void func(void))))
                                                   ^~~~~~~~~~
/usr/include/ruby-2.5.0/ruby/backward.h:25:1: note: in expansion of macro 'DECLARE_DEPRECATED_FEATURE'
 DECLARE_DEPRECATED_FEATURE(2.2, rb_hash_ifnone);
 ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/ruby-2.5.0/ruby.h:33:0,
                 from nested_multimap_ext.c:1:
/usr/include/ruby-2.5.0/ruby/ruby.h:1060:25: error: too many arguments to function 'rb_hash_ifnone'
 #define RHASH_IFNONE(h) rb_hash_ifnone(h)
                         ^
nested_multimap_ext.c:16:47: note: in expansion of macro 'RHASH_IFNONE'
   r = (i < argc) ? rb_hash_aref(h, argv[i]) : RHASH_IFNONE(h);
                                               ^~~~~~~~~~~~
In file included from /usr/include/ruby-2.5.0/ruby/ruby.h:24:0,
                 from /usr/include/ruby-2.5.0/ruby.h:33,
                 from nested_multimap_ext.c:1:
/usr/include/ruby-2.5.0/ruby/backward.h:25:33: note: declared here
 DECLARE_DEPRECATED_FEATURE(2.2, rb_hash_ifnone);
                                 ^
/usr/include/x86_64-linux-gnu/ruby-2.5.0/ruby/config.h:129:52: note: in definition of macro 'NORETURN'
 #define NORETURN(x) __attribute__ ((__noreturn__)) x
                                                    ^
/usr/include/ruby-2.5.0/ruby/backward.h:13:14: note: in expansion of macro 'ERRORFUNC'
     NORETURN(ERRORFUNC(("deprecated since "#ver), DEPRECATED(void func(void))))
              ^~~~~~~~~
/usr/include/ruby-2.5.0/ruby/backward.h:13:51: note: in expansion of macro 'DEPRECATED'
     NORETURN(ERRORFUNC(("deprecated since "#ver), DEPRECATED(void func(void))))
                                                   ^~~~~~~~~~
/usr/include/ruby-2.5.0/ruby/backward.h:25:1: note: in expansion of macro 'DECLARE_DEPRECATED_FEATURE'
 DECLARE_DEPRECATED_FEATURE(2.2, rb_hash_ifnone);
 ^~~~~~~~~~~~~~~~~~~~~~~~~~
nested_multimap_ext.c:16:5: error: void value not ignored as it ought to be
   r = (i < argc) ? rb_hash_aref(h, argv[i]) : RHASH_IFNONE(h);
     ^
Makefile:242: recipe for target 'nested_multimap_ext.o' failed


Full build log:
https://rbuild.fau.xxx/2018-01-23/ruby-multimap.log

Please fix it!

Cheers,
Chris.



More information about the Pkg-ruby-extras-maintainers mailing list