#1096541 dovecot-antispam: ftbfs with GCC-15

#1096541#5
Date:
2025-02-17 17:10:30 UTC
From:
To:
[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/dovecot-antispam_2.0+20171229-1.1_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

[...]
VfFhmqGbfQzcHw3stn8lyfsm1qiI/QyI7qv2tm2JkU7nhLf1kt8VxWSaW7Tca4pQ
uIgJLR8sFsr7HhQB9S65mKffLkl3sjRFjfca5rxFf4l+epQo4qkvNVVemm6Nl7b6
SAW+9CRHmjl3MjG/MGmSKChZtuQcOyFN77SQVtkgUCOuCjBmpoaItZVrpyIhRKPM
rKy8g0/iysvjeIyT2yORSjbmtIfN3/Q=
=WCqG
-----END PGP SIGNATURE-----

dpkg-source: warning: cannot verify inline signature for ./dovecot-antispam_2.0+20171229-1.1.dsc: unsupported subcommand
dpkg-source: info: extracting dovecot-antispam in /build/reproducible-path/dovecot-antispam-2.0+20171229
dpkg-source: info: unpacking dovecot-antispam_2.0+20171229.orig.tar.gz
dpkg-source: info: unpacking dovecot-antispam_2.0+20171229-1.1.debian.tar.xz

Check disk space
----------------

Sufficient free space for build

User Environment
----------------

APT_CONFIG=/var/lib/sbuild/apt.conf
HOME=/sbuild-nonexistent
LANG=C.UTF-8
LC_ALL=C.UTF-8
LOGNAME=user42
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
SHELL=/bin/sh
USER=user42

dpkg-buildpackage
-----------------

Command: dpkg-buildpackage --sanitize-env -us -uc -b
dpkg-buildpackage: info: source package dovecot-antispam
dpkg-buildpackage: info: source version 2.0+20171229-1.1
dpkg-buildpackage: info: source distribution unstable
dpkg-buildpackage: info: source changed by Bastian Germann <bage@debian.org>
 dpkg-source --before-build .
dpkg-buildpackage: info: host architecture amd64
 debian/rules clean
dh_testdir
/usr/bin/make clean || true
make[1]: Entering directory '/build/reproducible-path/dovecot-antispam-2.0+20171229'
rm -f *.so *.o *~ dovecot-version dovecot-version.h antispam-version.h
make[1]: Leaving directory '/build/reproducible-path/dovecot-antispam-2.0+20171229'
rm -f .config dovecot-antispam.7
dh_clean
dh_clean: warning: Compatibility levels before 10 are deprecated (level 9 in use)
 debian/rules binary
dh_testdir
cp -f defconfig .config
/usr/bin/make CC="x86_64-linux-gnu-gcc" CFLAGS="-O2 -g"
make[1]: Entering directory '/build/reproducible-path/dovecot-antispam-2.0+20171229'
cc -DHAVE_CONFIG_H -I/usr/include/dovecot/ -I/usr/include/dovecot/src/ -I/usr/include/dovecot/src/lib/ -I/usr/include/dovecot/src/lib-storage/ -I/usr/include/dovecot/src/lib-mail/ -I/usr/include/dovecot/src/lib-imap/ -I/usr/include/dovecot/src/lib-dict/ -I/usr/include/dovecot/src/lib-index/ -I/usr/include/dovecot/src/imap/ -o dovecot-version dovecot-version.c
./dovecot-version > dovecot-version.h
  CC   antispam-storage.o
In file included from /usr/include/dovecot/lib.h:26,
                 from antispam-storage-2.0.c:12,
                 from antispam-storage.c:3:
/usr/include/dovecot/compat.h:53:15: error: ‘bool’ cannot be defined via ‘typedef’
   53 | typedef _Bool bool;
      |               ^~~~
/usr/include/dovecot/compat.h:53:15: note: ‘bool’ is a keyword with ‘-std=c23’ onwards
/usr/include/dovecot/compat.h:53:1: warning: useless type name in empty declaration
   53 | typedef _Bool bool;
      | ^~~~~~~
make[1]: *** [Makefile:37: antispam-storage.o] Error 1
make[1]: Leaving directory '/build/reproducible-path/dovecot-antispam-2.0+20171229'
make: *** [debian/rules:23: lib90_antispam_plugin.so] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2