Skip to content

Conversation

frederick-vs-ja
Copy link
Contributor

@frederick-vs-ja frederick-vs-ja commented Jun 9, 2024

Towards #2919/WG21-P2286R8/WG21-P2585R1.

The following tests are derived from libc++'s test files:

  • P2286R8_text_formatting_range_map
  • P2286R8_text_formatting_range_sequence
  • P2286R8_text_formatting_range_set
  • P2286R8_text_formatting_range_string

Note that libc++'s range_formatter is currently buggy on the m option, see LLVM-90196 and LLVM-94562.

The test P2286R8_text_formatting_tuple_disambiguation covers formatting pairs and tuples that are also ranges.

Unblocks libcxx tests:

  • std/containers/sequences/vector.bool/vector.bool.fmt/format.functions.format.pass.cpp
  • std/containers/sequences/vector.bool/vector.bool.fmt/format.functions.vformat.pass.cpp
  • std/utilities/format/format.range/format.range.fmtdef/parse.pass.cpp
  • std/utilities/format/format.range/format.range.fmtmap/format.functions.format.pass.cpp
  • std/utilities/format/format.range/format.range.fmtmap/format.functions.vformat.pass.cpp
  • std/utilities/format/format.range/format.range.fmtmap/parse.pass.cpp
  • std/utilities/format/format.range/format.range.fmtset/parse.pass.cpp
  • std/utilities/format/format.range/format.range.fmtstr/format.functions.format.pass.cpp
  • std/utilities/format/format.range/format.range.fmtstr/format.functions.vformat.pass.cpp
  • std/utilities/format/format.range/format.range.fmtstr/parse.pass.cpp
  • std/input.output/iostream.format/print.fun/includes.compile.pass.cpp

@frederick-vs-ja frederick-vs-ja requested a review from a team as a code owner June 9, 2024 01:45
@frederick-vs-ja frederick-vs-ja force-pushed the range-default-formatter branch 2 times, most recently from af2c18c to a86faaf Compare June 9, 2024 04:17
@frederick-vs-ja

This comment was marked as resolved.

@frederick-vs-ja frederick-vs-ja force-pushed the range-default-formatter branch from a86faaf to 065f92c Compare June 9, 2024 05:40
@cpplearner
Copy link
Contributor

cpplearner commented Jun 9, 2024

There are a lot of code movements. To make code review easier, can you split them into a separate commit?

The following tests are derived from libc++'s test files:
- `P2286R8_text_formatting_range_map`
- `P2286R8_text_formatting_range_sequence`
- `P2286R8_text_formatting_range_set`
- `P2286R8_text_formatting_range_string`

Note that libc++'s `range_formatter` is currently buggy on the `m`
option, see LLVM-90196 and LLVM-94562.

The test `P2286R8_text_formatting_tuple_disambiguation` covers
formatting `pair`s and `tuple`s that are also ranges.

Unblocks libcxx tests:
- `std/containers/sequences/vector.bool/vector.bool.fmt/format.functions.format.pass.cpp`
- `std/containers/sequences/vector.bool/vector.bool.fmt/format.functions.vformat.pass.cpp`
- `std/utilities/format/format.range/format.range.fmtdef/parse.pass.cpp`
- `std/utilities/format/format.range/format.range.fmtmap/format.functions.format.pass.cpp`
- `std/utilities/format/format.range/format.range.fmtmap/format.functions.vformat.pass.cpp`
- `std/utilities/format/format.range/format.range.fmtmap/parse.pass.cpp`
- `std/utilities/format/format.range/format.range.fmtset/parse.pass.cpp`
- `std/utilities/format/format.range/format.range.fmtstr/format.functions.format.pass.cpp`
- `std/utilities/format/format.range/format.range.fmtstr/format.functions.vformat.pass.cpp`
- `std/utilities/format/format.range/format.range.fmtstr/parse.pass.cpp`
- `std/input.output/iostream.format/print.fun/includes.compile.pass.cpp`
@frederick-vs-ja frederick-vs-ja force-pushed the range-default-formatter branch from 065f92c to e0b8a30 Compare June 9, 2024 13:20
@frederick-vs-ja
Copy link
Contributor Author

There are a lot of code movements. To make code review easier, can you split them into a separate commit?

Done.

Removing one improper `// exposition only` comment.

Co-authored-by: S. B. Tam <[email protected]>
@StephanTLavavej StephanTLavavej added ranges C++20/23 ranges format C++20/23 format cxx23 C++23 feature labels Jun 9, 2024
@StephanTLavavej StephanTLavavej self-assigned this Jun 9, 2024
@StephanTLavavej StephanTLavavej removed their assignment Jun 25, 2024
@StephanTLavavej StephanTLavavej self-assigned this Jun 26, 2024
@StephanTLavavej
Copy link
Member

I'm mirroring this to the MSVC-internal repo - please notify me if any further changes are pushed.

@StephanTLavavej StephanTLavavej merged commit 756f6d5 into microsoft:main Jun 27, 2024
@StephanTLavavej
Copy link
Member

Thanks for this next step towards completing C++23! 🎉 😻 💚

@frederick-vs-ja frederick-vs-ja deleted the range-default-formatter branch June 27, 2024 23:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cxx23 C++23 feature format C++20/23 format ranges C++20/23 ranges
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

3 participants