Paolo Carlini <[EMAIL PROTECTED]> writes:
[...] | >My concern is for vectors whose size() exceeds | > numeric_limits<difference_type>::max() -- even if we would like to | > avoid the general discussion. My understanding -- and I would like | > to hear of others' -- is that the | >semantics description in the table 65 is a constraint on | > implementations. Concretely, it means that we cannot have a vector | > whose size() is numeric_limits<size_type>::max() because otherwise | >the difference between end() and begin() will overflow. | > That implies that max_size() would have to return | > numeric_limit<difference_type>::max(). | > | I agree with your reasoning, and indeed, this is essentially the point | which I raised to Howard, time ago ;) | | However, in order not to mix different issues, I think we should try | first to resolve the much more limited issue at hand, which, I note, | has to do with *deallocation*, not with *allocation*. By the time we deallocate, any possible damage has already be done :-) So, yes, you can add the casts as a temporary work-around. We still would not have solved the issue (I do not believe we have separate issues). -- Gaby