Bug#1097659: proftpd-mod-tar: ftbfs with GCC-15
Matthias Klose
doko at debian.org
Mon Feb 17 17:46:10 GMT 2025
Package: src:proftpd-mod-tar
Version: 0.4-2
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/proftpd-mod-tar_0.4-2_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
[...]
rm -fr -- debian/proftpd-mod-tar/ debian/tmp/
find . \( \( \
\( -path .\*/.git -o -path .\*/.svn -o -path .\*/.bzr -o -path .\*/.hg -o -path .\*/CVS -o -path .\*/.pc -o -path .\*/_darcs \) -prune -o -type f -a \
\( -name '#*#' -o -name '.*~' -o -name '*~' -o -name DEADJOE \
-o -name '*.orig' -o -name '*.rej' -o -name '*.bak' \
-o -name '.*.orig' -o -name .*.rej -o -name '.SUMS' \
-o -name TAGS -o \( -path '*/.deps/*' -a -name '*.P' \) \
\) -exec rm -f {} + \) -o \
\( -type d -a \( -name autom4te.cache -o -name __pycache__ \) -prune -exec rm -rf {} + \) \)
debian/rules binary
dh binary
dh_update_autotools_config
dh_autoreconf
debian/rules override_dh_auto_build
make[1]: Entering directory '/build/reproducible-path/proftpd-mod-tar-0.4'
DESTDIR=/build/reproducible-path/proftpd-mod-tar-0.4/debian/proftpd-mod-tar prxs -c mod_tar.c
libtool --mode=compile gcc -DLINUX -g2 -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/proftpd-dfsg-1.3.8.c+dfsg=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wall -fno-omit-frame-pointer -fno-strict-aliasing -Werror=implicit-function-declaration -DPR_SHARED_MODULE -I. -I/usr/include/proftpd -c mod_tar.c
libtool: compile: gcc -DLINUX -g2 -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/proftpd-dfsg-1.3.8.c+dfsg=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wall -fno-omit-frame-pointer -fno-strict-aliasing -Werror=implicit-function-declaration -DPR_SHARED_MODULE -I. -I/usr/include/proftpd -c mod_tar.c -fPIC -DPIC -o .libs/mod_tar.o
mod_tar.c: In function 'set_tarenable':
mod_tar.c:674:7: error: 'bool' cannot be used here
674 | int bool = -1;
| ^~~~
mod_tar.c:674:7: note: 'bool' is a keyword with '-std=c23' onwards
mod_tar.c:674:12: error: expected identifier or '(' before '=' token
674 | int bool = -1;
| ^
mod_tar.c:680:8: error: expected identifier or '(' before '=' token
680 | bool = get_boolean(cmd, 1);
| ^
mod_tar.c:681:12: error: expected identifier or '(' before '==' token
681 | if (bool == -1)
| ^~
mod_tar.c:681:7: error: declaration in the controlling expression must have an initializer
681 | if (bool == -1)
| ^~~~
mod_tar.c:686:27: error: expected expression before 'bool'
686 | *((int *) c->argv[0]) = bool;
| ^~~~
mod_tar.c: In function 'set_tarengine':
mod_tar.c:693:7: error: 'bool' cannot be used here
693 | int bool = -1;
| ^~~~
mod_tar.c:693:7: note: 'bool' is a keyword with '-std=c23' onwards
mod_tar.c:693:12: error: expected identifier or '(' before '=' token
693 | int bool = -1;
| ^
mod_tar.c:699:8: error: expected identifier or '(' before '=' token
699 | bool = get_boolean(cmd, 1);
| ^
mod_tar.c:700:12: error: expected identifier or '(' before '==' token
700 | if (bool == -1)
| ^~
mod_tar.c:700:7: error: declaration in the controlling expression must have an initializer
700 | if (bool == -1)
| ^~~~
mod_tar.c:705:27: error: expected expression before 'bool'
705 | *((int *) c->argv[0]) = bool;
| ^~~~
mod_tar.c: In function 'tar_log_retr':
mod_tar.c:996:8: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
996 | path = pr_table_get(cmd->notes, "mod_tar.tar-file", NULL);
| ^
mod_tar.c:1009:8: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
1009 | path = pr_table_get(cmd->notes, "mod_tar.orig-path", NULL);
| ^
prxs: error executing command (1)
make[1]: *** [debian/rules:12: override_dh_auto_build] Error 1
make[1]: Leaving directory '/build/reproducible-path/proftpd-mod-tar-0.4'
make: *** [debian/rules:9: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
More information about the Pkg-proftpd-maintainers
mailing list