Bug#1110575: still ftbfs with boost 1.88
Matthias Klose
doko at debian.org
Tue Sep 9 22:45:50 BST 2025
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
More information about the debian-science-maintainers
mailing list