diff --git a/src/wasm/wasm-debug.cpp b/src/wasm/wasm-debug.cpp index c9d3e533311..b624f1ae143 100644 --- a/src/wasm/wasm-debug.cpp +++ b/src/wasm/wasm-debug.cpp @@ -436,8 +436,12 @@ struct AddrExprMap { void add(Expression* expr, const BinaryLocations::Span span) { assert(!startMap.contains(span.start)); startMap[span.start] = expr; - assert(!endMap.contains(span.end)); - endMap[span.end] = expr; + // The end may be 0, which means we never noted an end for this expression. + // TODO: We are likely dropping some debug info in wasm-ir-builder.cpp + if (span.end) { + assert(!endMap.contains(span.end)); + endMap[span.end] = expr; + } } void add(Expression* expr,