[all-commits] [llvm/llvm-project] cd7a7a: Add basic char*_t support for libc (partial WG14 N...
Fabian Keßler via All-commits
all-commits at lists.llvm.org
Tue Apr 30 15:09:00 PDT 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: cd7a7a56fc73c73855036f77a4f69ea90c75c27a
https://github.com/llvm/llvm-project/commit/cd7a7a56fc73c73855036f77a4f69ea90c75c27a
Author: Fabian Keßler <fabian_kessler at gmx.de>
Date: 2024-04-30 (Tue, 30 Apr 2024)
Changed paths:
M libc/config/baremetal/api.td
M libc/config/linux/aarch64/headers.txt
M libc/config/linux/api.td
M libc/config/linux/arm/headers.txt
M libc/config/linux/riscv/headers.txt
M libc/config/linux/x86_64/headers.txt
M libc/docs/c23.rst
M libc/include/CMakeLists.txt
M libc/include/llvm-libc-types/CMakeLists.txt
A libc/include/llvm-libc-types/char16_t.h
A libc/include/llvm-libc-types/char32_t.h
A libc/include/llvm-libc-types/char8_t.h
M libc/spec/spec.td
M libc/spec/stdc.td
Log Message:
-----------
Add basic char*_t support for libc (partial WG14 N2653) (#90360)
This PR implements a part of WG14 N2653:
- Define C23 char8_t
- Define C11 char16_t
- Define C11 char32_t
Missing goals are:
- The type of UTF-8 character literals is changed from unsigned char to
char8_t. (Since UTF-8 character literals already have type unsigned
char, this is not a semantic change).
- New mbrtoc8() and c8rtomb() functions declared in <uchar.h> enable
conversions between multibyte characters and UTF-8.
- A new ATOMIC_CHAR8_T_LOCK_FREE macro.
- A new atomic_char8_t typedef name.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list