Pointer Safety and Garbage Collection (original) (raw)

Functions
void std::declare_no_pointers (char *, size_t)
void std::declare_reachable (void *)
pointer_safety std::get_pointer_safety () noexcept
void std::undeclare_no_pointers (char *, size_t)
template<typename _Tp >
_Tp * std::undeclare_reachable (_Tp *__p)

Utilities to assist with garbage collection in an implementation that supports strict pointer safety. This implementation only supports relaxed pointer safety and so these functions have no effect.

C++11 20.6.4 [util.dynamic.safety], Pointer safety

pointer_safety

Constants representing the different types of pointer safety.

Definition at line 136 of file memory.

declare_no_pointers()

void std::declare_no_pointers ( char * , size_t ) inline

Inform a garbage collector that a region of memory need not be traced.

Definition at line 149 of file memory.

declare_reachable()

void std::declare_reachable ( void * ) inline

Inform a garbage collector that an object is still in use.

Definition at line 140 of file memory.

get_pointer_safety()

The type of pointer safety supported by the implementation.

Definition at line 157 of file memory.

undeclare_no_pointers()

void std::undeclare_no_pointers ( char * , size_t ) inline

Unregister a range previously registered with declare_no_pointers.

Definition at line 153 of file memory.

undeclare_reachable()

template<typename _Tp >

_Tp * std::undeclare_reachable ( _Tp * __p) inline

Unregister an object previously registered with declare_reachable.

Definition at line 145 of file memory.