Commit 986d5dfe authored by Vladimir Bashkirtsev's avatar Vladimir Bashkirtsev

Updated GCC11 fix

parent fabd9826
diff -uNr node-v24.10.0/src/node_v8_platform-inl.h node-v24.10.0-fix_gcc11/src/node_v8_platform-inl.h
--- node-v24.10.0/src/node_v8_platform-inl.h 2025-10-09 06:26:42.000000000 +1030
+++ node-v24.10.0-fix_gcc11/src/node_v8_platform-inl.h 2025-10-20 10:49:41.115626556 +1030
@@ -111,7 +111,10 @@
+++ node-v24.10.0-fix_gcc11/src/node_v8_platform-inl.h 2025-10-20 11:35:02.969940476 +1030
@@ -110,8 +110,11 @@
constexpr auto convert_to_set =
[](auto& categories) -> std::set<std::string> {
std::set<std::string> out;
for (const auto& s : categories) {
- for (const auto& s : categories) {
- out.emplace(std::string(s.data(), s.size()));
+ // `std::views::split` produces subranges that are not guaranteed contiguous,
+ // so `s.data()` is invalid on GCC 11+ and C++20.
+ // Use iterator-based construction instead.
+ out.emplace(std::string(std::ranges::begin(s), std::ranges::end(s)));
+ for (auto&& s : categories) {
+ std::string token;
+ for (char c : s)
+ token.push_back(c);
+ out.emplace(std::move(token));
}
return out;
};
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment