Bug#1133519: libixion: ftbfs with GCC-16
Emanuele Rocca <[email protected]> Mon, 13 Apr 2026 15:05:38 +0200
| Newsgroups | gmane.linux.debian.devel.openoffice |
|---|---|
| Message-ID | <[email protected]> |
Package: src:libixion Version: 0.20.0-7 Severity: important Tags: sid forky ftbfs User: [email protected] Usertags: ftbfs-gcc-16 Hi, libixion 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/libixion_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/mdds-3.0/mdds/./multi_type_vector/soa/main_def.inl:3261:54: required from 'mdds::mtv::soa::multi_type_vector<Traits>::iterator mdds::mtv::soa::multi_type_vector<Traits>::set_cell_to_empty_block(size_type, size_type, const T&) [with T = ixion::formula_cell*; Traits = ixion::column_store_traits; iterator = mdds::mtv::soa::detail::iterator_base<mdds::mtv::soa::multi_type_vector<ixion::column_store_traits>::iterator_trait>; size_type = long unsigned int]' 3261 | block_funcs::resize_block(*prev_data, 0); | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/mdds-3.0/mdds/./multi_type_vector/soa/main_def.inl:1353:39: required from 'mdds::mtv::soa::multi_type_vector<Traits>::iterator mdds::mtv::soa::multi_type_vector<Traits>::set_impl(size_type, size_type, const T&) [with T = ixion::formula_cell*; Traits = ixion::column_store_traits; iterator = mdds::mtv::soa::detail::iterator_base<mdds::mtv::soa::multi_type_vector<ixion::column_store_traits>::iterator_trait>; size_type = long unsigned int]' 1353 | return set_cell_to_empty_block(block_index, pos_in_block, value); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/mdds-3.0/mdds/./multi_type_vector/soa/main_def.inl:783:28: required from 'mdds::mtv::soa::multi_type_vector<Traits>::iterator mdds::mtv::soa::multi_type_vector<Traits>::set(const iterator&, size_type, const T&) [with T = ixion::formula_cell*; Traits = ixion::column_store_traits; iterator = mdds::mtv::soa::detail::iterator_base<mdds::mtv::soa::multi_type_vector<ixion::column_store_traits>::iterator_trait>; size_type = long unsigned int]' 783 | iterator ret = set_impl(pos, block_index, value); | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ model_context_impl.cpp:139:37: required from here 139 | pos_hint = col_store.set(pos_hint, row, new formula_cell(row_offset, col_offset, cs, ts)); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/mdds-3.0/mdds/multi_type_vector/./types_util.hpp:119:48: error: no type named 'type' in 'struct mdds::mtv::detail::has_shrink_to_fit_method<mdds::mtv::delayed_delete_vector<unsigned int, std::allocator<unsigned int> > >' 119 | typename has_shrink_to_fit_method<T>::type v; | ^ /usr/include/mdds-3.0/mdds/multi_type_vector/./types_util.hpp: In instantiation of 'std::size_t mdds::mtv::detail::get_block_capacity(const T&) [with T = mdds::mtv::delayed_delete_vector<ixion::formula_cell*, std::allocator<ixion::formula_cell*> >; std::size_t = long unsigned int]': /usr/include/mdds-3.0/mdds/multi_type_vector/types.hpp:460:51: required from 'static void mdds::mtv::element_block<Self, TypeId, ValueT, StoreT>::resize_block(mdds::mtv::base_element_block&, size_t) [with Self = mdds::mtv::noncopyable_managed_element_block<50, ixion::formula_cell>; int TypeId = 50; ValueT = ixion::formula_cell*; StoreT = mdds::mtv::delayed_delete_vector; size_t = long unsigned int]' 460 | if (new_size < (detail::get_block_capacity(st) / 2)) | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~ /usr/include/mdds-3.0/mdds/multi_type_vector/block_funcs.hpp:87:107: required from 'static void mdds::mtv::element_block_funcs<Ts>::resize_block(mdds::mtv::base_element_block&, std::size_t) [with Ts = {mdds::mtv::default_element_block<0, bool, mdds::mtv::delayed_delete_vector>, mdds::mtv::default_element_block<10, double, mdds::mtv::delayed_delete_vector>, mdds::mtv::default_element_block<6, unsigned int, mdds::mtv::delayed_delete_vector>, mdds::mtv::noncopyable_managed_element_block<50, ixion::formula_cell, mdds::mtv::delayed_delete_vector>}; std::size_t = long unsigned int]' 87 | static const std::unordered_map<element_t, std::function<void(base_element_block&, std::size_t)>> func_map{ | ^~~~~~~~ /usr/include/mdds-3.0/mdds/./multi_type_vector/soa/main_def.inl:3261:54: required from 'mdds::mtv::soa::multi_type_vector<Traits>::iterator mdds::mtv::soa::multi_type_vector<Traits>::set_cell_to_empty_block(size_type, size_type, const T&) [with T = ixion::formula_cell*; Traits = ixion::column_store_traits; iterator = mdds::mtv::soa::detail::iterator_base<mdds::mtv::soa::multi_type_vector<ixion::column_store_traits>::iterator_trait>; size_type = long unsigned int]' 3261 | block_funcs::resize_block(*prev_data, 0); | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/mdds-3.0/mdds/./multi_type_vector/soa/main_def.inl:1353:39: required from 'mdds::mtv::soa::multi_type_vector<Traits>::iterator mdds::mtv::soa::multi_type_vector<Traits>::set_impl(size_type, size_type, const T&) [with T = ixion::formula_cell*; Traits = ixion::column_store_traits; iterator = mdds::mtv::soa::detail::iterator_base<mdds::mtv::soa::multi_type_vector<ixion::column_store_traits>::iterator_trait>; size_type = long unsigned int]' 1353 | return set_cell_to_empty_block(block_index, pos_in_block, value); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/mdds-3.0/mdds/./multi_type_vector/soa/main_def.inl:783:28: required from 'mdds::mtv::soa::multi_type_vector<Traits>::iterator mdds::mtv::soa::multi_type_vector<Traits>::set(const iterator&, size_type, const T&) [with T = ixion::formula_cell*; Traits = ixion::column_store_traits; iterator = mdds::mtv::soa::detail::iterator_base<mdds::mtv::soa::multi_type_vector<ixion::column_store_traits>::iterator_trait>; size_type = long unsigned int]' 783 | iterator ret = set_impl(pos, block_index, value); | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ model_context_impl.cpp:139:37: required from here 139 | pos_hint = col_store.set(pos_hint, row, new formula_cell(row_offset, col_offset, cs, ts)); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/mdds-3.0/mdds/multi_type_vector/./types_util.hpp:47:43: error: no type named 'type' in 'struct mdds::mtv::detail::has_capacity_method<mdds::mtv::delayed_delete_vector<ixion::formula_cell*, std::allocator<ixion::formula_cell*> > >' 47 | typename has_capacity_method<T>::type v; | ^ /usr/include/mdds-3.0/mdds/multi_type_vector/./types_util.hpp: In instantiation of 'void mdds::mtv::detail::shrink_to_fit(T&) [with T = mdds::mtv::delayed_delete_vector<ixion::formula_cell*, std::allocator<ixion::formula_cell*> >]': /usr/include/mdds-3.0/mdds/multi_type_vector/types.hpp:461:34: required from 'static void mdds::mtv::element_block<Self, TypeId, ValueT, StoreT>::resize_block(mdds::mtv::base_element_block&, size_t) [with Self = mdds::mtv::noncopyable_managed_element_block<50, ixion::formula_cell>; int TypeId = 50; ValueT = ixion::formula_cell*; StoreT = mdds::mtv::delayed_delete_vector; size_t = long unsigned int]' 461 | detail::shrink_to_fit(st); | ~~~~~~~~~~~~~~~~~~~~~^~~~ /usr/include/mdds-3.0/mdds/multi_type_vector/block_funcs.hpp:87:107: required from 'static void mdds::mtv::element_block_funcs<Ts>::resize_block(mdds::mtv::base_element_block&, std::size_t) [with Ts = {mdds::mtv::default_element_block<0, bool, mdds::mtv::delayed_delete_vector>, mdds::mtv::default_element_block<10, double, mdds::mtv::delayed_delete_vector>, mdds::mtv::default_element_block<6, unsigned int, mdds::mtv::delayed_delete_vector>, mdds::mtv::noncopyable_managed_element_block<50, ixion::formula_cell, mdds::mtv::delayed_delete_vector>}; std::size_t = long unsigned int]' 87 | static const std::unordered_map<element_t, std::function<void(base_element_block&, std::size_t)>> func_map{ | ^~~~~~~~ /usr/include/mdds-3.0/mdds/./multi_type_vector/soa/main_def.inl:3261:54: required from 'mdds::mtv::soa::multi_type_vector<Traits>::iterator mdds::mtv::soa::multi_type_vector<Traits>::set_cell_to_empty_block(size_type, size_type, const T&) [with T = ixion::formula_cell*; Traits = ixion::column_store_traits; iterator = mdds::mtv::soa::detail::iterator_base<mdds::mtv::soa::multi_type_vector<ixion::column_store_traits>::iterator_trait>; size_type = long unsigned int]' 3261 | block_funcs::resize_block(*prev_data, 0); | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~ /usr/include/mdds-3.0/mdds/./multi_type_vector/soa/main_def.inl:1353:39: required from 'mdds::mtv::soa::multi_type_vector<Traits>::iterator mdds::mtv::soa::multi_type_vector<Traits>::set_impl(size_type, size_type, const T&) [with T = ixion::formula_cell*; Traits = ixion::column_store_traits; iterator = mdds::mtv::soa::detail::iterator_base<mdds::mtv::soa::multi_type_vector<ixion::column_store_traits>::iterator_trait>; size_type = long unsigned int]' 1353 | return set_cell_to_empty_block(block_index, pos_in_block, value); | ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/mdds-3.0/mdds/./multi_type_vector/soa/main_def.inl:783:28: required from 'mdds::mtv::soa::multi_type_vector<Traits>::iterator mdds::mtv::soa::multi_type_vector<Traits>::set(const iterator&, size_type, const T&) [with T = ixion::formula_cell*; Traits = ixion::column_store_traits; iterator = mdds::mtv::soa::detail::iterator_base<mdds::mtv::soa::multi_type_vector<ixion::column_store_traits>::iterator_trait>; size_type = long unsigned int]' 783 | iterator ret = set_impl(pos, block_index, value); | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ model_context_impl.cpp:139:37: required from here 139 | pos_hint = col_store.set(pos_hint, row, new formula_cell(row_offset, col_offset, cs, ts)); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/mdds-3.0/mdds/multi_type_vector/./types_util.hpp:119:48: error: no type named 'type' in 'struct mdds::mtv::detail::has_shrink_to_fit_method<mdds::mtv::delayed_delete_vector<ixion::formula_cell*, std::allocator<ixion::formula_cell*> > >' 119 | typename has_shrink_to_fit_method<T>::type v; | ^ make[4]: *** [Makefile:1007: matrix.lo] Error 1 make[4]: *** [Makefile:1007: model_context_impl.lo] Error 1 make[4]: Leaving directory '/build/reproducible-path/libixion-0.20.0/src/libixion' make[3]: *** [Makefile:827: all-recursive] Error 1 make[3]: Leaving directory '/build/reproducible-path/libixion-0.20.0/src' make[2]: *** [Makefile:642: all-recursive] Error 1 make[2]: Leaving directory '/build/reproducible-path/libixion-0.20.0' make[1]: *** [Makefile:549: all] Error 2 make[1]: Leaving directory '/build/reproducible-path/libixion-0.20.0' dh_auto_build: error: make -j128 returned exit code 2 make: *** [debian/rules:11: binary] Error 25 dpkg-buildpackage: error: debian/rules binary subprocess failed with exit status 2