https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64096
--- Comment #4 from Jonathan Wakely <redi at gcc dot gnu.org> --- For completeness, the error for std::list now shows: a.cc: In instantiation of ‘void my_allocator<T>::construct(U*, Args&& ...) [with U = int; Args = {int}; T = std::_Rb_tree_node<int>]’: which is consistent with maps and sets now. I actually consider it a bug that you don't get the assertion for other containers too! The unordered containers and forward_list should not bother constructing a rebound allocator to call construct/destroy.