1
Fork 0
rust/src
bors 493c38ba37 Auto merge of #127173 - bjorn3:mangle_rustc_std_internal_symbol, r=wesleywiser,jieyouxu
Mangle rustc_std_internal_symbols functions

This reduces the risk of issues when using a staticlib or rust dylib compiled with a different rustc version in a rust program. Currently this will either (in the case of staticlib) cause a linker error due to duplicate symbol definitions, or (in the case of rust dylibs) cause rustc_std_internal_symbols functions to be silently overridden. As rust gets more commonly used inside the implementation of libraries consumed with a C interface (like Spidermonkey, Ruby YJIT (curently has to do partial linking of all rust code to hide all symbols not part of the C api), the Rusticl OpenCL implementation in mesa) this is becoming much more of an issue. With this PR the only symbols remaining with an unmangled name are rust_eh_personality (LLVM doesn't allow renaming it) and `__rust_no_alloc_shim_is_unstable`.

Helps mitigate https://github.com/rust-lang/rust/issues/104707

try-job: aarch64-gnu-debug
try-job: aarch64-apple
try-job: x86_64-apple-1
try-job: x86_64-mingw-1
try-job: i686-mingw-1
try-job: x86_64-msvc-1
try-job: i686-msvc-1
try-job: test-various
try-job: armhf-gnu
2025-03-17 22:16:22 +00:00
..
bootstrap Auto merge of #138611 - matthiaskrgr:rollup-hmjbqva, r=matthiaskrgr 2025-03-17 19:04:14 +00:00
build_helper Add post-merge analysis CI workflow 2025-03-07 09:43:52 +01:00
ci replace config.toml to bootstrap.toml in src/ci, src/etc/* and tests/run-make 2025-03-17 12:56:49 +05:30
doc Auto merge of #138611 - matthiaskrgr:rollup-hmjbqva, r=matthiaskrgr 2025-03-17 19:04:14 +00:00
etc replace config.toml to bootstrap.toml in src/ci, src/etc/* and tests/run-make 2025-03-17 12:56:49 +05:30
gcc@48664a6cab Revert "add fix for full tools and sanitizer" 2025-03-04 17:38:06 +08:00
librustdoc Rollup merge of #138577 - aDotInTheVoid:deprecate-deprecations, r=GuillaumeGomez 2025-03-17 16:34:51 +01:00
llvm-project@1c3bb96fdb Revert "add fix for full tools and sanitizer" 2025-03-04 17:38:06 +08:00
rustc-std-workspace
rustdoc-json-types Add RTN support to rustdoc 2025-03-15 18:13:27 +00:00
tools Auto merge of #127173 - bjorn3:mangle_rustc_std_internal_symbol, r=wesleywiser,jieyouxu 2025-03-17 22:16:22 +00:00
README.md
stage0 bump stage0 2025-02-18 08:51:01 -08:00
version Bump to version 1.87.0 2025-02-14 09:55:45 -08:00

This directory contains some source code for the Rust project, including:

  • The bootstrapping build system
  • Various submodules for tools, like cargo, tidy, etc.

For more information on how various parts of the compiler work, see the rustc dev guide.