Package: src:dact Version: 0.8.42-6 Severity: important Tags: sid forky User: debian-...@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/dact_0.8.42-6_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 [...] dact_common.c:712:17: warning: ignoring return value of ‘read’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 712 | read(src, &version[2], 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~ dact_common.c:726:17: warning: ignoring return value of ‘read’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 726 | read(src, &file_opts, 1); | ^~~~~~~~~~~~~~~~~~~~~~~~ dact_common.c:775:25: warning: ignoring return value of ‘read’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 775 | read(src, &ch, 1); | ^~~~~~~~~~~~~~~~~ dact_common.c:810:49: warning: ignoring return value of ‘fgets’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 810 | fgets(hdr_buf, 4095, extd_urlfile); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ dact_common.c: In function ‘dact_process_other’: dact_common.c:920:25: warning: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 920 | write(tmpfd, buf, x); | ^~~~~~~~~~~~~~~~~~~~ make[2]: *** [<builtin>: dact_common.o] Error 1 make[2]: *** Waiting for unfinished jobs.... In file included from dact.c:48: algorithms.h:21: warning: header guard ‘_ALGORITHMS_H’ followed by ‘#define’ of a different macro [-Wheader-guard] 21 | #ifndef _ALGORITHMS_H algorithms.h:22: note: ‘_ALOGIRTHMS_H’ is defined here; did you mean ‘_ALGORITHMS_H’? 22 | #define _ALOGIRTHMS_H dact.c: In function ‘dact_upgrade’: dact.c:178:23: warning: variable ‘i’ set but not used [-Wunused-but-set-variable] 178 | int status=0, i; | ^ dact.c: In function ‘main’: dact.c:505:46: error: assignment to ‘int (*)(void)’ from incompatible pointer type ‘int (*)(int, unsigned char *, unsigned char *, char *, int, int)’ [-Wincompatible-pointer-types] 505 | algorithms[i]=DACT_FAILED_ALGO; | ^ In file included from dact.h:143, from dact.c:21: comp_fail.h:24:5: note: ‘comp_fail_algo’ declared here 24 | int comp_fail_algo(int mode, unsigned char *prev_block, unsigned char *curr_block, char *out_block, int blk_size, int bufsize); | ^~~~~~~~~~~~~~ dact.c:526:88: warning: comparison of distinct pointer types lacks a cast [-Wcompare-distinct-pointer-types] 526 | if (ciphers_name[i]!=NULL && ciphers[i]!=DACT_FAILED_ALGO) { | ^~ dact.c:533:80: warning: comparison of distinct pointer types lacks a cast [-Wcompare-distinct-pointer-types] 533 | if (ciphers_name[i]!=NULL && ciphers[i]!=DACT_FAILED_ALGO) { | ^~ dact.c:549:81: warning: comparison of distinct pointer types lacks a cast [-Wcompare-distinct-pointer-types] 549 | if (algorithms[i]==NULL || algorithms[i]==DACT_FAILED_ALGO) continue; | ^~ dact.c:564:62: warning: macro ‘__DATE__’ might prevent reproducible builds [-Wdate-time] 564 | printf(" built on %s at %s",__DATE__,__TIME__); | ^~~~~~~~ dact.c:564:71: warning: macro ‘__TIME__’ might prevent reproducible builds [-Wdate-time] 564 | printf(" built on %s at %s",__DATE__,__TIME__); | ^~~~~~~~ dact.c: In function ‘dact_upgrade_file’: dact.c:127:49: warning: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 127 | write(ofd, buf, x); | ^~~~~~~~~~~~~~~~~~ dact.c: In function ‘dact_upgrade_file_checkver’: dact.c:158:17: warning: ignoring return value of ‘read’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 158 | read(fd, &verbuf, 9); | ^~~~~~~~~~~~~~~~~~~~ dact.c: In function ‘dact_upgrade’: dact.c:221:1: warning: control reaches end of non-void function [-Wreturn-type] 221 | } | ^ make[2]: *** [<builtin>: dact.o] Error 1 make[2]: Leaving directory '/build/reproducible-path/dact-0.8.42' make[1]: *** [Makefile:54: static] Error 2 make[1]: Leaving directory '/build/reproducible-path/dact-0.8.42' dh_auto_build: error: make -j8 returned exit code 2 make: *** [debian/rules:15: binary] Error 25 dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2