blob: d1634f10ec9f34f7f6d53b7816f93a605a88f498 [file] [log] [blame] [edit]
function assert(x) {
if (!x) throw 'error!';
}
var wast = `
(module
(type $v (func))
(memory $0 0)
(export "test" (func $test))
(func $test (; 0 ;) (type $v))
)
`;
// Use defaults (should not emit debug info)
console.log("=== default ===");
console.log("debugInfo=" + Binaryen.getDebugInfo());
var module = Binaryen.parseText(wast);
var binary = module.emitBinary();
module.dispose();
module = Binaryen.readBinary(binary);
console.log(module.emitText());
assert(module.validate());
module.dispose();
// With debug info
console.log("=== with debug info ===");
Binaryen.setDebugInfo(true);
console.log("debugInfo=" + Binaryen.getDebugInfo());
module = Binaryen.parseText(wast);
binary = module.emitBinary();
module.dispose();
module = Binaryen.readBinary(binary);
console.log(module.emitText());
assert(module.validate());
module.dispose();
// Without debug info
console.log("=== without debug info ===");
Binaryen.setDebugInfo(false);
console.log("debugInfo=" + Binaryen.getDebugInfo());
module = Binaryen.parseText(wast);
binary = module.emitBinary();
module.dispose();
module = Binaryen.readBinary(binary);
console.log(module.emitText());
assert(module.validate());
module.dispose();