flat_set::erase(iterator) is underconstrained
Section: 23.6.11.2 [flat.set.defn], 23.6.12.2 [flat.multiset.defn] Status: New Submitter: Hewill Kang Opened: 2025-09-25 Last modified: 2025-09-27
Priority: Not Prioritized
View all issues with New status.
Discussion:
This is a follow-up of LWG 3704 since we now have flat_set and flat_multiset.
Proposed resolution:
This wording is relative to N5014.
Modify 23.6.11.2 [flat.set.defn] as indicated:
iterator erase(iterator position) requires (!same_as<iterator, const_iterator>); iterator erase(const_iterator position);
Modify 23.6.12.2 [flat.multiset.defn] as indicated:
iterator erase(iterator position) requires (!same_as<iterator, const_iterator>); iterator erase(const_iterator position);