public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/chromium] epel9-next: drop obsoleted patches as we have new clang-17.0.6 and rust-1.75 in el8/9
@ 2026-08-07 16:06 Than Ngo
  0 siblings, 0 replies; only message in thread
From: Than Ngo @ 2026-08-07 16:06 UTC (permalink / raw)
  To: git-commits

A new commit has been pushed.

Repo   : rpms/chromium
Branch : epel9-next
Commit : a8386adfcf5ff6ccaf481527ab0508250b09c3f9
Author : Than Ngo <than@redhat.com>
Date   : 2024-07-20T11:51:33+02:00
Stats  : +0/-1073 in 6 file(s)
URL    : https://src.fedoraproject.org/rpms/chromium/c/a8386adfcf5ff6ccaf481527ab0508250b09c3f9?branch=epel9-next

Log:
drop obsoleted patches as we have new clang-17.0.6 and rust-1.75 in el8/9

---
diff --git a/chromium-123-rust-clap_lex.patch b/chromium-123-rust-clap_lex.patch
deleted file mode 100644
index 61bd194..0000000
--- a/chromium-123-rust-clap_lex.patch
+++ /dev/null
@@ -1,133 +0,0 @@
-diff -Nur chromium-123.0.6312.46/third_party/rust/chromium_crates_io/vendor/clap_lex-0.7.0/src/ext.rs.me chromium-123.0.6312.46/third_party/rust/chromium_crates_io/vendor/clap_lex-0.7.0/src/ext.rs
---- chromium-123.0.6312.46/third_party/rust/chromium_crates_io/vendor/clap_lex-0.7.0/src/ext.rs.me	2024-03-13 20:36:17.000000000 +0100
-+++ chromium-123.0.6312.46/third_party/rust/chromium_crates_io/vendor/clap_lex-0.7.0/src/ext.rs	2024-03-13 00:38:18.000000000 +0100
-@@ -2,9 +2,6 @@
- 
- pub trait OsStrExt: private::Sealed {
-     /// Converts to a string slice.
--    ///
--    /// The Utf8Error is guaranteed to have a valid UTF8 boundary
--    /// in its `valid_up_to()`
-     fn try_str(&self) -> Result<&str, std::str::Utf8Error>;
-     /// Returns `true` if the given pattern matches a sub-slice of
-     /// this string slice.
-@@ -183,7 +180,7 @@
- 
- impl OsStrExt for OsStr {
-     fn try_str(&self) -> Result<&str, std::str::Utf8Error> {
--        let bytes = self.as_encoded_bytes();
-+        let bytes = to_bytes(self);
-         std::str::from_utf8(bytes)
-     }
- 
-@@ -192,22 +189,22 @@
-     }
- 
-     fn find(&self, needle: &str) -> Option<usize> {
--        let bytes = self.as_encoded_bytes();
-+        let bytes = to_bytes(self);
-         (0..=self.len().checked_sub(needle.len())?)
-             .find(|&x| bytes[x..].starts_with(needle.as_bytes()))
-     }
- 
-     fn strip_prefix(&self, prefix: &str) -> Option<&OsStr> {
--        let bytes = self.as_encoded_bytes();
-+        let bytes = to_bytes(self);
-         bytes.strip_prefix(prefix.as_bytes()).map(|s| {
-             // SAFETY:
--            // - This came from `as_encoded_bytes`
--            // - Since `prefix` is `&str`, any split will be along UTF-8 boundary
--            unsafe { OsStr::from_encoded_bytes_unchecked(s) }
-+            // - This came from `to_bytes`
-+            // - Since `prefix` is `&str`, any split will be along UTF-8 boundarie
-+            unsafe { to_os_str_unchecked(s) }
-         })
-     }
-     fn starts_with(&self, prefix: &str) -> bool {
--        let bytes = self.as_encoded_bytes();
-+        let bytes = to_bytes(self);
-         bytes.starts_with(prefix.as_bytes())
-     }
- 
-@@ -222,18 +219,13 @@
-     fn split_once(&self, needle: &'_ str) -> Option<(&OsStr, &OsStr)> {
-         let start = self.find(needle)?;
-         let end = start + needle.len();
--        let haystack = self.as_encoded_bytes();
-+        let haystack = to_bytes(self);
-         let first = &haystack[0..start];
-         let second = &haystack[end..];
-         // SAFETY:
--        // - This came from `as_encoded_bytes`
--        // - Since `needle` is `&str`, any split will be along UTF-8 boundary
--        unsafe {
--            Some((
--                OsStr::from_encoded_bytes_unchecked(first),
--                OsStr::from_encoded_bytes_unchecked(second),
--            ))
--        }
-+        // - This came from `to_bytes`
-+        // - Since `needle` is `&str`, any split will be along UTF-8 boundarie
-+        unsafe { Some((to_os_str_unchecked(first), to_os_str_unchecked(second))) }
-     }
- }
- 
-@@ -243,6 +235,45 @@
-     impl Sealed for std::ffi::OsStr {}
- }
- 
-+/// Allow access to raw bytes
-+///
-+/// As the non-UTF8 encoding is not defined, the bytes only make sense when compared with
-+/// 7-bit ASCII or `&str`
-+///
-+/// # Compatibility
-+///
-+/// There is no guarantee how non-UTF8 bytes will be encoded, even within versions of this crate
-+/// (since its dependent on rustc)
-+fn to_bytes(s: &OsStr) -> &[u8] {
-+    // SAFETY:
-+    // - Lifetimes are the same
-+    // - Types are compatible (`OsStr` is effectively a transparent wrapper for `[u8]`)
-+    // - The primary contract is that the encoding for invalid surrogate code points is not
-+    //   guaranteed which isn't a problem here
-+    //
-+    // There is a proposal to support this natively (https://github.com/rust-lang/rust/pull/95290)
-+    // but its in limbo
-+    unsafe { std::mem::transmute(s) }
-+}
-+
-+/// Restore raw bytes as `OsStr`
-+///
-+/// # Safety
-+///
-+/// - `&[u8]` must either by a `&str` or originated with `to_bytes` within the same binary
-+/// - Any splits of the original `&[u8]` must be done along UTF-8 boundaries
-+unsafe fn to_os_str_unchecked(s: &[u8]) -> &OsStr {
-+    // SAFETY:
-+    // - Lifetimes are the same
-+    // - Types are compatible (`OsStr` is effectively a transparent wrapper for `[u8]`)
-+    // - The primary contract is that the encoding for invalid surrogate code points is not
-+    //   guaranteed which isn't a problem here
-+    //
-+    // There is a proposal to support this natively (https://github.com/rust-lang/rust/pull/95290)
-+    // but its in limbo
-+    std::mem::transmute(s)
-+}
-+
- pub struct Split<'s, 'n> {
-     haystack: Option<&'s OsStr>,
-     needle: &'n str,
-@@ -275,10 +306,7 @@
- ///
- /// `index` must be at a valid UTF-8 boundary
- pub(crate) unsafe fn split_at(os: &OsStr, index: usize) -> (&OsStr, &OsStr) {
--    let bytes = os.as_encoded_bytes();
-+    let bytes = to_bytes(os);
-     let (first, second) = bytes.split_at(index);
--    (
--        OsStr::from_encoded_bytes_unchecked(first),
--        OsStr::from_encoded_bytes_unchecked(second),
--    )
-+    (to_os_str_unchecked(first), to_os_str_unchecked(second))
- }

diff --git a/chromium-125-el-NativeValueTraits-p1.patch b/chromium-125-el-NativeValueTraits-p1.patch
deleted file mode 100644
index ad0c8a8..0000000
--- a/chromium-125-el-NativeValueTraits-p1.patch
+++ /dev/null
@@ -1,739 +0,0 @@
-revert as workaround for compiler error with old clang < 17
-
-commit 940af9f2c87b436559b97c53763aa9eaaf1254eb
-Author: Jeremy Roman <jbroman@chromium.org>
-Date:   Wed Nov 15 16:24:54 2023 +0000
-
-    Use C++20 features to simplify blink::NativeValueTraitsBase.
-    
-    These allow some of the metaprogramming bits to be simplified a little.
-    
-    Change-Id: I052b4397586d21348401616e1792afdb9662f975
-    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5030335
-    Reviewed-by: Yuki Shiino <yukishiino@chromium.org>
-    Commit-Queue: Jeremy Roman <jbroman@chromium.org>
-    Cr-Commit-Position: refs/heads/main@{#1224978}
-
---- a/third_party/blink/renderer/bindings/core/v8/native_value_traits.h
-+++ b/third_party/blink/renderer/bindings/core/v8/native_value_traits.h
-@@ -5,7 +5,6 @@
- #ifndef THIRD_PARTY_BLINK_RENDERER_BINDINGS_CORE_V8_NATIVE_VALUE_TRAITS_H_
- #define THIRD_PARTY_BLINK_RENDERER_BINDINGS_CORE_V8_NATIVE_VALUE_TRAITS_H_
- 
--#include <concepts>
- #include <type_traits>
- 
- #include "third_party/blink/renderer/bindings/core/v8/idl_types_base.h"
-@@ -31,7 +30,7 @@ class ExceptionState;
- //     return toInt32(isolate, value, exceptionState, NormalConversion);
- //   }
- // }
--template <typename T>
-+template <typename T, typename SFINAEHelper = void>
- struct NativeValueTraits;
- 
- // This declaration serves only as a blueprint for specializations: the
-@@ -46,15 +45,22 @@ struct NativeValueTraits;
- 
- namespace bindings {
- 
-+template <typename T, typename = void>
-+struct NativeValueTraitsHasIsNull : std::false_type {};
-+
- template <typename T>
--struct ImplTypeFor {
--  using type = T;
--};
-+struct NativeValueTraitsHasIsNull<
-+    T,
-+    std::void_t<decltype(std::declval<T>().IsNull())>> : std::true_type {};
- 
- template <typename T>
--  requires std::derived_from<T, IDLBase>
--struct ImplTypeFor<T> {
--  using type = typename T::ImplType;
-+struct NativeValueTraitsHasNullValue {
-+  // true if |T| supports IDL null value.
-+  static constexpr bool value =
-+      // ScriptValue, String, and union types have IsNull member function.
-+      bindings::NativeValueTraitsHasIsNull<T>::value ||
-+      // Pointer types have nullptr as IDL null value.
-+      std::is_pointer<T>::value;
- };
- 
- }  // namespace bindings
-@@ -72,17 +78,37 @@ struct ImplTypeFor<T> {
- // If present, |NullValue()| will be used when converting from the nullable type
- // T?, and should be used if the impl type has an existing "null" state. If not
- // present, WTF::Optional will be used to wrap the type.
--template <typename T>
-+template <typename T, typename SFINAEHelper = void>
- struct NativeValueTraitsBase {
-   STATIC_ONLY(NativeValueTraitsBase);
- 
--  using ImplType = bindings::ImplTypeFor<T>::type;
-+  using ImplType = T;
-+
-+  static constexpr bool has_null_value =
-+      bindings::NativeValueTraitsHasNullValue<ImplType>::value;
-+
-+  template <typename... ExtraArgs>
-+  static decltype(auto) ArgumentValue(v8::Isolate* isolate,
-+                                      int argument_index,
-+                                      v8::Local<v8::Value> value,
-+                                      ExceptionState& exception_state,
-+                                      ExtraArgs... extra_args) {
-+    return NativeValueTraits<std::remove_pointer_t<T>>::NativeValue(
-+        isolate, value, exception_state,
-+        std::forward<ExtraArgs>(extra_args)...);
-+  }
-+};
-+
-+template <typename T>
-+struct NativeValueTraitsBase<
-+    T,
-+    std::enable_if_t<std::is_base_of<IDLBase, T>::value>> {
-+  STATIC_ONLY(NativeValueTraitsBase);
-+
-+  using ImplType = typename T::ImplType;
- 
--  // Pointer types have nullptr as IDL null value.
--  // ScriptValue, String, and union types have IsNull member function.
-   static constexpr bool has_null_value =
--      std::is_pointer_v<ImplType> ||
--      requires(ImplType value) { value.IsNull(); };
-+      bindings::NativeValueTraitsHasNullValue<ImplType>::value;
- 
-   // This should only be true for certain subclasses of ScriptWrappable
-   // that satisfy the assumptions of CreateIDLSequenceFromV8ArraySlow() with
---- a/third_party/blink/renderer/bindings/core/v8/native_value_traits_buffer_sources.cc
-+++ b/third_party/blink/renderer/bindings/core/v8/native_value_traits_buffer_sources.cc
-@@ -7,7 +7,6 @@
- #include "third_party/blink/renderer/core/core_export.h"
- #include "third_party/blink/renderer/core/execution_context/execution_context.h"
- #include "third_party/blink/renderer/core/frame/web_feature.h"
--#include "third_party/blink/renderer/core/typed_arrays/flexible_array_buffer_view.h"
- #include "third_party/blink/renderer/core/typed_arrays/typed_flexible_array_buffer_view.h"
- 
- namespace blink {
-@@ -698,11 +697,12 @@ DOMArrayBufferBase* NativeValueTraits<
- // ArrayBufferView
- 
- template <typename T>
--  requires std::derived_from<T, DOMArrayBufferView>
--NotShared<T> NativeValueTraits<NotShared<T>>::NativeValue(
--    v8::Isolate* isolate,
--    v8::Local<v8::Value> value,
--    ExceptionState& exception_state) {
-+NotShared<T> NativeValueTraits<
-+    NotShared<T>,
-+    typename std::enable_if_t<std::is_base_of<DOMArrayBufferView, T>::value>>::
-+    NativeValue(v8::Isolate* isolate,
-+                v8::Local<v8::Value> value,
-+                ExceptionState& exception_state) {
-   return NativeValueImpl<
-       RecipeTrait<NotShared<T>>, ToDOMViewType<T, kNotShared>,
-       Nullablity::kIsNotNullable, BufferSizeCheck::kCheck,
-@@ -711,12 +711,13 @@ NotShared<T> NativeValueTraits<NotShared
- }
- 
- template <typename T>
--  requires std::derived_from<T, DOMArrayBufferView>
--NotShared<T> NativeValueTraits<NotShared<T>>::ArgumentValue(
--    v8::Isolate* isolate,
--    int argument_index,
--    v8::Local<v8::Value> value,
--    ExceptionState& exception_state) {
-+NotShared<T> NativeValueTraits<
-+    NotShared<T>,
-+    typename std::enable_if_t<std::is_base_of<DOMArrayBufferView, T>::value>>::
-+    ArgumentValue(v8::Isolate* isolate,
-+                  int argument_index,
-+                  v8::Local<v8::Value> value,
-+                  ExceptionState& exception_state) {
-   return ArgumentValueImpl<
-       RecipeTrait<NotShared<T>>, ToDOMViewType<T, kNotShared>,
-       Nullablity::kIsNotNullable, BufferSizeCheck::kCheck,
-@@ -727,11 +728,12 @@ NotShared<T> NativeValueTraits<NotShared
- // [AllowShared] ArrayBufferView
- 
- template <typename T>
--  requires std::derived_from<T, DOMArrayBufferView>
--MaybeShared<T> NativeValueTraits<MaybeShared<T>>::NativeValue(
--    v8::Isolate* isolate,
--    v8::Local<v8::Value> value,
--    ExceptionState& exception_state) {
-+MaybeShared<T> NativeValueTraits<
-+    MaybeShared<T>,
-+    typename std::enable_if_t<std::is_base_of<DOMArrayBufferView, T>::value>>::
-+    NativeValue(v8::Isolate* isolate,
-+                v8::Local<v8::Value> value,
-+                ExceptionState& exception_state) {
-   return NativeValueImpl<RecipeTrait<MaybeShared<T>>,
-                          ToDOMViewType<T, kMaybeShared>,
-                          Nullablity::kIsNotNullable, BufferSizeCheck::kCheck,
-@@ -740,12 +742,13 @@ MaybeShared<T> NativeValueTraits<MaybeSh
- }
- 
- template <typename T>
--  requires std::derived_from<T, DOMArrayBufferView>
--MaybeShared<T> NativeValueTraits<MaybeShared<T>>::ArgumentValue(
--    v8::Isolate* isolate,
--    int argument_index,
--    v8::Local<v8::Value> value,
--    ExceptionState& exception_state) {
-+MaybeShared<T> NativeValueTraits<
-+    MaybeShared<T>,
-+    typename std::enable_if_t<std::is_base_of<DOMArrayBufferView, T>::value>>::
-+    ArgumentValue(v8::Isolate* isolate,
-+                  int argument_index,
-+                  v8::Local<v8::Value> value,
-+                  ExceptionState& exception_state) {
-   return ArgumentValueImpl<RecipeTrait<MaybeShared<T>>,
-                            ToDOMViewType<T, kMaybeShared>,
-                            Nullablity::kIsNotNullable, BufferSizeCheck::kCheck,
-@@ -756,12 +759,12 @@ MaybeShared<T> NativeValueTraits<MaybeSh
- // [AllowShared, BufferSourceTypeNoSizeLimit] ArrayBufferView
- 
- template <typename T>
--  requires std::derived_from<T, DOMArrayBufferView>
--MaybeShared<T>
--NativeValueTraits<IDLBufferSourceTypeNoSizeLimit<MaybeShared<T>>>::NativeValue(
--    v8::Isolate* isolate,
--    v8::Local<v8::Value> value,
--    ExceptionState& exception_state) {
-+MaybeShared<T> NativeValueTraits<
-+    IDLBufferSourceTypeNoSizeLimit<MaybeShared<T>>,
-+    typename std::enable_if_t<std::is_base_of<DOMArrayBufferView, T>::value>>::
-+    NativeValue(v8::Isolate* isolate,
-+                v8::Local<v8::Value> value,
-+                ExceptionState& exception_state) {
-   return NativeValueImpl<
-       RecipeTrait<MaybeShared<T>>, ToDOMViewType<T, kMaybeShared>,
-       Nullablity::kIsNotNullable, BufferSizeCheck::kDoNotCheck,
-@@ -770,12 +773,13 @@ NativeValueTraits<IDLBufferSourceTypeNoS
- }
- 
- template <typename T>
--  requires std::derived_from<T, DOMArrayBufferView>
--MaybeShared<T> NativeValueTraits<IDLBufferSourceTypeNoSizeLimit<
--    MaybeShared<T>>>::ArgumentValue(v8::Isolate* isolate,
--                                    int argument_index,
--                                    v8::Local<v8::Value> value,
--                                    ExceptionState& exception_state) {
-+MaybeShared<T> NativeValueTraits<
-+    IDLBufferSourceTypeNoSizeLimit<MaybeShared<T>>,
-+    typename std::enable_if_t<std::is_base_of<DOMArrayBufferView, T>::value>>::
-+    ArgumentValue(v8::Isolate* isolate,
-+                  int argument_index,
-+                  v8::Local<v8::Value> value,
-+                  ExceptionState& exception_state) {
-   return ArgumentValueImpl<
-       RecipeTrait<MaybeShared<T>>, ToDOMViewType<T, kMaybeShared>,
-       Nullablity::kIsNotNullable, BufferSizeCheck::kDoNotCheck,
-@@ -786,11 +790,12 @@ MaybeShared<T> NativeValueTraits<IDLBuff
- // Nullable ArrayBufferView
- 
- template <typename T>
--  requires std::derived_from<T, DOMArrayBufferView>
--NotShared<T> NativeValueTraits<IDLNullable<NotShared<T>>>::NativeValue(
--    v8::Isolate* isolate,
--    v8::Local<v8::Value> value,
--    ExceptionState& exception_state) {
-+NotShared<T> NativeValueTraits<
-+    IDLNullable<NotShared<T>>,
-+    typename std::enable_if_t<std::is_base_of<DOMArrayBufferView, T>::value>>::
-+    NativeValue(v8::Isolate* isolate,
-+                v8::Local<v8::Value> value,
-+                ExceptionState& exception_state) {
-   return NativeValueImpl<
-       RecipeTrait<NotShared<T>>, ToDOMViewType<T, kNotShared>,
-       Nullablity::kIsNullable, BufferSizeCheck::kCheck,
-@@ -799,12 +804,13 @@ NotShared<T> NativeValueTraits<IDLNullab
- }
- 
- template <typename T>
--  requires std::derived_from<T, DOMArrayBufferView>
--NotShared<T> NativeValueTraits<IDLNullable<NotShared<T>>>::ArgumentValue(
--    v8::Isolate* isolate,
--    int argument_index,
--    v8::Local<v8::Value> value,
--    ExceptionState& exception_state) {
-+NotShared<T> NativeValueTraits<
-+    IDLNullable<NotShared<T>>,
-+    typename std::enable_if_t<std::is_base_of<DOMArrayBufferView, T>::value>>::
-+    ArgumentValue(v8::Isolate* isolate,
-+                  int argument_index,
-+                  v8::Local<v8::Value> value,
-+                  ExceptionState& exception_state) {
-   return ArgumentValueImpl<
-       RecipeTrait<NotShared<T>>, ToDOMViewType<T, kNotShared>,
-       Nullablity::kIsNullable, BufferSizeCheck::kCheck,
-@@ -815,11 +821,12 @@ NotShared<T> NativeValueTraits<IDLNullab
- // Nullable [AllowShared] ArrayBufferView
- 
- template <typename T>
--  requires std::derived_from<T, DOMArrayBufferView>
--MaybeShared<T> NativeValueTraits<IDLNullable<MaybeShared<T>>>::NativeValue(
--    v8::Isolate* isolate,
--    v8::Local<v8::Value> value,
--    ExceptionState& exception_state) {
-+MaybeShared<T> NativeValueTraits<
-+    IDLNullable<MaybeShared<T>>,
-+    typename std::enable_if_t<std::is_base_of<DOMArrayBufferView, T>::value>>::
-+    NativeValue(v8::Isolate* isolate,
-+                v8::Local<v8::Value> value,
-+                ExceptionState& exception_state) {
-   return NativeValueImpl<RecipeTrait<MaybeShared<T>>,
-                          ToDOMViewType<T, kMaybeShared>,
-                          Nullablity::kIsNullable, BufferSizeCheck::kCheck,
-@@ -828,12 +835,13 @@ MaybeShared<T> NativeValueTraits<IDLNull
- }
- 
- template <typename T>
--  requires std::derived_from<T, DOMArrayBufferView>
--MaybeShared<T> NativeValueTraits<IDLNullable<MaybeShared<T>>>::ArgumentValue(
--    v8::Isolate* isolate,
--    int argument_index,
--    v8::Local<v8::Value> value,
--    ExceptionState& exception_state) {
-+MaybeShared<T> NativeValueTraits<
-+    IDLNullable<MaybeShared<T>>,
-+    typename std::enable_if_t<std::is_base_of<DOMArrayBufferView, T>::value>>::
-+    ArgumentValue(v8::Isolate* isolate,
-+                  int argument_index,
-+                  v8::Local<v8::Value> value,
-+                  ExceptionState& exception_state) {
-   return ArgumentValueImpl<RecipeTrait<MaybeShared<T>>,
-                            ToDOMViewType<T, kMaybeShared>,
-                            Nullablity::kIsNullable, BufferSizeCheck::kCheck,
-@@ -844,9 +852,9 @@ MaybeShared<T> NativeValueTraits<IDLNull
- // Nullable [AllowShared, BufferSourceTypeNoSizeLimit] ArrayBufferView
- 
- template <typename T>
--  requires std::derived_from<T, DOMArrayBufferView>
--MaybeShared<T>
--NativeValueTraits<IDLNullable<IDLBufferSourceTypeNoSizeLimit<MaybeShared<T>>>>::
-+MaybeShared<T> NativeValueTraits<
-+    IDLNullable<IDLBufferSourceTypeNoSizeLimit<MaybeShared<T>>>,
-+    typename std::enable_if_t<std::is_base_of<DOMArrayBufferView, T>::value>>::
-     ArgumentValue(v8::Isolate* isolate,
-                   int argument_index,
-                   v8::Local<v8::Value> value,
-@@ -861,11 +869,13 @@ NativeValueTraits<IDLNullable<IDLBufferS
- // [AllowShared, FlexibleArrayBufferView] ArrayBufferView
- 
- template <typename T>
--  requires std::derived_from<T, FlexibleArrayBufferView>
--T NativeValueTraits<T>::ArgumentValue(v8::Isolate* isolate,
--                                      int argument_index,
--                                      v8::Local<v8::Value> value,
--                                      ExceptionState& exception_state) {
-+T NativeValueTraits<T,
-+                    typename std::enable_if_t<
-+                        std::is_base_of<FlexibleArrayBufferView, T>::value>>::
-+    ArgumentValue(v8::Isolate* isolate,
-+                  int argument_index,
-+                  v8::Local<v8::Value> value,
-+                  ExceptionState& exception_state) {
-   return ArgumentValueImpl<RecipeTrait<T>, ToFlexibleArrayBufferView,
-                            Nullablity::kIsNotNullable, BufferSizeCheck::kCheck,
-                            ResizableAllowance::kDisallowResizable,
-@@ -877,12 +887,13 @@ T NativeValueTraits<T>::ArgumentValue(v8
- // ArrayBufferView
- 
- template <typename T>
--  requires std::derived_from<T, FlexibleArrayBufferView>
--T NativeValueTraits<IDLBufferSourceTypeNoSizeLimit<T>>::ArgumentValue(
--    v8::Isolate* isolate,
--    int argument_index,
--    v8::Local<v8::Value> value,
--    ExceptionState& exception_state) {
-+T NativeValueTraits<IDLBufferSourceTypeNoSizeLimit<T>,
-+                    typename std::enable_if_t<
-+                        std::is_base_of<FlexibleArrayBufferView, T>::value>>::
-+    ArgumentValue(v8::Isolate* isolate,
-+                  int argument_index,
-+                  v8::Local<v8::Value> value,
-+                  ExceptionState& exception_state) {
-   return ArgumentValueImpl<
-       RecipeTrait<T>, ToFlexibleArrayBufferView, Nullablity::kIsNotNullable,
-       BufferSizeCheck::kDoNotCheck, ResizableAllowance::kDisallowResizable,
-@@ -893,12 +904,13 @@ T NativeValueTraits<IDLBufferSourceTypeN
- // Nullable [AllowShared, FlexibleArrayBufferView] ArrayBufferView
- 
- template <typename T>
--  requires std::derived_from<T, FlexibleArrayBufferView>
--T NativeValueTraits<IDLNullable<T>>::ArgumentValue(
--    v8::Isolate* isolate,
--    int argument_index,
--    v8::Local<v8::Value> value,
--    ExceptionState& exception_state) {
-+T NativeValueTraits<IDLNullable<T>,
-+                    typename std::enable_if_t<
-+                        std::is_base_of<FlexibleArrayBufferView, T>::value>>::
-+    ArgumentValue(v8::Isolate* isolate,
-+                  int argument_index,
-+                  v8::Local<v8::Value> value,
-+                  ExceptionState& exception_state) {
-   return ArgumentValueImpl<RecipeTrait<T>, ToFlexibleArrayBufferView,
-                            Nullablity::kIsNullable, BufferSizeCheck::kCheck,
-                            ResizableAllowance::kDisallowResizable,
---- a/third_party/blink/renderer/bindings/core/v8/native_value_traits_impl.h
-+++ b/third_party/blink/renderer/bindings/core/v8/native_value_traits_impl.h
-@@ -5,9 +5,7 @@
- #ifndef THIRD_PARTY_BLINK_RENDERER_BINDINGS_CORE_V8_NATIVE_VALUE_TRAITS_IMPL_H_
- #define THIRD_PARTY_BLINK_RENDERER_BINDINGS_CORE_V8_NATIVE_VALUE_TRAITS_IMPL_H_
- 
--#include <concepts>
- #include <optional>
--#include <type_traits>
- 
- #include "third_party/blink/renderer/bindings/core/v8/idl_types.h"
- #include "third_party/blink/renderer/bindings/core/v8/native_value_traits.h"
-@@ -718,8 +716,9 @@ struct CORE_EXPORT NativeValueTraits<
- };
- 
- template <typename T>
--  requires std::derived_from<T, DOMArrayBufferView>
--struct NativeValueTraits<T> {
-+struct NativeValueTraits<
-+    T,
-+    typename std::enable_if_t<std::is_base_of<DOMArrayBufferView, T>::value>> {
-   // NotShared<T> or MaybeShared<T> should be used instead.
-   static T* NativeValue(v8::Isolate* isolate,
-                         v8::Local<v8::Value> value,
-@@ -731,8 +730,9 @@ struct NativeValueTraits<T> {
- };
- 
- template <typename T>
--  requires std::derived_from<T, DOMArrayBufferView>
--struct NativeValueTraits<IDLNullable<T>> {
-+struct NativeValueTraits<
-+    IDLNullable<T>,
-+    typename std::enable_if_t<std::is_base_of<DOMArrayBufferView, T>::value>> {
-   // NotShared<T> or MaybeShared<T> should be used instead.
-   static T* NativeValue(v8::Isolate* isolate,
-                         v8::Local<v8::Value> value,
-@@ -744,8 +744,9 @@ struct NativeValueTraits<IDLNullable<T>>
- };
- 
- template <typename T>
--  requires std::derived_from<T, DOMArrayBufferView>
--struct NativeValueTraits<NotShared<T>>
-+struct NativeValueTraits<
-+    NotShared<T>,
-+    typename std::enable_if_t<std::is_base_of<DOMArrayBufferView, T>::value>>
-     : public NativeValueTraitsBase<NotShared<T>> {
-   static NotShared<T> NativeValue(v8::Isolate* isolate,
-                                   v8::Local<v8::Value> value,
-@@ -758,8 +759,9 @@ struct NativeValueTraits<NotShared<T>>
- };
- 
- template <typename T>
--  requires std::derived_from<T, DOMArrayBufferView>
--struct NativeValueTraits<IDLNullable<NotShared<T>>>
-+struct NativeValueTraits<
-+    IDLNullable<NotShared<T>>,
-+    typename std::enable_if_t<std::is_base_of<DOMArrayBufferView, T>::value>>
-     : public NativeValueTraitsBase<NotShared<T>> {
-   static NotShared<T> NativeValue(v8::Isolate* isolate,
-                                   v8::Local<v8::Value> value,
-@@ -772,8 +774,9 @@ struct NativeValueTraits<IDLNullable<Not
- };
- 
- template <typename T>
--  requires std::derived_from<T, DOMArrayBufferView>
--struct NativeValueTraits<MaybeShared<T>>
-+struct NativeValueTraits<
-+    MaybeShared<T>,
-+    typename std::enable_if_t<std::is_base_of<DOMArrayBufferView, T>::value>>
-     : public NativeValueTraitsBase<MaybeShared<T>> {
-   static MaybeShared<T> NativeValue(v8::Isolate* isolate,
-                                     v8::Local<v8::Value> value,
-@@ -786,8 +789,9 @@ struct NativeValueTraits<MaybeShared<T>>
- };
- 
- template <typename T>
--  requires std::derived_from<T, DOMArrayBufferView>
--struct NativeValueTraits<IDLBufferSourceTypeNoSizeLimit<MaybeShared<T>>>
-+struct NativeValueTraits<
-+    IDLBufferSourceTypeNoSizeLimit<MaybeShared<T>>,
-+    typename std::enable_if_t<std::is_base_of<DOMArrayBufferView, T>::value>>
-     : public NativeValueTraitsBase<MaybeShared<T>> {
-   // FlexibleArrayBufferView uses this in its implementation, so we cannot
-   // delete it.
-@@ -802,8 +806,9 @@ struct NativeValueTraits<IDLBufferSource
- };
- 
- template <typename T>
--  requires std::derived_from<T, DOMArrayBufferView>
--struct NativeValueTraits<IDLNullable<MaybeShared<T>>>
-+struct NativeValueTraits<
-+    IDLNullable<MaybeShared<T>>,
-+    typename std::enable_if_t<std::is_base_of<DOMArrayBufferView, T>::value>>
-     : public NativeValueTraitsBase<MaybeShared<T>> {
-   static MaybeShared<T> NativeValue(v8::Isolate* isolate,
-                                     v8::Local<v8::Value> value,
-@@ -816,9 +821,9 @@ struct NativeValueTraits<IDLNullable<May
- };
- 
- template <typename T>
--  requires std::derived_from<T, DOMArrayBufferView>
- struct NativeValueTraits<
--    IDLNullable<IDLBufferSourceTypeNoSizeLimit<MaybeShared<T>>>>
-+    IDLNullable<IDLBufferSourceTypeNoSizeLimit<MaybeShared<T>>>,
-+    typename std::enable_if_t<std::is_base_of<DOMArrayBufferView, T>::value>>
-     : public NativeValueTraitsBase<MaybeShared<T>> {
-   // BufferSourceTypeNoSizeLimit must be used only as arguments.
-   static MaybeShared<T> NativeValue(v8::Isolate* isolate,
-@@ -832,8 +837,11 @@ struct NativeValueTraits<
- };
- 
- template <typename T>
--  requires std::derived_from<T, FlexibleArrayBufferView>
--struct NativeValueTraits<T> : public NativeValueTraitsBase<T> {
-+struct NativeValueTraits<
-+    T,
-+    typename std::enable_if_t<
-+        std::is_base_of<FlexibleArrayBufferView, T>::value>>
-+    : public NativeValueTraitsBase<T> {
-   // FlexibleArrayBufferView must be used only as arguments.
-   static T NativeValue(v8::Isolate* isolate,
-                        v8::Local<v8::Value> value,
-@@ -846,8 +854,10 @@ struct NativeValueTraits<T> : public Nat
- };
- 
- template <typename T>
--  requires std::derived_from<T, FlexibleArrayBufferView>
--struct NativeValueTraits<IDLBufferSourceTypeNoSizeLimit<T>>
-+struct NativeValueTraits<
-+    IDLBufferSourceTypeNoSizeLimit<T>,
-+    typename std::enable_if_t<
-+        std::is_base_of<FlexibleArrayBufferView, T>::value>>
-     : public NativeValueTraitsBase<T> {
-   // BufferSourceTypeNoSizeLimit and FlexibleArrayBufferView must be used only
-   // as arguments.
-@@ -862,8 +872,11 @@ struct NativeValueTraits<IDLBufferSource
- };
- 
- template <typename T>
--  requires std::derived_from<T, FlexibleArrayBufferView>
--struct NativeValueTraits<IDLNullable<T>> : public NativeValueTraitsBase<T> {
-+struct NativeValueTraits<
-+    IDLNullable<T>,
-+    typename std::enable_if_t<
-+        std::is_base_of<FlexibleArrayBufferView, T>::value>>
-+    : public NativeValueTraitsBase<T> {
-   // FlexibleArrayBufferView must be used only as arguments.
-   static T NativeValue(v8::Isolate* isolate,
-                        v8::Local<v8::Value> value,
-@@ -1199,8 +1212,9 @@ NativeValueTraits<IDLSequence<T>>::Nativ
- }
- 
- template <typename T>
--  requires NativeValueTraits<IDLSequence<T>>::has_null_value
--struct NativeValueTraits<IDLNullable<IDLSequence<T>>>
-+struct NativeValueTraits<IDLNullable<IDLSequence<T>>,
-+                         typename std::enable_if_t<
-+                             NativeValueTraits<IDLSequence<T>>::has_null_value>>
-     : public NativeValueTraitsBase<HeapVector<AddMemberIfNeeded<T>>*> {
-   using ImplType = typename NativeValueTraits<IDLSequence<T>>::ImplType*;
- 
-@@ -1276,8 +1290,9 @@ struct NativeValueTraits<IDLArray<T>>
-     : public NativeValueTraits<IDLSequence<T>> {};
- 
- template <typename T>
--  requires NativeValueTraits<IDLSequence<T>>::has_null_value
--struct NativeValueTraits<IDLNullable<IDLArray<T>>>
-+struct NativeValueTraits<IDLNullable<IDLArray<T>>,
-+                         typename std::enable_if_t<
-+                             NativeValueTraits<IDLSequence<T>>::has_null_value>>
-     : public NativeValueTraits<IDLNullable<IDLSequence<T>>> {};
- 
- // Record types
-@@ -1407,8 +1422,10 @@ struct NativeValueTraits<IDLRecord<K, V>
- 
- // Callback function types
- template <typename T>
--  requires std::derived_from<T, CallbackFunctionBase>
--struct NativeValueTraits<T> : public NativeValueTraitsBase<T*> {
-+struct NativeValueTraits<
-+    T,
-+    typename std::enable_if_t<std::is_base_of<CallbackFunctionBase, T>::value>>
-+    : public NativeValueTraitsBase<T*> {
-   static T* NativeValue(v8::Isolate* isolate,
-                         v8::Local<v8::Value> value,
-                         ExceptionState& exception_state) {
-@@ -1431,8 +1448,9 @@ struct NativeValueTraits<T> : public Nat
- };
- 
- template <typename T>
--  requires std::derived_from<T, CallbackFunctionBase>
--struct NativeValueTraits<IDLNullable<T>>
-+struct NativeValueTraits<
-+    IDLNullable<T>,
-+    typename std::enable_if_t<std::is_base_of<CallbackFunctionBase, T>::value>>
-     : public NativeValueTraitsBase<IDLNullable<T>> {
-   static T* NativeValue(v8::Isolate* isolate,
-                         v8::Local<v8::Value> value,
-@@ -1461,8 +1479,10 @@ struct NativeValueTraits<IDLNullable<T>>
- 
- // Callback interface types
- template <typename T>
--  requires std::derived_from<T, CallbackInterfaceBase>
--struct NativeValueTraits<T> : public NativeValueTraitsBase<T*> {
-+struct NativeValueTraits<
-+    T,
-+    typename std::enable_if_t<std::is_base_of<CallbackInterfaceBase, T>::value>>
-+    : public NativeValueTraitsBase<T*> {
-   static T* NativeValue(v8::Isolate* isolate,
-                         v8::Local<v8::Value> value,
-                         ExceptionState& exception_state) {
-@@ -1486,8 +1506,9 @@ struct NativeValueTraits<T> : public Nat
- 
- // Interface types
- template <typename T>
--  requires std::derived_from<T, CallbackInterfaceBase>
--struct NativeValueTraits<IDLNullable<T>>
-+struct NativeValueTraits<
-+    IDLNullable<T>,
-+    typename std::enable_if_t<std::is_base_of<CallbackInterfaceBase, T>::value>>
-     : public NativeValueTraitsBase<IDLNullable<T>> {
-   static T* NativeValue(v8::Isolate* isolate,
-                         v8::Local<v8::Value> value,
-@@ -1516,8 +1537,11 @@ struct NativeValueTraits<IDLNullable<T>>
- 
- // Dictionary types
- template <typename T>
--  requires std::derived_from<T, bindings::DictionaryBase>
--struct NativeValueTraits<T> : public NativeValueTraitsBase<T*> {
-+struct NativeValueTraits<
-+    T,
-+    typename std::enable_if_t<
-+        std::is_base_of<bindings::DictionaryBase, T>::value>>
-+    : public NativeValueTraitsBase<T*> {
-   static T* NativeValue(v8::Isolate* isolate,
-                         v8::Local<v8::Value> value,
-                         ExceptionState& exception_state) {
-@@ -1528,11 +1552,14 @@ struct NativeValueTraits<T> : public Nat
- // We don't support nullable dictionary types in general since it's quite
- // confusing and often misused.
- template <typename T>
--  requires std::derived_from<T, bindings::DictionaryBase> &&
--           (std::same_as<T, GPUColorTargetState> ||
--            std::same_as<T, GPURenderPassColorAttachment> ||
--            std::same_as<T, GPUVertexBufferLayout>)
--struct NativeValueTraits<IDLNullable<T>> : public NativeValueTraitsBase<T*> {
-+struct NativeValueTraits<
-+    IDLNullable<T>,
-+    typename std::enable_if_t<
-+        std::is_base_of<bindings::DictionaryBase, T>::value &&
-+        (std::is_same<T, GPUColorTargetState>::value ||
-+         std::is_same<T, GPURenderPassColorAttachment>::value ||
-+         std::is_same<T, GPUVertexBufferLayout>::value)>>
-+    : public NativeValueTraitsBase<T*> {
-   static T* NativeValue(v8::Isolate* isolate,
-                         v8::Local<v8::Value> value,
-                         ExceptionState& exception_state) {
-@@ -1544,8 +1571,11 @@ struct NativeValueTraits<IDLNullable<T>>
- 
- // Enumeration types
- template <typename T>
--  requires std::derived_from<T, bindings::EnumerationBase>
--struct NativeValueTraits<T> : public NativeValueTraitsBase<T> {
-+struct NativeValueTraits<
-+    T,
-+    typename std::enable_if_t<
-+        std::is_base_of<bindings::EnumerationBase, T>::value>>
-+    : public NativeValueTraitsBase<T> {
-   static T NativeValue(v8::Isolate* isolate,
-                        v8::Local<v8::Value> value,
-                        ExceptionState& exception_state) {
-@@ -1555,8 +1585,10 @@ struct NativeValueTraits<T> : public Nat
- 
- // Interface types
- template <typename T>
--  requires std::derived_from<T, ScriptWrappable>
--struct NativeValueTraits<T> : public NativeValueTraitsBase<T*> {
-+struct NativeValueTraits<
-+    T,
-+    typename std::enable_if_t<std::is_base_of<ScriptWrappable, T>::value>>
-+    : public NativeValueTraitsBase<T*> {
-   // This signifies that CreateIDLSequenceFromV8ArraySlow() may apply
-   // certain optimization based on assumptions about `NativeValue()`
-   // implementation below. For subclasses of ScriptWrappable that have
-@@ -1593,8 +1625,9 @@ struct NativeValueTraits<T> : public Nat
- };
- 
- template <typename T>
--  requires std::derived_from<T, ScriptWrappable>
--struct NativeValueTraits<IDLNullable<T>>
-+struct NativeValueTraits<
-+    IDLNullable<T>,
-+    typename std::enable_if_t<std::is_base_of<ScriptWrappable, T>::value>>
-     : public NativeValueTraitsBase<IDLNullable<T>> {
-   static inline T* NativeValue(v8::Isolate* isolate,
-                                v8::Local<v8::Value> value,
-@@ -1629,8 +1662,10 @@ struct NativeValueTraits<IDLNullable<T>>
- };
- 
- template <typename T>
--  requires std::derived_from<T, bindings::UnionBase>
--struct NativeValueTraits<T> : public NativeValueTraitsBase<T*> {
-+struct NativeValueTraits<
-+    T,
-+    typename std::enable_if_t<std::is_base_of<bindings::UnionBase, T>::value>>
-+    : public NativeValueTraitsBase<T*> {
-   static T* NativeValue(v8::Isolate* isolate,
-                         v8::Local<v8::Value> value,
-                         ExceptionState& exception_state) {
-@@ -1646,8 +1681,10 @@ struct NativeValueTraits<T> : public Nat
- };
- 
- template <typename T>
--  requires std::derived_from<T, bindings::UnionBase>
--struct NativeValueTraits<IDLNullable<T>> : public NativeValueTraitsBase<T*> {
-+struct NativeValueTraits<
-+    IDLNullable<T>,
-+    typename std::enable_if_t<std::is_base_of<bindings::UnionBase, T>::value>>
-+    : public NativeValueTraitsBase<T*> {
-   static T* NativeValue(v8::Isolate* isolate,
-                         v8::Local<v8::Value> value,
-                         ExceptionState& exception_state) {
-@@ -1668,8 +1705,9 @@ struct NativeValueTraits<IDLNullable<T>>
- 
- // Nullable types
- template <typename InnerType>
--  requires(!NativeValueTraits<InnerType>::has_null_value)
--struct NativeValueTraits<IDLNullable<InnerType>>
-+struct NativeValueTraits<
-+    IDLNullable<InnerType>,
-+    typename std::enable_if_t<!NativeValueTraits<InnerType>::has_null_value>>
-     : public NativeValueTraitsBase<IDLNullable<InnerType>> {
-   // https://webidl.spec.whatwg.org/#es-nullable-type
-   using ImplType =
-@@ -1701,8 +1739,9 @@ struct NativeValueTraits<IDLNullable<IDL
- 
- // Optional types
- template <typename T>
--  requires std::is_arithmetic_v<typename NativeValueTraits<T>::ImplType>
--struct NativeValueTraits<IDLOptional<T>>
-+struct NativeValueTraits<IDLOptional<T>,
-+                         typename std::enable_if_t<std::is_arithmetic<
-+                             typename NativeValueTraits<T>::ImplType>::value>>
-     : public NativeValueTraitsBase<typename NativeValueTraits<T>::ImplType> {
-   using ImplType = typename NativeValueTraits<T>::ImplType;
- 
-@@ -1724,8 +1763,9 @@ struct NativeValueTraits<IDLOptional<T>>
- };
- 
- template <typename T>
--  requires std::is_pointer_v<typename NativeValueTraits<T>::ImplType>
--struct NativeValueTraits<IDLOptional<T>>
-+struct NativeValueTraits<IDLOptional<T>,
-+                         typename std::enable_if_t<std::is_pointer<
-+                             typename NativeValueTraits<T>::ImplType>::value>>
-     : public NativeValueTraitsBase<typename NativeValueTraits<T>::ImplType> {
-   using ImplType = typename NativeValueTraits<T>::ImplType;
- 

diff --git a/chromium-125-el-NativeValueTraits-p2.patch b/chromium-125-el-NativeValueTraits-p2.patch
deleted file mode 100644
index 477378b..0000000
--- a/chromium-125-el-NativeValueTraits-p2.patch
+++ /dev/null
@@ -1,144 +0,0 @@
-revert as workaround for compiler error with old clang < 17
-
-commit ce71348a09f6689dd01a68db64b172191d0182d8
-Author: Andrey Kosyakov <caseq@chromium.org>
-Date:   Thu Dec 21 18:38:38 2023 +0000
-
-    [bindings] Use v8::Array::Iterate for converting script wrappables
-    
-    
-    This changes CreateIDLSequenceFromV8Array to use the new
-    v8::Array::Iterate() operation.
-    This speeds up the "execBundles" part of the microbenchmark
-    at crbug.com/dawn/1858 by around 3x.
-    This depends on crrev.com/c/4846594 landing (and rolling) first.
-    
-    This is a slight re-work of https://crrev.com/c/4847447/3,
-    originally by jkummerow@chromium.org
-    
-    Bug: v8:14218, dawn:1858, 1511239
-    Change-Id: Ia266556d05b4d53e6942e12609d1c08882b4ff0f
-    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5132129
-    Commit-Queue: Andrey Kosyakov <caseq@chromium.org>
-    Reviewed-by: Yuki Shiino <yukishiino@chromium.org>
-    Cr-Commit-Position: refs/heads/main@{#1240236}
-
---- a/third_party/blink/renderer/bindings/core/v8/native_value_traits.h	2024-05-13 20:23:41.165774029 +0200
-+++ b/third_party/blink/renderer/bindings/core/v8/native_value_traits.h	2024-05-13 20:27:58.994663485 +0200
-@@ -110,12 +110,6 @@ struct NativeValueTraitsBase<
-   static constexpr bool has_null_value =
-       bindings::NativeValueTraitsHasNullValue<ImplType>::value;
- 
--  // This should only be true for certain subclasses of ScriptWrappable
--  // that satisfy the assumptions of CreateIDLSequenceFromV8ArraySlow() with
--  // regards to how NativeValue() is implemented for the underlying type.
--  static constexpr bool supports_scriptwrappable_specific_fast_array_iteration =
--      false;
--
-   template <typename... ExtraArgs>
-   static decltype(auto) ArgumentValue(v8::Isolate* isolate,
-                                       int argument_index,
---- a/third_party/blink/renderer/bindings/core/v8/native_value_traits_impl.h	2024-05-13 20:23:47.295915837 +0200
-+++ b/third_party/blink/renderer/bindings/core/v8/native_value_traits_impl.h	2024-05-13 20:27:21.649808564 +0200
-@@ -1050,87 +1050,11 @@ CreateIDLSequenceFromV8ArraySlow(v8::Iso
-     return {};
-   }
- 
--  using ResultType = typename NativeValueTraits<IDLSequence<T>>::ImplType;
--  ResultType result;
-+  typename NativeValueTraits<IDLSequence<T>>::ImplType result;
-   result.ReserveInitialCapacity(length);
-   v8::Local<v8::Context> current_context = isolate->GetCurrentContext();
-   v8::TryCatch try_block(isolate);
- 
--  // Fast path -- we're creating a sequence of script wrappables, which can be
--  // done by directly getting underlying object as long as array types are
--  // homogeneous. With ScriptWrappables, we don't expect to enter JS during
--  // iteration, so we can rely on v8::Array::Iterate() which is much faster than
--  // iterating an array on the client side of the v8. Additionally, for most
--  // subsptyes of ScriptWrappables, we can speed up type checks (see more on
--  // that below next to supports_scriptwrappable_specific_fast_array_iteration
--  // check.
--  if constexpr (std::is_base_of_v<ScriptWrappable, T>) {
--    struct CallbackData {
--      STACK_ALLOCATED();
--
--     public:
--      v8::Isolate* isolate;
--      v8::TypecheckWitness witness;
--      ResultType& result;
--      ExceptionState& exception_state;
--      CallbackData(v8::Isolate* isolate,
--                   ResultType& result,
--                   ExceptionState& exception_state)
--          : isolate(isolate),
--            witness(isolate),
--            result(result),
--            exception_state(exception_state) {}
--    };
--
--    CallbackData callback_data(isolate, result, exception_state);
--    v8::Array::IterationCallback callback = [](uint32_t index,
--                                               v8::Local<v8::Value> v8_element,
--                                               void* data) {
--      CallbackData* callback_data = reinterpret_cast<CallbackData*>(data);
--      v8::Isolate* isolate = callback_data->isolate;
--      // 3.4. Initialize Si to the result of converting nextItem to an IDL value
--      //   of type T.
--      v8::TypecheckWitness& witness = callback_data->witness;
--      // We can speed up type check by taking advantage of V8's type witness,
--      // provided traits' NativeValue implementation doesn't have additional
--      // logic beyond checking the type and calling ToScriptWrappable().
--      if constexpr (
--          NativeValueTraits<
--              T>::supports_scriptwrappable_specific_fast_array_iteration) {
--        if (witness.Matches(v8_element)) {
--          auto&& value = ToScriptWrappable(isolate, v8_element.As<v8::Object>())
--                             ->template ToImpl<T>();
--          callback_data->result.push_back(std::move(value));
--          return v8::Array::CallbackResult::kContinue;
--        }
--      }
--      auto&& element = NativeValueTraits<T>::NativeValue(
--          isolate, v8_element, callback_data->exception_state);
--      if (callback_data->exception_state.HadException()) {
--        // It doesn't matter whether we return `kException` or `kBreak` here,
--        // as that only affects the return value of `v8_array->Iterate()`,
--        // which we are ignoring.
--        return v8::Array::CallbackResult::kException;
--      }
--      if constexpr (
--          NativeValueTraits<
--              T>::supports_scriptwrappable_specific_fast_array_iteration) {
--        witness.Update(v8_element);
--      }
--      callback_data->result.push_back(std::move(element));
--      return v8::Array::CallbackResult::kContinue;
--    };
--    if (!v8_array->Iterate(current_context, callback, &callback_data)
--             .IsJust()) {
--      if (try_block.HasCaught()) {
--        exception_state.RethrowV8Exception(try_block.Exception());
--      }
--      DCHECK(exception_state.HadException());
--      return {};
--    }
--    return result;
--  }
--
-   // Array length may change if array is mutated during iteration.
-   for (uint32_t i = 0; i < v8_array->Length(); ++i) {
-     v8::Local<v8::Value> v8_element;
-@@ -1590,12 +1514,6 @@ struct NativeValueTraits<
-     T,
-     typename std::enable_if_t<std::is_base_of<ScriptWrappable, T>::value>>
-     : public NativeValueTraitsBase<T*> {
--  // This signifies that CreateIDLSequenceFromV8ArraySlow() may apply
--  // certain optimization based on assumptions about `NativeValue()`
--  // implementation below. For subclasses of ScriptWrappable that have
--  // different implementation of NativeValue(), this should remain false.
--  static constexpr bool supports_scriptwrappable_specific_fast_array_iteration =
--      true;
- 
-   static inline T* NativeValue(v8::Isolate* isolate,
-                                v8::Local<v8::Value> value,

diff --git a/chromium-126-clang16-buildflags.patch b/chromium-126-clang16-buildflags.patch
deleted file mode 100644
index cba25fd..0000000
--- a/chromium-126-clang16-buildflags.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff -up chromium-126.0.6478.26/build/config/compiler/BUILD.gn.clang16-buildflag chromium-126.0.6478.26/build/config/compiler/BUILD.gn
---- chromium-126.0.6478.26/build/config/compiler/BUILD.gn.clang16-buildflag	2024-06-02 14:55:55.298242780 +0200
-+++ chromium-126.0.6478.26/build/config/compiler/BUILD.gn	2024-06-02 15:04:43.839882669 +0200
-@@ -1889,9 +1889,6 @@ config("default_warnings") {
- 
-         # TODO(crbug.com/40286317): Evaluate and possibly enable.
-         "-Wno-vla-extension",
--
--        # TODO(crbug.com/40284799): Fix and re-enable.
--        "-Wno-thread-safety-reference-return",
-       ]
- 
-       cflags_cc += [
-@@ -1902,7 +1899,7 @@ config("default_warnings") {
-       if (!is_nacl) {
-         cflags_cc += [
-           # TODO(crbug.com/41486292): Fix and re-enable.
--          "-Wno-c++11-narrowing-const-reference",
-+          "-Wno-c++11-narrowing",
-         ]
-       }
-     }

diff --git a/chromium-126-clang16-disable-auto-upgrade-debug-info.patch b/chromium-126-clang16-disable-auto-upgrade-debug-info.patch
deleted file mode 100644
index f791596..0000000
--- a/chromium-126-clang16-disable-auto-upgrade-debug-info.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -up chromium-126.0.6478.26/build/config/compiler/BUILD.gn.clang16-disable-auto-upgrade-debug-info chromium-126.0.6478.26/build/config/compiler/BUILD.gn
---- chromium-126.0.6478.26/build/config/compiler/BUILD.gn.clang16-disable-auto-upgrade-debug-info	2024-06-02 18:00:17.914641767 +0200
-+++ chromium-126.0.6478.26/build/config/compiler/BUILD.gn	2024-06-02 18:02:32.153544892 +0200
-@@ -780,7 +780,7 @@ config("compiler") {
- 
-       # We only use one version of LLVM within a build so there's no need to
-       # upgrade debug info, which can be expensive since it runs the verifier.
--      ldflags += [ "-Wl,-mllvm,-disable-auto-upgrade-debug-info" ]
-+      ldflags += [ "" ]
-     }
- 
-     # TODO(crbug.com/335365324): Enable on other platforms.

diff --git a/chromium.spec b/chromium.spec
index 501f034..a84931e 100644
--- a/chromium.spec
+++ b/chromium.spec
@@ -377,21 +377,9 @@ Patch150: chromium-124-qt6.patch
 Patch305: chromium-124-arm64-memory_tagging.patch
 Patch306: chromium-126-ifunc-header.patch
 
-# compiler errors on el7/el8 and f38 (clang <17)
-Patch307: chromium-125-el-NativeValueTraits-p1.patch
-Patch308: chromium-125-el-NativeValueTraits-p2.patch
-
 # enable fstack-protector-strong
 Patch312: chromium-123-fstack-protector-strong.patch
 
-# rust is old, function or associated item not found in `OsStr`
-Patch313: chromium-123-rust-clap_lex.patch
-
-Patch314: chromium-126-clang16-buildflags.patch
-
-# remove ldflags -Wl,-mllvm,-disable-auto-upgrade-debug-info which is not supported
-Patch315: chromium-126-clang16-disable-auto-upgrade-debug-info.patch
-
 # add -ftrivial-auto-var-init=zero and -fwrapv
 Patch316: chromium-122-clang-build-flags.patch
 
@@ -1125,19 +1113,8 @@ Qt6 UI for chromium.
 %endif
 %endif
 
-%if 0%{?rhel} && 0%{?rhel} < 9 || 0%{?fedora} && 0%{?fedora} < 39
-%patch -P307 -p1 -b .el-NativeValueTraits-p1
-%patch -P308 -p1 -b .el-NativeValueTraits
-%patch -P314 -p1 -b .clang16-buildflag
-%patch -P315 -p1 -b .clang16-disable-auto-upgrade-debug-info
-%endif
-
 %patch -P312 -p1 -b .fstack-protector-strong
 
-%if 0%{?rhel} && 0%{?rhel} < 10
-%patch -P313 -p1 -b .rust-clap_lex
-%endif
-
 %if 0%{?rhel} >= 8 || 0%{?fedora}
 %patch -P316 -p1 -b .clang-build-flags
 %endif

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2026-08-07 16:06 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-08-07 16:06 [rpms/chromium] epel9-next: drop obsoleted patches as we have new clang-17.0.6 and rust-1.75 in el8/9 Than Ngo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox