for (const type of ["i32", "i64", "f32", "f64"]) { const extendedNonGlobals = nonGlobals.concat([
type === "i64" ? [0, "Number"] : [0n, "BigInt"],
[new WebAssembly.Global({value: type === "f32" ? "f64" : "f32"}), "WebAssembly.Global object (wrong value type)"],
]); for (const [value, name = format_value(value)] of extendedNonGlobals) {
t(`Importing an ${type} global with an incorrectly-typed value: ${name}`,
WebAssembly.LinkError,
builder => {
builder.addImportedGlobal("module", "global", value_type(type));
},
{ "module": { "global": value,
},
});
}
}
for (const type of ["i32", "i64", "f32", "f64"]) { const value = type === "i64" ? 0n : 0;
t(`Importing an ${type} mutable global with a primitive value`,
WebAssembly.LinkError,
builder => {
builder.addImportedGlobal("module", "global", value_type(type), true);
},
{ "module": { "global": value,
},
});
const global = new WebAssembly.Global({ "value": type }, value);
t(`Importing an ${type} mutable global with an immutable Global object`,
WebAssembly.LinkError,
builder => {
builder.addImportedGlobal("module", "global", value_type(type), true);
},
{ "module": { "global": global,
},
});
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.