[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/swish-e_2.4.7-6.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
[...]
http.c:486:9: warning: ignoring return value of ‘fgets’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
486 | fgets(buffer, 400, fp);
| ^~~~~~~~~~~~~~~~~~~~~~
http.c:491:13: warning: ignoring return value of ‘fgets’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
491 | fgets(contenttype_or_redirect, MAXSTRLEN, fp); /* more yuck */
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
http.c:499:13: warning: ignoring return value of ‘fgets’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
499 | fgets(buffer, 400, fp); /* more yuck */
| ^~~~~~~~~~~~~~~~~~~~~~
gcc -DHAVE_CONFIG_H -I. -I. -I. -Dlibexecdir=\"/usr/lib/swish-e\" -DPATH_SEPARATOR=\":\" -I/usr/include/libxml2 -Ireplace -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/swish-e-2.4.7=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -MT http.lo -MD -MP -MF .deps/http.Tpo -c http.c -o http.o >/dev/null 2>&1
if /bin/bash ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I. -Dlibexecdir=\"/usr/lib/swish-e\" -DPATH_SEPARATOR=\":\" -I/usr/include/libxml2 -Ireplace -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/swish-e-2.4.7=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -MT httpserver.lo -MD -MP -MF ".deps/httpserver.Tpo" -c -o httpserver.lo httpserver.c; \
then mv -f ".deps/httpserver.Tpo" ".deps/httpserver.Plo"; else rm -f ".deps/httpserver.Tpo"; exit 1; fi
gcc -DHAVE_CONFIG_H -I. -I. -I. -Dlibexecdir=\"/usr/lib/swish-e\" -DPATH_SEPARATOR=\":\" -I/usr/include/libxml2 -Ireplace -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/swish-e-2.4.7=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -MT httpserver.lo -MD -MP -MF .deps/httpserver.Tpo -c httpserver.c -fPIC -DPIC -o .libs/httpserver.o
gcc -DHAVE_CONFIG_H -I. -I. -I. -Dlibexecdir=\"/usr/lib/swish-e\" -DPATH_SEPARATOR=\":\" -I/usr/include/libxml2 -Ireplace -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/swish-e-2.4.7=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -MT httpserver.lo -MD -MP -MF .deps/httpserver.Tpo -c httpserver.c -o httpserver.o >/dev/null 2>&1
if /bin/bash ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I. -Dlibexecdir=\"/usr/lib/swish-e\" -DPATH_SEPARATOR=\":\" -I/usr/include/libxml2 -Ireplace -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/swish-e-2.4.7=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -MT extprog.lo -MD -MP -MF ".deps/extprog.Tpo" -c -o extprog.lo extprog.c; \
then mv -f ".deps/extprog.Tpo" ".deps/extprog.Plo"; else rm -f ".deps/extprog.Tpo"; exit 1; fi
gcc -DHAVE_CONFIG_H -I. -I. -I. -Dlibexecdir=\"/usr/lib/swish-e\" -DPATH_SEPARATOR=\":\" -I/usr/include/libxml2 -Ireplace -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/swish-e-2.4.7=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -MT extprog.lo -MD -MP -MF .deps/extprog.Tpo -c extprog.c -fPIC -DPIC -o .libs/extprog.o
gcc -DHAVE_CONFIG_H -I. -I. -I. -Dlibexecdir=\"/usr/lib/swish-e\" -DPATH_SEPARATOR=\":\" -I/usr/include/libxml2 -Ireplace -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/swish-e-2.4.7=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -MT extprog.lo -MD -MP -MF .deps/extprog.Tpo -c extprog.c -o extprog.o >/dev/null 2>&1
if /bin/bash ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I. -Dlibexecdir=\"/usr/lib/swish-e\" -DPATH_SEPARATOR=\":\" -I/usr/include/libxml2 -Ireplace -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/swish-e-2.4.7=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -MT bash.lo -MD -MP -MF ".deps/bash.Tpo" -c -o bash.lo bash.c; \
then mv -f ".deps/bash.Tpo" ".deps/bash.Plo"; else rm -f ".deps/bash.Tpo"; exit 1; fi
gcc -DHAVE_CONFIG_H -I. -I. -I. -Dlibexecdir=\"/usr/lib/swish-e\" -DPATH_SEPARATOR=\":\" -I/usr/include/libxml2 -Ireplace -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/swish-e-2.4.7=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -MT bash.lo -MD -MP -MF .deps/bash.Tpo -c bash.c -fPIC -DPIC -o .libs/bash.o
In file included from bash.c:33:
sys.h:39:7: warning: conflicting types for built-in function ‘strchr’; expected ‘char *(const char *, int)’ [-Wbuiltin-declaration-mismatch]
39 | char *strchr(), *strrchr();
| ^~~~~~
sys.h:31:1: note: ‘strchr’ is declared in header ‘<string.h>’
30 | #include "acconfig.h"
+++ |+#include <string.h>
31 |
sys.h:39:18: warning: conflicting types for built-in function ‘strrchr’; expected ‘char *(const char *, int)’ [-Wbuiltin-declaration-mismatch]
39 | char *strchr(), *strrchr();
| ^~~~~~~
sys.h:39:18: note: ‘strrchr’ is declared in header ‘<string.h>’
In file included from /usr/include/memory.h:29,
from mem.h:53,
from bash.c:34:
/usr/include/string.h:246:14: error: conflicting types for ‘strchr’; have ‘char *(const char *, int)’
246 | extern char *strchr (const char *__s, int __c)
| ^~~~~~
sys.h:39:7: note: previous declaration of ‘strchr’ with type ‘char *(void)’
39 | char *strchr(), *strrchr();
| ^~~~~~
/usr/include/string.h:273:14: error: conflicting types for ‘strrchr’; have ‘char *(const char *, int)’
273 | extern char *strrchr (const char *__s, int __c)
| ^~~~~~~
sys.h:39:18: note: previous declaration of ‘strrchr’ with type ‘char *(void)’
39 | char *strchr(), *strrchr();
| ^~~~~~~
bash.c: In function ‘group_member’:
bash.c:116:54: warning: pointer targets in passing argument 2 of ‘getgroups’ differ in signedness [-Wpointer-sign]
116 | ngroups = getgroups (default_group_array_size, group_array);
| ^~~~~~~~~~~
| |
| int *
In file included from /usr/include/features.h:510,
from /usr/include/x86_64-linux-gnu/sys/types.h:25,
from sys.h:47:
/usr/include/x86_64-linux-gnu/bits/unistd.h:147:19: note: expected ‘__gid_t *’ {aka ‘unsigned int *’} but argument is of type ‘int *’
147 | __fortify_clang_overload_arg (__gid_t *, , __list)))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[4]: *** [Makefile:550: bash.lo] Error 1
make[4]: Leaving directory '/build/reproducible-path/swish-e-2.4.7/src'
make[3]: *** [Makefile:590: all-recursive] Error 1
make[3]: Leaving directory '/build/reproducible-path/swish-e-2.4.7/src'
make[2]: *** [Makefile:330: all] Error 2
make[2]: Leaving directory '/build/reproducible-path/swish-e-2.4.7/src'
make[1]: *** [Makefile:422: all-recursive] Error 1
make[1]: Leaving directory '/build/reproducible-path/swish-e-2.4.7'
make: *** [debian/rules:39: build.stamp] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2