WG21-P2590R2 Explicit Lifetime Management
WG21-P2679R2 Fixing start_lifetime_as And start_lifetime_as_array
Feature-test macro:
#define __cpp_lib_start_lifetime_as 202207L
MSVC-PR-704304 and MSVC-PR-703299 in the MSVC Build Tools 14.51 implemented the following builtins:
template<typename _T>
_T* __builtin_start_lifetime_as(void*) noexcept;
template<typename _T>
const _T* __builtin_start_lifetime_as(const void*) noexcept;
template<typename _T>
volatile _T* __builtin_start_lifetime_as(volatile void*) noexcept;
template<typename _T>
const volatile _T* __builtin_start_lifetime_as(const volatile void*) noexcept;
template<typename _T>
_T* __builtin_start_lifetime_as_array(void*, size_t) noexcept;
template<typename _T>
const _T* __builtin_start_lifetime_as_array(const void*, size_t) noexcept;
template<typename _T>
volatile _T* __builtin_start_lifetime_as_array(volatile void*, size_t) noexcept;
template<typename _T>
const volatile _T* __builtin_start_lifetime_as_array(const volatile void*, size_t) noexcept;
WG21-P2590R2 Explicit Lifetime Management
WG21-P2679R2 Fixing
start_lifetime_asAndstart_lifetime_as_arrayFeature-test macro:
MSVC-PR-704304 and MSVC-PR-703299 in the MSVC Build Tools 14.51 implemented the following builtins: