Why are RB-trees used to implement std::set?

Michael Powell mwpowellhtx@gmail.com
Mon May 11 16:41:00 GMT 2015


On Mon, May 11, 2015 at 11:56 AM, Brian Budge <brian.budge@gmail.com> wrote:
>> Break binary compatibility?  What kind of guarantees are there?  I'm
>> not advocating a change in data structures, but it doesn't seem like
>> there are any promises beyond API conformance, are there?
>
>
> Imagine you write a library and you compile and distribute the
> binaries.  Someone else builds against those.  If std::set is used in
> your API, and they have a different version of libstdc++, do you still
> want the library and the binary to be compatible, even across
> different versions of libstdc++?

Playing devil's advocate, I want interface compatibility. That said, I
understand the motivation behind it; it's a good reason, without going
through the proof.



More information about the Gcc-help mailing list