44#ifndef _GLIBCXX_MEMORY
45#define _GLIBCXX_MEMORY 1
47#pragma GCC system_header
72#if __cplusplus >= 201103L
75# include <bits/uses_allocator.h>
80# include <bits/shared_ptr.h>
85#if __cplusplus < 201103L || _GLIBCXX_USE_DEPRECATED
89#if __cplusplus > 201703L
96#if !defined(__cpp_lib_atomic_value_initialization) && __cplusplus >= 202002L
97# define __cpp_lib_atomic_value_initialization 201911L
100#if __cplusplus >= 201103L && __cplusplus <= 202002L && _GLIBCXX_HOSTED
101namespace std _GLIBCXX_VISIBILITY(default)
103_GLIBCXX_BEGIN_NAMESPACE_VERSION
126template <
typename _Tp>
143_GLIBCXX_END_NAMESPACE_VERSION
147#if __cplusplus >= 201703L && _GLIBCXX_HOSTED
149# if _PSTL_EXECUTION_POLICIES_DEFINED
151# include <pstl/glue_memory_impl.h>
154# include <pstl/glue_memory_defs.h>
158# define __cpp_lib_parallel_algorithm 201603L
void declare_reachable(void *)
Inform a garbage collector that an object is still in use.
pointer_safety get_pointer_safety() noexcept
The type of pointer safety supported by the implementation.
void undeclare_no_pointers(char *, size_t)
Unregister a range previously registered with declare_no_pointers.
void declare_no_pointers(char *, size_t)
Inform a garbage collector that a region of memory need not be traced.
pointer_safety
Constants representing the different types of pointer safety.
_Tp * undeclare_reachable(_Tp *__p)
Unregister an object previously registered with declare_reachable.
ISO C++ entities toplevel namespace is std.