[libc-commits] [libc] [libc][docs] start documenting c23 support (PR #81933)
Nick Desaulniers via libc-commits
libc-commits at lists.llvm.org
Fri Feb 16 08:55:43 PST 2024
https://github.com/nickdesaulniers updated https://github.com/llvm/llvm-project/pull/81933
>From d2e257102899e086769bc6e5f50248bcac6b1bd5 Mon Sep 17 00:00:00 2001
From: Nick Desaulniers <ndesaulniers at google.com>
Date: Thu, 15 Feb 2024 14:21:46 -0800
Subject: [PATCH 1/2] [libc][docs] start documenting c23 support
I've been diffing the c17 vs c23 latest publicly available drafts and think I
have most of the library related differences. I haven't yet annotated what we
actually support or not.
Link: https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2310.pdf (C17)
Link: https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3096.pdf (C23)
---
libc/docs/c23.rst | 114 ++++++++++++++++++++++++++++++++++++++++++++
libc/docs/index.rst | 1 +
2 files changed, 115 insertions(+)
create mode 100644 libc/docs/c23.rst
diff --git a/libc/docs/c23.rst b/libc/docs/c23.rst
new file mode 100644
index 00000000000000..b2c02c8505aaa1
--- /dev/null
+++ b/libc/docs/c23.rst
@@ -0,0 +1,114 @@
+.. _c23_support:
+
+===========
+C23 Support
+===========
+
+.. contents:: Table of Contents
+ :depth: 4
+ :local:
+
+---------------------
+Implementation Status
+---------------------
+
+(It's helpful to review 'Annex B (Informative) Library Summary' for these.)
+
+New headers:
+
+* stdbit.h
+* stdckdint.h
+* stdnoreturn.h
+
+Additions:
+
+* uchar.h
+
+ * mbrtoc8
+ * c8rtomb
+
+* string.h
+
+ * memset_explicit
+ * memccpy
+ * strdup
+ * strndup
+
+* time.h
+
+ * gmtime_r
+ * localtime_r
+ * timegm
+ * timespec_getres
+ * strftime conversion specifiers
+
+ * 0b
+ * 0B
+* math.h
+
+ * acospi*
+ * asinpi*
+ * atanpi*
+ * atan2pi*
+ * cospi*
+ * sinpi*
+ * tanpi*
+ * exp10*
+ * exp10m1*
+ * exp2m1*
+ * log10p1*
+ * logp1
+ * log2p1*
+ * rsqrt*
+ * __STDC_IEC_60559_DFP__ functions (_Decimal32, _Decimal64, _Decimal128)
+ * compoundn*
+ * totalorder*
+ * totalordermag*
+ * getpayload*
+ * setpayload*
+ * iscannonical
+ * issignaling
+ * issubnormal
+ * iszero
+ * llogb*
+ * pown*
+ * powr*
+ * rootn*
+ * roundeven*
+ * fromfp*
+ * ufromfp*
+ * fromfpx*
+ * nextup*
+ * nextdown*
+ * canonicalize*
+ * fmaximum*
+ * fminimum*
+ * fmaximum_mag*
+ * fminimum_mag*
+ * fmaximum_mag_num*
+ * fminimum_mag_num*
+ * fadd*
+ * fsub*
+ * fmul*
+ * fdiv*
+ * ffma*
+ * dfmal
+ * fsqrt*
+ * dsqrtl
+* fenv.h
+
+ * fesetexcept
+ * fetestexceptflag
+ * fegetmode
+ * fesetmode
+* stddef.h
+
+ * unreachable
+* stdlib.h
+
+ * free_sized
+ * free_aligned_sized
+ * memalignment
+* tgmath.h
+
+ * <TODO>
diff --git a/libc/docs/index.rst b/libc/docs/index.rst
index 7655cb9ccd7116..a50eb080c9ee49 100644
--- a/libc/docs/index.rst
+++ b/libc/docs/index.rst
@@ -67,6 +67,7 @@ stages there is no ABI stability in any form.
stdio
stdbit
libc_search
+ c23
.. toctree::
:hidden:
>From dad2c0d0cda73ffa5e572903674b5179c6553c41 Mon Sep 17 00:00:00 2001
From: Nick Desaulniers <ndesaulniers at google.com>
Date: Fri, 16 Feb 2024 08:55:31 -0800
Subject: [PATCH 2/2] remove stdnoreturn.h, add char*_t uchar.h types
---
libc/docs/c23.rst | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libc/docs/c23.rst b/libc/docs/c23.rst
index b2c02c8505aaa1..6d5edbfbf5e718 100644
--- a/libc/docs/c23.rst
+++ b/libc/docs/c23.rst
@@ -18,7 +18,6 @@ New headers:
* stdbit.h
* stdckdint.h
-* stdnoreturn.h
Additions:
@@ -26,6 +25,7 @@ Additions:
* mbrtoc8
* c8rtomb
+ * char*_t
* string.h
More information about the libc-commits
mailing list