Skip to content

Introduce perma-unstable wasm-c-abi flag #703

Closed
@daxpedda

Description

Proposal

Currently Rust uses a non-spec-compliant ABI for extern "C" fn when compiling to wasm32-unknown-unknown. Unfortunately, as a large part of the Rust ecosystem relies on wasm-bindgen, which didn't support the spec-compliant ABI, switching to the spec-compliant ABI was problematic as it would break a lot of code out there.

With wasm-bindgen v0.2.88, it now supports the spec-compliant ABI, so hopefully some day in the future Rust can switch to this ABI. In the meantime it would be important for users to test this new ABI, which is the purpose of this MCP: to introduce a new flag which switches to this new ABI when targetting wasm32-unknown-unknown.

This flag would be perma-unstable, as there is no point to stabilize it and then just deprecate it when the new ABI becomes the default.

Related issue: rust-lang/rust#71871
Implementation PR: rust-lang/rust#117919

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    T-compilerAdd this label so rfcbot knows to poll the compiler teammajor-changeA proposal to make a major change to rustcmajor-change-acceptedA major change proposal that was accepted

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions