https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77854
Jonathan Wakely <redi at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |documentation Status|NEW |ASSIGNED Assignee|unassigned at gcc dot gnu.org |redi at gcc dot gnu.org --- Comment #1 from Jonathan Wakely <redi at gcc dot gnu.org> --- Our other containers do the same, which is OK. The standard requires that difference_type "is identical to the difference type of X::iterator and X::const_iterator" and "size_type can represent any non-negative value of difference_type". So in fact they need to correspond to the container's iterators, not come from the allocator. We do need to document the types though, because they're implementation-defined.