[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#984262: o3dgc: ftbfs with GCC-11



Package: src:o3dgc
Version: 0~20131011-4
Severity: normal
Tags: sid bookworm
User: debian-gcc@lists.debian.org
Usertags: ftbfs-gcc-11

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

The full build log can be found at:
http://people.debian.org/~doko/logs/20210228/filtered/gcc11/o3dgc_0~20131011-4_unstable_gcc11.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.

[...]
      |                                                                                                 ^
[ 80%] Linking CXX static library libo3dgc_dec_lib.a
make[4]: Leaving directory '/<<PKGBUILDDIR>>/src'
[ 80%] Built target o3dgc_dec_lib
make[4]: Entering directory '/<<PKGBUILDDIR>>/src'
Scanning dependencies of target test_o3dgc
make[4]: Leaving directory '/<<PKGBUILDDIR>>/src'
make[4]: Entering directory '/<<PKGBUILDDIR>>/src'
[ 90%] Building CXX object test/CMakeFiles/test_o3dgc.dir/src/main.cpp.o
In file included from /<<PKGBUILDDIR>>/src/test/src/main.cpp:37:
/<<PKGBUILDDIR>>/src/test/../o3dgc_decode_lib/inc/o3dgcSC3DMCDecoder.h: In member function ‘o3dgc::O3DGCErrorCode o3dgc::SC3DMCDecoder<T>::SetIterator(long unsigned int)’:
/<<PKGBUILDDIR>>/src/test/../o3dgc_decode_lib/inc/o3dgcSC3DMCDecoder.h:66:97: warning: no return statement in function returning non-void [-Wreturn-type]
   66 |         O3DGCErrorCode              SetIterator(unsigned long iterator) { m_iterator = iterator;}
      |                                                                                                 ^
In file included from /<<PKGBUILDDIR>>/src/test/src/main.cpp:41:
/<<PKGBUILDDIR>>/src/test/../o3dgc_decode_lib/inc/o3dgcDynamicVectorDecoder.h: In member function ‘o3dgc::O3DGCErrorCode o3dgc::DynamicVectorDecoder::SetIterator(long unsigned int)’:
/<<PKGBUILDDIR>>/src/test/../o3dgc_decode_lib/inc/o3dgcDynamicVectorDecoder.h:54:97: warning: no return statement in function returning non-void [-Wreturn-type]
   54 |         O3DGCErrorCode              SetIterator(unsigned long iterator) { m_iterator = iterator;}
      |                                                                                                 ^
/<<PKGBUILDDIR>>/src/test/src/main.cpp: In function ‘int testDynamicVectorCompression()’:
/<<PKGBUILDDIR>>/src/test/src/main.cpp:517:23: warning: comparison of integer expressions of different signedness: ‘long int’ and ‘const long unsigned int’ [-Wsign-compare]
  517 |     for(long n = 0; n < N; ++n)
      |                     ~~^~~
/<<PKGBUILDDIR>>/src/test/src/main.cpp:510:25: warning: unused variable ‘S’ [-Wunused-variable]
  510 |     const unsigned long S = D*N;
      |                         ^
/<<PKGBUILDDIR>>/src/test/src/main.cpp: In function ‘bool LoadIFS(const string&, std::vector<o3dgc::Vec3<float> >&, std::vector<o3dgc::Vec2<float> >&, std::vector<o3dgc::Vec3<float> >&, std::vector<o3dgc::Vec3<long unsigned int> >&, std::vector<long unsigned int>&)’:
/<<PKGBUILDDIR>>/src/test/src/main.cpp:1158:42: warning: unused variable ‘p’ [-Wunused-variable]
 1158 |                 for(unsigned long i = 0, p = 0; i < n; ++i)
      |                                          ^
/<<PKGBUILDDIR>>/src/test/src/main.cpp:1168:42: warning: unused variable ‘p’ [-Wunused-variable]
 1168 |                 for(unsigned long i = 0, p = 0; i < n; ++i)
      |                                          ^
/<<PKGBUILDDIR>>/src/test/src/main.cpp:1181:42: warning: unused variable ‘p’ [-Wunused-variable]
 1181 |                 for(unsigned long i = 0, p = 0; i < n; ++i)
      |                                          ^
/<<PKGBUILDDIR>>/src/test/src/main.cpp:1194:42: warning: unused variable ‘p’ [-Wunused-variable]
 1194 |                 for(unsigned long i = 0, p = 0; i < n; ++i)
      |                                          ^
/<<PKGBUILDDIR>>/src/test/src/main.cpp:1209:46: warning: unused variable ‘p’ [-Wunused-variable]
 1209 |                     for(unsigned long i = 0, p = 0; i < n; ++i)
      |                                              ^
In file included from /<<PKGBUILDDIR>>/src/test/../o3dgc_decode_lib/inc/o3dgcSC3DMCDecoder.h:109,
                 from /<<PKGBUILDDIR>>/src/test/src/main.cpp:37:
/<<PKGBUILDDIR>>/src/test/../o3dgc_decode_lib/inc/o3dgcSC3DMCDecoder.inl: In instantiation of ‘o3dgc::O3DGCErrorCode o3dgc::SC3DMCDecoder<T>::DecodeIntArray(long int*, long unsigned int, long unsigned int, long unsigned int, const o3dgc::IndexedFaceSet<T>&, o3dgc::O3DGCSC3DMCPredictionMode&, const o3dgc::BinaryStream&) [with T = long unsigned int]’:
/<<PKGBUILDDIR>>/src/test/../o3dgc_decode_lib/inc/o3dgcSC3DMCDecoder.inl:210:13:   required from ‘o3dgc::O3DGCErrorCode o3dgc::SC3DMCDecoder<T>::DecodePlayload(o3dgc::IndexedFaceSet<T>&, const o3dgc::BinaryStream&) [with T = long unsigned int]’
/<<PKGBUILDDIR>>/src/test/src/main.cpp:459:40:   required from here
/<<PKGBUILDDIR>>/src/test/../o3dgc_decode_lib/inc/o3dgcSC3DMCDecoder.inl:252:29: warning: unused variable ‘size’ [-Wunused-variable]
  252 |         const unsigned long size             = numIntArray * dimIntArray;
      |                             ^~~~
In file included from /usr/include/c++/11/map:60,
                 from /<<PKGBUILDDIR>>/src/test/src/main.cpp:29:
/usr/include/c++/11/bits/stl_tree.h: In instantiation of ‘static const _Key& std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_S_key(std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_Const_Link_type) [with _Key = o3dgc::Vec3<long unsigned int>; _Val = std::pair<const o3dgc::Vec3<long unsigned int>, long unsigned int>; _KeyOfValue = std::_Select1st<std::pair<const o3dgc::Vec3<long unsigned int>, long unsigned int> >; _Compare = IVec3Cmp; _Alloc = std::allocator<std::pair<const o3dgc::Vec3<long unsigned int>, long unsigned int> >; std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_Const_Link_type = const std::_Rb_tree_node<std::pair<const o3dgc::Vec3<long unsigned int>, long unsigned int> >*]’:
/usr/include/c++/11/bits/stl_tree.h:2433:62:   required from ‘std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_emplace_hint_unique(std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::const_iterator, _Args&& ...) [with _Args = {const std::piecewise_construct_t&, std::tuple<const o3dgc::Vec3<long unsigned int>&>, std::tuple<>}; _Key = o3dgc::Vec3<long unsigned int>; _Val = std::pair<const o3dgc::Vec3<long unsigned int>, long unsigned int>; _KeyOfValue = std::_Select1st<std::pair<const o3dgc::Vec3<long unsigned int>, long unsigned int> >; _Compare = IVec3Cmp; _Alloc = std::allocator<std::pair<const o3dgc::Vec3<long unsigned int>, long unsigned int> >; std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator = std::_Rb_tree<o3dgc::Vec3<long unsigned int>, std::pair<const o3dgc::Vec3<long unsigned int>, long unsigned int>, std::_Select1st<std::pair<const o3dgc::Vec3<long unsigned int>, long un
 signed int> >, IVec3Cmp, std::allocator<std::pair<const o3dgc::Vec3<long unsigned int>, long unsigned int> > >::iterator; std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::const_iterator = std::_Rb_tree<o3dgc::Vec3<long unsigned int>, std::pair<const o3dgc::Vec3<long unsigned int>, long unsigned int>, std::_Select1st<std::pair<const o3dgc::Vec3<long unsigned int>, long unsigned int> >, IVec3Cmp, std::allocator<std::pair<const o3dgc::Vec3<long unsigned int>, long unsigned int> > >::const_iterator]’
/usr/include/c++/11/bits/stl_map.h:501:37:   required from ‘std::map<_Key, _Tp, _Compare, _Alloc>::mapped_type& std::map<_Key, _Tp, _Compare, _Alloc>::operator[](const key_type&) [with _Key = o3dgc::Vec3<long unsigned int>; _Tp = long unsigned int; _Compare = IVec3Cmp; _Alloc = std::allocator<std::pair<const o3dgc::Vec3<long unsigned int>, long unsigned int> >; std::map<_Key, _Tp, _Compare, _Alloc>::mapped_type = long unsigned int; std::map<_Key, _Tp, _Compare, _Alloc>::key_type = o3dgc::Vec3<long unsigned int>]’
/<<PKGBUILDDIR>>/src/test/src/main.cpp:849:40:   required from here
/usr/include/c++/11/bits/stl_tree.h:770:15: error: static assertion failed: comparison object must be invocable as const
  770 |               is_invocable_v<const _Compare&, const _Key&, const _Key&>,
      |               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/11/bits/stl_tree.h:770:15: note: ‘std::is_invocable_v<const IVec3Cmp&, const o3dgc::Vec3<long unsigned int>&, const o3dgc::Vec3<long unsigned int>&>’ evaluates to false
make[4]: *** [test/CMakeFiles/test_o3dgc.dir/build.make:82: test/CMakeFiles/test_o3dgc.dir/src/main.cpp.o] Error 1
make[4]: Leaving directory '/<<PKGBUILDDIR>>/src'
make[3]: *** [CMakeFiles/Makefile2:259: test/CMakeFiles/test_o3dgc.dir/all] Error 2
make[3]: Leaving directory '/<<PKGBUILDDIR>>/src'
make[2]: *** [Makefile:103: all] Error 2
make[2]: Leaving directory '/<<PKGBUILDDIR>>/src'
make[1]: *** [debian/rules:31: override_dh_auto_build] Error 2
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:22: build] Error 2
dpkg-buildpackage: error: debian/rules build subprocess returned exit status 2


Reply to: