Bug#1098166: xscavenger: ftbfs with GCC-15
Matthias Klose
doko at debian.org
Mon Feb 17 18:02:33 GMT 2025
Package: src:xscavenger
Version: 1.4.5-9
Severity: important
Tags: sid forky
User: debian-gcc at 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/xscavenger_1.4.5-9_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
[...]
scav.c:1382:41: error: too many arguments to function ‘func’; expected 0, have 2
1382 | func(name2,*pnt);
| ^~~~ ~~~~~
In file included from sound.c:16:
scav.h:426:15: error: conflicting types for ‘getgfx’; have ‘uchar *(int)’ {aka ‘unsigned char *(int)’}
426 | extern uchar *getgfx(int num);
| ^~~~~~
scav.h:383:15: note: previous declaration of ‘getgfx’ with type ‘uchar *(void)’ {aka ‘unsigned char *(void)’}
383 | extern uchar *getgfx();
| ^~~~~~
scav.c: In function ‘capturescreen’:
scav.c:2811:31: error: passing argument 4 of ‘writeiff’ from incompatible pointer type [-Wincompatible-pointer-types]
2811 | writeiff(name,640,480,csline,colormap);
| ^~~~~~
| |
| void (*)(uchar *, int) {aka void (*)(unsigned char *, int)}
In file included from scav.c:18:
anim.h:63:63: note: expected ‘void (*)(void)’ but argument is of type ‘void (*)(uchar *, int)’ {aka ‘void (*)(unsigned char *, int)’}
63 | extern int writeiff(uchar *name,int width, int height, void (*fetch)(),uchar *colors);
| ~~~~~~~^~~~~~~~
scav.c:2793:6: note: ‘csline’ declared here
2793 | void csline(uchar *put, int line)
| ^~~~~~
make[2]: *** [<builtin>: sound.o] Error 1
make[2]: *** [<builtin>: edit.o] Error 1
anim.c: In function ‘savegfx’:
anim.c:1135:30: error: passing argument 4 of ‘writeiff’ from incompatible pointer type [-Wincompatible-pointer-types]
1135 | writeiff(ttt,320,200,picline,(gfxsets+workingon)->gs_colormap);
| ^~~~~~~
| |
| void (*)(char *, int)
In file included from anim.c:13:
anim.h:63:63: note: expected ‘void (*)(void)’ but argument is of type ‘void (*)(char *, int)’
63 | extern int writeiff(uchar *name,int width, int height, void (*fetch)(),uchar *colors);
| ~~~~~~~^~~~~~~~
anim.c:1125:6: note: ‘picline’ declared here
1125 | void picline(char *put,int line)
| ^~~~~~~
anim.c: In function ‘writeiff’:
anim.c:1184:17: error: too many arguments to function ‘fetch’; expected 0, have 2
1184 | fetch(trow,j);
| ^~~~~ ~~~~
scav.c: In function ‘main’:
scav.c:1560:17: warning: ignoring return value of ‘read’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
1560 | read(file,playername,16);
| ^~~~~~~~~~~~~~~~~~~~~~~~
anim.c: In function ‘lout’:
anim.c:1106:9: warning: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
1106 | write(wfile,buff4,4);
| ^~~~~~~~~~~~~~~~~~~~
anim.c: In function ‘wout’:
anim.c:1115:9: warning: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
1115 | write(wfile,buff2,2);
| ^~~~~~~~~~~~~~~~~~~~
anim.c: In function ‘bout’:
anim.c:1121:9: warning: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
1121 | write(wfile,&val,1);
| ^~~~~~~~~~~~~~~~~~~
make[2]: *** [<builtin>: anim.o] Error 1
scav.c: In function ‘mode3’:
scav.c:2683:25: warning: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
2683 | write(file,playername,16);
| ^~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [<builtin>: scav.o] Error 1
make[2]: Leaving directory '/build/reproducible-path/xscavenger-1.4.5/src'
dh_auto_build: error: cd src && make -j8 "INSTALL=install --strip-program=true" LIBNAME=/usr/share/games/xscavenger returned exit code 2
make[1]: *** [debian/rules:20: override_dh_auto_build] Error 25
make[1]: Leaving directory '/build/reproducible-path/xscavenger-1.4.5'
make: *** [debian/rules:14: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
More information about the Pkg-games-devel
mailing list