Landing: f46eccc94091

Project / Subsystem

gcc / libstdc++

Date

2026-05-28

Author

Patrick Palka

Commit

f46eccc9409136831225e30017a1d8ba6654a9b9

Source

github

Perf win

No

Breaking

No

All attributes

project
gcc
subsystem
libstdc++
patch_id
commit_hash
f46eccc9409136831225e30017a1d8ba6654a9b9
source_type
github
headline
libstdc++: Implement P3567R2 flat_meow fixes
tldr
Implements fixes from P3567R2 for the `flat_map` and `flat_set` containers in libstdc++.
author
Patrick Palka
outcome
committed
performance_win
false
breaking_change
false
series_id
series_parts
[]
tags
  • libstdc++
  • containers
  • flat_map
  • flat_set
  • C++23
discussion_id_link
bugzilla_pr
date
2026-05-28T00:00:00.000Z

This commit implements several fixes from the P3567R2 proposal for the flat_map and flat_set containers in libstdc++. The changes include removing unnecessary assertions, explicitly defaulting the copy constructor, correcting exception handling in the move constructor and assignment operator, defining a new insert_range overload, and making the swap function conditionally noexcept. These changes improve the correctness and efficiency of these containers.