[associative.reqmts.except] # 23 Containers library [[containers]](./#containers) ## 23.2 Requirements [[container.requirements]](container.requirements#associative.reqmts.except) ### 23.2.7 Associative containers [[associative.reqmts]](associative.reqmts#except) #### 23.2.7.2 Exception safety guarantees [associative.reqmts.except] [1](#1) [#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/containers.tex#L4088) For associative containers, no clear() function throws an exception[.](#1.sentence-1) erase(k) does not throw an exception unless that exception is thrown by the container's Compare object (if any)[.](#1.sentence-2) [2](#2) [#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/containers.tex#L4093) For associative containers, if an exception is thrown by any operation from within an insert or emplace function inserting a single element, the insertion has no effect[.](#2.sentence-1) [3](#3) [#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/containers.tex#L4098) For associative containers, no swap function throws an exception unless that exception is thrown by the swap of the container's Compare object (if any)[.](#3.sentence-1)