Skip to content

wasm-mappings fail to build with Rust 1.96+ #530

Description

@maxgmr

Rust 1.96+ no longer passes --allow-undefined to wasm-ld (rust-lang/rust#149868). Previously a bare extern "C" block on wasm32-unknown-unknown implicitly imported symbols from the env module.

Now, as upstream stated, we must explicitly add the link to env.

Steps to reproduce

$ cd wasm-mappings/source-map-mappings-wasm-api
$ rustup update nightly
$ cargo +1.95.0 build --target wasm32-unknown-unknown
$ cargo +nightly build --target wasm32-unknown-unknown

Expected result

The build should pass for both toolchains.

Actual result

The build passes for Rust 1.95.0, but fails on 1.96.0+:

error: linking with `rust-lld` failed: exit status: 1
  |
[...]
  = note: rust-lld: error: /home/maxgmr/sources/source-map/wasm-mappings/source-map-mappings-wasm-api/target/wasm32-unknown-unknown/debug/deps/source_map_mappings_wasm_api.8e20wo29qqjt46oljko96p7gc.02rjxce.rcgu.o: undefined symbol: mapping_callback

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions