From 284a47cbe888a3421d6f20f2bda716ae1ece097b Mon Sep 17 00:00:00 2001 From: Alon Zakai Date: Thu, 13 May 2021 11:31:04 -0700 Subject: RemoveUnusedModuleElements: The start function may be imported (#3884) Without this fix we can segfault, as it has no body. Fixes #3879 --- src/passes/RemoveUnusedModuleElements.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src') diff --git a/src/passes/RemoveUnusedModuleElements.cpp b/src/passes/RemoveUnusedModuleElements.cpp index 59d9a2a9b..a26fd5d45 100644 --- a/src/passes/RemoveUnusedModuleElements.cpp +++ b/src/passes/RemoveUnusedModuleElements.cpp @@ -150,7 +150,7 @@ struct RemoveUnusedModuleElements : public Pass { if (module->start.is()) { auto startFunction = module->getFunction(module->start); // Can be skipped if the start function is empty. - if (startFunction->body->is()) { + if (!startFunction->imported() && startFunction->body->is()) { module->start.clear(); } else { roots.emplace_back(ModuleElementKind::Function, module->start); -- cgit v1.2.3