File string_view-incomplete-CodePointIterator.patch of Package nodejs-electron

In file included from /usr/include/c++/15/string:55,
                 from /usr/include/c++/15/bits/locale_classes.h:42,
                 from /usr/include/c++/15/bits/ios_base.h:43,
                 from /usr/include/c++/15/ios:46,
                 from /usr/include/c++/15/ostream:42,
                 from /usr/include/c++/15/bits/unique_ptr.h:43,
                 from /usr/include/c++/15/memory:80,
                 from ../../base/check.h:9,
                 from ../../third_party/blink/renderer/platform/wtf/allocator/allocator.h:8,
                 from ../../third_party/blink/renderer/platform/wtf/text/atomic_string.h:30:
/usr/include/c++/15/bits/range_access.h: In instantiation of ‘constexpr decltype (__cont.begin()) std::begin(const _Container&) [with _Container = WTF::String; decltype (__cont.begin()) = WTF::CodePointIterator]’:
../../third_party/perfetto/include/perfetto/tracing/traced_value.h:386:25:   required by substitution of ‘template<class T> typename perfetto::check_traced_value_support<decltype (* std::begin(declval<T&>()))>::type perfetto::internal::WriteImpl(perfetto::base::priority_tag<1>, perfetto::TracedValue, T&&) [with T = const WTF::String&]’
  386 |     decltype(*std::begin(std::declval<T&>()))>::type
      |               ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
../../third_party/perfetto/include/perfetto/tracing/traced_value.h:427:24:   required by substitution of ‘template<class T, class Result> using perfetto::check_traced_value_support_t = decltype ((perfetto::internal::WriteImpl(std::declval(), std::declval(), declval<T>()), declval<Result>())) [with T = const WTF::String&; Result = int]’
  427 |     internal::WriteImpl(
      |     ~~~~~~~~~~~~~~~~~~~^
  428 |         std::declval<base::priority_tag<internal::kMaxWriteImplPriority>>(),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  429 |         std::declval<TracedValue>(),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  430 |         std::declval<T>()),
      |         ~~~~~~~~~~~~~~~~~~
../../third_party/perfetto/include/perfetto/tracing/traced_value.h:465:15:   required by substitution of ‘template<class V> static char (& perfetto::internal::has_traced_value_support<const WTF::String&>::check_support(perfetto::check_traced_value_support_t<V, int>))[1] [with V = const WTF::String&]’
  465 |   static Yes& check_support(check_traced_value_support_t<V, int>);
      |               ^~~~~~~~~~~~~
../../third_party/perfetto/include/perfetto/tracing/traced_value.h:470:71:   required from ‘constexpr const bool perfetto::internal::has_traced_value_support<const WTF::String&>::value’
  470 |   static constexpr bool value = sizeof(Yes) == sizeof(check_support<T>(0));
      |                                                      ~~~~~~~~~~~~~~~~~^~~~
../../third_party/perfetto/include/perfetto/tracing/traced_value.h:480:46:   required from ‘void perfetto::WriteIntoTracedValue(TracedValue, T&&) [with T = const WTF::String&]’
  480 |       internal::has_traced_value_support<T>::value,
      |                                              ^~~~~
../../third_party/blink/renderer/platform/wtf/text/atomic_string.cc:127:33:   required from here
  127 |   perfetto::WriteIntoTracedValue(std::move(context), GetString());
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/15/bits/range_access.h:66:67: error: invalid use of incomplete type ‘class WTF::CodePointIterator’
   66 |     begin(const _Container& __cont) noexcept(noexcept(__cont.begin()))
      |                                                       ~~~~~~~~~~~~^~
In file included from ../../third_party/blink/renderer/platform/wtf/text/atomic_string.h:35:
../../third_party/blink/renderer/platform/wtf/text/string_view.h:31:7: note: forward declaration of ‘class WTF::CodePointIterator’
   31 | class CodePointIterator;
      |       ^~~~~~~~~~~~~~~~~

--- src/third_party/blink/renderer/platform/wtf/text/string_view.h.orig	2025-04-20 19:22:39.910671377 +0200
+++ src/third_party/blink/renderer/platform/wtf/text/string_view.h	2025-04-20 21:05:46.878482748 +0200
@@ -19,6 +19,7 @@
 #include "base/numerics/safe_conversions.h"
 #include "third_party/blink/renderer/platform/wtf/allocator/allocator.h"
 #include "third_party/blink/renderer/platform/wtf/get_ptr.h"
+#include "third_party/blink/renderer/platform/wtf/text/code_point_iterator.h"
 #include "third_party/blink/renderer/platform/wtf/text/string_impl.h"
 
 #if DCHECK_IS_ON()
@@ -28,7 +29,6 @@
 namespace WTF {
 
 class AtomicString;
-class CodePointIterator;
 class String;
 
 enum class Utf8ConversionMode : uint8_t {
openSUSE Build Service is sponsored by