: It is recommended that implementations choose types for
ptrdiff_t and
size_t
whose integer conversion ranks (
[conv.rank]) are no greater than that of
signed long int unless a larger size is necessary to contain all the possible values
. —
end note