This page is a snapshot from the LWG issues list, see the Library Active Issues List for more information and the meaning of New status.
<stdbit.h>
is not yet freestandingSection: 22.12 [stdbit.h.syn] Status: New Submitter: Jiang An Opened: 2025-04-24 Last modified: 2025-04-27
Priority: Not Prioritized
View all issues with New status.
Discussion:
Per C23/WG14 N3220 4 p7, <stdbit.h>
is freestanding in C23, but C++ hasn't required it for a freestanding implementation.
LWG 4049(i) is related but doesn't cover this, because there's no <cstdbit>
standard header.
Proposed resolution:
This wording is relative to N5008.
Modify Table 27 [tab:headers.cpp.fs] as indicated:
Table 27: C++ headers for freestanding implementations [tab:headers.cpp.fs] Subclause Header […]
22.11 [bit] Bit manipulation <bit>
22.12 [stdbit.h.syn] C-compatible bit manipulation <stdbit.h>
23.3.3 [array] Class template array
<array>
[…]
Modify 22.12 [stdbit.h.syn], header <stdbit.h>
synopsis, as indicated:
// all freestanding #define __STDC_VERSION_STDBIT_H__ 202311L #define __STDC_ENDIAN_BIG__ see below #define __STDC_ENDIAN_LITTLE__ see below #define __STDC_ENDIAN_NATIVE__ see below […]