summaryrefslogtreecommitdiff
path: root/deps
diff options
context:
space:
mode:
authorMichaël Zasso <targos@protonmail.com>2019-10-21 16:07:44 +0200
committerMichaël Zasso <targos@protonmail.com>2019-11-08 15:50:50 +0100
commitd56f9a9b86b051c64709e80b6ec0e34198de4890 (patch)
treeb38c51100c059ce3f945074d5c83c9a7d9f9b805 /deps
parentd751952c48325563cbdcd7d263db9ba112f3acc9 (diff)
downloadandroid-node-v8-d56f9a9b86b051c64709e80b6ec0e34198de4890.tar.gz
android-node-v8-d56f9a9b86b051c64709e80b6ec0e34198de4890.tar.bz2
android-node-v8-d56f9a9b86b051c64709e80b6ec0e34198de4890.zip
deps: V8: cherry-pick cfe9172
Original commit message: [wasm] Disallow interpreter move The MOVE_ONLY_NO_DEFAULT_CONSTRUCTOR macro defines a defaulted move constructor and move-assignment operator. The {std::unique_ptr} on the other hand needs the contained type to be complete when instantiating the move assignment operator. Hence, this fails e.g. on MSVC, see https://github.com/nodejs/node/pull/30020#issuecomment-544485991. It turns out that we never actually move the interpreter, so we can just replace the MOVE_ONLY_NO_DEFAULT_CONSTRUCTOR by DISALLOW_COPY_AND_ASSIGN. R=ahaas@chromium.org Change-Id: Iba7d30243510ed9554be62b0c4c8e6f47f0c3307 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1871921 Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64423} Refs: https://github.com/v8/v8/commit/cfe9172e64795a69112f8247bdcc00954ca9515e PR-URL: https://github.com/nodejs/node/pull/30020 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Diffstat (limited to 'deps')
-rw-r--r--deps/v8/src/wasm/wasm-debug.cc4
-rw-r--r--deps/v8/src/wasm/wasm-interpreter.h4
2 files changed, 5 insertions, 3 deletions
diff --git a/deps/v8/src/wasm/wasm-debug.cc b/deps/v8/src/wasm/wasm-debug.cc
index ea989c081d..f3580e4427 100644
--- a/deps/v8/src/wasm/wasm-debug.cc
+++ b/deps/v8/src/wasm/wasm-debug.cc
@@ -97,7 +97,6 @@ MaybeHandle<String> GetLocalName(Isolate* isolate,
}
class InterpreterHandle {
- MOVE_ONLY_NO_DEFAULT_CONSTRUCTOR(InterpreterHandle);
Isolate* isolate_;
const WasmModule* module_;
WasmInterpreter interpreter_;
@@ -461,6 +460,9 @@ class InterpreterHandle {
}
return local_scope_object;
}
+
+ private:
+ DISALLOW_COPY_AND_ASSIGN(InterpreterHandle);
};
} // namespace
diff --git a/deps/v8/src/wasm/wasm-interpreter.h b/deps/v8/src/wasm/wasm-interpreter.h
index 4eb0675aba..e0a32c71d6 100644
--- a/deps/v8/src/wasm/wasm-interpreter.h
+++ b/deps/v8/src/wasm/wasm-interpreter.h
@@ -172,8 +172,6 @@ class V8_EXPORT_PRIVATE WasmInterpreter {
uint32_t ActivationFrameBase(uint32_t activation_id);
};
- MOVE_ONLY_NO_DEFAULT_CONSTRUCTOR(WasmInterpreter);
-
WasmInterpreter(Isolate* isolate, const WasmModule* module,
const ModuleWireBytes& wire_bytes,
Handle<WasmInstanceObject> instance);
@@ -220,6 +218,8 @@ class V8_EXPORT_PRIVATE WasmInterpreter {
private:
Zone zone_;
std::unique_ptr<WasmInterpreterInternals> internals_;
+
+ DISALLOW_COPY_AND_ASSIGN(WasmInterpreter);
};
} // namespace wasm