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
94#if __cplusplus > 202002L
98#define __glibcxx_want_allocator_traits_is_always_equal
99#define __glibcxx_want_assume_aligned
100#define __glibcxx_want_atomic_shared_ptr
101#define __glibcxx_want_atomic_value_initialization
102#define __glibcxx_want_constexpr_dynamic_alloc
103#define __glibcxx_want_constexpr_memory
104#define __glibcxx_want_enable_shared_from_this
105#define __glibcxx_want_make_unique
106#define __glibcxx_want_out_ptr
107#define __glibcxx_want_parallel_algorithm
108#define __glibcxx_want_ranges
109#define __glibcxx_want_raw_memory_algorithms
110#define __glibcxx_want_shared_ptr_arrays
111#define __glibcxx_want_shared_ptr_weak_type
112#define __glibcxx_want_smart_ptr_for_overwrite
113#define __glibcxx_want_to_address
114#define __glibcxx_want_transparent_operators
117#if __cplusplus >= 201103L && __cplusplus <= 202002L && _GLIBCXX_HOSTED
118namespace std _GLIBCXX_VISIBILITY(default)
120_GLIBCXX_BEGIN_NAMESPACE_VERSION
143template <
typename _Tp>
160_GLIBCXX_END_NAMESPACE_VERSION
164#ifdef __cpp_lib_parallel_algorithm
166# if _PSTL_EXECUTION_POLICIES_DEFINED
168# include <pstl/glue_memory_impl.h>
171# include <pstl/glue_memory_defs.h>
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.