[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1096667: fwlogwatch: ftbfs with GCC-15



Package: src:fwlogwatch
Version: 1.4-5
Severity: important
Tags: sid forky
User: debian-gcc@lists.debian.org
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/fwlogwatch_1.4-5_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

[...]
gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/fwlogwatch-1.4=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -DHAVE_ZLIB -DHAVE_GETTEXT -pipe -O2 -Wall  -Wdate-time -D_FORTIFY_SOURCE=2  -c -o resolve.o resolve.c
modes.c: In function ‘mode_rt_response’:
modes.c:617:19: error: passing argument 2 of ‘signal’ from incompatible pointer type [-Wincompatible-pointer-types]
  617 |   signal(SIGTERM, mode_rt_response_terminate);
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
      |                   |
      |                   void (*)(void)
/usr/include/signal.h:88:57: note: expected ‘__sighandler_t’ {aka ‘void (*)(int)’} but argument is of type ‘void (*)(void)’
   88 | extern __sighandler_t signal (int __sig, __sighandler_t __handler)
      |                                          ~~~~~~~~~~~~~~~^~~~~~~~~
modes.c:531:6: note: ‘mode_rt_response_terminate’ declared here
  531 | void mode_rt_response_terminate()
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/signal.h:72:16: note: ‘__sighandler_t’ declared here
   72 | typedef void (*__sighandler_t) (int);
      |                ^~~~~~~~~~~~~~
modes.c:707:18: error: passing argument 2 of ‘signal’ from incompatible pointer type [-Wincompatible-pointer-types]
  707 |   signal(SIGHUP, mode_rt_response_reread_conf);
      |                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                  |
      |                  void (*)(void)
/usr/include/signal.h:88:57: note: expected ‘__sighandler_t’ {aka ‘void (*)(int)’} but argument is of type ‘void (*)(void)’
   88 | extern __sighandler_t signal (int __sig, __sighandler_t __handler)
      |                                          ~~~~~~~~~~~~~~~^~~~~~~~~
modes.c:423:6: note: ‘mode_rt_response_reread_conf’ declared here
  423 | void mode_rt_response_reread_conf()
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/signal.h:72:16: note: ‘__sighandler_t’ declared here
   72 | typedef void (*__sighandler_t) (int);
      |                ^~~~~~~~~~~~~~
modes.c:708:19: error: passing argument 2 of ‘signal’ from incompatible pointer type [-Wincompatible-pointer-types]
  708 |   signal(SIGUSR1, mode_rt_response_reopen_log);
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                   |
      |                   void (*)(void)
/usr/include/signal.h:88:57: note: expected ‘__sighandler_t’ {aka ‘void (*)(int)’} but argument is of type ‘void (*)(void)’
   88 | extern __sighandler_t signal (int __sig, __sighandler_t __handler)
      |                                          ~~~~~~~~~~~~~~~^~~~~~~~~
modes.c:454:6: note: ‘mode_rt_response_reopen_log’ declared here
  454 | void mode_rt_response_reopen_log()
      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/signal.h:72:16: note: ‘__sighandler_t’ declared here
   72 | typedef void (*__sighandler_t) (int);
      |                ^~~~~~~~~~~~~~
make[1]: *** [<builtin>: modes.o] Error 1
make[1]: *** Waiting for unfinished jobs....
output.c: In function ‘output_timediff’:
output.c:48:3: warning: ‘__builtin_strncat’ output may be truncated copying 3 bytes from a string of length 3 [-Wstringop-truncation]
   48 |   strncat(td, tmp, 3);
      |   ^
resolve.c: In function ‘resolve_address_sync’:
resolve.c:125:34: warning: ‘%s’ directive output may be truncated writing up to 1024 bytes into a region of size 256 [-Wformat-truncation=]
  125 |         snprintf(fqdn, HOSTLEN, "%s", hbuf);
      |                                  ^~   ~~~~
In file included from /usr/include/stdio.h:970,
                 from resolve.c:4:
In function ‘snprintf’,
    inlined from ‘resolve_address_sync’ at resolve.c:125:2:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:68:10: note: ‘__builtin_snprintf’ output between 1 and 1025 bytes into a destination of size 256
   68 |   return __builtin___snprintf_chk (__s, __n, __USE_FORTIFY_LEVEL - 1,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   69 |                                    __glibc_objsize (__s), __fmt,
      |                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   70 |                                    __va_arg_pack ());
      |                                    ~~~~~~~~~~~~~~~~~
rm ipfw.c ipfilter.c cisco_ios.c cisco_pix.c netfilter.c netscreen.c ipchains.c
make[1]: Leaving directory '/build/reproducible-path/fwlogwatch-1.4'
dh_auto_build: error: make -j8 "INSTALL=install --strip-program=true" returned exit code 2
make: *** [debian/rules:7: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2


Reply to: