Bug#1075080: icmpush: ftbfs with GCC-14
Package: src:icmpush
Version: 2.2-7
Severity: important
Tags: sid trixie
User: debian-gcc@lists.debian.org
Usertags: ftbfs-gcc-14
[This bug is 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-14/g++-14, but succeeds to build with gcc-13/g++-13. The
severity of this report will be raised before the trixie release.
The full build log can be found at:
http://qa-logs.debian.net/2024/07/01/icmpush_2.2-7_unstable_gccexp.log
The last lines of the build log are at the end of this report.
To build with GCC 14, either set CC=gcc-14 CXX=g++-14 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.
apt-get -t=experimental install g++
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-14/porting_to.html
[...]
icmpush.c:393:77: warning: format ‘%d’ expects argument of type ‘int’, but argument 3 has type ‘long unsigned int’ [-Wformat=]
393 | fprintf(stdout," -> Size of data garbage too big, using maximum (%d bytes)\n",
| ~^
| |
| int
| %ld
icmpush.c: In function ‘envia_ip’:
icmpush.c:595:34: warning: format ‘%d’ expects argument of type ‘int’, but argument 3 has type ‘long unsigned int’ [-Wformat=]
595 | fprintf(stdout, " -> MTU = %d bytes\n", mtu + TCAB_IP);
| ~^
| |
| int
| %ld
icmpush.c:600:59: warning: format ‘%d’ expects argument of type ‘int’, but argument 3 has type ‘long unsigned int’ [-Wformat=]
600 | fprintf(stdout," -> Total packet size (ICMP + IP) = %d bytes\n",
| ~^
| |
| int
| %ld
icmpush.c:631:62: warning: format ‘%d’ expects argument of type ‘int’, but argument 3 has type ‘long unsigned int’ [-Wformat=]
631 | fprintf(stderr," -> Sorry! Cannot send more than %d total bytes\n",
| ~^
| |
| int
| %ld
icmpush.c: In function ‘read_icmp’:
icmpush.c:694:29: warning: pointer targets in passing argument 6 of ‘recvfrom’ differ in signedness [-Wpointer-sign]
694 | &origen, &tam);
| ^~~~
| |
| int *
In file included from icmpush.c:41:
/usr/include/x86_64-linux-gnu/sys/socket.h:165:48: note: expected ‘socklen_t * restrict’ {aka ‘unsigned int * restrict’} but argument is of type ‘int *’
165 | socklen_t *__restrict __addr_len);
| ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
gcc -Wall -O3 -o cuenta cuenta.o
help.c: In function ‘help’:
help.c:68:3: error: implicit declaration of function ‘exit’ [-Wimplicit-function-declaration]
68 | exit(0);
| ^~~~
help.c:6:1: note: include ‘<stdlib.h>’ or provide a declaration of ‘exit’
5 | #include <stdio.h>
+++ |+#include <stdlib.h>
6 |
help.c:68:3: warning: incompatible implicit declaration of built-in function ‘exit’ [-Wbuiltin-declaration-mismatch]
68 | exit(0);
| ^~~~
help.c:68:3: note: include ‘<stdlib.h>’ or provide a declaration of ‘exit’
parser.c: In function ‘add_router’:
parser.c:533:54: warning: format ‘%d’ expects argument of type ‘int’, but argument 3 has type ‘long unsigned int’ [-Wformat=]
533 | fprintf(stdout, "Sorry, no more than %d routers allowed.\n",
| ~^
| |
| int
| %ld
mtu.c: In function ‘get_iface_out’:
mtu.c:92:61: warning: pointer targets in passing argument 3 of ‘getsockname’ differ in signedness [-Wpointer-sign]
92 | if ( getsockname( sock_rt, (struct sockaddr *)&iface_out, &len ) == -1 )
| ^~~~
| |
| int *
In file included from mtu.c:16:
/usr/include/x86_64-linux-gnu/sys/socket.h:117:47: note: expected ‘socklen_t * restrict’ {aka ‘unsigned int * restrict’} but argument is of type ‘int *’
117 | socklen_t *__restrict __len) __THROW;
| ~~~~~~~~~~~~~~~~~~~~~~^~~~~
make[1]: *** [Makefile:59: icmp-lin] Error 1
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
dh_auto_build: error: make -j8 linuz returned exit code 2
make: *** [debian/rules:12: build-stamp] Error 25
dpkg-buildpackage: error: debian/rules build subprocess returned exit status 2
Reply to: