-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Concentrated header for internal bit utilities #3721
Conversation
Also reduces inclusion dependency on `<limits>`.
Also - add `_STL_INTERNAL_STATIC_ASSERT`; - add `_INLINE_VAR` to `_Is_standard_unsigned_integer`.
tests/std/tests/GH_002431_byte_range_find_with_unreachable_sentinel/test.cpp
Show resolved
Hide resolved
#endif // _HAS_NEON_INTRINSICS | ||
|
||
template <class _Ty> | ||
_INLINE_VAR constexpr bool _Is_standard_unsigned_integer = |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No change requested: Nice catch!! We mistakenly lacked _INLINE_VAR
here:
Lines 1204 to 1205 in c8d1efb
template <class _Ty> | |
constexpr bool _Is_standard_unsigned_integer = |
This comment was marked as resolved.
This comment was marked as resolved.
I'm mirroring this to the MSVC-internal repo - please notify me if any further changes are pushed. |
I pushed a conflict-free merge with |
#if !defined(_M_CEE_PURE) && !defined(__CUDACC__) && !defined(__INTEL_COMPILER) | ||
#define _HAS_COUNTL_ZERO_INTRINSICS 1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Note to other reviewers: I kept this structure for consistency with our other intrinsics guards, even though this one could arguably be De Morganed.
Thanks for this major header restructuring! 🛠️ 🎉 😸 |
I observe that |
|
This broke with microsoft/STL#3721 It's a minor issue and a minor fix. :)
Also reduces inclusion dependency on
<limits>
.Currently
__isa_available
and_Stl_isa_available_meow
are made unconditionally declared, but it might be better to avoid declaring them under some circumstances.Fixes #3692. Fixes #832.
MSVC-internal changes are needed for the new header
<__msvc_bit_utils.hpp>
.