diff --git a/.cargo/config.toml b/.cargo/config.toml index 7ec6f88e6..15fd75d2a 100644 --- a/.cargo/config.toml +++ b/.cargo/config.toml @@ -2,5 +2,11 @@ # browser backend on wasm32-unknown-unknown, alongside its `wasm_js` feature # (enabled in Cargo.toml for the wasm target). Without it the web build fails # with "wasm32-unknown-unknown targets are not supported by default". +# +# `-Cstrip=none` overrides the release profile's `strip = true` for the wasm +# target only: stripping removes the `target_features` custom section, so +# `wasm-opt` can no longer see that `bulk-memory` is enabled and rejects the +# module's memory.fill/copy ops ("require bulk memory"). Native release binaries +# stay stripped; only the wasm keeps its feature section. [target.wasm32-unknown-unknown] -rustflags = ['--cfg', 'getrandom_backend="wasm_js"'] +rustflags = ['--cfg', 'getrandom_backend="wasm_js"', '-Cstrip=none']