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

Reply via email to