rust/compiler/rustc_session/src
David Wood ff00110543
sess: default to v0 symbol mangling
Rust's current mangling scheme depends on compiler internals; loses
information about generic parameters (and other things) which makes for
a worse experience when using external tools that need to interact with
Rust symbol names; is inconsistent; and can contain `.` characters
which aren't universally supported. Therefore, Rust has defined its own
symbol mangling scheme which is defined in terms of the Rust language,
not the compiler implementation; encodes information about generic
parameters in a reversible way; has a consistent definition; and
generates symbols that only use the characters `A-Z`, `a-z`, `0-9`, and
`_`.

Support for the new Rust symbol mangling scheme has been added to
upstream tools that will need to interact with Rust symbols (e.g.
debuggers).

This commit changes the default symbol mangling scheme from the legacy
scheme to the new Rust mangling scheme.

Signed-off-by: David Wood <david.wood@huawei.com>
2025-11-19 11:55:09 +00:00
..
config rustc_target: introduce Os 2025-11-11 18:55:40 -05:00
code_stats.rs Document why CodeStats::type_sizes is public 2025-04-21 17:36:36 +02:00
config.rs sess: default to v0 symbol mangling 2025-11-19 11:55:09 +00:00
cstore.rs Move NativeLibKind from rustc_session to rustc_hir 2025-08-27 20:24:59 +02:00
errors.rs Better warning message for crate type unsupported by codegen backend 2025-11-02 12:33:38 +00:00
filesearch.rs Fix new function_casts_as_integer lint errors in core, std, panic_unwind and compiler crates 2025-11-10 16:38:28 +01:00
lib.rs move -Ctarget-feature handling into shared code 2025-06-19 09:44:01 +09:00
options.rs Auto merge of #147935 - luca3s:add-rtsan, r=petrochenkov 2025-11-08 12:24:15 +00:00
output.rs Better warning message for crate type unsupported by codegen backend 2025-11-02 12:33:38 +00:00
parse.rs Refactor lint buffering to avoid requiring a giant enum 2025-08-22 01:59:56 -07:00
search_paths.rs Greatly simplify lifetime captures in edition 2024 2025-02-22 22:24:52 +00:00
session.rs Rollup merge of #148855 - ZuseZ4:autodiff-lto-error, r=bjorn3 2025-11-17 16:41:02 +11:00
utils.rs Move NativeLibKind from rustc_session to rustc_hir 2025-08-27 20:24:59 +02:00