aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhiddenpath <hiddenpath@yandex-team.com>2024-01-31 23:08:08 +0300
committerAlexander Smirnov <alex@ydb.tech>2024-02-09 19:16:44 +0300
commit95ab8bd8c520d715293d5ddb9e6d06742d6b63f0 (patch)
tree1c2b52e842ba13ecaaf734b478a0283d0e64daae
parent446f5cacb5bbd03b89fda98b7c8ea9856b3e8167 (diff)
downloadydb-95ab8bd8c520d715293d5ddb9e6d06742d6b63f0.tar.gz
Fix deprecated pod type in llvm / libcxxabi
https://github.com/llvm/llvm-project/commit/fd0637cfe835d6d4d0d3ebde3663f94a7bb3cd76
-rw-r--r--contrib/libs/cxxsupp/libcxxabi/src/demangle/ItaniumDemangle.h7
-rw-r--r--contrib/libs/llvm14/include/llvm/Demangle/ItaniumDemangle.h7
-rw-r--r--contrib/libs/llvm16/include/llvm/Demangle/ItaniumDemangle.h7
3 files changed, 12 insertions, 9 deletions
diff --git a/contrib/libs/cxxsupp/libcxxabi/src/demangle/ItaniumDemangle.h b/contrib/libs/cxxsupp/libcxxabi/src/demangle/ItaniumDemangle.h
index db65c60e7e..9b909cd0a8 100644
--- a/contrib/libs/cxxsupp/libcxxabi/src/demangle/ItaniumDemangle.h
+++ b/contrib/libs/cxxsupp/libcxxabi/src/demangle/ItaniumDemangle.h
@@ -30,6 +30,7 @@
#include <cstdlib>
#include <cstring>
#include <limits>
+#include <type_traits>
#include <utility>
#define FOR_EACH_NODE_KIND(X) \
@@ -114,13 +115,13 @@
DEMANGLE_NAMESPACE_BEGIN
template <class T, size_t N> class PODSmallVector {
- static_assert(std::is_pod<T>::value,
- "T is required to be a plain old data type");
+ static_assert(std::is_trivial<T>::value,
+ "T is required to be a trivial type");
T *First = nullptr;
T *Last = nullptr;
T *Cap = nullptr;
- T Inline[N] = {0};
+ T Inline[N] = {};
bool isInline() const { return First == Inline; }
diff --git a/contrib/libs/llvm14/include/llvm/Demangle/ItaniumDemangle.h b/contrib/libs/llvm14/include/llvm/Demangle/ItaniumDemangle.h
index d60d3d15ca..2396ae0855 100644
--- a/contrib/libs/llvm14/include/llvm/Demangle/ItaniumDemangle.h
+++ b/contrib/libs/llvm14/include/llvm/Demangle/ItaniumDemangle.h
@@ -37,6 +37,7 @@
#include <cstdlib>
#include <cstring>
#include <limits>
+#include <type_traits>
#include <utility>
#define FOR_EACH_NODE_KIND(X) \
@@ -121,13 +122,13 @@
DEMANGLE_NAMESPACE_BEGIN
template <class T, size_t N> class PODSmallVector {
- static_assert(std::is_pod<T>::value,
- "T is required to be a plain old data type");
+ static_assert(std::is_trivial<T>::value,
+ "T is required to be a trivial type");
T *First = nullptr;
T *Last = nullptr;
T *Cap = nullptr;
- T Inline[N] = {0};
+ T Inline[N] = {};
bool isInline() const { return First == Inline; }
diff --git a/contrib/libs/llvm16/include/llvm/Demangle/ItaniumDemangle.h b/contrib/libs/llvm16/include/llvm/Demangle/ItaniumDemangle.h
index afa87b4104..838b3b30d6 100644
--- a/contrib/libs/llvm16/include/llvm/Demangle/ItaniumDemangle.h
+++ b/contrib/libs/llvm16/include/llvm/Demangle/ItaniumDemangle.h
@@ -34,18 +34,19 @@
#include <cstring>
#include <limits>
#include <new>
+#include <type_traits>
#include <utility>
DEMANGLE_NAMESPACE_BEGIN
template <class T, size_t N> class PODSmallVector {
- static_assert(std::is_pod<T>::value,
- "T is required to be a plain old data type");
+ static_assert(std::is_trivial<T>::value,
+ "T is required to be a trivial type");
T *First = nullptr;
T *Last = nullptr;
T *Cap = nullptr;
- T Inline[N] = {0};
+ T Inline[N] = {};
bool isInline() const { return First == Inline; }