diff options
Diffstat (limited to 'dev-qt/qtwebengine/files/qtwebengine-6.5.2-libcxx17.patch')
| -rw-r--r-- | dev-qt/qtwebengine/files/qtwebengine-6.5.2-libcxx17.patch | 83 |
1 files changed, 0 insertions, 83 deletions
diff --git a/dev-qt/qtwebengine/files/qtwebengine-6.5.2-libcxx17.patch b/dev-qt/qtwebengine/files/qtwebengine-6.5.2-libcxx17.patch deleted file mode 100644 index 8acbbf4463ce..000000000000 --- a/dev-qt/qtwebengine/files/qtwebengine-6.5.2-libcxx17.patch +++ /dev/null @@ -1,83 +0,0 @@ -Patch status: fixed in >=chromium-116.0.5809.0 - -Backport of [2][3] in order to fix building with libcxx-17 -(and hopefully runtime if upgrade from 16->17 without rebuilding). - -In order to apply cleanly, also needed [4] which seems fine to have. - -[1] https://crbug.com/1449299 -[2] https://crrev.com/9bfbbffdba73668fdb483e5a850911d2b64c35d7 -[3] https://crrev.com/4878976cd7391fbc02f87af4b7fb539b5c1f3817 -[4] https://crrev.com/5b5551edd3961481e617e510276b9f015a35b861 ---- a/src/3rdparty/chromium/base/containers/checked_iterators.h -+++ b/src/3rdparty/chromium/base/containers/checked_iterators.h -@@ -24,4 +24,7 @@ - using reference = T&; - using iterator_category = std::random_access_iterator_tag; -+#if defined(__cpp_lib_ranges) -+ using iterator_concept = std::contiguous_iterator_tag; -+#endif - - // Required for converting constructor below. -@@ -31,8 +34,6 @@ - // Required for certain libc++ algorithm optimizations that are not available - // for NaCl. --#if defined(_LIBCPP_VERSION) && !BUILDFLAG(IS_NACL) - template <typename Ptr> - friend struct std::pointer_traits; --#endif - - constexpr CheckedContiguousIterator() = default; -@@ -147,4 +148,10 @@ - } - -+ constexpr friend CheckedContiguousIterator operator+( -+ difference_type lhs, -+ const CheckedContiguousIterator& rhs) { -+ return rhs + lhs; -+ } -+ - constexpr CheckedContiguousIterator& operator-=(difference_type rhs) { - if (rhs < 0) { -@@ -218,5 +225,4 @@ - } // namespace base - --#if defined(_LIBCPP_VERSION) && !BUILDFLAG(IS_NACL) - // Specialize both std::__is_cpp17_contiguous_iterator and std::pointer_traits - // for CCI in case we compile with libc++ outside of NaCl. The former is -@@ -236,11 +242,28 @@ - // [2] https://wg21.link/std.iterator.tags - // [3] https://wg21.link/pointer.traits.optmem --namespace std { -+ -+#if defined(_LIBCPP_VERSION) -+ -+_LIBCPP_BEGIN_NAMESPACE_STD - - template <typename T> -+struct __is_cpp17_contiguous_iterator; -+template <typename T> - struct __is_cpp17_contiguous_iterator<::base::CheckedContiguousIterator<T>> - : true_type {}; - - template <typename T> -+struct __libcpp_is_contiguous_iterator; -+template <typename T> -+struct __libcpp_is_contiguous_iterator<::base::CheckedContiguousIterator<T>> -+ : true_type {}; -+ -+_LIBCPP_END_NAMESPACE_STD -+ -+#endif -+ -+namespace std { -+ -+template <typename T> - struct pointer_traits<::base::CheckedContiguousIterator<T>> { - using pointer = ::base::CheckedContiguousIterator<T>; -@@ -261,5 +284,4 @@ - - } // namespace std --#endif - - #endif // BASE_CONTAINERS_CHECKED_ITERATORS_H_ |
