[libcxx-commits] [PATCH] D134110: [libc++][format] Implements formattable concept.

Mark de Wever via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Sat Sep 17 05:35:50 PDT 2022


Mordante created this revision.
Mordante added reviewers: ldionne, vitaut.
Herald added a project: All.
Mordante requested review of this revision.
Herald added a project: libc++.
Herald added a subscriber: libcxx-commits.
Herald added a reviewer: libc++.

This concept is introduced in P2286 <https://reviews.llvm.org/P2286>, but was implemented in libc++
before. This implementation was used in the library internally. This
implementation lacked the resolution of LWG3636. The original formatter
had a non-const member function that wasn't trivial to make a const
member. The recent parser improvements made this member a const member
in preparation of LWG3636.

Note LWG3636 isn't voted in. Its status is Ready. P2286 <https://reviews.llvm.org/P2286>'s concept has be
written as-if LWG3636 is accepted and refers to that LWG issue.

Updates some tests make format a const member function and removes a
tests that's mainly a duplicate of the formattable concept test.

Implements

- LWG3636 formatter<T>::format should be const-qualified

Implements parts of

- P2286R8 Formatting Ranges


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D134110

Files:
  libcxx/docs/Status/Cxx2bIssues.csv
  libcxx/docs/Status/FormatPaper.csv
  libcxx/include/__format/concepts.h
  libcxx/test/libcxx/utilities/format/format.formatter/format.formatter.spec/formattable.compile.pass.cpp
  libcxx/test/std/utilities/format/format.formattable/concept.formattable.compile.pass.cpp
  libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.handle.pass.cpp
  libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/types.compile.pass.cpp
  libcxx/test/std/utilities/format/format.functions/P2418.pass.cpp
  libcxx/test/std/utilities/format/format.functions/format_tests.h

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D134110.460996.patch
Type: text/x-patch
Size: 22632 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20220917/361e6d30/attachment-0001.bin>


More information about the libcxx-commits mailing list