[libstdc++] PATCH: STL allocator cleanup, part 1
Matt Austern
austern@apple.com
Thu Dec 18 04:55:00 GMT 2003
On Dec 17, 2003, at 5:27 PM, Gabriel Dos Reis wrote:
> Matt Austern <austern@apple.com> writes:
>
> [...]
>
> | > Any steps to simply the codes there is OK with me. I guess this
> is an
> | > ABI that should be documented?
> ^
>
> oops, missing "change".
OK, I'm getting closer to understanding! But I'm probably still missing
something, because I don't really have a good sense of what kinds of
libstdc++ ABI changes require documentation, and where that
documentation
goes. I think you're right that this is an ABI-incompatible change, in
that a .o compiled with the old headers won't necessarily link against
a .o compiled with the new headers, but I'd think that that's true of
almost any change in the STL headers.
Possibly there's some compatibility policy that everyone but me knows...
> | I'm probably missing something. What kind of documentation do you
> | have in mind?
>
> These hunks
>
> + _Tp** _M_map;
> + size_t _M_map_size;
>
>
> + _Tp* _M_start;
> + _Tp* _M_finish;
> + _Tp* _M_end_of_storage;
>
> seem to be data member addition to me. Am I missing something?
Yes and no. They aren't new data members; I'm simplifying the
class hierarchy, giving vector (for example) a two-level hierarchy
instead of a three-level one, so I'm moving data members from the
class I'm eliminating into other classes.
--Matt
More information about the Libstdc++
mailing list