Compile [2024-11-17 17:17:40 UTC]: fail
"g++-13" -fvisibility-inlines-hidden -std=c++11 -fPIC -m64 -pthread -O0 -fno-inline -Wall -fvisibility=hidden -Wno-missing-braces -DBOOST_ALL_NO_LIB=1 -DBOOST_COBALT_USE_STD_PMR=1 -DBOOST_CONTAINER_DYN_LINK=1 -DBOOST_CONTAINER_NO_LIB=1 -DBOOST_RANDOM_DYN_LINK=1 -DBOOST_RANDOM_NO_LIB=1 -DBOOST_SYSTEM_DYN_LINK=1 -DBOOST_SYSTEM_NO_LIB=1 -I".." -I"../libs/math/include_private" -I"/var/boost/run/boost_root/libs/assert/include" -I"/var/boost/run/boost_root/libs/container/include" -I"/var/boost/run/boost_root/libs/core/include" -I"/var/boost/run/boost_root/libs/integer/include" -I"/var/boost/run/boost_root/libs/intrusive/include" -I"/var/boost/run/boost_root/libs/lexical_cast/include" -I"/var/boost/run/boost_root/libs/math/include" -I"/var/boost/run/boost_root/libs/move/include" -I"/var/boost/run/boost_root/libs/mp11/include" -I"/var/boost/run/boost_root/libs/predef/include" -I"/var/boost/run/boost_root/libs/random/include" -I"/var/boost/run/boost_root/libs/system/include" -I"/var/boost/run/boost_root/libs/throw_exception/include" -I"/var/boost/run/boost_root/libs/type_traits/include" -I"/var/boost/run/boost_root/libs/variant2/include" -I"/var/boost/run/boost_root/libs/winapi/include" -c -o "/var/boost/run/results/boost/bin.v2/libs/math/example/autodiff_black_scholes.test/gcc-13~c++11/debug/x86_64/debug-symbols-off/threading-multi/visibility-hidden/autodiff_black_scholes.o" "../libs/math/example/autodiff_black_scholes.cpp"
In file included from ../boost/math/cstdfloat/cstdfloat_types.hpp:17,
from ../boost/cstdfloat.hpp:18,
from ../boost/math/differentiation/autodiff.hpp:9,
from ../libs/math/example/autodiff_black_scholes.cpp:6:
../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 ../boost/math/tools/mp.hpp:15,
from ../boost/math/policies/policy.hpp:11,
from ../boost/math/constants/constants.hpp:16,
from ../boost/math/differentiation/autodiff.hpp:10:
../boost/math/tools/type_traits.hpp:208:12: error: 'is_final' has not been declared in 'std'
208 | using std::is_final;
| ^~~~~~~~
../boost/math/tools/type_traits.hpp:259:12: error: 'remove_cv_t' has not been declared in 'std'
259 | using std::remove_cv_t;
| ^~~~~~~~~~~
../boost/math/tools/type_traits.hpp:261:12: error: 'remove_const_t' has not been declared in 'std'
261 | using std::remove_const_t;
| ^~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:263:12: error: 'remove_volatile_t' has not been declared in 'std'
263 | using std::remove_volatile_t;
| ^~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:265:12: error: 'add_cv_t' has not been declared in 'std'
265 | using std::add_cv_t;
| ^~~~~~~~
../boost/math/tools/type_traits.hpp:267:12: error: 'add_const_t' has not been declared in 'std'
267 | using std::add_const_t;
| ^~~~~~~~~~~
../boost/math/tools/type_traits.hpp:269:12: error: 'add_volatile_t' has not been declared in 'std'
269 | using std::add_volatile_t;
| ^~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:273:12: error: 'remove_reference_t' has not been declared in 'std'
273 | using std::remove_reference_t;
| ^~~~~~~~~~~~~~~~~~
../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;
| ^~~~~~~~~~~~~~~~~~~~~~
../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;
| ^~~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:281:12: error: 'remove_pointer_t' has not been declared in 'std'
281 | using std::remove_pointer_t;
| ^~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:283:12: error: 'add_pointer_t' has not been declared in 'std'
283 | using std::add_pointer_t;
| ^~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:287:12: error: 'make_signed_t' has not been declared in 'std'
287 | using std::make_signed_t;
| ^~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:289:12: error: 'make_unsigned_t' has not been declared in 'std'
289 | using std::make_unsigned_t;
| ^~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:293:12: error: 'remove_extent_t' has not been declared in 'std'
293 | using std::remove_extent_t;
| ^~~~~~~~~~~~~~~
../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;
| ^~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:299:12: error: 'decay_t' has not been declared in 'std'
299 | using std::decay_t;
| ^~~~~~~
../boost/math/tools/type_traits.hpp:301:12: error: 'enable_if_t' has not been declared in 'std'
301 | using std::enable_if_t;
| ^~~~~~~~~~~
../boost/math/tools/type_traits.hpp:303:12: error: 'conditional_t' has not been declared in 'std'
303 | using std::conditional_t;
| ^~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:305:12: error: 'common_type_t' has not been declared in 'std'
305 | using std::common_type_t;
| ^~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:307:12: error: 'underlying_type_t' has not been declared in 'std'
307 | using std::underlying_type_t;
| ^~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:315:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
315 | BOOST_MATH_INLINE_CONSTEXPR bool is_void_v = boost::math::is_void<T>::value;
| ^~~~~~~~~
../boost/math/tools/type_traits.hpp:318:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
318 | BOOST_MATH_INLINE_CONSTEXPR bool is_null_pointer_v = boost::math::is_null_pointer<T>::value;
| ^~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:321:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
321 | BOOST_MATH_INLINE_CONSTEXPR bool is_integral_v = boost::math::is_integral<T>::value;
| ^~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:324:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
324 | BOOST_MATH_INLINE_CONSTEXPR bool is_floating_point_v = boost::math::is_floating_point<T>::value;
| ^~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:327:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
327 | BOOST_MATH_INLINE_CONSTEXPR bool is_array_v = boost::math::is_array<T>::value;
| ^~~~~~~~~~
../boost/math/tools/type_traits.hpp:330:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
330 | BOOST_MATH_INLINE_CONSTEXPR bool is_enum_v = boost::math::is_enum<T>::value;
| ^~~~~~~~~
../boost/math/tools/type_traits.hpp:333:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
333 | BOOST_MATH_INLINE_CONSTEXPR bool is_union_v = boost::math::is_union<T>::value;
| ^~~~~~~~~~
../boost/math/tools/type_traits.hpp:336:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
336 | BOOST_MATH_INLINE_CONSTEXPR bool is_class_v = boost::math::is_class<T>::value;
| ^~~~~~~~~~
../boost/math/tools/type_traits.hpp:339:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
339 | BOOST_MATH_INLINE_CONSTEXPR bool is_function_v = boost::math::is_function<T>::value;
| ^~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:342:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
342 | BOOST_MATH_INLINE_CONSTEXPR bool is_pointer_v = boost::math::is_pointer<T>::value;
| ^~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:345:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
345 | BOOST_MATH_INLINE_CONSTEXPR bool is_lvalue_reference_v = boost::math::is_lvalue_reference<T>::value;
| ^~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:348:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
348 | BOOST_MATH_INLINE_CONSTEXPR bool is_rvalue_reference_v = boost::math::is_rvalue_reference<T>::value;
| ^~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:351:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
351 | BOOST_MATH_INLINE_CONSTEXPR bool is_member_object_pointer_v = boost::math::is_member_object_pointer<T>::value;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:354:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
354 | BOOST_MATH_INLINE_CONSTEXPR bool is_member_function_pointer_v = boost::math::is_member_function_pointer<T>::value;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:357:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
357 | BOOST_MATH_INLINE_CONSTEXPR bool is_fundamental_v = boost::math::is_fundamental<T>::value;
| ^~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:360:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
360 | BOOST_MATH_INLINE_CONSTEXPR bool is_arithmetic_v = boost::math::is_arithmetic<T>::value;
| ^~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:363:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
363 | BOOST_MATH_INLINE_CONSTEXPR bool is_scalar_v = boost::math::is_scalar<T>::value;
| ^~~~~~~~~~~
../boost/math/tools/type_traits.hpp:366:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
366 | BOOST_MATH_INLINE_CONSTEXPR bool is_object_v = boost::math::is_object<T>::value;
| ^~~~~~~~~~~
../boost/math/tools/type_traits.hpp:369:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
369 | BOOST_MATH_INLINE_CONSTEXPR bool is_compound_v = boost::math::is_compound<T>::value;
| ^~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:372:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
372 | BOOST_MATH_INLINE_CONSTEXPR bool is_reference_v = boost::math::is_reference<T>::value;
| ^~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:375:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
375 | BOOST_MATH_INLINE_CONSTEXPR bool is_member_pointer_v = boost::math::is_member_pointer<T>::value;
| ^~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:378:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
378 | BOOST_MATH_INLINE_CONSTEXPR bool is_const_v = boost::math::is_const<T>::value;
| ^~~~~~~~~~
../boost/math/tools/type_traits.hpp:381:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
381 | BOOST_MATH_INLINE_CONSTEXPR bool is_volatile_v = boost::math::is_volatile<T>::value;
| ^~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:384:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
384 | BOOST_MATH_INLINE_CONSTEXPR bool is_trivial_v = boost::math::is_trivial<T>::value;
| ^~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:387:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
387 | BOOST_MATH_INLINE_CONSTEXPR bool is_trivially_copyable_v = boost::math::is_trivially_copyable<T>::value;
| ^~~~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:390:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
390 | BOOST_MATH_INLINE_CONSTEXPR bool is_standard_layout_v = boost::math::is_standard_layout<T>::value;
| ^~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:393:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
393 | BOOST_MATH_INLINE_CONSTEXPR bool is_empty_v = boost::math::is_empty<T>::value;
| ^~~~~~~~~~
../boost/math/tools/type_traits.hpp:396:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
396 | BOOST_MATH_INLINE_CONSTEXPR bool is_polymorphic_v = boost::math::is_polymorphic<T>::value;
| ^~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:399:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
399 | BOOST_MATH_INLINE_CONSTEXPR bool is_abstract_v = boost::math::is_abstract<T>::value;
| ^~~~~~~~~~~~~
../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
../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;
| ^
../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;
| ^~~~~
../boost/math/tools/type_traits.hpp:402:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
402 | BOOST_MATH_INLINE_CONSTEXPR bool is_final_v = boost::math::is_final<T>::value;
| ^~~~~~~~~~
../boost/math/tools/type_traits.hpp:405:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
405 | BOOST_MATH_INLINE_CONSTEXPR bool is_signed_v = boost::math::is_signed<T>::value;
| ^~~~~~~~~~~
../boost/math/tools/type_traits.hpp:408:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
408 | BOOST_MATH_INLINE_CONSTEXPR bool is_unsigned_v = boost::math::is_unsigned<T>::value;
| ^~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:411:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
411 | BOOST_MATH_INLINE_CONSTEXPR bool is_constructible_v = boost::math::is_constructible<T, Args...>::value;
| ^~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:414:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
414 | BOOST_MATH_INLINE_CONSTEXPR bool is_trivially_constructible_v = boost::math::is_trivially_constructible<T, Args...>::value;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:417:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
417 | BOOST_MATH_INLINE_CONSTEXPR bool is_nothrow_constructible_v = boost::math::is_nothrow_constructible<T, Args...>::value;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:420:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
420 | BOOST_MATH_INLINE_CONSTEXPR bool is_default_constructible_v = boost::math::is_default_constructible<T>::value;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:423:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
423 | BOOST_MATH_INLINE_CONSTEXPR bool is_trivially_default_constructible_v = boost::math::is_trivially_default_constructible<T>::value;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:426:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
426 | BOOST_MATH_INLINE_CONSTEXPR bool is_nothrow_default_constructible_v = boost::math::is_nothrow_default_constructible<T>::value;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:429:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
429 | BOOST_MATH_INLINE_CONSTEXPR bool is_copy_constructible_v = boost::math::is_copy_constructible<T>::value;
| ^~~~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:432:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
432 | BOOST_MATH_INLINE_CONSTEXPR bool is_trivially_copy_constructible_v = boost::math::is_trivially_copy_constructible<T>::value;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:435:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
435 | BOOST_MATH_INLINE_CONSTEXPR bool is_nothrow_copy_constructible_v = boost::math::is_nothrow_copy_constructible<T>::value;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:438:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
438 | BOOST_MATH_INLINE_CONSTEXPR bool is_move_constructible_v = boost::math::is_move_constructible<T>::value;
| ^~~~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:441:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
441 | BOOST_MATH_INLINE_CONSTEXPR bool is_trivially_move_constructible_v = boost::math::is_trivially_move_constructible<T>::value;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:444:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
444 | BOOST_MATH_INLINE_CONSTEXPR bool is_nothrow_move_constructible_v = boost::math::is_nothrow_move_constructible<T>::value;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:447:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
447 | BOOST_MATH_INLINE_CONSTEXPR bool is_assignable_v = boost::math::is_assignable<T, U>::value;
| ^~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:450:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
450 | BOOST_MATH_INLINE_CONSTEXPR bool is_trivially_assignable_v = boost::math::is_trivially_assignable<T, U>::value;
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:453:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
453 | BOOST_MATH_INLINE_CONSTEXPR bool is_nothrow_assignable_v = boost::math::is_nothrow_assignable<T, U>::value;
| ^~~~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:456:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
456 | BOOST_MATH_INLINE_CONSTEXPR bool is_copy_assignable_v = boost::math::is_copy_assignable<T>::value;
| ^~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:459:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
459 | BOOST_MATH_INLINE_CONSTEXPR bool is_trivially_copy_assignable_v = boost::math::is_trivially_copy_assignable<T>::value;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:462:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
462 | BOOST_MATH_INLINE_CONSTEXPR bool is_nothrow_copy_assignable_v = boost::math::is_nothrow_copy_assignable<T>::value;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:465:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
465 | BOOST_MATH_INLINE_CONSTEXPR bool is_move_assignable_v = boost::math::is_move_assignable<T>::value;
| ^~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:468:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
468 | BOOST_MATH_INLINE_CONSTEXPR bool is_trivially_move_assignable_v = boost::math::is_trivially_move_assignable<T>::value;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:471:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
471 | BOOST_MATH_INLINE_CONSTEXPR bool is_nothrow_move_assignable_v = boost::math::is_nothrow_move_assignable<T>::value;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:474:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
474 | BOOST_MATH_INLINE_CONSTEXPR bool is_destructible_v = boost::math::is_destructible<T>::value;
| ^~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:477:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
477 | BOOST_MATH_INLINE_CONSTEXPR bool is_trivially_destructible_v = boost::math::is_trivially_destructible<T>::value;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:480:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
480 | BOOST_MATH_INLINE_CONSTEXPR bool is_nothrow_destructible_v = boost::math::is_nothrow_destructible<T>::value;
| ^~~~~~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:483:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
483 | BOOST_MATH_INLINE_CONSTEXPR bool has_virtual_destructor_v = boost::math::has_virtual_destructor<T>::value;
| ^~~~~~~~~~~~~~~~~~~~~~~~
../boost/math/tools/type_traits.hpp:486:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
486 | BOOST_MATH_INLINE_CONSTEXPR bool is_same_v = boost::math::is_same<T, U>::value;
| ^~~~~~~~~
../boost/math/tools/type_traits.hpp:489:34: warning: variable templates only available with '-std=c++14' or '-std=gnu++14' [-Wc++14-extensions]
489 | BOOST_MATH_INLINE_CONSTEXPR bool is_base_of_v = boost::math::is_base_of<T, U>::value;
| ^~~~~~~~~~~~
In file included from ../boost/math/special_functions/math_fwd.hpp:28,
from ../boost/math/special_functions/trunc.hpp:21,
from ../boost/math/differentiation/autodiff.hpp:11:
../boost/math/tools/promotion.hpp:90:36: error: 'common_type_t' in namespace 'boost::math' does not name a template type; did you mean 'common_type'?
90 | using type = boost::math::common_type_t<T1, T2, float>;
| ^~~~~~~~~~~~~
| common_type
../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
../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
../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
../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
../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
../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
../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>
| ^
../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
../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
../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 ../boost/math/special_functions/detail/polygamma.hpp:24,
from ../boost/math/special_functions/polygamma.hpp:15,
from ../boost/math/differentiation/autodiff.hpp:17:
../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)
| ^~~
../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);
| ^~~
../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)
| ^~~
../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);
| ^~~
../boost/math/tools/promotion.hpp: In instantiation of 'struct boost::math::tools::promote_args_permissive<double, double>':
../boost/math/tools/promotion.hpp:119:16: required from 'struct boost::math::tools::promote_args<double, double>'
../boost/math/differentiation/autodiff.hpp:2007:9: recursively required from 'struct boost::math::tools::promote_args<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0> >'
../boost/math/differentiation/autodiff.hpp:42:9: recursively required from 'struct boost::math::differentiation::autodiff_v1::detail::promote_args_n<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>, boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>, boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>, 0> >'
../boost/math/differentiation/autodiff.hpp:42:9: required from 'struct boost::math::differentiation::autodiff_v1::detail::promote_args_n<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>, boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>, boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>, 0> >'
../boost/math/differentiation/autodiff.hpp:53:7: required by substitution of 'template<class RealType, class ... RealTypes> using boost::math::differentiation::autodiff_v1::promote = typename boost::math::differentiation::autodiff_v1::detail::promote_args_n::type [with RealType = boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>; RealTypes = {boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>, boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>, boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>, 0>}]'
../libs/math/example/autodiff_black_scholes.cpp:32:34: required by substitution of 'template<class Price, class Sigma, class Tau, class Rate> boost::math::differentiation::autodiff_v1::promote<Price, Sigma, Tau, Rate> black_scholes_option_price(CP, double, const Price&, const Sigma&, const Tau&, const Rate&) [with Price = boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>; Sigma = boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>; Tau = boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>; Rate = boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>, 0>]'
../libs/math/example/autodiff_black_scholes.cpp:58:53: required from here
../boost/math/tools/promotion.hpp:105:16: error: no type named 'type' in 'struct boost::math::tools::pa2_integral_already_removed<double, double, true>'
105 | using type = typename pa2_integral_already_removed<
| ^~~~
../libs/math/example/autodiff_black_scholes.cpp: In function 'int main()':
../libs/math/example/autodiff_black_scholes.cpp:58:53: error: no matching function for call to 'black_scholes_option_price(CP, const double&, const boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>&, const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>&, const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>&, const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>, 0>&)'
58 | auto const call_price = black_scholes_option_price(CP::call, K, S, sigma, tau, r);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../libs/math/example/autodiff_black_scholes.cpp:32:34: note: candidate: 'template<class Price, class Sigma, class Tau, class Rate> boost::math::differentiation::autodiff_v1::promote<Price, Sigma, Tau, Rate> black_scholes_option_price(CP, double, const Price&, const Sigma&, const Tau&, const Rate&)'
32 | promote<Price, Sigma, Tau, Rate> black_scholes_option_price(CP cp,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
../libs/math/example/autodiff_black_scholes.cpp:32:34: note: substitution of deduced template arguments resulted in errors seen above
../libs/math/example/autodiff_black_scholes.cpp:59:52: error: no matching function for call to 'black_scholes_option_price(CP, const double&, const boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>&, const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>&, const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>&, const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>, 0>&)'
59 | auto const put_price = black_scholes_option_price(CP::put, K, S, sigma, tau, r);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../libs/math/example/autodiff_black_scholes.cpp:32:34: note: candidate: 'template<class Price, class Sigma, class Tau, class Rate> boost::math::differentiation::autodiff_v1::promote<Price, Sigma, Tau, Rate> black_scholes_option_price(CP, double, const Price&, const Sigma&, const Tau&, const Rate&)'
32 | promote<Price, Sigma, Tau, Rate> black_scholes_option_price(CP cp,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
../libs/math/example/autodiff_black_scholes.cpp:32:34: note: template argument deduction/substitution failed:
../libs/math/example/autodiff_black_scholes.cpp:61:66: error: no match for 'operator*' (operand types are 'const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>' and 'const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>')
61 | double const d1 = static_cast<double>((log(S / K) + (r + sigma * sigma / 2) * tau) / (sigma * sqrt(tau)));
| ~~~~~ ^ ~~~~~
| | |
| | fvar<[...],[...]>
| fvar<[...],[...]>
../libs/math/example/autodiff_black_scholes.cpp:61:66: note: candidate: 'operator*(boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>::root_type {aka double}, boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>::root_type {aka double})' (built-in)
61 | double const d1 = static_cast<double>((log(S / K) + (r + sigma * sigma / 2) * tau) / (sigma * sqrt(tau)));
| ~~~~~~^~~~~~~
../libs/math/example/autodiff_black_scholes.cpp:61:66: note: no known conversion for argument 2 from 'const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>' to 'boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>::root_type' {aka 'double'}
../boost/math/differentiation/autodiff.hpp:219:42: note: candidate: 'template<class RealType2, long unsigned int Order2> boost::math::differentiation::autodiff_v1::promote<boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order>, boost::math::differentiation::autodiff_v1::detail::fvar<RealType2, Order2> > boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order>::operator*(const boost::math::differentiation::autodiff_v1::detail::fvar<RealType2, Order2>&) const [with long unsigned int Order2 = RealType2; RealType = boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>; long unsigned int Order = 0]'
219 | promote<fvar, fvar<RealType2, Order2>> operator*(fvar<RealType2, Order2> const&)const;
| ^~~~~~~~
../boost/math/differentiation/autodiff.hpp:219:42: note: template argument deduction/substitution failed:
../boost/math/differentiation/autodiff.hpp:861:23: note: candidate: 'boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order> boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order>::operator*(const root_type&) const [with RealType = boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>; long unsigned int Order = 0; root_type = double]'
861 | fvar<RealType, Order> fvar<RealType, Order>::operator*(root_type const& ca) const {
| ^~~~~~~~~~~~~~~~~~~~~
../boost/math/differentiation/autodiff.hpp:861:73: note: no known conversion for argument 1 from 'const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>' to 'const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>::root_type&' {aka 'const double&'}
861 | fvar<RealType, Order> fvar<RealType, Order>::operator*(root_type const& ca) const {
| ~~~~~~~~~~~~~~~~~^~
../boost/math/differentiation/autodiff.hpp:868:23: note: candidate: 'boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order> boost::math::differentiation::autodiff_v1::detail::operator*(const typename fvar<RealType, Order>::root_type&, const fvar<RealType, Order>&) [with RealType = fvar<double, 3>; long unsigned int Order = 0; typename fvar<RealType, Order>::root_type = double]'
868 | fvar<RealType, Order> operator*(typename fvar<RealType, Order>::root_type const& ca,
| ^~~~~~~~
../boost/math/differentiation/autodiff.hpp:868:82: note: no known conversion for argument 1 from 'const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>' to 'const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>::root_type&' {aka 'const double&'}
868 | fvar<RealType, Order> operator*(typename fvar<RealType, Order>::root_type const& ca,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
../libs/math/example/autodiff_black_scholes.cpp:61:95: error: no match for 'operator*' (operand types are 'const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>' and 'boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>')
61 | double const d1 = static_cast<double>((log(S / K) + (r + sigma * sigma / 2) * tau) / (sigma * sqrt(tau)));
| ~~~~~ ^ ~~~~~~~~~
| | |
| | fvar<fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>,0>,[...]>
| fvar<fvar<double,3>,[...]>
../libs/math/example/autodiff_black_scholes.cpp:61:95: note: candidate: 'operator*(boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>::root_type {aka double}, boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>::root_type {aka double})' (built-in)
61 | double const d1 = static_cast<double>((log(S / K) + (r + sigma * sigma / 2) * tau) / (sigma * sqrt(tau)));
| ~~~~~~^~~~~~~~~~~
../libs/math/example/autodiff_black_scholes.cpp:61:95: note: no known conversion for argument 2 from 'boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>' to 'boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>::root_type' {aka 'double'}
../boost/math/differentiation/autodiff.hpp:219:42: note: candidate: 'template<class RealType2, long unsigned int Order2> boost::math::differentiation::autodiff_v1::promote<boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order>, boost::math::differentiation::autodiff_v1::detail::fvar<RealType2, Order2> > boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order>::operator*(const boost::math::differentiation::autodiff_v1::detail::fvar<RealType2, Order2>&) const [with long unsigned int Order2 = RealType2; RealType = boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>; long unsigned int Order = 0]'
219 | promote<fvar, fvar<RealType2, Order2>> operator*(fvar<RealType2, Order2> const&)const;
| ^~~~~~~~
../boost/math/differentiation/autodiff.hpp:219:42: note: template argument deduction/substitution failed:
../boost/math/differentiation/autodiff.hpp:861:23: note: candidate: 'boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order> boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order>::operator*(const root_type&) const [with RealType = boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>; long unsigned int Order = 0; root_type = double]'
861 | fvar<RealType, Order> fvar<RealType, Order>::operator*(root_type const& ca) const {
| ^~~~~~~~~~~~~~~~~~~~~
../boost/math/differentiation/autodiff.hpp:861:73: note: no known conversion for argument 1 from 'boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>' to 'const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>::root_type&' {aka 'const double&'}
861 | fvar<RealType, Order> fvar<RealType, Order>::operator*(root_type const& ca) const {
| ~~~~~~~~~~~~~~~~~^~
../boost/math/differentiation/autodiff.hpp:868:23: note: candidate: 'boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order> boost::math::differentiation::autodiff_v1::detail::operator*(const typename fvar<RealType, Order>::root_type&, const fvar<RealType, Order>&) [with RealType = fvar<fvar<double, 1>, 0>; long unsigned int Order = 0; typename fvar<RealType, Order>::root_type = double]'
868 | fvar<RealType, Order> operator*(typename fvar<RealType, Order>::root_type const& ca,
| ^~~~~~~~
../boost/math/differentiation/autodiff.hpp:868:82: note: no known conversion for argument 1 from 'const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>' to 'const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>::root_type&' {aka 'const double&'}
868 | fvar<RealType, Order> operator*(typename fvar<RealType, Order>::root_type const& ca,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
../libs/math/example/autodiff_black_scholes.cpp:62:66: error: no match for 'operator*' (operand types are 'const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>' and 'const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>')
62 | double const d2 = static_cast<double>((log(S / K) + (r - sigma * sigma / 2) * tau) / (sigma * sqrt(tau)));
| ~~~~~ ^ ~~~~~
| | |
| | fvar<[...],[...]>
| fvar<[...],[...]>
../libs/math/example/autodiff_black_scholes.cpp:62:66: note: candidate: 'operator*(boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>::root_type {aka double}, boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>::root_type {aka double})' (built-in)
62 | double const d2 = static_cast<double>((log(S / K) + (r - sigma * sigma / 2) * tau) / (sigma * sqrt(tau)));
| ~~~~~~^~~~~~~
../libs/math/example/autodiff_black_scholes.cpp:62:66: note: no known conversion for argument 2 from 'const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>' to 'boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>::root_type' {aka 'double'}
../boost/math/differentiation/autodiff.hpp:219:42: note: candidate: 'template<class RealType2, long unsigned int Order2> boost::math::differentiation::autodiff_v1::promote<boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order>, boost::math::differentiation::autodiff_v1::detail::fvar<RealType2, Order2> > boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order>::operator*(const boost::math::differentiation::autodiff_v1::detail::fvar<RealType2, Order2>&) const [with long unsigned int Order2 = RealType2; RealType = boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>; long unsigned int Order = 0]'
219 | promote<fvar, fvar<RealType2, Order2>> operator*(fvar<RealType2, Order2> const&)const;
| ^~~~~~~~
../boost/math/differentiation/autodiff.hpp:219:42: note: template argument deduction/substitution failed:
../boost/math/differentiation/autodiff.hpp:861:23: note: candidate: 'boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order> boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order>::operator*(const root_type&) const [with RealType = boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>; long unsigned int Order = 0; root_type = double]'
861 | fvar<RealType, Order> fvar<RealType, Order>::operator*(root_type const& ca) const {
| ^~~~~~~~~~~~~~~~~~~~~
../boost/math/differentiation/autodiff.hpp:861:73: note: no known conversion for argument 1 from 'const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>' to 'const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>::root_type&' {aka 'const double&'}
861 | fvar<RealType, Order> fvar<RealType, Order>::operator*(root_type const& ca) const {
| ~~~~~~~~~~~~~~~~~^~
../boost/math/differentiation/autodiff.hpp:868:23: note: candidate: 'boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order> boost::math::differentiation::autodiff_v1::detail::operator*(const typename fvar<RealType, Order>::root_type&, const fvar<RealType, Order>&) [with RealType = fvar<double, 3>; long unsigned int Order = 0; typename fvar<RealType, Order>::root_type = double]'
868 | fvar<RealType, Order> operator*(typename fvar<RealType, Order>::root_type const& ca,
| ^~~~~~~~
../boost/math/differentiation/autodiff.hpp:868:82: note: no known conversion for argument 1 from 'const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>' to 'const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>::root_type&' {aka 'const double&'}
868 | fvar<RealType, Order> operator*(typename fvar<RealType, Order>::root_type const& ca,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
../libs/math/example/autodiff_black_scholes.cpp:62:95: error: no match for 'operator*' (operand types are 'const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>' and 'boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>')
62 | double const d2 = static_cast<double>((log(S / K) + (r - sigma * sigma / 2) * tau) / (sigma * sqrt(tau)));
| ~~~~~ ^ ~~~~~~~~~
| | |
| | fvar<fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>,0>,[...]>
| fvar<fvar<double,3>,[...]>
../libs/math/example/autodiff_black_scholes.cpp:62:95: note: candidate: 'operator*(boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>::root_type {aka double}, boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>::root_type {aka double})' (built-in)
62 | double const d2 = static_cast<double>((log(S / K) + (r - sigma * sigma / 2) * tau) / (sigma * sqrt(tau)));
| ~~~~~~^~~~~~~~~~~
../libs/math/example/autodiff_black_scholes.cpp:62:95: note: no known conversion for argument 2 from 'boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>' to 'boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>::root_type' {aka 'double'}
../boost/math/differentiation/autodiff.hpp:219:42: note: candidate: 'template<class RealType2, long unsigned int Order2> boost::math::differentiation::autodiff_v1::promote<boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order>, boost::math::differentiation::autodiff_v1::detail::fvar<RealType2, Order2> > boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order>::operator*(const boost::math::differentiation::autodiff_v1::detail::fvar<RealType2, Order2>&) const [with long unsigned int Order2 = RealType2; RealType = boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>; long unsigned int Order = 0]'
219 | promote<fvar, fvar<RealType2, Order2>> operator*(fvar<RealType2, Order2> const&)const;
| ^~~~~~~~
../boost/math/differentiation/autodiff.hpp:219:42: note: template argument deduction/substitution failed:
../boost/math/differentiation/autodiff.hpp:861:23: note: candidate: 'boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order> boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order>::operator*(const root_type&) const [with RealType = boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>; long unsigned int Order = 0; root_type = double]'
861 | fvar<RealType, Order> fvar<RealType, Order>::operator*(root_type const& ca) const {
| ^~~~~~~~~~~~~~~~~~~~~
../boost/math/differentiation/autodiff.hpp:861:73: note: no known conversion for argument 1 from 'boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>' to 'const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>::root_type&' {aka 'const double&'}
861 | fvar<RealType, Order> fvar<RealType, Order>::operator*(root_type const& ca) const {
| ~~~~~~~~~~~~~~~~~^~
../boost/math/differentiation/autodiff.hpp:868:23: note: candidate: 'boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order> boost::math::differentiation::autodiff_v1::detail::operator*(const typename fvar<RealType, Order>::root_type&, const fvar<RealType, Order>&) [with RealType = fvar<fvar<double, 1>, 0>; long unsigned int Order = 0; typename fvar<RealType, Order>::root_type = double]'
868 | fvar<RealType, Order> operator*(typename fvar<RealType, Order>::root_type const& ca,
| ^~~~~~~~
../boost/math/differentiation/autodiff.hpp:868:82: note: no known conversion for argument 1 from 'const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>' to 'const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>::root_type&' {aka 'const double&'}
868 | fvar<RealType, Order> operator*(typename fvar<RealType, Order>::root_type const& ca,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
../libs/math/example/autodiff_black_scholes.cpp:65:63: error: no match for 'operator*' (operand types are 'boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>' and 'boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>')
65 | double const formula_vega = static_cast<double>(S * phi(d1) * sqrt(tau));
| ~~~~~~~~~~~ ^ ~~~~~~~~~
| | |
| fvar<double,3> fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>,0>
../libs/math/example/autodiff_black_scholes.cpp:65:63: note: candidate: 'operator*(boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>::root_type {aka double}, boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>::root_type {aka double})' (built-in)
65 | double const formula_vega = static_cast<double>(S * phi(d1) * sqrt(tau));
| ~~~~~~~~~~~~^~~~~~~~~~~
../libs/math/example/autodiff_black_scholes.cpp:65:63: note: no known conversion for argument 2 from 'boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>' to 'boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>::root_type' {aka 'double'}
../boost/math/differentiation/autodiff.hpp:219:42: note: candidate: 'template<class RealType2, long unsigned int Order2> boost::math::differentiation::autodiff_v1::promote<boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order>, boost::math::differentiation::autodiff_v1::detail::fvar<RealType2, Order2> > boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order>::operator*(const boost::math::differentiation::autodiff_v1::detail::fvar<RealType2, Order2>&) const [with long unsigned int Order2 = RealType2; RealType = double; long unsigned int Order = 3]'
219 | promote<fvar, fvar<RealType2, Order2>> operator*(fvar<RealType2, Order2> const&)const;
| ^~~~~~~~
../boost/math/differentiation/autodiff.hpp:219:42: note: template argument deduction/substitution failed:
../boost/math/differentiation/autodiff.hpp:861:23: note: candidate: 'boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order> boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order>::operator*(const root_type&) const [with RealType = double; long unsigned int Order = 3; root_type = double]'
861 | fvar<RealType, Order> fvar<RealType, Order>::operator*(root_type const& ca) const {
| ^~~~~~~~~~~~~~~~~~~~~
../boost/math/differentiation/autodiff.hpp:861:73: note: no known conversion for argument 1 from 'boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>' to 'const boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>::root_type&' {aka 'const double&'}
861 | fvar<RealType, Order> fvar<RealType, Order>::operator*(root_type const& ca) const {
| ~~~~~~~~~~~~~~~~~^~
../boost/math/differentiation/autodiff.hpp:868:23: note: candidate: 'boost::math::differentiation::autodiff_v1::detail::fvar<RealType, Order> boost::math::differentiation::autodiff_v1::detail::operator*(const typename fvar<RealType, Order>::root_type&, const fvar<RealType, Order>&) [with RealType = fvar<fvar<double, 1>, 0>; long unsigned int Order = 0; typename fvar<RealType, Order>::root_type = double]'
868 | fvar<RealType, Order> operator*(typename fvar<RealType, Order>::root_type const& ca,
| ^~~~~~~~
../boost/math/differentiation/autodiff.hpp:868:82: note: no known conversion for argument 1 from 'boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>' to 'const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 1>, 0>, 0>::root_type&' {aka 'const double&'}
868 | fvar<RealType, Order> operator*(typename fvar<RealType, Order>::root_type const& ca,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
../libs/math/example/autodiff_black_scholes.cpp:67:40: error: no match for 'operator*' (operand types are 'boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>' and 'const boost::math::differentiation::autodiff_v1::detail::fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>, 0>')
67 | static_cast<double>(-S * phi(d1) * sigma / (2 * sqrt(tau)) - r * K * exp(-r * tau) * Phi(+d2));
| ~~~~~~~~~~~~ ^ ~~~~~
| | |
| | fvar<boost::math::differentiation::autodiff_v1::detail::fvar<double, 3>,0>
| ...
[The content has been trimmed by the report system because it exceeds 65536 bytes]