Bug#958006: yade: ftbfs with GCC-10

Matthias Klose doko at debian.org
Fri Apr 17 12:14:31 BST 2020


Package: src:yade
Version: 2020.01a-6
Severity: normal
Tags: sid bullseye
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-10

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-10/g++-10, but succeeds to build with gcc-9/g++-9. The
severity of this report will be raised before the bullseye release,
so nothing has to be done for the buster release.

The full build log can be found at:
http://people.debian.org/~doko/logs/gcc10-20200225/yade_2020.01a-6_unstable_gcc10.log
The last lines of the build log are at the end of this report.

To build with GCC 10, either set CC=gcc-10 CXX=g++-10 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-10/porting_to.html

[...]
                 from /<<PKGBUILDDIR>>/core/Omega.hpp:20,
                 from /<<PKGBUILDDIR>>/gui/qt5/GLViewer.hpp:6,
                 from /<<PKGBUILDDIR>>/debian/build/gui/_GLViewer_autogen/OXRBQHTNNB/moc_GLViewer.cpp:9,
                 from /<<PKGBUILDDIR>>/debian/build/gui/_GLViewer_autogen/mocs_compilation.cpp:2:
/usr/include/eigen3/Eigen/src/Core/Transpose.h: In instantiation of ‘Eigen::Transpose<MatrixType>::Transpose(MatrixType&) [with MatrixType = Eigen::Block<Eigen::Matrix<double, 3, 3>, 1, 3, false>]’:
/usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:829:17:   required from ‘void Eigen::internal::call_assignment_no_alias(Dst&, const Src&, const Func&) [with Dst = Eigen::Block<Eigen::Matrix<double, 3, 3>, 1, 3, false>; Src = Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::Matrix<double, 3, 1>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 3, 1> > >; Func = Eigen::internal::assign_op<double, double>]’
/usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:804:27:   required from ‘void Eigen::internal::call_assignment(Dst&, const Src&, const Func&, typename Eigen::internal::enable_if<(! Eigen::internal::evaluator_assume_aliasing<Src>::value), void*>::type) [with Dst = Eigen::Block<Eigen::Matrix<double, 3, 3>, 1, 3, false>; Src = Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::Matrix<double, 3, 1>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 3, 1> > >; Func = Eigen::internal::assign_op<double, double>; typename Eigen::internal::enable_if<(! Eigen::internal::evaluator_assume_aliasing<Src>::value), void*>::type = void*]’
/usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:782:18:   required from ‘void Eigen::internal::call_assignment(Dst&, const Src&) [with Dst = Eigen::Block<Eigen::Matrix<double, 3, 3>, 1, 3, false>; Src = Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::Matrix<double, 3, 1>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 3, 1> > >]’
/usr/include/eigen3/Eigen/src/Core/Assign.h:66:28:   required from ‘Derived& Eigen::MatrixBase<Derived>::operator=(const Eigen::DenseBase<OtherDerived>&) [with OtherDerived = Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::Matrix<double, 3, 1>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 3, 1> > >; Derived = Eigen::Block<Eigen::Matrix<double, 3, 3>, 1, 3, false>]’
/usr/include/eigen3/Eigen/src/LU/InverseImpl.h:146:17:   required from ‘void Eigen::internal::compute_inverse_size3_helper(const MatrixType&, const typename ResultType::Scalar&, const Eigen::Matrix<typename ResultType::Scalar, 3, 1>&, ResultType&) [with MatrixType = Eigen::Matrix<double, 3, 3>; ResultType = Eigen::Matrix<double, 3, 3>; typename ResultType::Scalar = double]’
/usr/include/eigen3/Eigen/src/LU/InverseImpl.h:168:33:   [ skipping 13 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:879:31:   required from ‘static void Eigen::internal::Assignment<DstXprType, SrcXprType, Functor, Eigen::internal::Dense2Dense, Weak>::run(DstXprType&, const SrcXprType&, const Functor&) [with DstXprType = Eigen::Matrix<double, 3, 3>; SrcXprType = Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 3, 3> >, const Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_identity_op<double>, Eigen::Matrix<double, 3, 3> >, const Eigen::Inverse<Eigen::Matrix<double, 3, 3> > > >; Functor = Eigen::internal::assign_op<double, double>; Weak = void]’
/usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:836:49:   required from ‘void Eigen::internal::call_assignment_no_alias(Dst&, const Src&, const Func&) [with Dst = Eigen::Matrix<double, 3, 3>; Src = Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 3, 3> >, const Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_identity_op<double>, Eigen::Matrix<double, 3, 3> >, const Eigen::Inverse<Eigen::Matrix<double, 3, 3> > > >; Func = Eigen::internal::assign_op<double, double>]’
/usr/include/eigen3/Eigen/src/Core/PlainObjectBase.h:732:41:   required from ‘Derived& Eigen::PlainObjectBase<Derived>::_set_noalias(const Eigen::DenseBase<OtherDerived>&) [with OtherDerived = Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 3, 3> >, const Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_identity_op<double>, Eigen::Matrix<double, 3, 3> >, const Eigen::Inverse<Eigen::Matrix<double, 3, 3> > > >; Derived = Eigen::Matrix<double, 3, 3>]’
/usr/include/eigen3/Eigen/src/Core/PlainObjectBase.h:537:19:   required from ‘Eigen::PlainObjectBase<Derived>::PlainObjectBase(const Eigen::DenseBase<OtherDerived>&) [with OtherDerived = Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 3, 3> >, const Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_identity_op<double>, Eigen::Matrix<double, 3, 3> >, const Eigen::Inverse<Eigen::Matrix<double, 3, 3> > > >; Derived = Eigen::Matrix<double, 3, 3>]’
/usr/include/eigen3/Eigen/src/Core/Matrix.h:377:29:   required from ‘Eigen::Matrix<_Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols>::Matrix(const Eigen::EigenBase<OtherDerived>&) [with OtherDerived = Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 3, 3> >, const Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_identity_op<double>, Eigen::Matrix<double, 3, 3> >, const Eigen::Inverse<Eigen::Matrix<double, 3, 3> > > >; _Scalar = double; int _Rows = 3; int _Cols = 3; int _Options = 0; int _MaxRows = 3; int _MaxCols = 3]’
/<<PKGBUILDDIR>>/core/Cell.hpp:140:102:   required from here
/usr/include/eigen3/Eigen/src/Core/Transpose.h:64:68: error: implicitly-declared ‘Eigen::Block<Eigen::Matrix<double, 3, 3>, 1, 3, false>::Block(const Eigen::Block<Eigen::Matrix<double, 3, 3>, 1, 3, false>&)’ is deprecated [-Werror=deprecated-copy]
   64 |     explicit inline Transpose(MatrixType& matrix) : m_matrix(matrix) {}
      |                                                                    ^
In file included from /usr/include/eigen3/Eigen/Core:472,
                 from /<<PKGBUILDDIR>>/lib/base/Math.hpp:67,
                 from /<<PKGBUILDDIR>>/core/Omega.hpp:20,
                 from /<<PKGBUILDDIR>>/gui/qt5/GLViewer.hpp:6,
                 from /<<PKGBUILDDIR>>/debian/build/gui/_GLViewer_autogen/OXRBQHTNNB/moc_GLViewer.cpp:9,
                 from /<<PKGBUILDDIR>>/debian/build/gui/_GLViewer_autogen/mocs_compilation.cpp:2:
/usr/include/eigen3/Eigen/src/Core/Block.h:161:47: note: because ‘Eigen::Block<Eigen::Matrix<double, 3, 3>, 1, 3, false>’ has user-provided ‘Eigen::BlockImpl<XprType, BlockRows, BlockCols, InnerPanel, Eigen::Dense>& Eigen::BlockImpl<XprType, BlockRows, BlockCols, InnerPanel, Eigen::Dense>::operator=(const Eigen::BlockImpl<XprType, BlockRows, BlockCols, InnerPanel, Eigen::Dense>&) [with XprType = Eigen::Matrix<double, 3, 3>; int BlockRows = 1; int BlockCols = 3; bool InnerPanel = false]’
  161 |     EIGEN_INHERIT_ASSIGNMENT_OPERATORS(BlockImpl)
      |                                               ^~~     
In file included from /usr/include/eigen3/Eigen/Core:474,
                 from /<<PKGBUILDDIR>>/lib/base/Math.hpp:67,
                 from /<<PKGBUILDDIR>>/core/Omega.hpp:20,
                 from /<<PKGBUILDDIR>>/gui/qt5/GLViewer.hpp:6,
                 from /<<PKGBUILDDIR>>/debian/build/gui/_GLViewer_autogen/OXRBQHTNNB/moc_GLViewer.cpp:9,
                 from /<<PKGBUILDDIR>>/debian/build/gui/_GLViewer_autogen/mocs_compilation.cpp:2:
/usr/include/eigen3/Eigen/src/Core/Transpose.h: In instantiation of ‘Eigen::Transpose<MatrixType>::Transpose(MatrixType&) [with MatrixType = const Eigen::Block<Eigen::Matrix<double, 3, 3>, 1, 3, false>]’:
/usr/include/eigen3/Eigen/src/Core/util/BlasUtil.h:367:64:   required from ‘static Eigen::internal::blas_traits<Eigen::Transpose<Derived> >::ExtractType Eigen::internal::blas_traits<Eigen::Transpose<Derived> >::extract(const XprType&) [with NestedXpr = Eigen::Block<Eigen::Matrix<double, 3, 3>, 1, 3, false>; Eigen::internal::blas_traits<Eigen::Transpose<Derived> >::ExtractType = Eigen::Transpose<const Eigen::Block<Eigen::Matrix<double, 3, 3>, 1, 3, false> >; Eigen::internal::blas_traits<Eigen::Transpose<Derived> >::XprType = Eigen::Transpose<Eigen::Block<Eigen::Matrix<double, 3, 3>, 1, 3, false> >]’
/usr/include/eigen3/Eigen/src/Core/util/BlasUtil.h:380:35:   required from ‘static const typename T::Scalar* Eigen::internal::extract_data_selector<T, HasUsableDirectAccess>::run(const T&) [with T = Eigen::Transpose<Eigen::Block<Eigen::Matrix<double, 3, 3>, 1, 3, false> >; bool HasUsableDirectAccess = true; typename T::Scalar = double]’
/usr/include/eigen3/Eigen/src/Core/util/BlasUtil.h:391:39:   required from ‘const typename T::Scalar* Eigen::internal::extract_data(const T&) [with T = Eigen::Transpose<Eigen::Block<Eigen::Matrix<double, 3, 3>, 1, 3, false> >; typename T::Scalar = double]’
/usr/include/eigen3/Eigen/src/Core/Transpose.h:374:168:   required from ‘static void Eigen::internal::checkTransposeAliasing_impl<Derived, OtherDerived, MightHaveTransposeAliasing>::run(const Derived&, const OtherDerived&) [with Derived = Eigen::Transpose<Eigen::Block<Eigen::Matrix<double, 3, 3>, 1, 3, false> >; OtherDerived = Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::Matrix<double, 3, 1>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 3, 1> > >; bool MightHaveTransposeAliasing = true]’
/usr/include/eigen3/Eigen/src/Core/Transpose.h:394:55:   required from ‘void Eigen::internal::check_for_aliasing(const Dst&, const Src&) [with Dst = Eigen::Transpose<Eigen::Block<Eigen::Matrix<double, 3, 3>, 1, 3, false> >; Src = Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::Matrix<double, 3, 1>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 3, 1> > >]’
/usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:876:33:   [ skipping 19 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:879:31:   required from ‘static void Eigen::internal::Assignment<DstXprType, SrcXprType, Functor, Eigen::internal::Dense2Dense, Weak>::run(DstXprType&, const SrcXprType&, const Functor&) [with DstXprType = Eigen::Matrix<double, 3, 3>; SrcXprType = Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 3, 3> >, const Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_identity_op<double>, Eigen::Matrix<double, 3, 3> >, const Eigen::Inverse<Eigen::Matrix<double, 3, 3> > > >; Functor = Eigen::internal::assign_op<double, double>; Weak = void]’
/usr/include/eigen3/Eigen/src/Core/AssignEvaluator.h:836:49:   required from ‘void Eigen::internal::call_assignment_no_alias(Dst&, const Src&, const Func&) [with Dst = Eigen::Matrix<double, 3, 3>; Src = Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 3, 3> >, const Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_identity_op<double>, Eigen::Matrix<double, 3, 3> >, const Eigen::Inverse<Eigen::Matrix<double, 3, 3> > > >; Func = Eigen::internal::assign_op<double, double>]’
/usr/include/eigen3/Eigen/src/Core/PlainObjectBase.h:732:41:   required from ‘Derived& Eigen::PlainObjectBase<Derived>::_set_noalias(const Eigen::DenseBase<OtherDerived>&) [with OtherDerived = Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 3, 3> >, const Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_identity_op<double>, Eigen::Matrix<double, 3, 3> >, const Eigen::Inverse<Eigen::Matrix<double, 3, 3> > > >; Derived = Eigen::Matrix<double, 3, 3>]’
/usr/include/eigen3/Eigen/src/Core/PlainObjectBase.h:537:19:   required from ‘Eigen::PlainObjectBase<Derived>::PlainObjectBase(const Eigen::DenseBase<OtherDerived>&) [with OtherDerived = Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 3, 3> >, const Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_identity_op<double>, Eigen::Matrix<double, 3, 3> >, const Eigen::Inverse<Eigen::Matrix<double, 3, 3> > > >; Derived = Eigen::Matrix<double, 3, 3>]’
/usr/include/eigen3/Eigen/src/Core/Matrix.h:377:29:   required from ‘Eigen::Matrix<_Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols>::Matrix(const Eigen::EigenBase<OtherDerived>&) [with OtherDerived = Eigen::CwiseBinaryOp<Eigen::internal::scalar_product_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_constant_op<double>, const Eigen::Matrix<double, 3, 3> >, const Eigen::CwiseBinaryOp<Eigen::internal::scalar_difference_op<double, double>, const Eigen::CwiseNullaryOp<Eigen::internal::scalar_identity_op<double>, Eigen::Matrix<double, 3, 3> >, const Eigen::Inverse<Eigen::Matrix<double, 3, 3> > > >; _Scalar = double; int _Rows = 3; int _Cols = 3; int _Options = 0; int _MaxRows = 3; int _MaxCols = 3]’
/<<PKGBUILDDIR>>/core/Cell.hpp:140:102:   required from here
/usr/include/eigen3/Eigen/src/Core/Transpose.h:64:68: error: implicitly-declared ‘Eigen::Block<Eigen::Matrix<double, 3, 3>, 1, 3, false>::Block(const Eigen::Block<Eigen::Matrix<double, 3, 3>, 1, 3, false>&)’ is deprecated [-Werror=deprecated-copy]
   64 |     explicit inline Transpose(MatrixType& matrix) : m_matrix(matrix) {}
      |                                                                    ^
In file included from /usr/include/eigen3/Eigen/Core:472,
                 from /<<PKGBUILDDIR>>/lib/base/Math.hpp:67,
                 from /<<PKGBUILDDIR>>/core/Omega.hpp:20,
                 from /<<PKGBUILDDIR>>/gui/qt5/GLViewer.hpp:6,
                 from /<<PKGBUILDDIR>>/debian/build/gui/_GLViewer_autogen/OXRBQHTNNB/moc_GLViewer.cpp:9,
                 from /<<PKGBUILDDIR>>/debian/build/gui/_GLViewer_autogen/mocs_compilation.cpp:2:
/usr/include/eigen3/Eigen/src/Core/Block.h:161:47: note: because ‘Eigen::Block<Eigen::Matrix<double, 3, 3>, 1, 3, false>’ has user-provided ‘Eigen::BlockImpl<XprType, BlockRows, BlockCols, InnerPanel, Eigen::Dense>& Eigen::BlockImpl<XprType, BlockRows, BlockCols, InnerPanel, Eigen::Dense>::operator=(const Eigen::BlockImpl<XprType, BlockRows, BlockCols, InnerPanel, Eigen::Dense>&) [with XprType = Eigen::Matrix<double, 3, 3>; int BlockRows = 1; int BlockCols = 3; bool InnerPanel = false]’
  161 |     EIGEN_INHERIT_ASSIGNMENT_OPERATORS(BlockImpl)
      |                                               ^~~     
cc1plus: all warnings being treated as errors
make[3]: *** [gui/CMakeFiles/_GLViewer.dir/build.make:66: gui/CMakeFiles/_GLViewer.dir/_GLViewer_autogen/mocs_compilation.cpp.o] Error 1
make[3]: Leaving directory '/<<PKGBUILDDIR>>/debian/build'
make[2]: *** [CMakeFiles/Makefile2:282: gui/CMakeFiles/_GLViewer.dir/all] Error 2
make[2]: Leaving directory '/<<PKGBUILDDIR>>/debian/build'
make[1]: *** [Makefile:133: all] Error 2
make[1]: Leaving directory '/<<PKGBUILDDIR>>/debian/build'
dh_auto_build: error: cd debian/build && make -j1 "INSTALL=install --strip-program=true" returned exit code 2
make: *** [debian/rules:19: build] Error 25
dpkg-buildpackage: error: debian/rules build subprocess returned exit status 2



More information about the debian-science-maintainers mailing list