RFC: Deprecate libstdc++ Policy-Based Data Structures
NightStrike
nightstrike@gmail.com
Wed May 15 00:43:00 GMT 2019
On Mon, May 13, 2019 at 12:29 PM Jonathan Wakely <jwakely@redhat.com> wrote:
>
> I'm including gcc@gcc.gnu.org here for visibility, but the discussion
> really belongs on the libstdc++ list so please limit replies to there.
>
> I'd like to discuss deprecating (and eventually removing) the
> libstdc++-v3/include/ext/pb_ds extensions. For information on them see
> https://gcc.gnu.org/onlinedocs/libstdc++/manual/policy_data_structures.html
>
> There has been exactly one (1) bug report for them in the past seven
> years since the code stabilized (i.e. when Benjamin stopped working on
> them). The bug reporter and the author of the fix have both confirmed
> they don't use them for anything "serious" that requires them to be
> shipped as part of GCC (see PR 62045).
>
> I can find no uses of them in https://codesearch.debian.net or
> https://codesearch.isocpp.org/
>
> They require occasional tweaking but many of the changes are just
> touching comments. However, running the tests is very slow, see
> https://gcc.gnu.org/ml/libstdc++/2019-03/msg00012.html
>
> I'd like to consider deprecating them, and then removing them from the
> libstdc++ tree. There's no reason the code can't be moved to a
> separate project on sourceware.org (and/or gitlab, github etc.) but I
> don't think it needs to be maintained as part of libstdc++.
I don't think a lengthy testsuite run of several minutes is a good
reason to remove an existing feature. I also don't think that
searching open code is indicative enough of the widespread use of GCC
features. I personally was unaware of this feature. Now that I am, I
can see it being used in a number of closed projects that I work on.
For these projects, it is immensely easier to get approval for using
library features included with the compiler compared to any external
library.
More information about the Libstdc++
mailing list