Bug#1097998: tightvnc: ftbfs with GCC-15
Package: src:tightvnc
Version: 1:1.3.10-9
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/tightvnc_1.3.10-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
[...]
cc -c -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/reproducible-path/tightvnc-1.3.10=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fpermissive -I../../exports/include -D_XSERVER64 -D_POSIX_C_SOURCE=199309L -D_POSIX_SOURCE -D_XOPEN_SOURCE=500L -D_DEFAULT_SOURCE -D_REENTRANT -DNDEBUG -DFUNCPROTO=15 -DNARROWPROTO -o AuGetBest.o AuGetBest.c
listen.c:44:1: error: conflicting types for ‘listenForIncomingConnections’; have ‘void(int *, char **, int)’
44 | listenForIncomingConnections(int *argc, char **argv, int listenArgIndex)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from listen.c:29:
./vncviewer.h:186:13: note: previous declaration of ‘listenForIncomingConnections’ with type ‘void(void)’
186 | extern void listenForIncomingConnections();
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [Makefile:12: listen.o] Error 1
make[2]: *** Waiting for unfinished jobs....
cc -c -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/reproducible-path/tightvnc-1.3.10=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fpermissive -I../../exports/include -D_XSERVER64 -D_POSIX_C_SOURCE=199309L -D_POSIX_SOURCE -D_XOPEN_SOURCE=500L -D_DEFAULT_SOURCE -D_REENTRANT -DNDEBUG -DFUNCPROTO=15 -DNARROWPROTO -o AuLock.o AuLock.c
AuGetAddr.c:34:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
34 | binaryEqual (a, b, len)
| ^~~~~~~~~~~
AuGetAddr.c: In function ‘binaryEqual’:
AuGetAddr.c:34:1: warning: old-style function definition [-Wold-style-definition]
AuGetBest.c:42:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
42 | binaryEqual (a, b, len)
| ^~~~~~~~~~~
AuGetBest.c: In function ‘binaryEqual’:
AuGetBest.c:42:1: warning: old-style function definition [-Wold-style-definition]
misc.c: In function ‘ToplevelInitBeforeRealization’:
misc.c:131:48: warning: passing argument 2 of ‘XtAppSetErrorHandler’ makes ‘__attribute__((noreturn))’ qualified function pointer from unqualified [-Wdiscarded-qualifiers]
131 | CleanupXtErrorHandler);
| ^~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/X11/IntrinsicP.h:51,
from ./vncviewer.h:33,
from misc.c:24:
/usr/include/X11/Intrinsic.h:1771:5: note: expected ‘__attribute__((noreturn)) void (*)(char *)’ but argument is of type ‘void (*)(char *)’
1771 | XtErrorHandler /* handler */ _X_NORETURN
| ^
misc.c: In function ‘RunCommand’:
misc.c:257:3: warning: implicit declaration of function ‘wait’ [-Wimplicit-function-declaration]
257 | wait(&childstatus);
| ^~~~
cc -c -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/reproducible-path/tightvnc-1.3.10=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fpermissive -I../../exports/include -D_XSERVER64 -D_POSIX_C_SOURCE=199309L -D_POSIX_SOURCE -D_XOPEN_SOURCE=500L -D_DEFAULT_SOURCE -D_REENTRANT -DNDEBUG -DFUNCPROTO=15 -DNARROWPROTO -o AuRead.o AuRead.c
cc -c -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/reproducible-path/tightvnc-1.3.10=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fpermissive -I../../exports/include -D_XSERVER64 -D_POSIX_C_SOURCE=199309L -D_POSIX_SOURCE -D_XOPEN_SOURCE=500L -D_DEFAULT_SOURCE -D_REENTRANT -DNDEBUG -DFUNCPROTO=15 -DNARROWPROTO -o AuUnlock.o AuUnlock.c
cc -c -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/reproducible-path/tightvnc-1.3.10=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fpermissive -I../../exports/include -D_XSERVER64 -D_POSIX_C_SOURCE=199309L -D_POSIX_SOURCE -D_XOPEN_SOURCE=500L -D_DEFAULT_SOURCE -D_REENTRANT -DNDEBUG -DFUNCPROTO=15 -DNARROWPROTO -o AuWrite.o AuWrite.c
AuRead.c: In function ‘XauReadAuth’:
AuRead.c:70:1: warning: old-style function definition [-Wold-style-definition]
70 | XauReadAuth (auth_file)
| ^~~~~~~~~~~
AuWrite.c: In function ‘XauWriteAuth’:
AuWrite.c:55:1: warning: old-style function definition [-Wold-style-definition]
55 | XauWriteAuth (auth_file, auth)
| ^~~~~~~~~~~~
AuUnlock.c:34:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
34 | XauUnlockAuth (
| ^~~~~~~~~~~~~
AuUnlock.c: In function ‘XauUnlockAuth’:
AuUnlock.c:47:9: warning: ‘return’ with no value, in function returning non-void [-Wreturn-mismatch]
47 | return;
| ^~~~~~
AuUnlock.c:34:1: note: declared here
34 | XauUnlockAuth (
| ^~~~~~~~~~~~~
rm -f libXau.a
ar cqs libXau.a AuDispose.o AuFileName.o AuGetAddr.o AuGetBest.o AuLock.o AuRead.o AuUnlock.o AuWrite.o
make[4]: Leaving directory '/build/reproducible-path/tightvnc-1.3.10/Xvnc/lib/Xau'
make[3]: Leaving directory '/build/reproducible-path/tightvnc-1.3.10/Xvnc/lib'
make[2]: *** [Makefile:14: lib] Error 2
make[2]: Leaving directory '/build/reproducible-path/tightvnc-1.3.10/Xvnc'
make[1]: *** [Makefile:14: Xvnc] Error 2
make[1]: *** Waiting for unfinished jobs....
make[2]: Leaving directory '/build/reproducible-path/tightvnc-1.3.10/vncviewer'
make[1]: *** [Makefile:14: vncviewer] Error 2
make[1]: Leaving directory '/build/reproducible-path/tightvnc-1.3.10'
dh_auto_build: error: make -j8 "INSTALL=install --strip-program=true" returned exit code 2
make: *** [debian/rules:25: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
Reply to: