]> git.lizzy.rs Git - rust.git/commitdiff
Rollup merge of #105405 - sunfishcode:sunfishcode/export-dynamic, r=TaKO8Ki
authorMatthias Krüger <matthias.krueger@famsik.de>
Thu, 8 Dec 2022 11:57:30 +0000 (12:57 +0100)
committerGitHub <noreply@github.com>
Thu, 8 Dec 2022 11:57:30 +0000 (12:57 +0100)
Stop passing -export-dynamic to wasm-ld.

-export-dynamic was a temporary hack added in the early days of the Rust wasm32 target when Rust didn't have a way to specify wasm exports in the source code. This flag causes all global symbols, and some compiler-internal symbols, to be exported, which is often more than needed.

Rust now does have a way to specify exports in the source code: `#[export_name = "..."]`.

So as the original comment suggests, -export-dynamic can now be removed, allowing users to have smaller binaries and better encapsulation in their wasm32-unknown-unknown modules.

It's possible that this change will require existing wasm32-unknown-unknown users will to add explicit `#[export_name = "..."]` directives to exporrt the symbols that their programs depend on having exported.


Trivial merge