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.
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).