build: remove CppHeapCreateParams patch (#38321)

build: remove CppHeapCreateParams patch
This commit is contained in:
Shelley Vohr 2023-05-17 09:52:29 +02:00 committed by GitHub
parent e08c583dea
commit 9902e01d2c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 0 additions and 41 deletions

View file

@ -5,5 +5,4 @@ export_symbols_needed_for_windows_build.patch
do_not_export_private_v8_symbols_on_windows.patch
fix_build_deprecated_attribute_for_older_msvc_versions.patch
fix_disable_implies_dcheck_for_node_stream_array_buffers.patch
force_cppheapcreateparams_to_be_noncopyable.patch
chore_allow_customizing_microtask_policy_per_context.patch

View file

@ -1,40 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jeremy Rose <jeremy.rose@salesforce.com>
Date: Wed, 28 Sep 2022 14:44:32 -0700
Subject: force CppHeapCreateParams to be noncopyable
Ref https://chromium-review.googlesource.com/c/v8/v8/+/3348007
Without this change, clang on windows for some reason thinks that
CppHeapCreateParams is copyable and tries to generate copy
constructors for it, which doesn't work because vector<unique_ptr>
isn't copyable.
If Electron compiles on Windows without this patch then it's no longer
needed.
diff --git a/include/v8-cppgc.h b/include/v8-cppgc.h
index 4a457027c9f76b5d75f8f693ebe31fd616134849..16548d3053563d2a5891fb8967a2b63a1f920f95 100644
--- a/include/v8-cppgc.h
+++ b/include/v8-cppgc.h
@@ -76,6 +76,12 @@ struct WrapperDescriptor final {
uint16_t embedder_id_for_garbage_collected;
};
+struct NonCopyable {
+ NonCopyable() = default;
+ NonCopyable(const NonCopyable&) = delete;
+ NonCopyable(NonCopyable&&) = default;
+};
+
struct V8_EXPORT CppHeapCreateParams {
CppHeapCreateParams(
std::vector<std::unique_ptr<cppgc::CustomSpaceBase>> custom_spaces,
@@ -100,6 +106,7 @@ struct V8_EXPORT CppHeapCreateParams {
*/
cppgc::Heap::SweepingType sweeping_support =
cppgc::Heap::SweepingType::kIncrementalAndConcurrent;
+ NonCopyable non_copyable_;
};
/**