If I comment: // float128 e1 = exp(1.Q); // Note argument to exp is type float128. // std::cout << e1 << std::endl; // 2.71828182845904523536028747135266231 the example compiles correctly. Floating-point type boost::float128_t is available. std::numeric_limitsboost::float128_t::digits10 == 33 std::numeric_limitsboost::float128_t::max_digits10 == 36 Platform: Mac OS Compiler: GNU C++ version 11.1.0 STL : GNU libstdc++ version 20210427 Boost : 1.76.0 GCC 11.1.0 1.77245385090551602729816748334114514 1.77245385090551602729816748334114514 1.77245385090551602729816748334114514 1.77245385090551602729816748334114514 1.77245385090551599275151910313924857 3.14159265358979323846264338327950280 1.77245385090551602729816748334114514 2.71828182845904523536028747135266231 2.71828182845904509079559829842764884 2.71828182845904509079559829842764884 2.71828174591064453125000000000000000 2.71828182845904523536028747135266231 2.71828182845904523536028747135266231 2.71828182845904523536028747135266231 N5boost14multiprecision6numberINS0_8backends16float128_backendELNS0_26expression_template_optionE0EEE N5boost14multiprecision6numberINS0_8backends16float128_backendELNS0_26expression_template_optionE0EEE N5boost14multiprecision6numberINS0_8backends16float128_backendELNS0_26expression_template_optionE0EEE
Il giorno 21 lug 2021, alle ore 18:48, John Maddock via Boost-users
ha scritto: The compiler is quite correct: there are no std lib functions for the built in type __float128, there are however for boost::multiprecision::float128 which is the type you should be using throughout.