The upcoming standard C23 has a lot of additions to the C library clause. Most of them are small, some of them are big but optional. I have now finished a first version of a document that summarizes many of the changes. It has some general discussions about the following subjects
- Unicode support
- Thread safety of the C library
- Const-contract of the C library
- Changes to integer types
and then lists changes to individual header files of the C library.
This does not contain an detailed description of the changes to the
math.h header. First, I am really not an expert on that, and second the changes there are quite invasive and we don’t have a diff-file that would clearly list them.
3 thoughts on “C23 implications for C libraries”
FYI: Not having a Twitter, WordPress or Facebook account, I can’t login to leave a comment. (OK: I have a Facebook account. I don’t use it, and I do my best to pretend it doesn’t exist, and I’ve never used it to login anywhere else, and I have no plans to change that decision.)
The “C23 Implications for C Libraries” document is interesting and helpful — thank you.
In section 6.5, you have
__BITITNT_MAX__several times — I think that should be
__BITINT_MAX__(one fewer T’s). Later (section 14.2), you have the shorter version.
thanks for sharing your observations.
Yes, I don’t have my DM’s open on my mostly dormant tw account either and I cancelled fb years ago.
For everybody: if you want to have a public discussion on the contents of one of my posts go to mastodon, there is a link in the right panel.
If you want to engage in a private conversation or just notify me about typos or factual errors, send me a mail or give me a call. If you live in the human realm there should not be much of a difficulty to find out how to reach me; for robots this seems still kind of tough.
Also, in section 5 (Const-contract of the C Library), you list:
bsearch_t bsearch …
Is the first one supposed to be bsearch_s?