Skip to content

P1222R4 <flat_set> #2912

@StephanTLavavej

Description

@StephanTLavavej

WG21-P1222R4 <flat_set>
WG21-P3567R2 flat_meow Fixes
LWG-3751 Missing feature macro for flat_set
LWG-3774 <flat_set> should include <compare>
LWG-3786 Flat maps' deduction guides need to default Allocator to be useful
LWG-3803 flat_meow constructors taking KeyContainer lack KeyCompare parameter
LWG-3879 erase_if for flat_{,multi}set is incorrectly specified
LWG-3884 flat_meow is missing allocator-extended copy/move constructors
LWG-3987 Including <flat_meow> doesn't provide std::begin/end
LWG-4384 flat_set::erase(iterator) is underconstrained

Feature-test macro:

#define __cpp_lib_flat_set 202511L

Internal VS-PR-420058 has taught the IDE about this new extensionless header - thanks @CaseyCarter!

WG21-P3567R2 "flat_meow Fixes" was voted into C++26 at the November 2025 meeting; while it wasn't officially a C++23 DR, we should obviously implement it as part of the initial release.

Metadata

Metadata

Assignees

No one assigned

    Labels

    cxx23C++23 featurefixedSomething works now, yay!flat_meowC++23 container adaptors

    Type

    No type

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions