Update wat crate.
Update the `wat` crate to latest version and use `Error::set_path` in `Module::from_file` to properly record the path associated with errors.
This commit is contained in:
4
Cargo.lock
generated
4
Cargo.lock
generated
@@ -3598,9 +3598,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "wat"
|
||||
version = "1.0.36"
|
||||
version = "1.0.37"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "0b0fa059022c5dabe129f02b429d67086400deb8277f89c975555dacc1dadbcc"
|
||||
checksum = "8ec280a739b69173e0ffd12c1658507996836ba4e992ed9bc1e5385a0bd72a02"
|
||||
dependencies = [
|
||||
"wast 35.0.1",
|
||||
]
|
||||
|
||||
@@ -38,7 +38,7 @@ anyhow = "1.0.19"
|
||||
target-lexicon = { version = "0.12.0", default-features = false }
|
||||
pretty_env_logger = "0.4.0"
|
||||
file-per-thread-logger = "0.1.1"
|
||||
wat = "1.0.36"
|
||||
wat = "1.0.37"
|
||||
libc = "0.2.60"
|
||||
log = "0.4.8"
|
||||
rayon = "1.2.1"
|
||||
|
||||
@@ -24,7 +24,7 @@ smallvec = "1.6.1"
|
||||
thiserror = "1.0.4"
|
||||
|
||||
[dev-dependencies]
|
||||
wat = "1.0.36"
|
||||
wat = "1.0.37"
|
||||
target-lexicon = "0.12"
|
||||
# Enable the riscv feature for cranelift-codegen, as some tests require it
|
||||
cranelift-codegen = { path = "../codegen", version = "0.72.0", default-features = false, features = ["riscv"] }
|
||||
|
||||
@@ -22,7 +22,7 @@ wasm-smith = "0.4.4"
|
||||
wasmi = "0.7.0"
|
||||
|
||||
[dev-dependencies]
|
||||
wat = "1.0.36"
|
||||
wat = "1.0.37"
|
||||
|
||||
[features]
|
||||
experimental_x64 = ["wasmtime/experimental_x64"]
|
||||
|
||||
@@ -28,7 +28,7 @@ wasmparser = "0.77"
|
||||
|
||||
[dev-dependencies]
|
||||
lazy_static = "1.2"
|
||||
wat = "1.0.36"
|
||||
wat = "1.0.37"
|
||||
quickcheck = "1.0.0"
|
||||
anyhow = "1.0"
|
||||
|
||||
|
||||
@@ -20,7 +20,7 @@ pretty_env_logger = "0.4.0"
|
||||
tempfile = "3.1.0"
|
||||
os_pipe = "0.9"
|
||||
anyhow = "1.0.19"
|
||||
wat = "1.0.36"
|
||||
wat = "1.0.37"
|
||||
cap-std = "0.13"
|
||||
|
||||
[features]
|
||||
|
||||
@@ -228,10 +228,23 @@ impl Module {
|
||||
/// # }
|
||||
/// ```
|
||||
pub fn from_file(engine: &Engine, file: impl AsRef<Path>) -> Result<Module> {
|
||||
Self::new(
|
||||
match Self::new(
|
||||
engine,
|
||||
&fs::read(file).with_context(|| "failed to read input file")?,
|
||||
)
|
||||
&fs::read(&file).with_context(|| "failed to read input file")?,
|
||||
) {
|
||||
Ok(m) => Ok(m),
|
||||
Err(e) => {
|
||||
cfg_if::cfg_if! {
|
||||
if #[cfg(feature = "wat")] {
|
||||
let mut e = e.downcast::<wat::Error>()?;
|
||||
e.set_path(file);
|
||||
bail!(e)
|
||||
} else {
|
||||
Err(e)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// Creates a new WebAssembly `Module` from the given in-memory `binary`
|
||||
|
||||
Reference in New Issue
Block a user