[all-commits] [llvm/llvm-project] a15ae4: [libc++] Make to_chars base 10 header only.

mordante via All-commits all-commits at lists.llvm.org
Wed Jun 1 23:00:44 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: a15ae4139ceaa03c74089b727d91e39e772a94fb
      https://github.com/llvm/llvm-project/commit/a15ae4139ceaa03c74089b727d91e39e772a94fb
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2022-06-02 (Thu, 02 Jun 2022)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    A libcxx/include/__charconv/tables.h
    A libcxx/include/__charconv/to_chars_base_10.h
    M libcxx/include/charconv
    M libcxx/include/module.modulemap
    M libcxx/src/charconv.cpp
    M libcxx/test/libcxx/private_headers.verify.cpp

  Log Message:
  -----------
  [libc++] Make to_chars base 10 header only.

The functions to_chars and from_chars should offer 128-bit support. This
is the first step to implement 128-bit version of to_chars. Before
implementing 128-bit support the current code will be polished.

This moves the code from the dylib to the header in prepartion of

P2291 "Add Constexpr Modifiers to Functions to_chars and from_chars for
Integral Types in <charconv> Header"

Note some more cleanups will be done in follow-up commits
- Remove the _LIBCPP_AVAILABILITY_TO_CHARS from to_chars. With all code
  in the header the availablilty macro is no longer needed. This
  requires enabling the unit tests for additional platforms.
- The code in the dylib can switch to using the header implementation.
  This allows removing the code duplicated in the header and the dylib.

Reviewed By: #libc, ldionne

Differential Revision: https://reviews.llvm.org/D125704




More information about the All-commits mailing list