Title
C <foo.h> headers not in freestanding
Status
new
Section
[organization]
Submitter
Ben Craig

Created on 2024-01-26.00:00:00 last changed 3 months ago

Messages

Date: 2024-08-21.15:02:31

Proposed resolution:

This wording is relative to N4971.

  1. Modify [headers] as indicated:

    -9- [support.c.headers], C standard library headers, describes the effects of using the name.h (C header) form in a C++ program. The name.h form is the corresponding C header form.

  2. Modify [compliance] as indicated:

    -2- A freestanding implementation has an implementation-defined set of headers. This set shall include at least the headers shown in Table 27 and the corresponding C header form ([headers]) of each of the C++ headers for C library facilities (Table 25) included in Table 27.

Date: 2024-08-15.00:00:00

[ 2024-08-21; Reflector poll ]

Set priority to 3 after reflector poll. Some discomfort requiring `errno.h` and `wchar.h` to be freestanding in C++ when they are not in C23. `string.h` is not freestanding in C17, but is in C23 (but C++ is still based on C17). `stdlib.h` is "conditionally partially freestanding" in C23, but not in C17. Suggestion to incorporate this into P3348.

Date: 2024-01-26.00:00:00

There are many C-ish <cfoo> headers in freestanding. There isn't anything that requires the matching C <foo.h> headers to be in freestanding.

History
Date User Action Args
2024-08-21 15:02:31adminsetmessages: + msg14327
2024-01-28 11:34:55adminsetmessages: + msg13939
2024-01-26 00:00:00admincreate