Bug#1096506: dav-text: ftbfs with GCC-15
Package: src:dav-text
Version: 0.9.0-3
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/dav-text_0.9.0-3_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/dav-text-0.9.0=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -D_FORTIFY_SOURCE=2 -g -Wall -Wextra -Wpointer-arith -Wuninitialized -Wshadow -Winit-self -Wmissing-declarations -Wformat -Wformat-security -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -c -o keyboard.o keyboard.c
gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/dav-text-0.9.0=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -D_FORTIFY_SOURCE=2 -g -Wall -Wextra -Wpointer-arith -Wuninitialized -Wshadow -Winit-self -Wmissing-declarations -Wformat -Wformat-security -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -c -o features.o features.c
gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/dav-text-0.9.0=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -D_FORTIFY_SOURCE=2 -g -Wall -Wextra -Wpointer-arith -Wuninitialized -Wshadow -Winit-self -Wmissing-declarations -Wformat -Wformat-security -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -c -o undo.o undo.c
gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/dav-text-0.9.0=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -D_FORTIFY_SOURCE=2 -g -Wall -Wextra -Wpointer-arith -Wuninitialized -Wshadow -Winit-self -Wmissing-declarations -Wformat -Wformat-security -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -c -o move.o move.c
keyboard.c: In function ‘keyHit’:
keyboard.c:263:7: warning: this statement may fall through [-Wimplicit-fallthrough=]
263 | moveLeft(¤tBuffer->cursor);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
keyboard.c:266:5: note: here
266 | case 330: //Delete
| ^~~~
main.c: In function ‘main’:
main.c:68:12: error: passing argument 2 of ‘signal’ from incompatible pointer type [-Wincompatible-pointer-types]
68 | signal(2,sigcatch);
| ^~~~~~~~
| |
| void (*)(void)
In file included from main.c:22:
/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)
| ~~~~~~~~~~~~~~~^~~~~~~~~
In file included from main.c:28:
main.h:34:6: note: ‘sigcatch’ declared here
34 | void sigcatch();
| ^~~~~~~~
/usr/include/signal.h:72:16: note: ‘__sighandler_t’ declared here
72 | typedef void (*__sighandler_t) (int);
| ^~~~~~~~~~~~~~
main.c: In function ‘radixSort’:
main.c:764:18: warning: allocation of insufficient size ‘0’ for type ‘char *’ with size ‘8’ [-Walloc-size]
764 | buckets[i] = (char **)malloc(0*sizeof(char *));
| ^
main.c: In function ‘loadSettings’:
main.c:402:5: warning: ignoring return value of ‘fgets’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
402 | fgets(s, 200, fp);
| ^~~~~~~~~~~~~~~~~
make[1]: *** [<builtin>: main.o] Error 1
make[1]: *** Waiting for unfinished jobs....
fileIO.c: In function ‘doSave’:
fileIO.c:118:32: warning: ‘__builtin___sprintf_chk’ may write a terminating nul past the end of the destination [-Wformat-overflow=]
118 | sprintf(newFile, "%s/%s", filename, answer);
| ^
In file included from /usr/include/stdio.h:970,
from fileIO.c:21:
In function ‘sprintf’,
inlined from ‘doSave’ at fileIO.c:118:9:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:30:10: note: ‘__builtin___sprintf_chk’ output 2 or more bytes (assuming 257) into a destination of size 256
30 | return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
31 | __glibc_objsize (__s), __fmt,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
32 | __va_arg_pack ());
| ~~~~~~~~~~~~~~~~~
fileIO.c: In function ‘load’:
fileIO.c:213:30: warning: ‘__builtin___sprintf_chk’ may write a terminating nul past the end of the destination [-Wformat-overflow=]
213 | sprintf(newFile, "%s/%s", filename, answer);
| ^
In function ‘sprintf’,
inlined from ‘load’ at fileIO.c:213:7:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:30:10: note: ‘__builtin___sprintf_chk’ output 2 or more bytes (assuming 257) into a destination of size 256
30 | return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
31 | __glibc_objsize (__s), __fmt,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
32 | __va_arg_pack ());
| ~~~~~~~~~~~~~~~~~
make[1]: Leaving directory '/build/reproducible-path/dav-text-0.9.0'
dh_auto_build: error: make -j8 "INSTALL=install --strip-program=true" returned exit code 2
make: *** [debian/rules:4: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
Reply to: