HomeFreeBSD

devel/electron25: fix build with libc++ 17

Description

devel/electron25: fix build with libc++ 17

Building www/qt6-webengine with libc++ 17 results in the following
compile errors:

In file included from ../../base/allocator/dispatcher/reentry_guard.cc:9:
In file included from ../../base/debug/crash_logging.h:16:
In file included from ../../base/strings/string_number_conversions.h:15:
In file included from ../../base/containers/span.h:19:
../../base/containers/checked_iterators.h:248:8: error: no template named '__is_cpp17_contiguous_iterator'; did you mean '__libcpp_is_contiguous_iterator'?
 248 | struct __is_cpp17_contiguous_iterator<::base::CheckedContiguousIterator<T>>
     |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     |        __libcpp_is_contiguous_iterator
/usr/include/c++/v1/__iterator/iterator_traits.h:476:8: note: '__libcpp_is_contiguous_iterator' declared here
 476 | struct __libcpp_is_contiguous_iterator : _Or<
     |        ^

This is because the copy of chromium in electron25 is missing an
upstream fix for recent libc++ changes, in particular:

https://chromium.googlesource.com/chromium/src/+/9bfbbffdba73668fdb483e5a850911d2b64c35d7

and its dependency:

https://chromium.googlesource.com/chromium/src/+/5b5551edd3961481e617e510276b9f015a35b861

Apply these patches to work around the compile error.

Reported by: Rainer Hurling <rhurlin@gwdg.de>
Tested by: Rainer Hurling <rhurlin@gwdg.de>

Details

Provenance
dimAuthored on Dec 16 2023, 12:13 PM
Parents
R11:c97cad275aa9: lang/gcc10: recommit "fix build with clang 17"
Branches
Unknown
Tags
Unknown