From 48d8e31f81f16b059728b4b098223ec0ef4c7510 Mon Sep 17 00:00:00 2001 From: JF Bastien Date: Tue, 22 Dec 2015 12:47:47 -0800 Subject: Add missing virtual dtor Deleting a Pass* wasn't doing the right thing. --- src/pass.cpp | 2 +- src/wasm.h | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/pass.cpp b/src/pass.cpp index 63b1a7869..59f51df09 100644 --- a/src/pass.cpp +++ b/src/pass.cpp @@ -86,7 +86,7 @@ P* PassRunner::getLast() { PassRunner::~PassRunner() { for (auto pass : passes) { - delete(pass); + delete pass; } } diff --git a/src/wasm.h b/src/wasm.h index 8583f9492..9571c0e7e 100644 --- a/src/wasm.h +++ b/src/wasm.h @@ -1107,6 +1107,7 @@ private: template struct WasmVisitor { + virtual ~WasmVisitor() {} // should be pure virtual, but https://gcc.gnu.org/bugzilla/show_bug.cgi?id=51048 // Expression visitors virtual ReturnType visitBlock(Block *curr) { abort(); } -- cgit v1.2.3