]> gcc.gnu.org Git - gcc.git/commit
libstdc++: Remove broken std::allocator base classes [PR103340]
authorJonathan Wakely <jwakely@redhat.com>
Wed, 1 Dec 2021 16:30:30 +0000 (16:30 +0000)
committerJonathan Wakely <jwakely@redhat.com>
Thu, 2 Dec 2021 16:46:28 +0000 (16:46 +0000)
commite2e98f524fdb80c16e3395f20fee930fbcad5562
tree6a285173800912402eee81d64fcf8d217eb87622
parentb5a568683f71b4a8b1e4e45a43484398e9a66ff2
libstdc++: Remove broken std::allocator base classes [PR103340]

The bitmap_allocator, __mt_alloc and __pool_alloc extensions are no
longer suitable for use as the base class of std::allocator, because
they have not been updated to meet the C++20 requirements.  There is a
patch attached to PR 103340 which addresses that, but more work would be
needed to solve the linking errors that occur when the library is
configured to use them.

Using --enable-libstdcxx-allocator=bitmap wouldn't even bootstrap for
the past few years, and I can't find any gcc-testresults reports using
any of these allocators. This patch removes the configure option to use
these as the std::allocator base class. The allocators are still in the
tree and can be used directly, you just can't configure the library to
use one of them as the base class of std::allocator.

libstdc++-v3/ChangeLog:

PR libstdc++/103340
PR libstdc++/103400
PR libstdc++/103381
* acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Remove mt, bitmap
and pool options.
* configure: Regenerate.
* config/allocator/bitmap_allocator_base.h: Removed.
* config/allocator/mt_allocator_base.h: Removed.
* config/allocator/pool_allocator_base.h: Removed.
* doc/xml/manual/allocator.xml: Update.
* doc/xml/manual/configure.xml: Update.
* doc/xml/manual/evolution.xml: Document removal.
* doc/xml/manual/mt_allocator.xml: Editorial tweaks.
* doc/html/manual/*: Regenerate.
13 files changed:
libstdc++-v3/acinclude.m4
libstdc++-v3/config/allocator/bitmap_allocator_base.h [deleted file]
libstdc++-v3/config/allocator/mt_allocator_base.h [deleted file]
libstdc++-v3/config/allocator/pool_allocator_base.h [deleted file]
libstdc++-v3/configure
libstdc++-v3/doc/html/manual/api.html
libstdc++-v3/doc/html/manual/configure.html
libstdc++-v3/doc/html/manual/memory.html
libstdc++-v3/doc/html/manual/mt_allocator.html
libstdc++-v3/doc/xml/manual/allocator.xml
libstdc++-v3/doc/xml/manual/configure.xml
libstdc++-v3/doc/xml/manual/evolution.xml
libstdc++-v3/doc/xml/manual/mt_allocator.xml
This page took 0.07008 seconds and 6 git commands to generate.