Skip to content

C++20 backport of P2404R3 Move-Only Types For Comparison Concepts #5927

Description

#3345 merged on 2023-01-27 and shipped in VS 2022 17.6 implemented #2924 WG21-P2404R3 Move-Only Types For Comparison Concepts for C++23.

In llvm/llvm-project#99420, libc++ considered implementing this downlevel in C++20 mode. On 2024-07-25, I commented in llvm/llvm-project#99420 (comment) :

I would be fine with changing MSVC's STL to align with making this a de facto DR, if libstdc++ is also on-board. This doesn't take any new publicly-visible names, and it seems like a highly compatible change (Annex C lists a theoretical break but you have to be looking pretty hard for it).

On 2025-12-01, Wakely concurred in llvm/llvm-project#99420 (comment) :

I have no objection to treating this as a DR, we can do the same for libstdc++.

As the Majestic Three are in alignment, let's make this a de facto DR.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementSomething can be improvedfixedSomething works now, yay!

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions