diff --git a/src/binaryen-c.cpp b/src/binaryen-c.cpp index a68e3b3f1dc..2a3b6afc397 100644 --- a/src/binaryen-c.cpp +++ b/src/binaryen-c.cpp @@ -1685,8 +1685,11 @@ BinaryenExpressionRef BinaryenTableGrow(BinaryenModuleRef module, BinaryenExpressionRef value, BinaryenExpressionRef delta) { if (value == nullptr) { - auto tableType = (*(Module*)module).getTableOrNull(name)->type; - value = BinaryenRefNull(module, (BinaryenType)tableType.getID()); + auto* table = (*(Module*)module).getTableOrNull(name); + if (!table) { + Fatal() << "invalid table '" << name << "'."; + } + value = BinaryenRefNull(module, (BinaryenType)table->type.getID()); } return static_cast( Builder(*(Module*)module)