Issue |
140448
|
Summary |
[libc++][test] `flat_set` std test uses `EmplaceUnsafeContainer` which is non-standard
|
Labels |
libc++
|
Assignees |
|
Reporter |
AlexGuteniev
|
`EmplaceUnsafeContainer` is used in tests for `flat_set` and `flat_map` to test the ability to have basic exception guarantee when underlying container throws on `insert` / `emplace` of a single element.
https://github.com/llvm/llvm-project/blob/ffb9bbfd0745dc22e1fd6edd7b62f72b91f4f6de/libcxx/test/std/containers/container.adaptors/flat_helpers.h#L122
Per [[container.reqmts]/66](https://eel.is/c++draft/container.reqmts#66), a sequence container should provide strong exception guarantee in this case.
So supporting underlying containers that don't provide that is nonstandard extension, and should be tested in libcxx test suite instead.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs