alexcrichton opened issue #14588:
This input:
(module (memory 1) (func (export "store") (param i32 i32) local.get 0 local.get 1 i32.store) (func (export "load") (param i32) (result i32) local.get 0 i32.load) ) (assert_return (invoke "store" (i32.const 0) (i32.const 42))) (assert_return (invoke "load" (i32.const 0)) (i32.const 42)) (assert_trap (invoke "load" (i32.const 65533)) "out of bounds") (module (memory 2) (func (export "load") (param i32) (result i32) local.get 0 i32.load offset=70000)) (assert_return (invoke "load" (i32.const 0)) (i32.const 0))fails with:
$ wasmtime wast repro.wast -Ccompiler=winch -Omemory-may-move=n,memory-reservation=0 Error: failed to run script file 'repro.wast' Caused by: 0: failed directive on repro.wast:17 1: error while executing at wasm backtrace: 0: 0x3a - wasm-function[0] at ./repro.wast:12:5 2: wasm trap: out of bounds memory access
alexcrichton added the winch label to Issue #14588.
saulecabrera commented on issue #14588:
Looking into this.
alexcrichton added the bug label to Issue #14588.
alexcrichton closed issue #14588:
This input:
(module (memory 1) (func (export "store") (param i32 i32) local.get 0 local.get 1 i32.store) (func (export "load") (param i32) (result i32) local.get 0 i32.load) ) (assert_return (invoke "store" (i32.const 0) (i32.const 42))) (assert_return (invoke "load" (i32.const 0)) (i32.const 42)) (assert_trap (invoke "load" (i32.const 65533)) "out of bounds") (module (memory 2) (func (export "load") (param i32) (result i32) local.get 0 i32.load offset=70000)) (assert_return (invoke "load" (i32.const 0)) (i32.const 0))fails with:
$ wasmtime wast repro.wast -Ccompiler=winch -Omemory-may-move=n,memory-reservation=0 Error: failed to run script file 'repro.wast' Caused by: 0: failed directive on repro.wast:17 1: error while executing at wasm backtrace: 0: 0x3a - wasm-function[0] at ./repro.wast:12:5 2: wasm trap: out of bounds memory access
Last updated: Oct 11 2026 at 04:10 UTC