[libc-commits] [libc] 58946ee - [libc][docs] start documenting c23 support (#81933)
via libc-commits
libc-commits at lists.llvm.org
Fri Feb 16 08:56:28 PST 2024
Author: Nick Desaulniers
Date: 2024-02-16T08:56:24-08:00
New Revision: 58946ee435dca2071ce8eec1961de29e7378ec03
URL: https://github.com/llvm/llvm-project/commit/58946ee435dca2071ce8eec1961de29e7378ec03
DIFF: https://github.com/llvm/llvm-project/commit/58946ee435dca2071ce8eec1961de29e7378ec03.diff
LOG: [libc][docs] start documenting c23 support (#81933)
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)
Added:
libc/docs/c23.rst
Modified:
libc/docs/index.rst
Removed:
################################################################################
diff --git a/libc/docs/c23.rst b/libc/docs/c23.rst
new file mode 100644
index 00000000000000..6d5edbfbf5e718
--- /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
+
+Additions:
+
+* uchar.h
+
+ * mbrtoc8
+ * c8rtomb
+ * char*_t
+
+* 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:
More information about the libc-commits
mailing list