Bug ID | 1225925 |
---|---|
Summary | Package rubygem-ruby-augeas does not build with gcc14 because of new errors |
Classification | openSUSE |
Product | openSUSE Tumbleweed |
Version | Current |
Hardware | Other |
OS | Other |
Status | NEW |
Severity | Normal |
Priority | P5 - None |
Component | Development |
Assignee | screening-team-bugs@suse.de |
Reporter | mjambor@suse.com |
QA Contact | qa-bugs@suse.de |
Blocks | 1220571 |
Target Milestone | --- |
Found By | --- |
Blocker | --- |
GCC 14 newly by default treats as errors a number of situations which before were only warnings. For more information see https://gcc.gnu.org/gcc-14/porting_to.html and meta bug #1220571. Because of this, package rubygem-ruby-augeas fails to compile. This can be seen online at: https://build.opensuse.org/package/live_build_log/openSUSE:Factory:Staging:Gcc7/rubygem-ruby-augeas/standard/x86_64 It can be reproduced locally with command: osc build --clean --alternative-project home:rguenther:nextgcc The corresponding Gentoo bug might be: https://bugs.gentoo.org/884303 The (first) error (that halts the build) is: [ 8s] In file included from /usr/include/ruby-3.3.0/ruby/ruby.h:27, [ 8s] from /usr/include/ruby-3.3.0/ruby.h:38, [ 8s] from _augeas.h:21, [ 8s] from _augeas.c:22: [ 8s] /usr/include/ruby-3.3.0/ruby/internal/anyargs.h:288:135: error: passing argument 3 of ‘rb_define_method_01’ from incompatible pointer type [-Wincompatible-pointer-types] [ 8s] 288 | #define rb_define_method(klass, mid, func, arity) RBIMPL_ANYARGS_DISPATCH_rb_define_method((arity), (func))((klass), (mid), (func), (arity)) [ 8s] | ^~~~~~ [ 8s] | | [ 8s] | VALUE (*)(VALUE, VALUE, VALUE) {aka long unsigned int (*)(long unsigned int, long unsigned int, long unsigned int)} [ 8s] _augeas.c:531:5: note: in expansion of macro ‘rb_define_method’ [ 8s] 531 | rb_define_method(c_augeas, "rm", augeas_rm, 1); [ 8s] | ^~~~~~~~~~~~~~~~ [ 8s] /usr/include/ruby-3.3.0/ruby/internal/anyargs.h:277:21: note: expected ‘VALUE (*)(VALUE, VALUE)’ {aka ‘long unsigned int (*)(long unsigned int, long unsigned int)’} but argument is of type ‘VALUE (*)(VALUE, VALUE, VALUE)’ {aka ‘long unsigned int (*)(long unsigned int, long unsigned int, long unsigned int)’} [ 8s] 277 | RBIMPL_ANYARGS_DECL(rb_define_method, VALUE, const char *) [ 8s] | ^~~~~~~~~~~~~~~~