[Debichem-devel] Bug#1133479: freesasa: ftbfs with GCC-16
Emanuele Rocca
ema at debian.org
Mon Apr 13 14:03:46 BST 2026
Package: src:freesasa
Version: 2.1.2-6
Severity: important
Tags: sid forky ftbfs
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-16
Hi,
freesasa fails to build in a test rebuild on at least amd64 and arm64 with
gcc-16/g++-16, but builds properly with gcc-15/g++-15. The severity of this
report will be raised before the forky release.
The full build log can be found at:
https://people.debian.org/~ema/gcc-16-rebuilds/output-1/freesasa_arm64.build.xz
The last lines of the build log are at the end of this report.
To build with GCC 16, either set CC=gcc-16 CXX=g++-16 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.
apt-get -t=experimental install g++
Common build failures include unused (but set) variables, array subscripts
partly outside array bounds, and new/dropped symbols in Debian symbols files.
For other C/C++ related build failures see the porting guide at
http://gcc.gnu.org/gcc-16/porting_to.html
Please only close this issue after double-checking that the package can be
built correctly with GCC 16.
Please do not reassign this bug to another package. If a fix in another package
is required, then file a bug for the other package (or clone), and mark this
bug as blocked by the bug in the other package.
[...]
| ^~~~~~
/usr/include/tao/pegtl/match.hpp:139:15: note: use ‘-fdiagnostics-all-candidates’ to display considered candidates
139 | auto m = in.template mark< ( use_marker ? rewind_mode::required : rewind_mode::dontcare ) >();
| ^
/usr/include/tao/pegtl/match.hpp: In instantiation of ‘auto tao::pegtl::match(ParseInput&, States&& ...) [with Rule = gemmi::cif::rules::file; apply_mode A = tao::pegtl::apply_mode::action; rewind_mode M = tao::pegtl::rewind_mode::required; Action = gemmi::cif::Action; Control = gemmi::cif::Errors; ParseInput = cstream_input<>; States = {gemmi::cif::Document&}]’:
/usr/include/tao/pegtl/normal.hpp:92:77: required from ‘static bool tao::pegtl::normal<Rule>::match(ParseInput&, States&& ...) [with tao::pegtl::apply_mode A = tao::pegtl::apply_mode::action; tao::pegtl::rewind_mode M = tao::pegtl::rewind_mode::required; Action = gemmi::cif::Action; Control = gemmi::cif::Errors; ParseInput = tao::pegtl::cstream_input<>; States = {gemmi::cif::Document&}; Rule = gemmi::cif::rules::file]’
92 | return TAO_PEGTL_NAMESPACE::match< Rule, A, M, Action, Control >( in, st... );
| ^
/usr/include/tao/pegtl/parse.hpp:43:70: required from ‘auto tao::pegtl::parse(ParseInput&&, States&& ...) [with Rule = gemmi::cif::rules::file; Action = gemmi::cif::Action; Control = gemmi::cif::Errors; apply_mode A = tao::pegtl::apply_mode::action; rewind_mode M = tao::pegtl::rewind_mode::required; ParseInput = cstream_input<>&; States = {gemmi::cif::Document&}]’
43 | return Control< Rule >::template match< A, M, Action, Control >( in, st... );
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/usr/include/gemmi/cif.hpp:267:44: required from ‘void gemmi::cif::parse_input(Document&, Input&&) [with Input = tao::pegtl::cstream_input<>&]’
267 | pegtl::parse<rules::file, Action, Errors>(in, d);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
/usr/include/gemmi/cif.hpp:273:14: required from ‘gemmi::cif::Document gemmi::cif::read_input(Input&&, int) [with Input = tao::pegtl::cstream_input<>&]’
273 | parse_input(doc, in);
| ~~~~~~~~~~~^~~~~~~~~
/usr/include/gemmi/cif.hpp:316:20: required from here
316 | return read_input(in, check_level);
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~
/usr/include/tao/pegtl/match.hpp:135:108: error: non-constant condition for static assertion
135 | static_assert( !enable_action || !validate_nothing || is_nothing || is_maybe_nothing || has_apply || has_apply0, "either apply() or apply0() must be defined" );
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/usr/include/tao/pegtl/match.hpp:139:15: error: use of deleted function ‘tao::pegtl::internal::marker<Iterator, M>::marker(tao::pegtl::internal::marker<Iterator, M>&&) [with Iterator = tao::pegtl::internal::iterator; tao::pegtl::rewind_mode M = tao::pegtl::rewind_mode::dontcare]’
139 | auto m = in.template mark< ( use_marker ? rewind_mode::required : rewind_mode::dontcare ) >();
| ^
/usr/include/tao/pegtl/internal/marker.hpp:22:7: note: declared here
22 | marker( marker&& ) = delete;
| ^~~~~~
/usr/include/tao/pegtl/match.hpp:139:15: note: use ‘-fdiagnostics-all-candidates’ to display considered candidates
139 | auto m = in.template mark< ( use_marker ? rewind_mode::required : rewind_mode::dontcare ) >();
| ^
/usr/include/tao/pegtl/match.hpp: In instantiation of ‘auto tao::pegtl::match(ParseInput&, States&& ...) [with Rule = gemmi::cif::rules::file; apply_mode A = tao::pegtl::apply_mode::action; rewind_mode M = tao::pegtl::rewind_mode::required; Action = gemmi::cif::Action; Control = gemmi::cif::Errors; ParseInput = istream_input<>; States = {gemmi::cif::Document&}]’:
/usr/include/tao/pegtl/normal.hpp:92:77: required from ‘static bool tao::pegtl::normal<Rule>::match(ParseInput&, States&& ...) [with tao::pegtl::apply_mode A = tao::pegtl::apply_mode::action; tao::pegtl::rewind_mode M = tao::pegtl::rewind_mode::required; Action = gemmi::cif::Action; Control = gemmi::cif::Errors; ParseInput = tao::pegtl::istream_input<>; States = {gemmi::cif::Document&}; Rule = gemmi::cif::rules::file]’
92 | return TAO_PEGTL_NAMESPACE::match< Rule, A, M, Action, Control >( in, st... );
| ^
/usr/include/tao/pegtl/parse.hpp:43:70: required from ‘auto tao::pegtl::parse(ParseInput&&, States&& ...) [with Rule = gemmi::cif::rules::file; Action = gemmi::cif::Action; Control = gemmi::cif::Errors; apply_mode A = tao::pegtl::apply_mode::action; rewind_mode M = tao::pegtl::rewind_mode::required; ParseInput = istream_input<>&; States = {gemmi::cif::Document&}]’
43 | return Control< Rule >::template match< A, M, Action, Control >( in, st... );
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/usr/include/gemmi/cif.hpp:267:44: required from ‘void gemmi::cif::parse_input(Document&, Input&&) [with Input = tao::pegtl::istream_input<>&]’
267 | pegtl::parse<rules::file, Action, Errors>(in, d);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
/usr/include/gemmi/cif.hpp:273:14: required from ‘gemmi::cif::Document gemmi::cif::read_input(Input&&, int) [with Input = tao::pegtl::istream_input<>&]’
273 | parse_input(doc, in);
| ~~~~~~~~~~~^~~~~~~~~
/usr/include/gemmi/cif.hpp:322:20: required from here
322 | return read_input(in, check_level);
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~
/usr/include/tao/pegtl/match.hpp:135:108: error: non-constant condition for static assertion
135 | static_assert( !enable_action || !validate_nothing || is_nothing || is_maybe_nothing || has_apply || has_apply0, "either apply() or apply0() must be defined" );
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~
/usr/include/tao/pegtl/match.hpp:139:15: error: use of deleted function ‘tao::pegtl::internal::marker<Iterator, M>::marker(tao::pegtl::internal::marker<Iterator, M>&&) [with Iterator = tao::pegtl::internal::iterator; tao::pegtl::rewind_mode M = tao::pegtl::rewind_mode::dontcare]’
139 | auto m = in.template mark< ( use_marker ? rewind_mode::required : rewind_mode::dontcare ) >();
| ^
/usr/include/tao/pegtl/internal/marker.hpp:22:7: note: declared here
22 | marker( marker&& ) = delete;
| ^~~~~~
/usr/include/tao/pegtl/match.hpp:139:15: note: use ‘-fdiagnostics-all-candidates’ to display considered candidates
139 | auto m = in.template mark< ( use_marker ? rewind_mode::required : rewind_mode::dontcare ) >();
| ^
make[4]: *** [Makefile:582: cif.o] Error 1
make[4]: Leaving directory '/build/reproducible-path/freesasa-2.1.2/src'
make[3]: *** [Makefile:397: all-recursive] Error 1
make[3]: Leaving directory '/build/reproducible-path/freesasa-2.1.2'
make[2]: *** [Makefile:336: all] Error 2
make[2]: Leaving directory '/build/reproducible-path/freesasa-2.1.2'
dh_auto_build: error: make -j128 freesasa_LDADD="libfreesasa.a \${libdir}/libgemmi_cpp.a -lz -ljson-c -lxml2" returned exit code 2
make[1]: *** [debian/rules:11: override_dh_auto_build] Error 25
make[1]: Leaving directory '/build/reproducible-path/freesasa-2.1.2'
make: *** [debian/rules:7: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess failed with exit status 2
More information about the Debichem-devel
mailing list