[Debian-med-packaging] Bug#1013030: rna-star: ftbfs with GCC-12

Matthias Klose doko at debian.org
Thu Jun 16 13:13:26 BST 2022


Package: src:rna-star
Version: 2.7.10a+dfsg-2
Severity: normal
Tags: sid bookworm
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-12

[This bug is targeted to the upcoming bookworm 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-12/g++-12, but succeeds to build with gcc-11/g++-11. The
severity of this report will be raised before the bookworm release.

The full build log can be found at:
http://qa-logs.debian.net/2022/06/09/gcc12/rna-star_2.7.10a+dfsg-2_unstable_gcc12.log
The last lines of the build log are at the end of this report.

To build with GCC 11, either set CC=gcc-11 CXX=g++-11 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.

  apt-get -t=experimental install g++ 

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-11/porting_to.html

GCC 11 defaults to the GNU++17 standard.  If your package installs
header files in /usr/include, please don't work around C++17 issues
by choosing a lower C++ standard for the package build, but fix these
issues to build with the C++17 standard.

[...]
      |       ^~~~~~
/usr/include/c++/12/bits/unordered_map.h:438:7: note:   conversion of argument 1 would be ill-formed:
SoloCommon.h:59:44: error: invalid user-defined conversion from ‘<brace-enclosed initializer list>’ to ‘std::unordered_map<long long unsigned int, std::array<long long unsigned int, 15> >::node_type&&’ {aka ‘std::_Hashtable<long long unsigned int, std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >, std::allocator<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> > >, std::__detail::_Select1st, std::equal_to<long long unsigned int>, std::hash<long long unsigned int>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true> >::node_type&&’} [-fpermissive]
   59 |         auto cbInserted = flagCounts.insert({cb, {} });
      |                           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~
In file included from /usr/include/c++/12/bits/hashtable.h:38:
/usr/include/c++/12/bits/node_handle.h:283:7: note: candidate is: ‘std::_Node_handle<_Key, _Value, _NodeAlloc>::_Node_handle(typename _AllocTraits::pointer, const _NodeAlloc&) [with _Key = long long unsigned int; _Value = std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >; _NodeAlloc = std::allocator<std::__detail::_Hash_node<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >, false> >; typename _AllocTraits::pointer = std::__detail::_Hash_node<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >, false>*; _AllocTraits = std::allocator_traits<std::allocator<std::__detail::_Hash_node<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >, false> > >]’ (near match)
  283 |       _Node_handle(typename _AllocTraits::pointer __ptr,
      |       ^~~~~~~~~~~~
/usr/include/c++/12/bits/node_handle.h:283:7: note:   conversion of argument 1 would be ill-formed:
SoloCommon.h:59:46: error: invalid conversion from ‘uintCB’ {aka ‘long long unsigned int’} to ‘std::allocator_traits<std::allocator<std::__detail::_Hash_node<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >, false> > >::pointer’ {aka ‘std::__detail::_Hash_node<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >, false>*’} [-fpermissive]
   59 |         auto cbInserted = flagCounts.insert({cb, {} });
      |                                              ^~
      |                                              |
      |                                              uintCB {aka long long unsigned int}
SoloCommon.h:59:44: error: ‘std::_Node_handle<_Key, _Value, _NodeAlloc>::_Node_handle(typename _AllocTraits::pointer, const _NodeAlloc&) [with _Key = long long unsigned int; _Value = std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >; _NodeAlloc = std::allocator<std::__detail::_Hash_node<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >, false> >; typename _AllocTraits::pointer = std::__detail::_Hash_node<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >, false>*; _AllocTraits = std::allocator_traits<std::allocator<std::__detail::_Hash_node<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >, false> > >]’ is private within this context
   59 |         auto cbInserted = flagCounts.insert({cb, {} });
      |                           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~
/usr/include/c++/12/bits/node_handle.h:283:7: note: declared private here
  283 |       _Node_handle(typename _AllocTraits::pointer __ptr,
      |       ^~~~~~~~~~~~
SoloCommon.h:59:46: error: invalid conversion from ‘uintCB’ {aka ‘long long unsigned int’} to ‘std::allocator_traits<std::allocator<std::__detail::_Hash_node<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >, false> > >::pointer’ {aka ‘std::__detail::_Hash_node<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >, false>*’} [-fpermissive]
   59 |         auto cbInserted = flagCounts.insert({cb, {} });
      |                                              ^~
      |                                              |
      |                                              uintCB {aka long long unsigned int}
/usr/include/c++/12/bits/node_handle.h:283:51: note:   initializing argument 1 of ‘std::_Node_handle<_Key, _Value, _NodeAlloc>::_Node_handle(typename _AllocTraits::pointer, const _NodeAlloc&) [with _Key = long long unsigned int; _Value = std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >; _NodeAlloc = std::allocator<std::__detail::_Hash_node<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >, false> >; typename _AllocTraits::pointer = std::__detail::_Hash_node<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >, false>*; _AllocTraits = std::allocator_traits<std::allocator<std::__detail::_Hash_node<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >, false> > >]’
  283 |       _Node_handle(typename _AllocTraits::pointer __ptr,
      |                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
/usr/include/c++/12/bits/unordered_map.h:443:7: note: candidate: ‘std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::iterator std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::insert(const_iterator, node_type&&) [with _Key = long long unsigned int; _Tp = std::array<long long unsigned int, 15>; _Hash = std::hash<long long unsigned int>; _Pred = std::equal_to<long long unsigned int>; _Alloc = std::allocator<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> > >; iterator = std::__detail::_Insert_base<long long unsigned int, std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >, std::allocator<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> > >, std::__detail::_Select1st, std::equal_to<long long unsigned int>, std::hash<long long unsigned int>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true> >::iterator; const_iterator = std::__detail::_Insert_base<long long unsigned int, std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >, std::allocator<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> > >, std::__detail::_Select1st, std::equal_to<long long unsigned int>, std::hash<long long unsigned int>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true> >::const_iterator; node_type = std::_Hashtable<long long unsigned int, std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >, std::allocator<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> > >, std::__detail::_Select1st, std::equal_to<long long unsigned int>, std::hash<long long unsigned int>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true> >::node_type]’
  443 |       insert(const_iterator, node_type&& __nh)
      |       ^~~~~~
/usr/include/c++/12/bits/unordered_map.h:443:7: note:   candidate expects 2 arguments, 1 provided
/usr/include/c++/12/bits/unordered_map.h:551:7: note: candidate: ‘std::pair<typename std::_Hashtable<_Key, std::pair<const _Key, _Val>, _Alloc, std::__detail::_Select1st, _Pred, _Hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<std::__not_<std::__and_<std::__is_fast_hash<_Hash>, std::__is_nothrow_invocable<const _Hash&, const _Key&> > >::value, false, true> >::iterator, bool> std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::insert(const value_type&) [with _Key = long long unsigned int; _Tp = std::array<long long unsigned int, 15>; _Hash = std::hash<long long unsigned int>; _Pred = std::equal_to<long long unsigned int>; _Alloc = std::allocator<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> > >; typename std::_Hashtable<_Key, std::pair<const _Key, _Val>, _Alloc, std::__detail::_Select1st, _Pred, _Hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<std::__not_<std::__and_<std::__is_fast_hash<_Hash>, std::__is_nothrow_invocable<const _Hash&, const _Key&> > >::value, false, true> >::iterator = std::__detail::_Insert_base<long long unsigned int, std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >, std::allocator<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> > >, std::__detail::_Select1st, std::equal_to<long long unsigned int>, std::hash<long long unsigned int>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true> >::iterator; value_type = std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >]’
  551 |       insert(const value_type& __x)
      |       ^~~~~~
/usr/include/c++/12/bits/unordered_map.h:551:32: note:   no known conversion for argument 1 from ‘<brace-enclosed initializer list>’ to ‘const std::unordered_map<long long unsigned int, std::array<long long unsigned int, 15> >::value_type&’ {aka ‘const std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >&’}
  551 |       insert(const value_type& __x)
      |              ~~~~~~~~~~~~~~~~~~^~~
/usr/include/c++/12/bits/unordered_map.h:557:7: note: candidate: ‘std::pair<typename std::_Hashtable<_Key, std::pair<const _Key, _Val>, _Alloc, std::__detail::_Select1st, _Pred, _Hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<std::__not_<std::__and_<std::__is_fast_hash<_Hash>, std::__is_nothrow_invocable<const _Hash&, const _Key&> > >::value, false, true> >::iterator, bool> std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::insert(value_type&&) [with _Key = long long unsigned int; _Tp = std::array<long long unsigned int, 15>; _Hash = std::hash<long long unsigned int>; _Pred = std::equal_to<long long unsigned int>; _Alloc = std::allocator<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> > >; typename std::_Hashtable<_Key, std::pair<const _Key, _Val>, _Alloc, std::__detail::_Select1st, _Pred, _Hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<std::__not_<std::__and_<std::__is_fast_hash<_Hash>, std::__is_nothrow_invocable<const _Hash&, const _Key&> > >::value, false, true> >::iterator = std::__detail::_Insert_base<long long unsigned int, std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >, std::allocator<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> > >, std::__detail::_Select1st, std::equal_to<long long unsigned int>, std::hash<long long unsigned int>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true> >::iterator; value_type = std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >]’
  557 |       insert(value_type&& __x)
      |       ^~~~~~
/usr/include/c++/12/bits/unordered_map.h:557:27: note:   no known conversion for argument 1 from ‘<brace-enclosed initializer list>’ to ‘std::unordered_map<long long unsigned int, std::array<long long unsigned int, 15> >::value_type&&’ {aka ‘std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >&&’}
  557 |       insert(value_type&& __x)
      |              ~~~~~~~~~~~~~^~~
/usr/include/c++/12/bits/unordered_map.h:590:7: note: candidate: ‘std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::iterator std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::insert(const_iterator, const value_type&) [with _Key = long long unsigned int; _Tp = std::array<long long unsigned int, 15>; _Hash = std::hash<long long unsigned int>; _Pred = std::equal_to<long long unsigned int>; _Alloc = std::allocator<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> > >; iterator = std::__detail::_Insert_base<long long unsigned int, std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >, std::allocator<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> > >, std::__detail::_Select1st, std::equal_to<long long unsigned int>, std::hash<long long unsigned int>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true> >::iterator; const_iterator = std::__detail::_Insert_base<long long unsigned int, std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >, std::allocator<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> > >, std::__detail::_Select1st, std::equal_to<long long unsigned int>, std::hash<long long unsigned int>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true> >::const_iterator; value_type = std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >]’
  590 |       insert(const_iterator __hint, const value_type& __x)
      |       ^~~~~~
/usr/include/c++/12/bits/unordered_map.h:590:7: note:   candidate expects 2 arguments, 1 provided
/usr/include/c++/12/bits/unordered_map.h:596:7: note: candidate: ‘std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::iterator std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::insert(const_iterator, value_type&&) [with _Key = long long unsigned int; _Tp = std::array<long long unsigned int, 15>; _Hash = std::hash<long long unsigned int>; _Pred = std::equal_to<long long unsigned int>; _Alloc = std::allocator<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> > >; iterator = std::__detail::_Insert_base<long long unsigned int, std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >, std::allocator<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> > >, std::__detail::_Select1st, std::equal_to<long long unsigned int>, std::hash<long long unsigned int>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true> >::iterator; const_iterator = std::__detail::_Insert_base<long long unsigned int, std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >, std::allocator<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> > >, std::__detail::_Select1st, std::equal_to<long long unsigned int>, std::hash<long long unsigned int>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true> >::const_iterator; value_type = std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >]’
  596 |       insert(const_iterator __hint, value_type&& __x)
      |       ^~~~~~
/usr/include/c++/12/bits/unordered_map.h:596:7: note:   candidate expects 2 arguments, 1 provided
/usr/include/c++/12/bits/unordered_map.h:627:7: note: candidate: ‘void std::unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::insert(std::initializer_list<typename std::_Hashtable<_Key, std::pair<const _Key, _Val>, _Alloc, std::__detail::_Select1st, _Pred, _Hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<std::__not_<std::__and_<std::__is_fast_hash<_Hash>, std::__is_nothrow_invocable<const _Hash&, const _Key&> > >::value, false, true> >::value_type>) [with _Key = long long unsigned int; _Tp = std::array<long long unsigned int, 15>; _Hash = std::hash<long long unsigned int>; _Pred = std::equal_to<long long unsigned int>; _Alloc = std::allocator<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> > >; typename std::_Hashtable<_Key, std::pair<const _Key, _Val>, _Alloc, std::__detail::_Select1st, _Pred, _Hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<std::__not_<std::__and_<std::__is_fast_hash<_Hash>, std::__is_nothrow_invocable<const _Hash&, const _Key&> > >::value, false, true> >::value_type = std::pair<const long long unsigned int, std::array<long long unsigned int, 15> >]’
  627 |       insert(initializer_list<value_type> __l)
      |       ^~~~~~
/usr/include/c++/12/bits/unordered_map.h:627:43: note:   no known conversion for argument 1 from ‘<brace-enclosed initializer list>’ to ‘std::initializer_list<std::pair<const long long unsigned int, std::array<long long unsigned int, 15> > >’
  627 |       insert(initializer_list<value_type> __l)
      |              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
SoloCommon.h: In member function ‘void SoloReadFlagClass::countsAddNoCBarray(std::array<long long unsigned int, 15>&)’:
SoloCommon.h:74:42: error: no match for ‘operator[]’ (operand types are ‘std::array<long long unsigned int, 15>’ and ‘unsigned int’)
   74 |             flagCountsNoCB[ibit] += arrIn[ibit];
      |                                          ^
make[2]: *** [Makefile:96: SoloBarcode.o] Error 1
make[2]: Leaving directory '/<<PKGBUILDDIR>>/source'
dh_auto_build: error: cd source && make -j8 "INSTALL=install --strip-program=true" SFX=-sse3 "CCFLAGS_common_add=-flto -flto -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -O3 -Wdate-time -D_FORTIFY_SOURCE=2 -std=c++0x" "CXXFLAGS=-g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -O3 -msse3" "LDFLAGS_add=-Wl,-z,relro -Wl,-z,now" STAR-sse3 STARlong-sse3 returned exit code 2
make[1]: *** [debian/rules:26: override_dh_auto_build] Error 25
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:21: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the Debian-med-packaging mailing list