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]       |                     ^~~~~~~~~~~~~~~~


You are receiving this mail because: