aboutsummaryrefslogtreecommitdiffstats
path: root/include/bit
diff options
context:
space:
mode:
Diffstat (limited to 'include/bit')
-rw-r--r--include/bit21
1 files changed, 21 insertions, 0 deletions
diff --git a/include/bit b/include/bit
index 1c0e8ad3ba8b..8800b22b7bcb 100644
--- a/include/bit
+++ b/include/bit
@@ -42,6 +42,13 @@ namespace std {
template<class T>
constexpr int popcount(T x) noexcept; // C++20
+ // 20.15.9, endian
+ enum class endian {
+ little = see below, // C++20
+ big = see below, // C++20
+ native = see below // C++20
+};
+
} // namespace std
*/
@@ -456,6 +463,20 @@ log2p1(_Tp __t) noexcept
return __t == 0 ? 0 : __bit_log2(__t) + 1;
}
+
+enum class endian
+{
+ little = 0xDEAD,
+ big = 0xFACE,
+#if defined(_LIBCPP_LITTLE_ENDIAN)
+ native = little
+#elif defined(_LIBCPP_BIG_ENDIAN)
+ native = big
+#else
+ native = 0xCAFE
+#endif
+};
+
#endif // _LIBCPP_STD_VER > 17
_LIBCPP_END_NAMESPACE_STD