Bug#1096505: db5.3: ftbfs with GCC-15
Package: src:db5.3
Version: 5.3.28+dfsg2-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/db5.3_5.3.28+dfsg2-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
[...]
../src/env/env_config.c:109:49: note: (near initialization for 'config_descs[34].func')
../src/dbinc_auto/mp_ext.h:65:5: note: '__memp_set_mp_mtxcount' declared here
65 | int __memp_set_mp_mtxcount __P((DB_ENV *, u_int32_t));
| ^~~~~~~~~~~~~~~~~~~~~~
../src/env/env_config.c:110:49: error: initialization of 'int (*)(void)' from incompatible pointer type 'int (*)(DB_ENV *, u_int32_t)' {aka 'int (*)(struct __db_env *, unsigned int)'} [-Wincompatible-pointer-types]
110 | { "set_mp_pagesize", CFG_UINT, __memp_set_mp_pagesize },
| ^~~~~~~~~~~~~~~~~~~~~~
../src/env/env_config.c:110:49: note: (near initialization for 'config_descs[35].func')
../src/dbinc_auto/mp_ext.h:61:5: note: '__memp_set_mp_pagesize' declared here
61 | int __memp_set_mp_pagesize __P((DB_ENV *, u_int32_t));
| ^~~~~~~~~~~~~~~~~~~~~~
../src/env/env_config.c:111:49: error: initialization of 'int (*)(void)' from incompatible pointer type 'int (*)(DB_ENV *, long int)' {aka 'int (*)(struct __db_env *, long int)'} [-Wincompatible-pointer-types]
111 | { "set_shm_key", CFG_LONG, __env_set_shm_key },
| ^~~~~~~~~~~~~~~~~
../src/env/env_config.c:111:49: note: (near initialization for 'config_descs[36].func')
../src/dbinc_auto/env_ext.h:66:6: note: '__env_set_shm_key' declared here
66 | int __env_set_shm_key __P((DB_ENV *, long));
| ^~~~~~~~~~~~~~~~~
../src/env/env_config.c:112:49: error: initialization of 'int (*)(void)' from incompatible pointer type 'int (*)(DB_ENV *, u_int32_t)' {aka 'int (*)(struct __db_env *, unsigned int)'} [-Wincompatible-pointer-types]
112 | { "set_tas_spins", CFG_UINT, __mutex_set_tas_spins },
| ^~~~~~~~~~~~~~~~~~~~~
../src/env/env_config.c:112:49: note: (near initialization for 'config_descs[37].func')
../src/dbinc_auto/mutex_ext.h:33:5: note: '__mutex_set_tas_spins' declared here
33 | int __mutex_set_tas_spins __P((DB_ENV *, u_int32_t));
| ^~~~~~~~~~~~~~~~~~~~~
../src/env/env_config.c:113:49: error: initialization of 'int (*)(void)' from incompatible pointer type 'int (*)(DB_ENV *, u_int32_t)' {aka 'int (*)(struct __db_env *, unsigned int)'} [-Wincompatible-pointer-types]
113 | { "set_thread_count", CFG_UINT, __env_set_thread_count },
| ^~~~~~~~~~~~~~~~~~~~~~
../src/env/env_config.c:113:49: note: (near initialization for 'config_descs[38].func')
../src/dbinc_auto/env_ext.h:60:6: note: '__env_set_thread_count' declared here
60 | int __env_set_thread_count __P((DB_ENV *, u_int32_t));
| ^~~~~~~~~~~~~~~~~~~~~~
../src/env/env_config.c:114:49: error: initialization of 'int (*)(void)' from incompatible pointer type 'int (*)(DB_ENV *, const char *)' {aka 'int (*)(struct __db_env *, const char *)'} [-Wincompatible-pointer-types]
114 | { "set_tmp_dir", CFG_STRING, __env_set_tmp_dir },
| ^~~~~~~~~~~~~~~~~
../src/env/env_config.c:114:49: note: (near initialization for 'config_descs[39].func')
../src/dbinc_auto/env_ext.h:67:6: note: '__env_set_tmp_dir' declared here
67 | int __env_set_tmp_dir __P((DB_ENV *, const char *));
| ^~~~~~~~~~~~~~~~~
../src/env/env_config.c:115:49: error: initialization of 'int (*)(void)' from incompatible pointer type 'int (*)(DB_ENV *, u_int32_t)' {aka 'int (*)(struct __db_env *, unsigned int)'} [-Wincompatible-pointer-types]
115 | { "set_tx_max", CFG_UINT, __txn_set_tx_max }
| ^~~~~~~~~~~~~~~~
../src/env/env_config.c:115:49: note: (near initialization for 'config_descs[40].func')
In file included from ../src/dbinc/txn.h:287,
from ../src/env/env_config.c:15:
../src/dbinc_auto/txn_ext.h:47:5: note: '__txn_set_tx_max' declared here
47 | int __txn_set_tx_max __P((DB_ENV *, u_int32_t));
| ^~~~~~~~~~~~~~~~
../src/env/env_config.c: In function '__env_read_db_config':
../src/env/env_config.c:267:1: warning: old-style function definition [-Wold-style-definition]
267 | __env_read_db_config(env)
| ^~~~~~~~~~~~~~~~~~~~
../src/env/env_config.c: In function '__config_parse':
../src/env/env_config.c:344:1: warning: old-style function definition [-Wold-style-definition]
344 | __config_parse(env, s, lc)
| ^~~~~~~~~~~~~~
../src/env/env_config.c: In function 'cmp_cfg_name':
../src/env/env_config.c:677:1: warning: old-style function definition [-Wold-style-definition]
677 | cmp_cfg_name(sought, element)
| ^~~~~~~~~~~~
../src/env/env_config.c: In function '__config_scan':
../src/env/env_config.c:697:1: warning: old-style function definition [-Wold-style-definition]
697 | __config_scan(input, argv, descptr)
| ^~~~~~~~~~~~~
make[2]: *** [Makefile:2013: env_config.lo] Error 1
make[2]: Leaving directory '/build/reproducible-path/db5.3-5.3.28+dfsg2/build-test'
make[1]: *** [debian/rules:107: override_dh_auto_test] Error 2
make[1]: Leaving directory '/build/reproducible-path/db5.3-5.3.28+dfsg2'
make: *** [debian/rules:69: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
Reply to: