Public bug reported:

Imported from Debian bug http://bugs.debian.org/1097259:

Package: src:librelp
Version: 1.11.0-2
Severity: important
Tags: sid forky
User: [email protected]
Usertags: ftbfs-gcc-15

[This bug is NOT targeted to the upcoming trixie release]

Please keep this issue open in the bug tracker for the package it
was filed for.  If a fix in another package is required, please
file a bug for the other package (or clone), and add a block in this
package. Please keep the issue open until the package can be built in
a follow-up test rebuild.

The package fails to build in a test rebuild on at least amd64 with
gcc-15/g++-15, but succeeds to build with gcc-14/g++-14. The
severity of this report will be raised before the forky release.

The full build log can be found at:
http://qa-logs.debian.net/2025/02/16/amd64exp/librelp_1.11.0-2_unstable_gccexp.log.gz
The last lines of the build log are at the end of this report.

To build with GCC 15, either set CC=gcc-15 CXX=g++-15 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.

  apt-get -t=experimental install g++

GCC 15 now defaults to the C23/C++23 standards, exposing many FTBFS.
Other Common build failures are new warnings resulting in build failures
with -Werror turned on, or new/dropped symbols in Debian symbols files.
For other C/C++ related build failures see the porting guide at
http://gcc.gnu.org/gcc-15/porting_to.html

[...]
   70 | do_signal(const int sig)
      | ^~~~~~~~~
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 
-Werror=implicit-function-declaration 
-ffile-prefix-map=/build/reproducible-path/librelp-1.11.0=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection    -Wl,-z,relro -Wl,-z,now -o 
have_tlslib have_tlslib.o  -lssl -lcrypto  -lssl -lcrypto 
make[3]: *** [Makefile:747: send-send.o] Error 1
make[3]: *** Waiting for unfinished jobs....
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 
-Werror=implicit-function-declaration 
-ffile-prefix-map=/build/reproducible-path/librelp-1.11.0=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection    -Wl,-z,relro -Wl,-z,now -o msleep 
msleep.o  -lssl -lcrypto  -lssl -lcrypto 
receive.c: In function ‘hdlr_enable’:
receive.c:76:27: error: assignment to ‘__sighandler_t’ {aka ‘void (*)(int)’} 
from incompatible pointer type ‘void (*)(void)’ [-Wincompatible-pointer-types]
   76 |         sigAct.sa_handler = hdlr;
      |                           ^
In file included from receive.c:35:
/usr/include/signal.h:72:16: note: ‘__sighandler_t’ declared here
   72 | typedef void (*__sighandler_t) (int);
      |                ^~~~~~~~~~~~~~
receive.c: In function ‘main’:
receive.c:396:38: error: passing argument 2 of ‘hdlr_enable’ from incompatible 
pointer type [-Wincompatible-pointer-types]
  396 |                 hdlr_enable(SIGPIPE, do_signal);
      |                                      ^~~~~~~~~
      |                                      |
      |                                      __attribute__((noreturn)) void 
(*)(const int)
receive.c:71:29: note: expected ‘void (*)(void)’ but argument is of type 
‘__attribute__((noreturn)) void (*)(const int)’
   71 | hdlr_enable(int sig, void (*hdlr)())
      |                      ~~~~~~~^~~~~~~
receive.c:101:1: note: ‘do_signal’ declared here
  101 | do_signal(const int sig)
      | ^~~~~~~~~
receive.c:400:30: error: passing argument 2 of ‘hdlr_enable’ from incompatible 
pointer type [-Wincompatible-pointer-types]
  400 |         hdlr_enable(SIGUSR1, do_exit);
      |                              ^~~~~~~
      |                              |
      |                              void (*)(const int)
receive.c:71:29: note: expected ‘void (*)(void)’ but argument is of type ‘void 
(*)(const int)’
   71 | hdlr_enable(int sig, void (*hdlr)())
      |                      ~~~~~~~^~~~~~~
receive.c:113:1: note: ‘do_exit’ declared here
  113 | do_exit(LIBRELP_ATTR_UNUSED const int sig)
      | ^~~~~~~
receive.c:401:30: error: passing argument 2 of ‘hdlr_enable’ from incompatible 
pointer type [-Wincompatible-pointer-types]
  401 |         hdlr_enable(SIGTERM, terminate);
      |                              ^~~~~~~~~
      |                              |
      |                              void (*)(const int)
receive.c:71:29: note: expected ‘void (*)(void)’ but argument is of type ‘void 
(*)(const int)’
   71 | hdlr_enable(int sig, void (*hdlr)())
      |                      ~~~~~~~^~~~~~~
receive.c:81:1: note: ‘terminate’ declared here
   81 | terminate(LIBRELP_ATTR_UNUSED const int sig)
      | ^~~~~~~~~
receive.c:402:30: error: passing argument 2 of ‘hdlr_enable’ from incompatible 
pointer type [-Wincompatible-pointer-types]
  402 |         hdlr_enable(SIGALRM, watchdog_expired);
      |                              ^~~~~~~~~~~~~~~~
      |                              |
      |                              __attribute__((noreturn)) void (*)(const 
int)
receive.c:71:29: note: expected ‘void (*)(void)’ but argument is of type 
‘__attribute__((noreturn)) void (*)(const int)’
   71 | hdlr_enable(int sig, void (*hdlr)())
      |                      ~~~~~~~^~~~~~~
receive.c:91:1: note: ‘watchdog_expired’ declared here
   91 | watchdog_expired(LIBRELP_ATTR_UNUSED const int sig)
      | ^~~~~~~~~~~~~~~~
make[3]: *** [Makefile:733: receive-receive.o] Error 1
libtool: link: gcc -g -O2 -Werror=implicit-function-declaration 
-ffile-prefix-map=/build/reproducible-path/librelp-1.11.0=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -Wl,-z -Wl,relro -Wl,-z -Wl,now -o 
have_tlslib have_tlslib.o  -lssl -lcrypto
libtool: link: gcc -g -O2 -Werror=implicit-function-declaration 
-ffile-prefix-map=/build/reproducible-path/librelp-1.11.0=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -Wl,-z -Wl,relro -Wl,-z -Wl,now -o 
msleep msleep.o  -lssl -lcrypto
make[3]: Leaving directory '/build/reproducible-path/librelp-1.11.0/tests'
make[2]: *** [Makefile:1028: check-am] Error 2
make[2]: Leaving directory '/build/reproducible-path/librelp-1.11.0/tests'
make[1]: *** [Makefile:480: check-recursive] Error 1
make[1]: Leaving directory '/build/reproducible-path/librelp-1.11.0'
dh_auto_test: error: make -j8 check "TESTSUITEFLAGS=-j8 --verbose" VERBOSE=1 
returned exit code 2
make: *** [debian/rules:6: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2

** Affects: librelp (Ubuntu)
     Importance: Undecided
         Status: New

** Affects: librelp (Debian)
     Importance: Undecided
         Status: New


** Tags: ftbfs update-excuse

** Bug watch added: Debian Bug tracker #1097259
   https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1097259

** Changed in: librelp (Debian)
 Remote watch: None => Debian Bug tracker #1097259

** Tags added: ftbfs update-excuse

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2120960

Title:
  librelp: ftbfs with GCC-15

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/librelp/+bug/2120960/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to