cvjena/libmaxdiv

compilation fails with gcc compiler 7.1.0

bjoernbroetz opened this issue · 7 comments

Using gcc and g++ version 7.1.0 the build is failing.
Relevant part of error message below.
System:
Linux *** 2.6.32-696.18.7.el6.x86_64 *1 SMP *** x86_64 x86_64 x86_64 GNU/Linux
gcc/g++: 7.1.0
cmake: 3.5.2

compiles with deprecation warnings for gcc/g++ version 5.1.0, 6.1.0
No Problem with gcc/g++ version 4.9.2

In file included from HOME/tools/build/libmaxdiv/libmaxdiv-1.0/maxdiv/libmaxdiv/utils.h:30:0,
                 from HOME/tools/build/libmaxdiv/libmaxdiv-1.0/maxdiv/libmaxdiv/utils.cc:18:
HOME/tools/build/libmaxdiv/libmaxdiv-1.0/maxdiv/libmaxdiv/DataTensor.h: In member function ‘void MaxDiv::DataTensor_<Scalar>::crop(const MaxDiv::IndexRange&)’:
HOME/tools/build/libmaxdiv/libmaxdiv-1.0/maxdiv/libmaxdiv/DataTensor.h:560:26: error: no match for ‘operator&&’ (operand types are ‘bool’ and ‘const Eigen::CwiseBinaryOp<Eigen::internal::scalar_cmp_op<long unsigned int, (Eigen::internal::ComparisonName)0>, const Eigen::Block<Eigen::Map<const Eigen::Array<long unsigned int, 5, 1> >, -1, 1, false>, const Eigen::Block<Eigen::Map<Eigen::Array<long unsigned int, 5, 1> >, -1, 1, false> >’)
         if (range.a == 0 && range.b.vec().tail(MAXDIV_INDEX_DIMENSION - 1) == this->m_shape.vec().tail(MAXDIV_INDEX_DIMENSION - 1))
             ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
HOME/tools/build/libmaxdiv/libmaxdiv-1.0/maxdiv/libmaxdiv/DataTensor.h:560:26: note: candidate: operator&&(bool, bool) <built-in>
HOME/tools/build/libmaxdiv/libmaxdiv-1.0/maxdiv/libmaxdiv/DataTensor.h:560:26: note:   no known conversion for argument 2 from ‘const Eigen::CwiseBinaryOp<Eigen::internal::scalar_cmp_op<long unsigned int, (Eigen::internal::ComparisonName)0>, const Eigen::Block<Eigen::Map<const Eigen::Array<long unsigned int, 5, 1> >, -1, 1, false>, const Eigen::Block<Eigen::Map<Eigen::Array<long unsigned int, 5, 1> >, -1, 1, false> >’ to ‘bool’
make[2]: *** [CMakeFiles/maxdiv.dir/utils.cc.o] Error 1
make[1]: *** [CMakeFiles/maxdiv.dir/all] Error 2
make: *** [all] Error 2

and this is about the released version v1.0 of libmaxdiv ...

Thanks for reporting this issue!
Are you using the same version of Eigen with all your g++ versions?
Clearly, we should definitely use the .all() reduction on that matrix on the right-hand side of the expression.

I suppose, this will not be the only part of the code with this issue. Thus, I will try to reproduce this compiler error with g++ 7.1 during the next days and then fix it everywhere.
I'm very sorry for the delay, but I'm currently on vacation, so the fix might take a bit longer than usual.

Are you using the same version of Eigen with all your g++ versions?

Yes, Eigen version 3.2.9 as written in your instructions for Linux.

Now, it's compiling fine with g++ 7.1.0 (apart from the deprecation warnings).

Cheers!

Could you post the deprecation warnings? I didn't see any when compiling with g++ 7.3 and Eigen 3.3.

Maybe my compiler is just to verbose.
Here is the output of make:

Scanning dependencies of target maxdiv
[  8%] Building CXX object CMakeFiles/maxdiv.dir/utils.cc.o
In file included from ../eigen-3.2.9/Eigen/Core:276:0,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/DataTensor.h:27,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/utils.h:30,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/utils.cc:18:
../eigen-3.2.9/Eigen/src/Core/Functors.h:973:28: Warnung: »template<class _Operation> class std::binder2nd« ist veraltet [-Wdeprecated-declarations]
 struct functor_traits<std::binder2nd<T> >
                            ^~~~~~~~~
In file included from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/stl_function.h:1127:0,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/string:48,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/utils.h:28,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/utils.cc:18:
/sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/backward/binders.h:143:11: Anmerkung: hier deklariert
     class binder2nd
           ^~~~~~~~~
In file included from ../eigen-3.2.9/Eigen/Core:276:0,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/DataTensor.h:27,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/utils.h:30,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/utils.cc:18:
../eigen-3.2.9/Eigen/src/Core/Functors.h:977:28: Warnung: »template<class _Operation> class std::binder1st« ist veraltet [-Wdeprecated-declarations]
 struct functor_traits<std::binder1st<T> >
                            ^~~~~~~~~
In file included from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/stl_function.h:1127:0,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/string:48,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/utils.h:28,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/utils.cc:18:
/sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/backward/binders.h:108:11: Anmerkung: hier deklariert
     class binder1st
           ^~~~~~~~~
[ 16%] Building CXX object CMakeFiles/maxdiv.dir/math_utils.cc.o
In file included from ../eigen-3.2.9/Eigen/Core:276:0,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/math_utils.h:31,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/math_utils.cc:18:
../eigen-3.2.9/Eigen/src/Core/Functors.h:973:28: Warnung: »template<class _Operation> class std::binder2nd« ist veraltet [-Wdeprecated-declarations]
 struct functor_traits<std::binder2nd<T> >
                            ^~~~~~~~~
In file included from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/stl_function.h:1127:0,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/string:48,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/locale_classes.h:40,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/ios_base.h:41,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/ios:42,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/istream:38,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/sstream:38,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/complex:45,
                 from ../eigen-3.2.9/Eigen/Core:28,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/math_utils.h:31,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/math_utils.cc:18:
/sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/backward/binders.h:143:11: Anmerkung: hier deklariert
     class binder2nd
           ^~~~~~~~~
In file included from ../eigen-3.2.9/Eigen/Core:276:0,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/math_utils.h:31,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/math_utils.cc:18:
../eigen-3.2.9/Eigen/src/Core/Functors.h:977:28: Warnung: »template<class _Operation> class std::binder1st« ist veraltet [-Wdeprecated-declarations]
 struct functor_traits<std::binder1st<T> >
                            ^~~~~~~~~
In file included from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/stl_function.h:1127:0,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/string:48,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/locale_classes.h:40,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/ios_base.h:41,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/ios:42,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/istream:38,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/sstream:38,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/complex:45,
                 from ../eigen-3.2.9/Eigen/Core:28,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/math_utils.h:31,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/math_utils.cc:18:
/sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/backward/binders.h:108:11: Anmerkung: hier deklariert
     class binder1st
           ^~~~~~~~~
[ 25%] Building CXX object CMakeFiles/maxdiv.dir/pointwise_detectors.cc.o
In file included from ../eigen-3.2.9/Eigen/Core:276:0,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/DataTensor.h:27,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/pointwise_detectors.h:21,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/pointwise_detectors.cc:18:
../eigen-3.2.9/Eigen/src/Core/Functors.h:973:28: Warnung: »template<class _Operation> class std::binder2nd« ist veraltet [-Wdeprecated-declarations]
 struct functor_traits<std::binder2nd<T> >
                            ^~~~~~~~~
In file included from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/stl_function.h:1127:0,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/stl_tree.h:65,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/set:60,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/DataTensor.h:25,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/pointwise_detectors.h:21,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/pointwise_detectors.cc:18:
/sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/backward/binders.h:143:11: Anmerkung: hier deklariert
     class binder2nd
           ^~~~~~~~~
In file included from ../eigen-3.2.9/Eigen/Core:276:0,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/DataTensor.h:27,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/pointwise_detectors.h:21,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/pointwise_detectors.cc:18:
../eigen-3.2.9/Eigen/src/Core/Functors.h:977:28: Warnung: »template<class _Operation> class std::binder1st« ist veraltet [-Wdeprecated-declarations]
 struct functor_traits<std::binder1st<T> >
                            ^~~~~~~~~
In file included from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/stl_function.h:1127:0,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/stl_tree.h:65,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/set:60,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/DataTensor.h:25,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/pointwise_detectors.h:21,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/pointwise_detectors.cc:18:
/sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/backward/binders.h:108:11: Anmerkung: hier deklariert
     class binder1st
           ^~~~~~~~~
[ 33%] Building CXX object CMakeFiles/maxdiv.dir/preproc.cc.o
In file included from ../eigen-3.2.9/Eigen/Core:276:0,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/DataTensor.h:27,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/preproc.h:25,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/preproc.cc:18:
../eigen-3.2.9/Eigen/src/Core/Functors.h:973:28: Warnung: »template<class _Operation> class std::binder2nd« ist veraltet [-Wdeprecated-declarations]
 struct functor_traits<std::binder2nd<T> >
                            ^~~~~~~~~
In file included from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/stl_function.h:1127:0,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/memory:76,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/preproc.h:21,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/preproc.cc:18:
/sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/backward/binders.h:143:11: Anmerkung: hier deklariert
     class binder2nd
           ^~~~~~~~~
In file included from ../eigen-3.2.9/Eigen/Core:276:0,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/DataTensor.h:27,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/preproc.h:25,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/preproc.cc:18:
../eigen-3.2.9/Eigen/src/Core/Functors.h:977:28: Warnung: »template<class _Operation> class std::binder1st« ist veraltet [-Wdeprecated-declarations]
 struct functor_traits<std::binder1st<T> >
                            ^~~~~~~~~
In file included from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/stl_function.h:1127:0,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/memory:76,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/preproc.h:21,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/preproc.cc:18:
/sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/backward/binders.h:108:11: Anmerkung: hier deklariert
     class binder1st
           ^~~~~~~~~
[ 41%] Building CXX object CMakeFiles/maxdiv.dir/estimators.cc.o
In file included from ../eigen-3.2.9/Eigen/Core:276:0,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/estimators.h:24,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/estimators.cc:18:
../eigen-3.2.9/Eigen/src/Core/Functors.h:973:28: Warnung: »template<class _Operation> class std::binder2nd« ist veraltet [-Wdeprecated-declarations]
 struct functor_traits<std::binder2nd<T> >
                            ^~~~~~~~~
In file included from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/stl_function.h:1127:0,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/memory:76,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/estimators.h:21,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/estimators.cc:18:
/sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/backward/binders.h:143:11: Anmerkung: hier deklariert
     class binder2nd
           ^~~~~~~~~
In file included from ../eigen-3.2.9/Eigen/Core:276:0,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/estimators.h:24,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/estimators.cc:18:
../eigen-3.2.9/Eigen/src/Core/Functors.h:977:28: Warnung: »template<class _Operation> class std::binder1st« ist veraltet [-Wdeprecated-declarations]
 struct functor_traits<std::binder1st<T> >
                            ^~~~~~~~~
In file included from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/stl_function.h:1127:0,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/memory:76,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/estimators.h:21,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/estimators.cc:18:
/sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/backward/binders.h:108:11: Anmerkung: hier deklariert
     class binder1st
           ^~~~~~~~~
[ 50%] Building CXX object CMakeFiles/maxdiv.dir/divergences.cc.o
In file included from ../eigen-3.2.9/Eigen/Core:276:0,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/DataTensor.h:27,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/divergences.h:22,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/divergences.cc:18:
../eigen-3.2.9/Eigen/src/Core/Functors.h:973:28: Warnung: »template<class _Operation> class std::binder2nd« ist veraltet [-Wdeprecated-declarations]
 struct functor_traits<std::binder2nd<T> >
                            ^~~~~~~~~
In file included from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/stl_function.h:1127:0,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/memory:76,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/divergences.h:21,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/divergences.cc:18:
/sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/backward/binders.h:143:11: Anmerkung: hier deklariert
     class binder2nd
           ^~~~~~~~~
In file included from ../eigen-3.2.9/Eigen/Core:276:0,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/DataTensor.h:27,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/divergences.h:22,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/divergences.cc:18:
../eigen-3.2.9/Eigen/src/Core/Functors.h:977:28: Warnung: »template<class _Operation> class std::binder1st« ist veraltet [-Wdeprecated-declarations]
 struct functor_traits<std::binder1st<T> >
                            ^~~~~~~~~
In file included from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/stl_function.h:1127:0,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/memory:76,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/divergences.h:21,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/divergences.cc:18:
/sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/backward/binders.h:108:11: Anmerkung: hier deklariert
     class binder1st
           ^~~~~~~~~
[ 58%] Building CXX object CMakeFiles/maxdiv.dir/proposals.cc.o
In file included from ../eigen-3.2.9/Eigen/Core:276:0,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/DataTensor.h:27,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/proposals.h:24,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/proposals.cc:18:
../eigen-3.2.9/Eigen/src/Core/Functors.h:973:28: Warnung: »template<class _Operation> class std::binder2nd« ist veraltet [-Wdeprecated-declarations]
 struct functor_traits<std::binder2nd<T> >
                            ^~~~~~~~~
In file included from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/stl_function.h:1127:0,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/string:48,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/locale_classes.h:40,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/ios_base.h:41,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/ios:42,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/ostream:38,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/iterator:64,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/proposals.h:21,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/proposals.cc:18:
/sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/backward/binders.h:143:11: Anmerkung: hier deklariert
     class binder2nd
           ^~~~~~~~~
In file included from ../eigen-3.2.9/Eigen/Core:276:0,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/DataTensor.h:27,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/proposals.h:24,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/proposals.cc:18:
../eigen-3.2.9/Eigen/src/Core/Functors.h:977:28: Warnung: »template<class _Operation> class std::binder1st« ist veraltet [-Wdeprecated-declarations]
 struct functor_traits<std::binder1st<T> >
                            ^~~~~~~~~
In file included from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/stl_function.h:1127:0,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/string:48,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/locale_classes.h:40,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/ios_base.h:41,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/ios:42,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/ostream:38,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/iterator:64,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/proposals.h:21,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/proposals.cc:18:
/sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/backward/binders.h:108:11: Anmerkung: hier deklariert
     class binder1st
           ^~~~~~~~~
[ 66%] Building CXX object CMakeFiles/maxdiv.dir/search_strategies.cc.o
In file included from ../eigen-3.2.9/Eigen/Core:276:0,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/DataTensor.h:27,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/search_strategies.h:24,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/search_strategies.cc:18:
../eigen-3.2.9/Eigen/src/Core/Functors.h:973:28: Warnung: »template<class _Operation> class std::binder2nd« ist veraltet [-Wdeprecated-declarations]
 struct functor_traits<std::binder2nd<T> >
                            ^~~~~~~~~
In file included from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/stl_function.h:1127:0,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/memory:76,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/search_strategies.h:21,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/search_strategies.cc:18:
/sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/backward/binders.h:143:11: Anmerkung: hier deklariert
     class binder2nd
           ^~~~~~~~~
In file included from ../eigen-3.2.9/Eigen/Core:276:0,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/DataTensor.h:27,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/search_strategies.h:24,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/search_strategies.cc:18:
../eigen-3.2.9/Eigen/src/Core/Functors.h:977:28: Warnung: »template<class _Operation> class std::binder1st« ist veraltet [-Wdeprecated-declarations]
 struct functor_traits<std::binder1st<T> >
                            ^~~~~~~~~
In file included from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/stl_function.h:1127:0,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/memory:76,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/search_strategies.h:21,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/search_strategies.cc:18:
/sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/backward/binders.h:108:11: Anmerkung: hier deklariert
     class binder1st
           ^~~~~~~~~
[ 75%] Building CXX object CMakeFiles/maxdiv.dir/libmaxdiv.cc.o
In file included from ../eigen-3.2.9/Eigen/Core:276:0,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/DataTensor.h:27,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/search_strategies.h:24,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/libmaxdiv.cc:19:
../eigen-3.2.9/Eigen/src/Core/Functors.h:973:28: Warnung: »template<class _Operation> class std::binder2nd« ist veraltet [-Wdeprecated-declarations]
 struct functor_traits<std::binder2nd<T> >
                            ^~~~~~~~~
In file included from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/stl_function.h:1127:0,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/memory:76,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/search_strategies.h:21,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/libmaxdiv.cc:19:
/sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/backward/binders.h:143:11: Anmerkung: hier deklariert
     class binder2nd
           ^~~~~~~~~
In file included from ../eigen-3.2.9/Eigen/Core:276:0,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/DataTensor.h:27,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/search_strategies.h:24,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/libmaxdiv.cc:19:
../eigen-3.2.9/Eigen/src/Core/Functors.h:977:28: Warnung: »template<class _Operation> class std::binder1st« ist veraltet [-Wdeprecated-declarations]
 struct functor_traits<std::binder1st<T> >
                            ^~~~~~~~~
In file included from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/stl_function.h:1127:0,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/memory:76,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/search_strategies.h:21,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/libmaxdiv.cc:19:
/sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/backward/binders.h:108:11: Anmerkung: hier deklariert
     class binder1st
           ^~~~~~~~~
[ 83%] Linking CXX shared library libmaxdiv.so
[ 83%] Built target maxdiv
Scanning dependencies of target maxdiv_cli
[ 91%] Building CXX object CMakeFiles/maxdiv_cli.dir/maxdiv.cc.o
In file included from ../eigen-3.2.9/Eigen/Core:276:0,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/DataTensor.h:27,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/search_strategies.h:24,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/maxdiv.cc:28:
../eigen-3.2.9/Eigen/src/Core/Functors.h:973:28: Warnung: »template<class _Operation> class std::binder2nd« ist veraltet [-Wdeprecated-declarations]
 struct functor_traits<std::binder2nd<T> >
                            ^~~~~~~~~
In file included from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/stl_function.h:1127:0,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/memory:76,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/search_strategies.h:21,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/maxdiv.cc:28:
/sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/backward/binders.h:143:11: Anmerkung: hier deklariert
     class binder2nd
           ^~~~~~~~~
In file included from ../eigen-3.2.9/Eigen/Core:276:0,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/DataTensor.h:27,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/search_strategies.h:24,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/maxdiv.cc:28:
../eigen-3.2.9/Eigen/src/Core/Functors.h:977:28: Warnung: »template<class _Operation> class std::binder1st« ist veraltet [-Wdeprecated-declarations]
 struct functor_traits<std::binder1st<T> >
                            ^~~~~~~~~
In file included from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/bits/stl_function.h:1127:0,
                 from /sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/memory:76,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/search_strategies.h:21,
                 from HOME/dev/libmaxdiv/maxdiv/libmaxdiv/maxdiv.cc:28:
/sw/rhel6-x64/gcc/gcc-7.1.0/lib/gcc/x86_64-unknown-linux-gnu/7.1.0/../../../../include/c++/7.1.0/backward/binders.h:108:11: Anmerkung: hier deklariert
     class binder1st
           ^~~~~~~~~
[100%] Linking CXX executable maxdiv_cli
[100%] Built target maxdiv_cli

Thank you. These deprecation warnings are all caused by Eigen 3.2.9 and do not occur with Eigen 3.2.10 and upwards.