Written by theLibc Team
Introduction¶
This document contains the release notes for the libc C Standard Library, part of the LLVM Compiler Infrastructure, release 9.0.0. Here we describe the status of libc in some detail, including major improvements from the previous release and new feature work. For the general LLVM release notes, seethe LLVM documentation. All LLVM releases may be downloaded from theLLVM releases web site.
For more information about libc , please see theLibc Web Siteor theLLVM Web Site.
What’s New in Libc 9.0.0?¶
Fixes¶
- Minor fixes to
std :: chrono
Operators. - libc now correctly handles Objective-C ARC qualifiers in
std :: is_pointer
. std :: span
general updates and fixes.- Updates to the
STD :: ABS
implementation. std :: to_chars
now adds leading zeros.- Ensure
std :: tuple
is trivially constructible. std :: aligned_union
now works in C 03.- Output of nullptr to
std :: basic_ostream
is formatted properly.
Features¶
- Implemented P 0608: sane variant converting constructor.
- Added
ssize
function. - Added
front
andback
methods instd :: span
. std :: is_unbounded_array
andstd :: is_bounded_array
added to type traits.std :: atomic
now includes many new features and specialization including improved Freestanding support.- Added
std :: midpoint
andstd :: lerp
math functions. - Added the function
std :: is_constant_evaluated
. - Erase-like algorithms now return size type.
- Added
contains
method to container types. std :: swap
is now a constant expression.
Updates¶
- libc dropped support for GCC 4.9; we now support GCC 5.1 and above.
- libc added explicit support for WebAssembly System Interface (WASI).
- Progress towards full support of rvalues and variadics in C 03 mode.
std :: move
andstd :: forward
now both work in C 03 Mode.
GIPHY App Key not set. Please check settings