mirror of git://gcc.gnu.org/git/gcc.git
This is missing the synchronized_pool_resource and unsynchronized_pool_resource classes but is otherwise complete. This is a new implementation, not based on the existing code in <experimental/memory_resource>, but memory_resource and polymorphic_allocator ended up looking almost the same anyway. The constant_init kluge in src/c++17/memory_resource.cc is apparently due to Richard Smith and ensures that the objects are constructed during constant initialiation phase and not destroyed (because the constant_init destructor doesn't destroy the union member and the storage is not reused). * config/abi/pre/gnu.ver: Export new symbols. * configure: Regenerate. * include/Makefile.am: Add new <memory_resource> header. * include/Makefile.in: Regenerate. * include/precompiled/stdc++.h: Include <memory_resource> for C++17. * include/std/memory_resource: New header. (memory_resource, polymorphic_allocator, new_delete_resource) (null_memory_resource, set_default_resource, get_default_resource) (pool_options, monotonic_buffer_resource): Define. * src/Makefile.am: Add c++17 directory. * src/Makefile.in: Regenerate. * src/c++11/Makefile.am: Fix comment. * src/c++17/Makefile.am: Add makefile for new sub-directory. * src/c++17/Makefile.in: Generate. * src/c++17/memory_resource.cc: New. (newdel_res_t, null_res_t, constant_init, newdel_res, null_res) (default_res, new_delete_resource, null_memory_resource) (set_default_resource, get_default_resource): Define. * testsuite/20_util/memory_resource/1.cc: New test. * testsuite/20_util/memory_resource/2.cc: New test. * testsuite/20_util/monotonic_buffer_resource/1.cc: New test. * testsuite/20_util/monotonic_buffer_resource/allocate.cc: New test. * testsuite/20_util/monotonic_buffer_resource/deallocate.cc: New test. * testsuite/20_util/monotonic_buffer_resource/release.cc: New test. * testsuite/20_util/monotonic_buffer_resource/upstream_resource.cc: New test. * testsuite/20_util/polymorphic_allocator/1.cc: New test. * testsuite/20_util/polymorphic_allocator/resource.cc: New test. * testsuite/20_util/polymorphic_allocator/select.cc: New test. * testsuite/util/testsuite_allocator.h (__gnu_test::memory_resource): Define concrete memory resource for testing. (__gnu_test::default_resource_mgr): Define RAII helper for changing default resource. From-SVN: r262953 |
||
|---|---|---|
| .. | ||
| config | ||
| doc | ||
| include | ||
| libsupc++ | ||
| po | ||
| python | ||
| scripts | ||
| src | ||
| testsuite | ||
| ChangeLog | ||
| ChangeLog-1998 | ||
| ChangeLog-1999 | ||
| ChangeLog-2000 | ||
| ChangeLog-2001 | ||
| ChangeLog-2002 | ||
| ChangeLog-2003 | ||
| ChangeLog-2004 | ||
| ChangeLog-2005 | ||
| ChangeLog-2006 | ||
| ChangeLog-2007 | ||
| ChangeLog-2008 | ||
| ChangeLog-2009 | ||
| ChangeLog-2010 | ||
| ChangeLog-2011 | ||
| ChangeLog-2012 | ||
| ChangeLog-2013 | ||
| ChangeLog-2014 | ||
| ChangeLog-2015 | ||
| ChangeLog-2016 | ||
| ChangeLog-2017 | ||
| Makefile.am | ||
| Makefile.in | ||
| README | ||
| acinclude.m4 | ||
| aclocal.m4 | ||
| config.h.in | ||
| configure | ||
| configure.ac | ||
| configure.host | ||
| crossconfig.m4 | ||
| fragment.am | ||
| linkage.m4 | ||
README
file: libstdc++-v3/README New users may wish to point their web browsers to the file index.html in the 'doc/html' subdirectory. It contains brief building instructions and notes on how to configure the library in interesting ways.