Control: reopen -1

fyi, this still fails in Ubuntu with boost 1.88, see
https://launchpad.net/ubuntu/+source/dolfin/2019.2.0~legacy20240219.1c52e83-19/+build/31141291

[...]
cd "/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/dolfin" && /usr/bin/c++ -DDOLFIN_VERSION=\"2019.2.0.64.dev0\" -DHAS_CHOLMOD -DHAS_HDF5 -DHAS_MPI -DHAS_PETSC -DHAS_SCOTCH -DHAS_SLEPC -DHAS_UMFPACK -DHAS_ZLIB -DNDEBUG -Ddolfin_EXPORTS -I"/<<PKGBUILDDIR>>" -I"/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu" -isystem /usr/lib/python3/dist-packages/ffc/backends/ufc -isystem /usr/include/eigen3 -isystem /usr/include/hdf5/openmpi -isystem /usr/include/suitesparse -isystem /usr/include/scotch -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/slepcdir/slepc3.22/x86_64-linux-gnu-real/include -isystem /usr/lib/petscdir/petsc3.22/x86_64-linux-gnu-real/include -fpermissive -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fdebug-prefix-map=/<<PKGBUILDDIR>>=/usr/src/dolfin-2019.2.0~legacy20240219.1c52e83-19 -Wdate-time -D_FORTIFY_SOURCE=3 -O2 -g -DNDEBUG -std=c++11 -fPIC -MD -MT dolfin/CMakeFiles/dolfin.dir/math/Legendre.cpp.o -MF CMakeFiles/dolfin.dir/math/Legendre.cpp.o.d -o CMakeFiles/dolfin.dir/math/Legendre.cpp.o -c "/<<PKGBUILDDIR>>/dolfin/math/Legendre.cpp" In file included from /usr/include/boost/math/special_functions/math_fwd.hpp:27, from /usr/include/boost/math/special_functions/legendre.hpp:16,
                 from /<<PKGBUILDDIR>>/dolfin/math/Legendre.cpp:24:
/usr/include/boost/math/tools/config.hpp:28:6: warning: #warning "Boost.Math requires C++14" [-Wcpp]
   28 | #    warning "Boost.Math requires C++14"
      |      ^~~~~~~
In file included from /usr/include/boost/math/tools/promotion.hpp:28,
from /usr/include/boost/math/special_functions/math_fwd.hpp:28: /usr/include/boost/math/tools/type_traits.hpp:208:12: error: ‘is_final’ has not been declared in ‘std’
  208 | using std::is_final;
      |            ^~~~~~~~
/usr/include/boost/math/tools/type_traits.hpp:259:12: error: ‘remove_cv_t’ has not been declared in ‘std’
  259 | using std::remove_cv_t;
      |            ^~~~~~~~~~~
/usr/include/boost/math/tools/type_traits.hpp:261:12: error: ‘remove_const_t’ has not been declared in ‘std’
  261 | using std::remove_const_t;
      |            ^~~~~~~~~~~~~~
/usr/include/boost/math/tools/type_traits.hpp:263:12: error: ‘remove_volatile_t’ has not been declared in ‘std’
  263 | using std::remove_volatile_t;
      |            ^~~~~~~~~~~~~~~~~
/usr/include/boost/math/tools/type_traits.hpp:265:12: error: ‘add_cv_t’ has not been declared in ‘std’
  265 | using std::add_cv_t;
      |            ^~~~~~~~
/usr/include/boost/math/tools/type_traits.hpp:267:12: error: ‘add_const_t’ has not been declared in ‘std’
  267 | using std::add_const_t;
      |            ^~~~~~~~~~~
/usr/include/boost/math/tools/type_traits.hpp:269:12: error: ‘add_volatile_t’ has not been declared in ‘std’
  269 | using std::add_volatile_t;
      |            ^~~~~~~~~~~~~~
/usr/include/boost/math/tools/type_traits.hpp:273:12: error: ‘remove_reference_t’ has not been declared in ‘std’
  273 | using std::remove_reference_t;
      |            ^~~~~~~~~~~~~~~~~~
/usr/include/boost/math/tools/type_traits.hpp:275:12: error: ‘add_lvalue_reference_t’ has not been declared in ‘std’
  275 | using std::add_lvalue_reference_t;
      |            ^~~~~~~~~~~~~~~~~~~~~~
/usr/include/boost/math/tools/type_traits.hpp:277:12: error: ‘add_rvalue_reference_t’ has not been declared in ‘std’
  277 | using std::add_rvalue_reference_t;
      |            ^~~~~~~~~~~~~~~~~~~~~~
/usr/include/boost/math/tools/type_traits.hpp:281:12: error: ‘remove_pointer_t’ has not been declared in ‘std’
  281 | using std::remove_pointer_t;
      |            ^~~~~~~~~~~~~~~~
/usr/include/boost/math/tools/type_traits.hpp:283:12: error: ‘add_pointer_t’ has not been declared in ‘std’
  283 | using std::add_pointer_t;
      |            ^~~~~~~~~~~~~
/usr/include/boost/math/tools/type_traits.hpp:287:12: error: ‘make_signed_t’ has not been declared in ‘std’
  287 | using std::make_signed_t;
      |            ^~~~~~~~~~~~~
/usr/include/boost/math/tools/type_traits.hpp:289:12: error: ‘make_unsigned_t’ has not been declared in ‘std’
  289 | using std::make_unsigned_t;
      |            ^~~~~~~~~~~~~~~
/usr/include/boost/math/tools/type_traits.hpp:293:12: error: ‘remove_extent_t’ has not been declared in ‘std’
  293 | using std::remove_extent_t;
      |            ^~~~~~~~~~~~~~~
/usr/include/boost/math/tools/type_traits.hpp:295:12: error: ‘remove_all_extents_t’ has not been declared in ‘std’
  295 | using std::remove_all_extents_t;
      |            ^~~~~~~~~~~~~~~~~~~~
/usr/include/boost/math/tools/type_traits.hpp:299:12: error: ‘decay_t’ has not been declared in ‘std’
  299 | using std::decay_t;
      |            ^~~~~~~
/usr/include/boost/math/tools/type_traits.hpp:301:12: error: ‘enable_if_t’ has not been declared in ‘std’
  301 | using std::enable_if_t;
      |            ^~~~~~~~~~~
/usr/include/boost/math/tools/type_traits.hpp:303:12: error: ‘conditional_t’ has not been declared in ‘std’
  303 | using std::conditional_t;
      |            ^~~~~~~~~~~~~
/usr/include/boost/math/tools/type_traits.hpp:305:12: error: ‘common_type_t’ has not been declared in ‘std’
  305 | using std::common_type_t;
      |            ^~~~~~~~~~~~~
/usr/include/boost/math/tools/type_traits.hpp:307:12: error: ‘underlying_type_t’ has not been declared in ‘std’
  307 | using std::underlying_type_t;
      |            ^~~~~~~~~~~~~~~~~
/usr/include/boost/math/tools/type_traits.hpp:402:60: error: ‘is_final’ is not a member of ‘boost::math’; did you mean ‘is_final_v’? 402 | BOOST_MATH_INLINE_CONSTEXPR bool is_final_v = boost::math::is_final<T>::value;
      |                                                            ^~~~~~~~
| is_final_v /usr/include/boost/math/tools/type_traits.hpp:402:70: error: expected primary-expression before ‘>’ token 402 | BOOST_MATH_INLINE_CONSTEXPR bool is_final_v = boost::math::is_final<T>::value; | ^ /usr/include/boost/math/tools/type_traits.hpp:402:73: error: ‘::value’ has not been declared 402 | BOOST_MATH_INLINE_CONSTEXPR bool is_final_v = boost::math::is_final<T>::value; | ^~~~~ [ 75%] Building CXX object dolfin/CMakeFiles/dolfin.dir/mesh/BoundaryComputation.cpp.o cd "/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/dolfin" && /usr/bin/c++ -DDOLFIN_VERSION=\"2019.2.0.64.dev0\" -DHAS_CHOLMOD -DHAS_HDF5 -DHAS_MPI -DHAS_PETSC -DHAS_SCOTCH -DHAS_SLEPC -DHAS_UMFPACK -DHAS_ZLIB -DNDEBUG -Ddolfin_EXPORTS -I"/<<PKGBUILDDIR>>" -I"/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu" -isystem /usr/lib/python3/dist-packages/ffc/backends/ufc -isystem /usr/include/eigen3 -isystem /usr/include/hdf5/openmpi -isystem /usr/include/suitesparse -isystem /usr/include/scotch -isystem /usr/lib/x86_64-linux-gnu/openmpi/include -isystem /usr/lib/x86_64-linux-gnu/openmpi/include/openmpi -isystem /usr/lib/slepcdir/slepc3.22/x86_64-linux-gnu-real/include -isystem /usr/lib/petscdir/petsc3.22/x86_64-linux-gnu-real/include -fpermissive -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -fdebug-prefix-map=/<<PKGBUILDDIR>>=/usr/src/dolfin-2019.2.0~legacy20240219.1c52e83-19 -Wdate-time -D_FORTIFY_SOURCE=3 -O2 -g -DNDEBUG -std=c++11 -fPIC -MD -MT dolfin/CMakeFiles/dolfin.dir/mesh/BoundaryComputation.cpp.o -MF CMakeFiles/dolfin.dir/mesh/BoundaryComputation.cpp.o.d -o CMakeFiles/dolfin.dir/mesh/BoundaryComputation.cpp.o -c "/<<PKGBUILDDIR>>/dolfin/mesh/BoundaryComputation.cpp" In file included from /usr/include/boost/math/special_functions/gamma.hpp:30, from /usr/include/boost/math/special_functions/factorials.hpp:17, from /usr/include/boost/math/special_functions/legendre.hpp:17: /usr/include/boost/math/special_functions/trunc.hpp:324:44: error: ‘enable_if_t’ in namespace ‘boost::math’ does not name a template type; did you mean ‘enable_if’? 324 | BOOST_MATH_GPU_ENABLED inline boost::math::enable_if_t<boost::math::is_constructible_v<int, T>, int>
      |                                            ^~~~~~~~~~~
      |                                            enable_if
/usr/include/boost/math/special_functions/trunc.hpp:331:44: error: ‘enable_if_t’ in namespace ‘boost::math’ does not name a template type; did you mean ‘enable_if’? 331 | BOOST_MATH_GPU_ENABLED inline boost::math::enable_if_t<!boost::math::is_constructible_v<int, T>, int>
      |                                            ^~~~~~~~~~~
      |                                            enable_if
/usr/include/boost/math/special_functions/trunc.hpp:339:44: error: ‘enable_if_t’ in namespace ‘boost::math’ does not name a template type; did you mean ‘enable_if’? 339 | BOOST_MATH_GPU_ENABLED inline boost::math::enable_if_t<boost::math::is_constructible_v<long, T>, long>
      |                                            ^~~~~~~~~~~
      |                                            enable_if
/usr/include/boost/math/special_functions/trunc.hpp:346:44: error: ‘enable_if_t’ in namespace ‘boost::math’ does not name a template type; did you mean ‘enable_if’? 346 | BOOST_MATH_GPU_ENABLED inline boost::math::enable_if_t<!boost::math::is_constructible_v<long, T>, long>
      |                                            ^~~~~~~~~~~
      |                                            enable_if
/usr/include/boost/math/special_functions/trunc.hpp:354:44: error: ‘enable_if_t’ in namespace ‘boost::math’ does not name a template type; did you mean ‘enable_if’? 354 | BOOST_MATH_GPU_ENABLED inline boost::math::enable_if_t<boost::math::is_constructible_v<long long, T>, long long>
      |                                            ^~~~~~~~~~~
      |                                            enable_if
/usr/include/boost/math/special_functions/trunc.hpp:361:53: error: ‘enable_if_t’ in namespace ‘boost::math’ does not name a template type; did you mean ‘enable_if’? 361 | BOOST_MATH_GPU_ENABLED inline typename boost::math::enable_if_t<!boost::math::is_constructible_v<long long, T>, long long>
      |                                                     ^~~~~~~~~~~
      |                                                     enable_if
/usr/include/boost/math/special_functions/trunc.hpp:361:64: error: expected unqualified-id before ‘<’ token 361 | BOOST_MATH_GPU_ENABLED inline typename boost::math::enable_if_t<!boost::math::is_constructible_v<long long, T>, long long>
      |                                                                ^
/usr/include/boost/math/special_functions/trunc.hpp:369:76: error: ‘enable_if_t’ in namespace ‘boost::math’ does not name a template type; did you mean ‘enable_if’? 369 | BOOST_MATH_GPU_ENABLED [[deprecated("Use llconvert")]] inline boost::math::enable_if_t<boost::math::is_constructible_v<long long, T>, long long> | ^~~~~~~~~~~ | enable_if /usr/include/boost/math/special_functions/trunc.hpp:376:85: error: ‘enable_if_t’ in namespace ‘boost::math’ does not name a template type; did you mean ‘enable_if’? 376 | BOOST_MATH_GPU_ENABLED [[deprecated("Use llconvert")]] inline typename boost::math::enable_if_t<!boost::math::is_constructible_v<long long, T>, long long> | ^~~~~~~~~~~ | enable_if /usr/include/boost/math/special_functions/trunc.hpp:376:96: error: expected unqualified-id before ‘<’ token 376 | BOOST_MATH_GPU_ENABLED [[deprecated("Use llconvert")]] inline typename boost::math::enable_if_t<!boost::math::is_constructible_v<long long, T>, long long> | ^ In file included from /usr/include/boost/math/special_functions/detail/polygamma.hpp:24, from /usr/include/boost/math/special_functions/polygamma.hpp:15, from /usr/include/boost/math/special_functions/gamma.hpp:42: /usr/include/boost/math/special_functions/pow.hpp:126:79: error: redeclaration ‘constexpr typename boost::math::tools::promote_args<T2>::type boost::math::pow(T, const Policy&)’ differs in ‘constexpr’ from previous declaration 126 | BOOST_MATH_GPU_ENABLED constexpr inline typename tools::promote_args<T>::type pow(T base, const Policy& policy) | ^~~ /usr/include/boost/math/special_functions/math_fwd.hpp:1173:79: note: previous declaration ‘boost::math::tools::promote_args_t<T> boost::math::pow(T, const Policy&)’ 1173 | BOOST_MATH_GPU_ENABLED BOOST_MATH_CXX14_CONSTEXPR tools::promote_args_t<T> pow(T base, const Policy& policy); | ^~~ /usr/include/boost/math/special_functions/pow.hpp:133:79: error: redeclaration ‘constexpr typename boost::math::tools::promote_args<T2>::type boost::math::pow(T)’ differs in ‘constexpr’ from previous declaration 133 | BOOST_MATH_GPU_ENABLED constexpr inline typename tools::promote_args<T>::type pow(T base) | ^~~ /usr/include/boost/math/special_functions/math_fwd.hpp:1176:79: note: previous declaration ‘boost::math::tools::promote_args_t<T> boost::math::pow(T)’ 1176 | BOOST_MATH_GPU_ENABLED BOOST_MATH_CXX14_CONSTEXPR tools::promote_args_t<T> pow(T base); | ^~~ /usr/include/boost/math/tools/promotion.hpp: In instantiation of ‘struct boost::math::tools::promote_args_permissive<long double, long double>’: /usr/include/boost/math/tools/promotion.hpp:105:16: required from ‘struct boost::math::tools::promote_args_permissive<long double, long double, long double>’
  105 |          using type = typename pa2_integral_already_removed<
      |                ^~~~
/usr/include/boost/math/tools/promotion.hpp:119:16: required from ‘struct boost::math::tools::promote_args<long double, long double, long double>’ 119 | using type = typename promote_args_permissive<Args...>::type;
      |                ^~~~
/usr/include/boost/math/tools/promotion.hpp:129:13: required by substitution of ‘template<class ... Args> using boost::math::tools::promote_args_t = typename boost::math::tools::promote_args::type [with Args = {long double, long double, long double}]’
  129 |       using promote_args_t = typename promote_args<Args...>::type;
      |             ^~~~~~~~~~~~~~
/usr/include/boost/math/special_functions/legendre.hpp:28:4: required by substitution of ‘template<class T1, class T2, class T3> boost::math::tools::promote_args_t<RT1, RT2, A> boost::math::legendre_next(unsigned int, T1, T2, T3) [with T1 = long double; T2 = long double; T3 = long double]’
   28 |    legendre_next(unsigned l, T1 x, T2 Pl, T3 Plm1)
      |    ^~~~~~~~~~~~~
/usr/include/boost/math/special_functions/legendre.hpp:69:53: required from ‘T boost::math::detail::legendre_imp(unsigned int, T, const Policy&, bool) [with T = long double; Policy = boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’ 69 | p1 = static_cast<T>(boost::math::legendre_next(n, x, p0, p1));
      |                           ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/usr/include/boost/math/special_functions/legendre.hpp:233:88: required from ‘typename std::enable_if<boost::math::policies::is_policy<Policy>::value, typename boost::math::tools::promote_args<T>::type>::type boost::math::legendre_p(int, T, const Policy&) [with T = double; Policy = policies::policy<policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy>; typename std::enable_if<policies::is_policy<Policy>::value, typename tools::promote_args<T>::type>::type = double; typename tools::promote_args<T>::type = double]’ 233 | return policies::checked_narrowing_cast<result_type, Policy>(detail::legendre_imp(-l-1, static_cast<value_type>(x), pol, false), function); | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/boost/math/special_functions/legendre.hpp:254:34: required from ‘boost::math::tools::promote_args_t<RT> boost::math::legendre_p(int, T) [with T = double; tools::promote_args_t<RT> = double]’
  254 |    return boost::math::legendre_p(l, x, policies::policy<>());
      |           ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/dolfin/math/Legendre.cpp:35:33:   required from here
   35 |   return boost::math::legendre_p(n, x);
      |          ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
/usr/include/boost/math/tools/promotion.hpp:105:16: error: no type named ‘type’ in ‘struct boost::math::tools::pa2_integral_already_removed<long double, long double, true>’
  105 |          using type = typename pa2_integral_already_removed<
      |                ^~~~
/usr/include/boost/math/special_functions/legendre.hpp: In instantiation of ‘T boost::math::detail::legendre_imp(unsigned int, T, const Policy&, bool) [with T = long double; Policy = boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’: /usr/include/boost/math/special_functions/legendre.hpp:233:88: required from ‘typename std::enable_if<boost::math::policies::is_policy<Policy>::value, typename boost::math::tools::promote_args<T>::type>::type boost::math::legendre_p(int, T, const Policy&) [with T = double; Policy = policies::policy<policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy>; typename std::enable_if<policies::is_policy<Policy>::value, typename tools::promote_args<T>::type>::type = double; typename tools::promote_args<T>::type = double]’ 233 | return policies::checked_narrowing_cast<result_type, Policy>(detail::legendre_imp(-l-1, static_cast<value_type>(x), pol, false), function); | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/boost/math/special_functions/legendre.hpp:254:34: required from ‘boost::math::tools::promote_args_t<RT> boost::math::legendre_p(int, T) [with T = double; tools::promote_args_t<RT> = double]’
  254 |    return boost::math::legendre_p(l, x, policies::policy<>());
      |           ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/dolfin/math/Legendre.cpp:35:33:   required from here
   35 |   return boost::math::legendre_p(n, x);
      |          ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
/usr/include/boost/math/special_functions/legendre.hpp:69:53: error: no matching function for call to ‘legendre_next(unsigned int&, long double&, long double&, long double&)’ 69 | p1 = static_cast<T>(boost::math::legendre_next(n, x, p0, p1));
      |                           ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/usr/include/boost/math/special_functions/legendre.hpp:69:53: note: there are 2 candidates /usr/include/boost/math/special_functions/legendre.hpp:28:4: note: candidate 1: ‘template<class T1, class T2, class T3> boost::math::tools::promote_args_t<RT1, RT2, A> boost::math::legendre_next(unsigned int, T1, T2, T3)’
   28 |    legendre_next(unsigned l, T1 x, T2 Pl, T3 Plm1)
      |    ^~~~~~~~~~~~~
/usr/include/boost/math/special_functions/legendre.hpp:28:4: note: substitution of deduced template arguments resulted in errors seen above /usr/include/boost/math/special_functions/legendre.hpp:299:4: note: candidate 2: ‘template<class T1, class T2, class T3> boost::math::tools::promote_args_t<RT1, RT2, A> boost::math::legendre_next(unsigned int, unsigned int, T1, T2, T3)’
  299 |    legendre_next(unsigned l, unsigned m, T1 x, T2 Pl, T3 Plm1)
      |    ^~~~~~~~~~~~~
/usr/include/boost/math/special_functions/legendre.hpp:299:4: note: candidate expects 5 arguments, 4 provided /usr/include/boost/math/special_functions/legendre.hpp: In instantiation of ‘T boost::math::detail::legendre_p_imp(int, int, T, T, const Policy&) [with T = long double; Policy = boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’: /usr/include/boost/math/special_functions/legendre.hpp:368:25: required from ‘T boost::math::detail::legendre_p_imp(int, int, T, const Policy&) [with T = long double; Policy = boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]’ 368 | return legendre_p_imp(l, m, x, static_cast<T>(pow(1 - x*x, T(abs(m))/2)), pol); | ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/boost/math/special_functions/legendre.hpp:379:87: required from ‘boost::math::tools::promote_args_t<RT> boost::math::legendre_p(int, int, T, const Policy&) [with T = double; Policy = policies::policy<policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy, policies::default_policy>; tools::promote_args_t<RT> = double]’ 379 | return policies::checked_narrowing_cast<result_type, Policy>(detail::legendre_p_imp(l, m, static_cast<value_type>(x), pol), "boost::math::legendre_p<%1%>(int, int, %1%)"); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/boost/math/special_functions/legendre.hpp:386:34: required from ‘boost::math::tools::promote_args_t<RT> boost::math::legendre_p(int, int, T) [with T = double; tools::promote_args_t<RT> = double]’
  386 |    return boost::math::legendre_p(l, m, x, policies::policy<>());
      |           ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/dolfin/math/Legendre.cpp:41:34:   required from here
   41 |   return -boost::math::legendre_p(n, 1, x)/(std::sqrt(1.0 - x*x));
      |           ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
/usr/include/boost/math/special_functions/legendre.hpp:335:46: error: no matching function for call to ‘tgamma_ratio(long double, long double, const boost::math::policies::policy<boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>&)’ 335 | return sign * boost::math::tgamma_ratio(static_cast<T>(l+m+1), static_cast<T>(l+1-m), pol) * legendre_p_imp(l, -m, x, sin_theta_power, pol); | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/boost/math/special_functions/legendre.hpp:335:46: note: there are 2 candidates /usr/include/boost/math/special_functions/gamma.hpp:2514:4: note: candidate 1: ‘template<class T1, class T2> boost::math::tools::promote_args_t<RT1, RT2> boost::math::tgamma_ratio(T1, T2)’
 2514 |    tgamma_ratio(T1 a, T2 b)
      |    ^~~~~~~~~~~~
/usr/include/boost/math/special_functions/gamma.hpp:2514:4: note: candidate expects 2 arguments, 3 provided /usr/include/boost/math/special_functions/gamma.hpp:2499:4: note: candidate 2: ‘template<class T1, class T2, class Policy> boost::math::tools::promote_args_t<RT1, RT2> boost::math::tgamma_ratio(T1, T2, const Policy&)’
 2499 |    tgamma_ratio(T1 a, T2 b, const Policy&)
      |    ^~~~~~~~~~~~
/usr/include/boost/math/special_functions/gamma.hpp:2499:4: note: template argument deduction/substitution failed: /usr/include/boost/math/special_functions/legendre.hpp:357:38: error: no matching function for call to ‘legendre_next(int&, int&, long double&, long double&, long double&)’
  357 |       p1 = boost::math::legendre_next(n, m, x, p0, p1);
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
/usr/include/boost/math/special_functions/legendre.hpp:357:38: note: there are 2 candidates /usr/include/boost/math/special_functions/legendre.hpp:28:4: note: candidate 1: ‘template<class T1, class T2, class T3> boost::math::tools::promote_args_t<RT1, RT2, A> boost::math::legendre_next(unsigned int, T1, T2, T3)’
   28 |    legendre_next(unsigned l, T1 x, T2 Pl, T3 Plm1)
      |    ^~~~~~~~~~~~~
/usr/include/boost/math/special_functions/legendre.hpp:28:4: note: candidate expects 4 arguments, 5 provided /usr/include/boost/math/special_functions/legendre.hpp:299:4: note: candidate 2: ‘template<class T1, class T2, class T3> boost::math::tools::promote_args_t<RT1, RT2, A> boost::math::legendre_next(unsigned int, unsigned int, T1, T2, T3)’
  299 |    legendre_next(unsigned l, unsigned m, T1 x, T2 Pl, T3 Plm1)
      |    ^~~~~~~~~~~~~
/usr/include/boost/math/special_functions/legendre.hpp:299:4: note: template argument deduction/substitution failed: make[4]: *** [dolfin/CMakeFiles/dolfin.dir/build.make:2462: dolfin/CMakeFiles/dolfin.dir/math/Legendre.cpp.o] Error 1
make[4]: *** Waiting for unfinished jobs....
make[4]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
make[3]: *** [CMakeFiles/Makefile2:1888: dolfin/CMakeFiles/dolfin.dir/all] Error 2
make[3]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
make[2]: *** [Makefile:149: all] Error 2
make[2]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
dh_auto_build: error: cd obj-x86_64-linux-gnu && make -j4 "INSTALL=install --strip-program=true" VERBOSE=1 returned exit code 2
make[1]: *** [debian/rules:256: override_dh_auto_build] Error 25
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:213: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2

Reply via email to