-
Notifications
You must be signed in to change notification settings - Fork 52
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Testfailures if boost::uint_t<XX>::fast isn't the same as boost::uint_t<XX>::least #12
Comments
MBalszun
changed the title
Testfailures if boost::uint_t::fast isn't the same as boost::uint_t::least
Testfailures if boost::uint_t<XX>::fast isn't the same as boost::uint_t<XX>::least
Jul 16, 2020
Error message when executing b2 in the boost.crc test directory after
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I don't know what the exact reason is, but if you apply the following patch to Boost.Integer, crc_test and crc_test2 fail:
Best I can tell, this is the correct way to tell boost that it is faster to perform operations on ints than on shorts on a particular platform, even if you only need 16 bit.
Background: I was trying to convert Boost.CRC int a standalone version without any boost dependencies using the
std::uint_fast_XX_t / _least_XX_t
type alieases instead of theboost::uint_t<XX>::fast/least
ones.At least on msvc x64,
std::uint_fast16_t
isunsigned int
, notunsigned short
. After some investigation I could reproduce this even without touching boost crc but only changingboost::uint_t<16>
in Boost.Integer as above.The text was updated successfully, but these errors were encountered: