boostorg / multiprecision

Boost.Multiprecision
Boost Software License 1.0
194 stars 111 forks source link

Define BOOST_MP_NO_ET_IMPLICIT_CONVERSIONS for Clang 14 w/C++17 on Linux #545

Closed mborland closed 8 months ago

mborland commented 1 year ago

Workaround for #544

jzmaddock commented 1 year ago

If this is required all the way up to clang-14, then the whole concept of this fix is probably not viable after all :(

But.... didn't CI with clang-14 pass without this define? What's the test case - I wonder if the issue is dependent on the std lib is_constructible internals which would be horrible/worrying?

mborland commented 1 year ago

It is only clang-14 that failed here: https://github.com/boostorg/math/actions/runs/4474375135/jobs/7862781129#step:17:315. Based on the error it looks like Clang is using the version of libstdc++ that comes with g++12, but g++12 compiles it fine.