diff options
-rw-r--r-- | external/pdfium/UnpackedTarball_pdfium.mk | 2 | ||||
-rw-r--r-- | external/pdfium/abseil-trivial.patch | 27 |
2 files changed, 29 insertions, 0 deletions
diff --git a/external/pdfium/UnpackedTarball_pdfium.mk b/external/pdfium/UnpackedTarball_pdfium.mk index 06b94e4d064d..072d45b4767b 100644 --- a/external/pdfium/UnpackedTarball_pdfium.mk +++ b/external/pdfium/UnpackedTarball_pdfium.mk @@ -26,6 +26,8 @@ pdfium_patches += gcc-c++20-comparison.patch pdfium_patches += include.patch +pdfium_patches += abseil-trivial.patch + $(eval $(call gb_UnpackedTarball_UnpackedTarball,pdfium)) $(eval $(call gb_UnpackedTarball_set_tarball,pdfium,$(PDFIUM_TARBALL))) diff --git a/external/pdfium/abseil-trivial.patch b/external/pdfium/abseil-trivial.patch new file mode 100644 index 000000000000..f3e929a5843a --- /dev/null +++ b/external/pdfium/abseil-trivial.patch @@ -0,0 +1,27 @@ +--- third_party/abseil-cpp/absl/meta/type_traits.h ++++ third_party/abseil-cpp/absl/meta/type_traits.h +@@ -489,23 +489,7 @@ + // operation that is not trivial. `is_trivially_copy_assignable<T>` is simply + // `is_trivially_assignable<T&, const T&>`. + template <typename T> +-struct is_trivially_copy_assignable +- : std::integral_constant< +- bool, __has_trivial_assign(typename std::remove_reference<T>::type) && +- absl::is_copy_assignable<T>::value> { +-#ifdef ABSL_HAVE_STD_IS_TRIVIALLY_ASSIGNABLE +- private: +- static constexpr bool compliant = +- std::is_trivially_copy_assignable<T>::value == +- is_trivially_copy_assignable::value; +- static_assert(compliant || std::is_trivially_copy_assignable<T>::value, +- "Not compliant with std::is_trivially_copy_assignable; " +- "Standard: false, Implementation: true"); +- static_assert(compliant || !std::is_trivially_copy_assignable<T>::value, +- "Not compliant with std::is_trivially_copy_assignable; " +- "Standard: true, Implementation: false"); +-#endif // ABSL_HAVE_STD_IS_TRIVIALLY_ASSIGNABLE +-}; ++using is_trivially_copy_assignable = std::is_trivially_copy_assignable<T>; + + #if defined(__cpp_lib_remove_cvref) && __cpp_lib_remove_cvref >= 201711L + template <typename T> |