Test output: teeks99-dkr-mg13-11 - numeric/ublas - test_tensor / gcc-13~c++11
Rev 7e09330c84621efd22370bf57289b67c7283ee21 / Mon, 18 Nov 2024 18:39:15 +0000
Compile [2024-11-18 19:57:21 UTC]: fail


    "g++-13"   -fvisibility-inlines-hidden -std=c++11 -fPIC -m64 -pthread -O0 -fno-inline -Wall -fvisibility=hidden -Wall -Wno-unknown-pragmas -Wall -Wno-unknown-pragmas -Wno-sign-compare -Wno-unused-but-set-variable -DBOOST_ALL_NO_LIB=1 -DBOOST_COBALT_USE_STD_PMR=1 -DBOOST_TEST_DYN_LINK=1 -DBOOST_TEST_NO_AUTO_LINK=1 -DBOOST_UBLAS_NO_EXCEPTIONS   -I".."  -c -o "/var/boost/run/results/boost/bin.v2/libs/numeric/ublas/test/tensor/test_tensor.test/gcc-13~c++11/debug/x86_64/debug-symbols-off/threading-multi/visibility-hidden/test_tensor_matrix_vector.o" "../libs/numeric/ublas/test/tensor/test_tensor_matrix_vector.cpp"

In file included from ../boost/numeric/ublas/tensor/functions.hpp:23,
                 from ../boost/numeric/ublas/tensor.hpp:18,
                 from ../libs/numeric/ublas/test/tensor/test_tensor_matrix_vector.cpp:15:
../boost/numeric/ublas/tensor/multiplication.hpp: In function 'void boost::numeric::ublas::ttv(SizeType, SizeType, PointerOut, const SizeType*, const SizeType*, PointerIn1, const SizeType*, const SizeType*, PointerIn2, const SizeType*, const SizeType*)':
../boost/numeric/ublas/tensor/multiplication.hpp:652:31: error: 'remove_pointer_t' is not a member of 'std'; did you mean 'remove_pointer'?
  652 |                 auto v = std::remove_pointer_t<std::remove_cv_t<PointerOut>>{};
      |                               ^~~~~~~~~~~~~~~~
      |                               remove_pointer
../boost/numeric/ublas/tensor/multiplication.hpp:652:53: error: 'remove_cv_t' is not a member of 'std'; did you mean 'remove_cv'?
  652 |                 auto v = std::remove_pointer_t<std::remove_cv_t<PointerOut>>{};
      |                                                     ^~~~~~~~~~~
      |                                                     remove_cv
../boost/numeric/ublas/tensor/multiplication.hpp:652:75: error: expected primary-expression before '>>' token
  652 |                 auto v = std::remove_pointer_t<std::remove_cv_t<PointerOut>>{};
      |                                                                           ^~
../boost/numeric/ublas/tensor/multiplication.hpp:652:77: error: expected primary-expression before '{' token
  652 |                 auto v = std::remove_pointer_t<std::remove_cv_t<PointerOut>>{};
      |                                                                             ^
../boost/numeric/ublas/tensor/multiplication.hpp: In function 'void boost::numeric::ublas::ttt(SizeType, SizeType, SizeType, PointerOut, const SizeType*, const SizeType*, PointerIn1, const SizeType*, const SizeType*, PointerIn2, const SizeType*, const SizeType*)':
../boost/numeric/ublas/tensor/multiplication.hpp:854:33: error: 'decay_t' in namespace 'std' does not name a template type; did you mean 'decay'?
  854 |         using value_type = std::decay_t<decltype(*c)>;
      |                                 ^~~~~~~
      |                                 decay
../boost/numeric/ublas/tensor/multiplication.hpp:861:69: error: there are no arguments to 'value_type' that depend on a template parameter, so a declaration of 'value_type' must be available [-fpermissive]
  861 |                 *c = detail::recursive::inner(q-1, na, a,wa,  b,wb, value_type(0) );
      |                                                                     ^~~~~~~~~~
../boost/numeric/ublas/tensor/multiplication.hpp:861:69: note: (if you use '-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)
../boost/numeric/ublas/tensor/multiplication.hpp: At global scope:
../boost/numeric/ublas/tensor/multiplication.hpp:884:1: error: 'inner' function uses 'auto' type specifier without trailing return type
  884 | auto inner(const SizeType    p, SizeType const*const n,
      | ^~~~
../boost/numeric/ublas/tensor/multiplication.hpp:884:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
In file included from ../boost/numeric/ublas/tensor/functions.hpp:25:
../boost/numeric/ublas/tensor/expression.hpp:61:9: error: 'operator()' function uses 'auto' type specifier without trailing return type
   61 |         auto const& operator()() const { return *static_cast<const expression_type*> (this); }
      |         ^~~~
../boost/numeric/ublas/tensor/expression.hpp:61:9: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/expression.hpp:91:9: error: 'decltype(auto)' type specifier only available with '-std=c++14' or '-std=gnu++14'
   91 |         decltype(auto)  operator()(size_type i) const { return op(el(i), er(i)); }
      |         ^~~~~~~~
../boost/numeric/ublas/tensor/expression.hpp:100:1: error: 'make_binary_tensor_expression' function uses 'auto' type specifier without trailing return type
  100 | auto make_binary_tensor_expression( tensor_expression<T,EL> const& el, tensor_expression<T,ER> const& er, OP op)
      | ^~~~
../boost/numeric/ublas/tensor/expression.hpp:100:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/expression.hpp:106:1: error: 'make_binary_tensor_expression' function uses 'auto' type specifier without trailing return type
  106 | auto make_binary_tensor_expression( matrix_expression<EL> const& el, tensor_expression<T,ER> const& er, OP op)
      | ^~~~
../boost/numeric/ublas/tensor/expression.hpp:106:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/expression.hpp:112:1: error: 'make_binary_tensor_expression' function uses 'auto' type specifier without trailing return type
  112 | auto make_binary_tensor_expression( tensor_expression<T,EL> const& el, matrix_expression<ER> const& er, OP op)
      | ^~~~
../boost/numeric/ublas/tensor/expression.hpp:112:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/expression.hpp:118:1: error: 'make_binary_tensor_expression' function uses 'auto' type specifier without trailing return type
  118 | auto make_binary_tensor_expression( vector_expression<EL> const& el, tensor_expression<T,ER> const& er, OP op)
      | ^~~~
../boost/numeric/ublas/tensor/expression.hpp:118:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/expression.hpp:124:1: error: 'make_binary_tensor_expression' function uses 'auto' type specifier without trailing return type
  124 | auto make_binary_tensor_expression( tensor_expression<T,EL> const& el, vector_expression<ER> const& er, OP op)
      | ^~~~
../boost/numeric/ublas/tensor/expression.hpp:124:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/expression.hpp:151:9: error: 'decltype(auto)' type specifier only available with '-std=c++14' or '-std=gnu++14'
  151 |         decltype(auto) operator()(size_type i) const { return op(e(i)); }
      |         ^~~~~~~~
../boost/numeric/ublas/tensor/expression.hpp:159:1: error: 'make_unary_tensor_expression' function uses 'auto' type specifier without trailing return type
  159 | auto make_unary_tensor_expression( tensor_expression<T,E> const& e, OP op)
      | ^~~~
../boost/numeric/ublas/tensor/expression.hpp:159:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/expression.hpp:165:1: error: 'make_unary_tensor_expression' function uses 'auto' type specifier without trailing return type
  165 | auto make_unary_tensor_expression( matrix_expression<E> const& e, OP op)
      | ^~~~
../boost/numeric/ublas/tensor/expression.hpp:165:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/expression.hpp:171:1: error: 'make_unary_tensor_expression' function uses 'auto' type specifier without trailing return type
  171 | auto make_unary_tensor_expression( vector_expression<E> const& e, OP op)
      | ^~~~
../boost/numeric/ublas/tensor/expression.hpp:171:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
In file included from ../boost/numeric/ublas/tensor/functions.hpp:26:
../boost/numeric/ublas/tensor/expression_evaluation.hpp:78:1: error: 'retrieve_extents' function uses 'auto' type specifier without trailing return type
   78 | auto retrieve_extents(tensor<T,F,A> const& t)
      | ^~~~
../boost/numeric/ublas/tensor/expression_evaluation.hpp:78:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/expression_evaluation.hpp:90:1: error: 'retrieve_extents' function uses 'auto' type specifier without trailing return type
   90 | auto retrieve_extents(tensor_expression<T,D> const& expr)
      | ^~~~
../boost/numeric/ublas/tensor/expression_evaluation.hpp:90:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/expression_evaluation.hpp: In function 'auto boost::numeric::ublas::detail::retrieve_extents(const tensor_expression<T, EL>&)':
../boost/numeric/ublas/tensor/expression_evaluation.hpp:97:12: warning: 'if constexpr' only available with '-std=c++17' or '-std=gnu++17' [-Wc++17-extensions]
   97 |         if constexpr ( std::is_same<T,D>::value )
      |            ^~~~~~~~~
../boost/numeric/ublas/tensor/expression_evaluation.hpp: At global scope:
../boost/numeric/ublas/tensor/expression_evaluation.hpp:110:1: error: 'retrieve_extents' function uses 'auto' type specifier without trailing return type
  110 | auto retrieve_extents(binary_tensor_expression<T,EL,ER,OP> const& expr)
      | ^~~~
../boost/numeric/ublas/tensor/expression_evaluation.hpp:110:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/expression_evaluation.hpp: In function 'auto boost::numeric::ublas::detail::retrieve_extents(const binary_tensor_expression<T, EL, ER, OP>&)':
../boost/numeric/ublas/tensor/expression_evaluation.hpp:115:12: warning: 'if constexpr' only available with '-std=c++17' or '-std=gnu++17' [-Wc++17-extensions]
  115 |         if constexpr ( std::is_same<T,EL>::value )
      |            ^~~~~~~~~
../boost/numeric/ublas/tensor/expression_evaluation.hpp:118:12: warning: 'if constexpr' only available with '-std=c++17' or '-std=gnu++17' [-Wc++17-extensions]
  118 |         if constexpr ( std::is_same<T,ER>::value )
      |            ^~~~~~~~~
../boost/numeric/ublas/tensor/expression_evaluation.hpp:121:17: warning: 'if constexpr' only available with '-std=c++17' or '-std=gnu++17' [-Wc++17-extensions]
  121 |         else if constexpr ( detail::has_tensor_types<T,EL>::value )
      |                 ^~~~~~~~~
../boost/numeric/ublas/tensor/expression_evaluation.hpp:124:17: warning: 'if constexpr' only available with '-std=c++17' or '-std=gnu++17' [-Wc++17-extensions]
  124 |         else if constexpr ( detail::has_tensor_types<T,ER>::value  )
      |                 ^~~~~~~~~
../boost/numeric/ublas/tensor/expression_evaluation.hpp: At global scope:
../boost/numeric/ublas/tensor/expression_evaluation.hpp:135:1: error: 'retrieve_extents' function uses 'auto' type specifier without trailing return type
  135 | auto retrieve_extents(unary_tensor_expression<T,E,OP> const& expr)
      | ^~~~
../boost/numeric/ublas/tensor/expression_evaluation.hpp:135:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/expression_evaluation.hpp: In function 'auto boost::numeric::ublas::detail::retrieve_extents(const unary_tensor_expression<T, E, OP>&)':
../boost/numeric/ublas/tensor/expression_evaluation.hpp:141:12: warning: 'if constexpr' only available with '-std=c++17' or '-std=gnu++17' [-Wc++17-extensions]
  141 |         if constexpr ( std::is_same<T,E>::value )
      |            ^~~~~~~~~
../boost/numeric/ublas/tensor/expression_evaluation.hpp:144:17: warning: 'if constexpr' only available with '-std=c++17' or '-std=gnu++17' [-Wc++17-extensions]
  144 |         else if constexpr ( detail::has_tensor_types<T,E>::value  )
      |                 ^~~~~~~~~
../boost/numeric/ublas/tensor/expression_evaluation.hpp: At global scope:
../boost/numeric/ublas/tensor/expression_evaluation.hpp:156:1: error: 'all_extents_equal' function uses 'auto' type specifier without trailing return type
  156 | auto all_extents_equal(tensor<T,F,A> const& t, basic_extents<S> const& extents)
      | ^~~~
../boost/numeric/ublas/tensor/expression_evaluation.hpp:156:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/expression_evaluation.hpp:162:1: error: 'all_extents_equal' function uses 'auto' type specifier without trailing return type
  162 | auto all_extents_equal(tensor_expression<T,D> const& expr, basic_extents<S> const& extents)
      | ^~~~
../boost/numeric/ublas/tensor/expression_evaluation.hpp:162:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/expression_evaluation.hpp: In function 'auto boost::numeric::ublas::detail::all_extents_equal(const tensor_expression<T, EL>&, const boost::numeric::ublas::basic_extents<S>&)':
../boost/numeric/ublas/tensor/expression_evaluation.hpp:169:12: warning: 'if constexpr' only available with '-std=c++17' or '-std=gnu++17' [-Wc++17-extensions]
  169 |         if constexpr ( std::is_same<T,D>::value )
      |            ^~~~~~~~~
../boost/numeric/ublas/tensor/expression_evaluation.hpp:173:12: warning: 'if constexpr' only available with '-std=c++17' or '-std=gnu++17' [-Wc++17-extensions]
  173 |         if constexpr ( detail::has_tensor_types<T,D>::value )
      |            ^~~~~~~~~
../boost/numeric/ublas/tensor/expression_evaluation.hpp: At global scope:
../boost/numeric/ublas/tensor/expression_evaluation.hpp:182:1: error: 'all_extents_equal' function uses 'auto' type specifier without trailing return type
  182 | auto all_extents_equal(binary_tensor_expression<T,EL,ER,OP> const& expr, basic_extents<S> const& extents)
      | ^~~~
../boost/numeric/ublas/tensor/expression_evaluation.hpp:182:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/expression_evaluation.hpp: In function 'auto boost::numeric::ublas::detail::all_extents_equal(const binary_tensor_expression<T, EL, ER, OP>&, const boost::numeric::ublas::basic_extents<S>&)':
../boost/numeric/ublas/tensor/expression_evaluation.hpp:187:12: warning: 'if constexpr' only available with '-std=c++17' or '-std=gnu++17' [-Wc++17-extensions]
  187 |         if constexpr ( std::is_same<T,EL>::value )
      |            ^~~~~~~~~
../boost/numeric/ublas/tensor/expression_evaluation.hpp:191:12: warning: 'if constexpr' only available with '-std=c++17' or '-std=gnu++17' [-Wc++17-extensions]
  191 |         if constexpr ( std::is_same<T,ER>::value )
      |            ^~~~~~~~~
../boost/numeric/ublas/tensor/expression_evaluation.hpp:195:12: warning: 'if constexpr' only available with '-std=c++17' or '-std=gnu++17' [-Wc++17-extensions]
  195 |         if constexpr ( detail::has_tensor_types<T,EL>::value )
      |            ^~~~~~~~~
../boost/numeric/ublas/tensor/expression_evaluation.hpp:199:12: warning: 'if constexpr' only available with '-std=c++17' or '-std=gnu++17' [-Wc++17-extensions]
  199 |         if constexpr ( detail::has_tensor_types<T,ER>::value )
      |            ^~~~~~~~~
../boost/numeric/ublas/tensor/expression_evaluation.hpp: At global scope:
../boost/numeric/ublas/tensor/expression_evaluation.hpp:208:1: error: 'all_extents_equal' function uses 'auto' type specifier without trailing return type
  208 | auto all_extents_equal(unary_tensor_expression<T,E,OP> const& expr, basic_extents<S> const& extents)
      | ^~~~
../boost/numeric/ublas/tensor/expression_evaluation.hpp:208:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/expression_evaluation.hpp: In function 'auto boost::numeric::ublas::detail::all_extents_equal(const unary_tensor_expression<T, E, OP>&, const boost::numeric::ublas::basic_extents<S>&)':
../boost/numeric/ublas/tensor/expression_evaluation.hpp:214:12: warning: 'if constexpr' only available with '-std=c++17' or '-std=gnu++17' [-Wc++17-extensions]
  214 |         if constexpr ( std::is_same<T,E>::value )
      |            ^~~~~~~~~
../boost/numeric/ublas/tensor/expression_evaluation.hpp:218:12: warning: 'if constexpr' only available with '-std=c++17' or '-std=gnu++17' [-Wc++17-extensions]
  218 |         if constexpr ( detail::has_tensor_types<T,E>::value )
      |            ^~~~~~~~~
../boost/numeric/ublas/tensor/expression_evaluation.hpp: In function 'void boost::numeric::ublas::detail::eval(tensor_type&, const tensor_expression<T, EL>&)':
../boost/numeric/ublas/tensor/expression_evaluation.hpp:240:12: warning: 'if constexpr' only available with '-std=c++17' or '-std=gnu++17' [-Wc++17-extensions]
  240 |         if constexpr (detail::has_tensor_types<tensor_type, tensor_expression<tensor_type,derived_type> >::value )
      |            ^~~~~~~~~
../boost/numeric/ublas/tensor/expression_evaluation.hpp: In function 'void boost::numeric::ublas::detail::eval(tensor_type&, const tensor_expression<T, EL>&, unary_fn)':
../boost/numeric/ublas/tensor/expression_evaluation.hpp:260:12: warning: 'if constexpr' only available with '-std=c++17' or '-std=gnu++17' [-Wc++17-extensions]
  260 |         if constexpr (detail::has_tensor_types< tensor_type, tensor_expression<tensor_type,derived_type> >::value )
      |            ^~~~~~~~~
../boost/numeric/ublas/tensor/functions.hpp: At global scope:
../boost/numeric/ublas/tensor/functions.hpp:58:1: error: 'prod' function uses 'auto' type specifier without trailing return type
   58 | auto prod(tensor<V,F,A1> const& a, vector<V,A2> const& b, const std::size_t m)
      | ^~~~
../boost/numeric/ublas/tensor/functions.hpp:58:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/functions.hpp:121:1: error: 'prod' function uses 'auto' type specifier without trailing return type
  121 | auto prod(tensor<V,F,A1> const& a, matrix<V,F,A2> const& b, const std::size_t m)
      | ^~~~
../boost/numeric/ublas/tensor/functions.hpp:121:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/functions.hpp:185:1: error: 'prod' function uses 'auto' type specifier without trailing return type
  185 | auto prod(tensor<V,F,A1> const& a, tensor<V,F,A2> const& b,
      | ^~~~
../boost/numeric/ublas/tensor/functions.hpp:185:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/functions.hpp:289:1: error: 'prod' function uses 'auto' type specifier without trailing return type
  289 | auto prod(tensor<V,F,A1> const& a, tensor<V,F,A2> const& b,
      | ^~~~
../boost/numeric/ublas/tensor/functions.hpp:289:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/functions.hpp:308:1: error: 'inner_prod' function uses 'auto' type specifier without trailing return type
  308 | auto inner_prod(tensor<V,F,A1> const& a, tensor<V,F,A2> const& b)
      | ^~~~
../boost/numeric/ublas/tensor/functions.hpp:308:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/functions.hpp:338:1: error: 'outer_prod' function uses 'auto' type specifier without trailing return type
  338 | auto outer_prod(tensor<V,F,A1> const& a, tensor<V,F,A2> const& b)
      | ^~~~
../boost/numeric/ublas/tensor/functions.hpp:338:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/functions.hpp:375:1: error: 'trans' function uses 'auto' type specifier without trailing return type
  375 | auto trans(tensor<V,F,A> const& a, std::vector<std::size_t> const& tau)
      | ^~~~
../boost/numeric/ublas/tensor/functions.hpp:375:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/functions.hpp:427:1: error: 'norm' function uses 'auto' type specifier without trailing return type
  427 | auto norm(detail::tensor_expression<T,D> const& expr)
      | ^~~~
../boost/numeric/ublas/tensor/functions.hpp:427:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/functions.hpp: In function 'auto boost::numeric::ublas::norm(const detail::tensor_expression<T, EL>&)':
../boost/numeric/ublas/tensor/functions.hpp:439:42: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
  439 |                                       [](auto const& l, auto const& r){ return l + r*r; }  ) ) ;
      |                                          ^~~~
../boost/numeric/ublas/tensor/functions.hpp:439:57: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
  439 |                                       [](auto const& l, auto const& r){ return l + r*r; }  ) ) ;
      |                                                         ^~~~
../boost/numeric/ublas/tensor/functions.hpp: At global scope:
../boost/numeric/ublas/tensor/functions.hpp:450:1: error: 'real' function uses 'auto' type specifier without trailing return type
  450 | auto real(detail::tensor_expression<T,D> const& expr) {
      | ^~~~
../boost/numeric/ublas/tensor/functions.hpp:450:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/functions.hpp: In function 'auto boost::numeric::ublas::real(const detail::tensor_expression<T, EL>&)':
../boost/numeric/ublas/tensor/functions.hpp:451:69: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
  451 |         return detail::make_unary_tensor_expression<T> (expr(), [] (auto const& l) { return std::real( l ); } );
      |                                                                     ^~~~
../boost/numeric/ublas/tensor/functions.hpp: At global scope:
../boost/numeric/ublas/tensor/functions.hpp:460:1: error: 'real' function uses 'auto' type specifier without trailing return type
  460 | auto real(detail::tensor_expression<tensor<std::complex<V>,F,A>,D> const& expr)
      | ^~~~
../boost/numeric/ublas/tensor/functions.hpp:460:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/functions.hpp: In function 'auto boost::numeric::ublas::real(const detail::tensor_expression<tensor<std::complex<_Tp>, F, A>, D>&)':
../boost/numeric/ublas/tensor/functions.hpp:471:60: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
  471 |         std::transform( a.begin(), a.end(),  c.begin(), [](auto const& l){ return std::real(l) ; }  );
      |                                                            ^~~~
../boost/numeric/ublas/tensor/functions.hpp: At global scope:
../boost/numeric/ublas/tensor/functions.hpp:483:1: error: 'imag' function uses 'auto' type specifier without trailing return type
  483 | auto imag(detail::tensor_expression<T,D> const& lhs) {
      | ^~~~
../boost/numeric/ublas/tensor/functions.hpp:483:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/functions.hpp: In function 'auto boost::numeric::ublas::imag(const detail::tensor_expression<T, EL>&)':
../boost/numeric/ublas/tensor/functions.hpp:484:68: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
  484 |         return detail::make_unary_tensor_expression<T> (lhs(), [] (auto const& l) { return std::imag( l ); } );
      |                                                                    ^~~~
../boost/numeric/ublas/tensor/functions.hpp: At global scope:
../boost/numeric/ublas/tensor/functions.hpp:494:1: error: 'imag' function uses 'auto' type specifier without trailing return type
  494 | auto imag(detail::tensor_expression<tensor<std::complex<V>,F,A>,D> const& expr)
      | ^~~~
../boost/numeric/ublas/tensor/functions.hpp:494:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/functions.hpp: In function 'auto boost::numeric::ublas::imag(const detail::tensor_expression<tensor<std::complex<_Tp>, F, A>, D>&)':
../boost/numeric/ublas/tensor/functions.hpp:505:60: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
  505 |         std::transform( a.begin(), a.end(),  c.begin(), [](auto const& l){ return std::imag(l) ; }  );
      |                                                            ^~~~
../boost/numeric/ublas/tensor/functions.hpp: At global scope:
../boost/numeric/ublas/tensor/functions.hpp:516:1: error: 'conj' function uses 'auto' type specifier without trailing return type
  516 | auto conj(detail::tensor_expression<T,D> const& expr)
      | ^~~~
../boost/numeric/ublas/tensor/functions.hpp:516:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/functions.hpp: In function 'auto boost::numeric::ublas::conj(const detail::tensor_expression<T, EL>&)':
../boost/numeric/ublas/tensor/functions.hpp:534:60: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
  534 |         std::transform( a.begin(), a.end(),  c.begin(), [](auto const& l){ return std::conj(l) ; }  );
      |                                                            ^~~~
../boost/numeric/ublas/tensor/functions.hpp: At global scope:
../boost/numeric/ublas/tensor/functions.hpp:546:1: error: 'conj' function uses 'auto' type specifier without trailing return type
  546 | auto conj(detail::tensor_expression<tensor<std::complex<V>,F,A>,D> const& expr)
      | ^~~~
../boost/numeric/ublas/tensor/functions.hpp:546:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/functions.hpp: In function 'auto boost::numeric::ublas::conj(const detail::tensor_expression<tensor<std::complex<_Tp>, F, A>, D>&)':
../boost/numeric/ublas/tensor/functions.hpp:548:95: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
  548 |         return detail::make_unary_tensor_expression<tensor<std::complex<V>,F,A>> (expr(), [] (auto const& l) { return std::conj( l ); } );
      |                                                                                               ^~~~
In file included from ../boost/numeric/ublas/tensor/operators_arithmetic.hpp:17,
                 from ../boost/numeric/ublas/tensor.hpp:19:
../boost/numeric/ublas/tensor/multi_index_utility.hpp: At global scope:
../boost/numeric/ublas/tensor/multi_index_utility.hpp:69:67: error: 'decay_t' is not a member of 'std'; did you mean 'decay'?
   69 |         static constexpr bool value = detail::has_index_impl<std::decay_t<index_type>,std::decay_t<tuple_type>>::value;
      |                                                                   ^~~~~~~
      |                                                                   decay
../boost/numeric/ublas/tensor/multi_index_utility.hpp:69:67: error: 'decay_t' is not a member of 'std'; did you mean 'decay'?
   69 |         static constexpr bool value = detail::has_index_impl<std::decay_t<index_type>,std::decay_t<tuple_type>>::value;
      |                                                                   ^~~~~~~
      |                                                                   decay
../boost/numeric/ublas/tensor/multi_index_utility.hpp:69:85: error: template argument 1 is invalid
   69 |         static constexpr bool value = detail::has_index_impl<std::decay_t<index_type>,std::decay_t<tuple_type>>::value;
      |                                                                                     ^
../boost/numeric/ublas/tensor/multi_index_utility.hpp:69:87: error: invalid use of '::'
   69 |         static constexpr bool value = detail::has_index_impl<std::decay_t<index_type>,std::decay_t<tuple_type>>::value;
      |                                                                                       ^~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:69:92: error: expected ';' at end of member declaration
   69 |         static constexpr bool value = detail::has_index_impl<std::decay_t<index_type>,std::decay_t<tuple_type>>::value;
      |                                                                                            ^~~~~~~
      |                                                                                                   ;
../boost/numeric/ublas/tensor/multi_index_utility.hpp:69:99: error: expected unqualified-id before '<' token
   69 |         static constexpr bool value = detail::has_index_impl<std::decay_t<index_type>,std::decay_t<tuple_type>>::value;
      |                                                                                                   ^
../boost/numeric/ublas/tensor/multi_index_utility.hpp:125:75: error: 'decay_t' is not a member of 'std'; did you mean 'decay'?
  125 |         static constexpr bool value = detail::valid_multi_index_impl<std::decay_t<tupe_type>>::value;
      |                                                                           ^~~~~~~
      |                                                                           decay
../boost/numeric/ublas/tensor/multi_index_utility.hpp:125:75: error: 'decay_t' is not a member of 'std'; did you mean 'decay'?
  125 |         static constexpr bool value = detail::valid_multi_index_impl<std::decay_t<tupe_type>>::value;
      |                                                                           ^~~~~~~
      |                                                                           decay
../boost/numeric/ublas/tensor/multi_index_utility.hpp:125:83: error: template argument 1 is invalid
  125 |         static constexpr bool value = detail::valid_multi_index_impl<std::decay_t<tupe_type>>::value;
      |                                                                                   ^~~~~~~~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:125:96: error: '::value' has not been declared
  125 |         static constexpr bool value = detail::valid_multi_index_impl<std::decay_t<tupe_type>>::value;
      |                                                                                                ^~~~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:182:53: error: 'decay_t' is not a member of 'std'; did you mean 'decay'?
  182 |             detail::number_equal_indexes_impl< std::decay_t<tuple_left>, std::decay_t<tuple_right>>::value;
      |                                                     ^~~~~~~
      |                                                     decay
../boost/numeric/ublas/tensor/multi_index_utility.hpp:182:53: error: 'decay_t' is not a member of 'std'; did you mean 'decay'?
  182 |             detail::number_equal_indexes_impl< std::decay_t<tuple_left>, std::decay_t<tuple_right>>::value;
      |                                                     ^~~~~~~
      |                                                     decay
../boost/numeric/ublas/tensor/multi_index_utility.hpp:182:71: error: template argument 1 is invalid
  182 |             detail::number_equal_indexes_impl< std::decay_t<tuple_left>, std::decay_t<tuple_right>>::value;
      |                                                                       ^
../boost/numeric/ublas/tensor/multi_index_utility.hpp:182:74: error: invalid use of '::'
  182 |             detail::number_equal_indexes_impl< std::decay_t<tuple_left>, std::decay_t<tuple_right>>::value;
      |                                                                          ^~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:182:79: error: expected ';' at end of member declaration
  182 |             detail::number_equal_indexes_impl< std::decay_t<tuple_left>, std::decay_t<tuple_right>>::value;
      |                                                                               ^~~~~~~
      |                                                                                      ;
../boost/numeric/ublas/tensor/multi_index_utility.hpp:182:86: error: expected unqualified-id before '<' token
  182 |             detail::number_equal_indexes_impl< std::decay_t<tuple_left>, std::decay_t<tuple_right>>::value;
      |                                                                                      ^
../boost/numeric/ublas/tensor/multi_index_utility.hpp:202:60: error: 'decay_t' is not a member of 'std'; did you mean 'decay'?
  202 |         static constexpr auto is_same = std::is_same< std::decay_t<itype>, std::decay_t<std::tuple_element_t<r,ttype>> >::value;
      |                                                            ^~~~~~~
      |                                                            decay
../boost/numeric/ublas/tensor/multi_index_utility.hpp:202:60: error: 'decay_t' is not a member of 'std'; did you mean 'decay'?
  202 |         static constexpr auto is_same = std::is_same< std::decay_t<itype>, std::decay_t<std::tuple_element_t<r,ttype>> >::value;
      |                                                            ^~~~~~~
      |                                                            decay
../boost/numeric/ublas/tensor/multi_index_utility.hpp:202:73: error: wrong number of template arguments (1, should be 2)
  202 |         static constexpr auto is_same = std::is_same< std::decay_t<itype>, std::decay_t<std::tuple_element_t<r,ttype>> >::value;
      |                                                                         ^
In file included from /usr/local/gcc-13.1.0/include/c++/13.1.0/bits/move.h:57,
                 from /usr/local/gcc-13.1.0/include/c++/13.1.0/bits/exception_ptr.h:41,
                 from /usr/local/gcc-13.1.0/include/c++/13.1.0/exception:164,
                 from /usr/local/gcc-13.1.0/include/c++/13.1.0/ios:41,
                 from /usr/local/gcc-13.1.0/include/c++/13.1.0/ostream:40,
                 from /usr/local/gcc-13.1.0/include/c++/13.1.0/iostream:41,
                 from ../libs/numeric/ublas/test/tensor/test_tensor_matrix_vector.cpp:13:
/usr/local/gcc-13.1.0/include/c++/13.1.0/type_traits:709:12: note: provided for 'template<class, class> struct std::is_same'
  709 |     struct is_same;
      |            ^~~~~~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:202:76: error: invalid use of '::'
  202 |         static constexpr auto is_same = std::is_same< std::decay_t<itype>, std::decay_t<std::tuple_element_t<r,ttype>> >::value;
      |                                                                            ^~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:202:81: error: expected ';' at end of member declaration
  202 |         static constexpr auto is_same = std::is_same< std::decay_t<itype>, std::decay_t<std::tuple_element_t<r,ttype>> >::value;
      |                                                                                 ^~~~~~~
      |                                                                                        ;
../boost/numeric/ublas/tensor/multi_index_utility.hpp:202:88: error: expected unqualified-id before '<' token
  202 |         static constexpr auto is_same = std::is_same< std::decay_t<itype>, std::decay_t<std::tuple_element_t<r,ttype>> >::value;
      |                                                                                        ^
../boost/numeric/ublas/tensor/multi_index_utility.hpp:235:112: error: 'decay_t' is not a member of 'std'; did you mean 'decay'?
  235 |         static constexpr auto value  = detail::index_position_impl<0ul,std::tuple_size<tuple_type>::value,std::decay_t<index_type>,std::decay_t<tuple_type>>::value;
      |                                                                                                                ^~~~~~~
      |                                                                                                                decay
../boost/numeric/ublas/tensor/multi_index_utility.hpp:235:112: error: 'decay_t' is not a member of 'std'; did you mean 'decay'?
  235 |         static constexpr auto value  = detail::index_position_impl<0ul,std::tuple_size<tuple_type>::value,std::decay_t<index_type>,std::decay_t<tuple_type>>::value;
      |                                                                                                                ^~~~~~~
      |                                                                                                                decay
../boost/numeric/ublas/tensor/multi_index_utility.hpp:235:130: error: wrong number of template arguments (3, should be 4)
  235 |         static constexpr auto value  = detail::index_position_impl<0ul,std::tuple_size<tuple_type>::value,std::decay_t<index_type>,std::decay_t<tuple_type>>::value;
      |                                                                                                                                  ^
../boost/numeric/ublas/tensor/multi_index_utility.hpp:200:8: note: provided for 'template<long unsigned int r, long unsigned int m, class itype, class ttype> struct boost::numeric::ublas::detail::index_position_impl'
  200 | struct index_position_impl
      |        ^~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:235:132: error: invalid use of '::'
  235 |         static constexpr auto value  = detail::index_position_impl<0ul,std::tuple_size<tuple_type>::value,std::decay_t<index_type>,std::decay_t<tuple_type>>::value;
      |                                                                                                                                    ^~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:235:137: error: expected ';' at end of member declaration
  235 |         static constexpr auto value  = detail::index_position_impl<0ul,std::tuple_size<tuple_type>::value,std::decay_t<index_type>,std::decay_t<tuple_type>>::value;
      |                                                                                                                                         ^~~~~~~
      |                                                                                                                                                ;
../boost/numeric/ublas/tensor/multi_index_utility.hpp:235:144: error: expected unqualified-id before '<' token
  235 |         static constexpr auto value  = detail::index_position_impl<0ul,std::tuple_size<tuple_type>::value,std::decay_t<index_type>,std::decay_t<tuple_type>>::value;
      |                                                                                                                                                ^
../boost/numeric/ublas/tensor/multi_index_utility.hpp: In static member function 'static constexpr void boost::numeric::ublas::detail::index_position_pairs_impl<r, m>::run(array_type&, const tuple_left&, const tuple_right&, std::size_t)':
../boost/numeric/ublas/tensor/multi_index_utility.hpp:257:45: error: 'tuple_element_t' in namespace 'std' does not name a template type
  257 |                 using index_type     = std::tuple_element_t<r-1,tuple_left>;
      |                                             ^~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:257:40: note: 'std::tuple_element_t' is only available from C++14 onwards
  257 |                 using index_type     = std::tuple_element_t<r-1,tuple_left>;
      |                                        ^~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:258:50: error: 'index_type' was not declared in this scope
  258 |                 using has_index_type = has_index<index_type, tuple_right>;
      |                                                  ^~~~~~~~~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:258:73: error: template argument 1 is invalid
  258 |                 using has_index_type = has_index<index_type, tuple_right>;
      |                                                                         ^
../boost/numeric/ublas/tensor/multi_index_utility.hpp:261:20: warning: 'if constexpr' only available with '-std=c++17' or '-std=gnu++17' [-Wc++17-extensions]
  261 |                 if constexpr ( has_index_type::value && index_type::value != 0)
      |                    ^~~~~~~~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:261:32: error: 'has_index_type' has not been declared
  261 |                 if constexpr ( has_index_type::value && index_type::value != 0)
      |                                ^~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:261:57: error: 'index_type' is not a class, namespace, or enumeration
  261 |                 if constexpr ( has_index_type::value && index_type::value != 0)
      |                                                         ^~~~~~~~~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:262:51: error: 'get_index_type' has not been declared
  262 |                     out[p++] = std::make_pair(r-1,get_index_type::value);
      |                                                   ^~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp: In static member function 'static constexpr void boost::numeric::ublas::detail::index_position_pairs_impl<m, m>::run(array_type&, const tuple_left&, const tuple_right&, std::size_t)':
../boost/numeric/ublas/tensor/multi_index_utility.hpp:273:45: error: 'tuple_element_t' in namespace 'std' does not name a template type
  273 |                 using index_type     = std::tuple_element_t<m-1,tuple_left>;
      |                                             ^~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:273:40: note: 'std::tuple_element_t' is only available from C++14 onwards
  273 |                 using index_type     = std::tuple_element_t<m-1,tuple_left>;
      |                                        ^~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:274:50: error: 'index_type' was not declared in this scope
  274 |                 using has_index_type = has_index<index_type, tuple_right>;
      |                                                  ^~~~~~~~~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:274:73: error: template argument 1 is invalid
  274 |                 using has_index_type = has_index<index_type, tuple_right>;
      |                                                                         ^
../boost/numeric/ublas/tensor/multi_index_utility.hpp:276:20: warning: 'if constexpr' only available with '-std=c++17' or '-std=gnu++17' [-Wc++17-extensions]
  276 |                 if constexpr ( has_index_type::value && index_type::value != 0 )
      |                    ^~~~~~~~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:276:32: error: 'has_index_type' has not been declared
  276 |                 if constexpr ( has_index_type::value && index_type::value != 0 )
      |                                ^~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:276:57: error: 'index_type' is not a class, namespace, or enumeration
  276 |                 if constexpr ( has_index_type::value && index_type::value != 0 )
      |                                                         ^~~~~~~~~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:277:49: error: 'get_index_type' has not been declared
  277 |                     out[p] = std::make_pair(m-1,get_index_type::value);
      |                                                 ^~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp: At global scope:
../boost/numeric/ublas/tensor/multi_index_utility.hpp:306:1: error: 'index_position_pairs' function uses 'auto' type specifier without trailing return type
  306 | auto index_position_pairs(tuple_left const& lhs, tuple_right const& rhs)
      | ^~~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:306:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/multi_index_utility.hpp:332:68: error: 'std::index_sequence' has not been declared
  332 | constexpr auto array_to_vector_impl( array_type const& array, std::index_sequence<R...> )
      |                                                                    ^~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:332:82: error: expected ',' or '...' before '<' token
  332 | constexpr auto array_to_vector_impl( array_type const& array, std::index_sequence<R...> )
      |                                                                                  ^
../boost/numeric/ublas/tensor/multi_index_utility.hpp:332:11: error: 'array_to_vector_impl' function uses 'auto' type specifier without trailing return type
  332 | constexpr auto array_to_vector_impl( array_type const& array, std::index_sequence<R...> )
      |           ^~~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:332:11: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/multi_index_utility.hpp:352:11: error: 'array_to_vector' function uses 'auto' type specifier without trailing return type
  352 | constexpr auto array_to_vector( std::array<pair_type,N> const& array)
      |           ^~~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:352:11: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
../boost/numeric/ublas/tensor/multi_index_utility.hpp: In function 'constexpr auto boost::numeric::ublas::array_to_vector(const std::array<_Tp, _Nm>&)':
../boost/numeric/ublas/tensor/multi_index_utility.hpp:354:40: error: 'make_index_sequence' is not a member of 'std'
  354 |         constexpr auto sequence = std::make_index_sequence<N>{};
      |                                        ^~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/multi_index_utility.hpp:354:40: note: 'std::make_index_sequence' is only available from C++14 onwards
../boost/numeric/ublas/tensor/multi_index_utility.hpp:354:62: error: expected primary-expression before '{' token
  354 |         constexpr auto sequence = std::make_index_sequence<N>{};
      |                                                              ^
../boost/numeric/ublas/tensor/operators_arithmetic.hpp: At global scope:
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:45:1: error: 'operator*' function uses 'auto' type specifier without trailing return type
   45 | auto operator OP ( boost::numeric::ublas:: EXPR_TYPE_L <T,L> const& lhs, boost::numeric::ublas:: EXPR_TYPE_R <R> const& rhs) { \
      | ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:50:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   50 | FIRST_ORDER_OPERATOR_RIGHT (*, detail:: tensor_expression , vector_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:45:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
   45 | auto operator OP ( boost::numeric::ublas:: EXPR_TYPE_L <T,L> const& lhs, boost::numeric::ublas:: EXPR_TYPE_R <R> const& rhs) { \
      | ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:50:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   50 | FIRST_ORDER_OPERATOR_RIGHT (*, detail:: tensor_expression , vector_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp: In function 'auto operator*(const boost::numeric::ublas::detail::tensor_expression<T, EL>&, const boost::numeric::ublas::vector_expression<ER>&)':
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:47:14: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
   47 |           [](auto const& l, auto const& r){ return l OP r; }); \
      |              ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:50:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   50 | FIRST_ORDER_OPERATOR_RIGHT (*, detail:: tensor_expression , vector_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:47:29: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
   47 |           [](auto const& l, auto const& r){ return l OP r; }); \
      |                             ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:50:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   50 | FIRST_ORDER_OPERATOR_RIGHT (*, detail:: tensor_expression , vector_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp: At global scope:
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:45:1: error: 'operator+' function uses 'auto' type specifier without trailing return type
   45 | auto operator OP ( boost::numeric::ublas:: EXPR_TYPE_L <T,L> const& lhs, boost::numeric::ublas:: EXPR_TYPE_R <R> const& rhs) { \
      | ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:51:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   51 | FIRST_ORDER_OPERATOR_RIGHT (+, detail:: tensor_expression , vector_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:45:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
   45 | auto operator OP ( boost::numeric::ublas:: EXPR_TYPE_L <T,L> const& lhs, boost::numeric::ublas:: EXPR_TYPE_R <R> const& rhs) { \
      | ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:51:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   51 | FIRST_ORDER_OPERATOR_RIGHT (+, detail:: tensor_expression , vector_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp: In function 'auto operator+(const boost::numeric::ublas::detail::tensor_expression<T, EL>&, const boost::numeric::ublas::vector_expression<ER>&)':
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:47:14: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
   47 |           [](auto const& l, auto const& r){ return l OP r; }); \
      |              ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:51:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   51 | FIRST_ORDER_OPERATOR_RIGHT (+, detail:: tensor_expression , vector_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:47:29: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
   47 |           [](auto const& l, auto const& r){ return l OP r; }); \
      |                             ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:51:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   51 | FIRST_ORDER_OPERATOR_RIGHT (+, detail:: tensor_expression , vector_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp: At global scope:
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:45:1: error: 'operator-' function uses 'auto' type specifier without trailing return type
   45 | auto operator OP ( boost::numeric::ublas:: EXPR_TYPE_L <T,L> const& lhs, boost::numeric::ublas:: EXPR_TYPE_R <R> const& rhs) { \
      | ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:52:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   52 | FIRST_ORDER_OPERATOR_RIGHT (-, detail:: tensor_expression , vector_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:45:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
   45 | auto operator OP ( boost::numeric::ublas:: EXPR_TYPE_L <T,L> const& lhs, boost::numeric::ublas:: EXPR_TYPE_R <R> const& rhs) { \
      | ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:52:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   52 | FIRST_ORDER_OPERATOR_RIGHT (-, detail:: tensor_expression , vector_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp: In function 'auto operator-(const boost::numeric::ublas::detail::tensor_expression<T, EL>&, const boost::numeric::ublas::vector_expression<ER>&)':
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:47:14: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
   47 |           [](auto const& l, auto const& r){ return l OP r; }); \
      |              ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:52:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   52 | FIRST_ORDER_OPERATOR_RIGHT (-, detail:: tensor_expression , vector_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:47:29: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
   47 |           [](auto const& l, auto const& r){ return l OP r; }); \
      |                             ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:52:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   52 | FIRST_ORDER_OPERATOR_RIGHT (-, detail:: tensor_expression , vector_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp: At global scope:
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:45:1: error: 'operator/' function uses 'auto' type specifier without trailing return type
   45 | auto operator OP ( boost::numeric::ublas:: EXPR_TYPE_L <T,L> const& lhs, boost::numeric::ublas:: EXPR_TYPE_R <R> const& rhs) { \
      | ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:53:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   53 | FIRST_ORDER_OPERATOR_RIGHT (/, detail:: tensor_expression , vector_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:45:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
   45 | auto operator OP ( boost::numeric::ublas:: EXPR_TYPE_L <T,L> const& lhs, boost::numeric::ublas:: EXPR_TYPE_R <R> const& rhs) { \
      | ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:53:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   53 | FIRST_ORDER_OPERATOR_RIGHT (/, detail:: tensor_expression , vector_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp: In function 'auto operator/(const boost::numeric::ublas::detail::tensor_expression<T, EL>&, const boost::numeric::ublas::vector_expression<ER>&)':
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:47:14: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
   47 |           [](auto const& l, auto const& r){ return l OP r; }); \
      |              ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:53:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   53 | FIRST_ORDER_OPERATOR_RIGHT (/, detail:: tensor_expression , vector_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:47:29: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
   47 |           [](auto const& l, auto const& r){ return l OP r; }); \
      |                             ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:53:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   53 | FIRST_ORDER_OPERATOR_RIGHT (/, detail:: tensor_expression , vector_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp: At global scope:
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:45:1: error: 'operator*' function uses 'auto' type specifier without trailing return type
   45 | auto operator OP ( boost::numeric::ublas:: EXPR_TYPE_L <T,L> const& lhs, boost::numeric::ublas:: EXPR_TYPE_R <R> const& rhs) { \
      | ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:55:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   55 | FIRST_ORDER_OPERATOR_RIGHT (*, detail:: tensor_expression , matrix_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:45:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
   45 | auto operator OP ( boost::numeric::ublas:: EXPR_TYPE_L <T,L> const& lhs, boost::numeric::ublas:: EXPR_TYPE_R <R> const& rhs) { \
      | ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:55:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   55 | FIRST_ORDER_OPERATOR_RIGHT (*, detail:: tensor_expression , matrix_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp: In function 'auto operator*(const boost::numeric::ublas::detail::tensor_expression<T, EL>&, const boost::numeric::ublas::matrix_expression<ER>&)':
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:47:14: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
   47 |           [](auto const& l, auto const& r){ return l OP r; }); \
      |              ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:55:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   55 | FIRST_ORDER_OPERATOR_RIGHT (*, detail:: tensor_expression , matrix_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:47:29: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
   47 |           [](auto const& l, auto const& r){ return l OP r; }); \
      |                             ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:55:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   55 | FIRST_ORDER_OPERATOR_RIGHT (*, detail:: tensor_expression , matrix_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp: At global scope:
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:45:1: error: 'operator+' function uses 'auto' type specifier without trailing return type
   45 | auto operator OP ( boost::numeric::ublas:: EXPR_TYPE_L <T,L> const& lhs, boost::numeric::ublas:: EXPR_TYPE_R <R> const& rhs) { \
      | ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:56:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   56 | FIRST_ORDER_OPERATOR_RIGHT (+, detail:: tensor_expression , matrix_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:45:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
   45 | auto operator OP ( boost::numeric::ublas:: EXPR_TYPE_L <T,L> const& lhs, boost::numeric::ublas:: EXPR_TYPE_R <R> const& rhs) { \
      | ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:56:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   56 | FIRST_ORDER_OPERATOR_RIGHT (+, detail:: tensor_expression , matrix_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp: In function 'auto operator+(const boost::numeric::ublas::detail::tensor_expression<T, EL>&, const boost::numeric::ublas::matrix_expression<ER>&)':
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:47:14: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
   47 |           [](auto const& l, auto const& r){ return l OP r; }); \
      |              ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:56:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   56 | FIRST_ORDER_OPERATOR_RIGHT (+, detail:: tensor_expression , matrix_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:47:29: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
   47 |           [](auto const& l, auto const& r){ return l OP r; }); \
      |                             ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:56:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   56 | FIRST_ORDER_OPERATOR_RIGHT (+, detail:: tensor_expression , matrix_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp: At global scope:
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:45:1: error: 'operator-' function uses 'auto' type specifier without trailing return type
   45 | auto operator OP ( boost::numeric::ublas:: EXPR_TYPE_L <T,L> const& lhs, boost::numeric::ublas:: EXPR_TYPE_R <R> const& rhs) { \
      | ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:57:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   57 | FIRST_ORDER_OPERATOR_RIGHT (-, detail:: tensor_expression , matrix_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:45:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
   45 | auto operator OP ( boost::numeric::ublas:: EXPR_TYPE_L <T,L> const& lhs, boost::numeric::ublas:: EXPR_TYPE_R <R> const& rhs) { \
      | ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:57:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   57 | FIRST_ORDER_OPERATOR_RIGHT (-, detail:: tensor_expression , matrix_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp: In function 'auto operator-(const boost::numeric::ublas::detail::tensor_expression<T, EL>&, const boost::numeric::ublas::matrix_expression<ER>&)':
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:47:14: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
   47 |           [](auto const& l, auto const& r){ return l OP r; }); \
      |              ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:57:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   57 | FIRST_ORDER_OPERATOR_RIGHT (-, detail:: tensor_expression , matrix_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:47:29: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
   47 |           [](auto const& l, auto const& r){ return l OP r; }); \
      |                             ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:57:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   57 | FIRST_ORDER_OPERATOR_RIGHT (-, detail:: tensor_expression , matrix_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp: At global scope:
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:45:1: error: 'operator/' function uses 'auto' type specifier without trailing return type
   45 | auto operator OP ( boost::numeric::ublas:: EXPR_TYPE_L <T,L> const& lhs, boost::numeric::ublas:: EXPR_TYPE_R <R> const& rhs) { \
      | ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:58:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   58 | FIRST_ORDER_OPERATOR_RIGHT (/, detail:: tensor_expression , matrix_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:45:1: note: deduced return type only available with '-std=c++14' or '-std=gnu++14'
   45 | auto operator OP ( boost::numeric::ublas:: EXPR_TYPE_L <T,L> const& lhs, boost::numeric::ublas:: EXPR_TYPE_R <R> const& rhs) { \
      | ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:58:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   58 | FIRST_ORDER_OPERATOR_RIGHT (/, detail:: tensor_expression , matrix_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp: In function 'auto operator/(const boost::numeric::ublas::detail::tensor_expression<T, EL>&, const boost::numeric::ublas::matrix_expression<ER>&)':
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:47:14: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
   47 |           [](auto const& l, auto const& r){ return l OP r; }); \
      |              ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:58:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   58 | FIRST_ORDER_OPERATOR_RIGHT (/, detail:: tensor_expression , matrix_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:47:29: error: use of 'auto' in lambda parameter declaration only available with '-std=c++14' or '-std=gnu++14'
   47 |           [](auto const& l, auto const& r){ return l OP r; }); \
      |                             ^~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:58:1: note: in expansion of macro 'FIRST_ORDER_OPERATOR_RIGHT'
   58 | FIRST_ORDER_OPERATOR_RIGHT (/, detail:: tensor_expression , matrix_expression)
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/numeric/ublas/tensor/operators_arithmetic.hpp: At global scope:
../boost/numeric/ublas/tensor/operators_arithmetic.hpp:63:1: error: 'operator*' function uses 'auto'...

[The content has been trimmed by the report system because it exceeds 65536 bytes]