summaryrefslogtreecommitdiffstats
path: root/contrib/libs/cxxsupp/libcxx/include/memory
diff options
context:
space:
mode:
authorarcadia-devtools <[email protected]>2022-02-10 17:53:52 +0300
committerarcadia-devtools <[email protected]>2022-02-10 17:53:52 +0300
commit5c64b97bb7e4034eff8833e4c367f61d34fcb4ee (patch)
tree7c5769528f2fcdaa5a718aa73e4aa64d50905269 /contrib/libs/cxxsupp/libcxx/include/memory
parent1b56f620ac98766b198121ca1b728e7e61efbb56 (diff)
intermediate changes
ref:4635f4dd763168c3fa295f87727595c785b4d5a4
Diffstat (limited to 'contrib/libs/cxxsupp/libcxx/include/memory')
-rw-r--r--contrib/libs/cxxsupp/libcxx/include/memory15
1 files changed, 4 insertions, 11 deletions
diff --git a/contrib/libs/cxxsupp/libcxx/include/memory b/contrib/libs/cxxsupp/libcxx/include/memory
index 1975092ba0a..7f6665e846d 100644
--- a/contrib/libs/cxxsupp/libcxx/include/memory
+++ b/contrib/libs/cxxsupp/libcxx/include/memory
@@ -405,7 +405,8 @@ template<class T>
class shared_ptr
{
public:
- typedef T element_type;
+ typedef T element_type; // until C++17
+ typedef remove_extent_t<T> element_type; // since C++17
typedef weak_ptr<T> weak_type; // C++17
// constructors:
@@ -525,7 +526,8 @@ template<class T>
class weak_ptr
{
public:
- typedef T element_type;
+ typedef T element_type; // until C++17
+ typedef remove_extent_t<T> element_type; // since C++17
// constructors
constexpr weak_ptr() noexcept;
@@ -653,14 +655,6 @@ template <class T> struct hash<shared_ptr<T> >;
template <class T, class Alloc>
inline constexpr bool uses_allocator_v = uses_allocator<T, Alloc>::value;
-// Pointer safety
-enum class pointer_safety { relaxed, preferred, strict }; // since C++11
-void declare_reachable(void *p); // since C++11
-template <class T> T *undeclare_reachable(T *p); // since C++11
-void declare_no_pointers(char *p, size_t n); // since C++11
-void undeclare_no_pointers(char *p, size_t n); // since C++11
-pointer_safety get_pointer_safety() noexcept; // since C++11
-
void* align(size_t alignment, size_t size, void*& ptr, size_t& space);
} // std
@@ -676,7 +670,6 @@ void* align(size_t alignment, size_t size, void*& ptr, size_t& space);
#include <__memory/allocator_traits.h>
#include <__memory/compressed_pair.h>
#include <__memory/construct_at.h>
-#include <__memory/pointer_safety.h>
#include <__memory/pointer_traits.h>
#include <__memory/raw_storage_iterator.h>
#include <__memory/shared_ptr.h>