rust/tests/debuginfo
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
..
auxiliary Remove the omit_gdb_pretty_printer_section attribute 2025-08-01 20:04:59 +00:00
opt codegen: Generate dbg_value for the ref statement 2025-10-02 14:55:51 +08:00
associated-types.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
basic-stepping.rs rustc_codegen_llvm: Require opt-level >= 1 for index-based loop 2025-11-13 06:29:55 +01:00
basic-types-globals-metadata.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
basic-types-globals.rs sess: default to v0 symbol mangling 2025-11-19 11:55:09 +00:00
basic-types-metadata.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
basic-types-mut-globals.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
basic-types.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
borrowed-basic.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
borrowed-c-style-enum.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
borrowed-enum.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
borrowed-struct.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
borrowed-tuple.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
borrowed-unique-basic.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
box.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
boxed-struct.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
by-value-non-immediate-argument.rs Remove the omit_gdb_pretty_printer_section attribute 2025-08-01 20:04:59 +00:00
by-value-self-argument-in-trait-impl.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
c-style-enum-in-composite.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
c-style-enum.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
captured-fields-1.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
captured-fields-2.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
closure-in-generic-function.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
closures.rs Add and improve debuginfo tests for Windows 2025-01-13 09:38:04 +01:00
collapse-debuginfo-external-attr.rs debuginfo: Stabilize -Z debug-macros, -Z collapse-macro-debuginfo and #[collapse_debuginfo] 2024-04-25 22:14:47 +03:00
collapse-debuginfo-external-flag-overriden-by-attr.rs debuginfo: Stabilize -Z debug-macros, -Z collapse-macro-debuginfo and #[collapse_debuginfo] 2024-04-25 22:14:47 +03:00
collapse-debuginfo-external-flag.rs debuginfo: Stabilize -Z debug-macros, -Z collapse-macro-debuginfo and #[collapse_debuginfo] 2024-04-25 22:14:47 +03:00
collapse-debuginfo-in-non-collapse-macro.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
collapse-debuginfo-no-attr.rs debuginfo: Stabilize -Z debug-macros, -Z collapse-macro-debuginfo and #[collapse_debuginfo] 2024-04-25 22:14:47 +03:00
collapse-debuginfo-static-external.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
collapse-debuginfo-static.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
collapse-debuginfo-with-attr-flag.rs debuginfo: Stabilize -Z debug-macros, -Z collapse-macro-debuginfo and #[collapse_debuginfo] 2024-04-25 22:14:47 +03:00
collapse-debuginfo-with-attr.rs debuginfo: Stabilize -Z debug-macros, -Z collapse-macro-debuginfo and #[collapse_debuginfo] 2024-04-25 22:14:47 +03:00
collapse-debuginfo-with-yes-flag.rs debuginfo: Stabilize -Z debug-macros, -Z collapse-macro-debuginfo and #[collapse_debuginfo] 2024-04-25 22:14:47 +03:00
constant-debug-locs.rs Remove the omit_gdb_pretty_printer_section attribute 2025-08-01 20:04:59 +00:00
constant-in-match-pattern.rs Remove the omit_gdb_pretty_printer_section attribute 2025-08-01 20:04:59 +00:00
constant-ordering-prologue.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
coroutine-closure.rs replace //@ compile-flags: --edition with //@ edition 2025-04-10 09:56:37 +02:00
coroutine-locals.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
coroutine-objects.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
cross-crate-spans.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
cross-crate-type-uniquing.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
destructured-fn-argument.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
destructured-for-loop-variable.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
destructured-local.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
drop-locations.rs tests: refine disable reason for tests/debuginfo/drop-locations.rs 2025-04-17 18:52:57 +08:00
dummy_span.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
duration-type.rs [AUTO_GENERATED] Migrate compiletest to use ui_test-style //@ directives 2024-02-22 16:04:04 +00:00
embedded-visualizer-point.natvis Move /src/test to /tests 2023-01-11 09:32:08 +00:00
embedded-visualizer-point.py Reformat Python code with ruff 2024-12-04 23:03:44 +01:00
embedded-visualizer.natvis Move /src/test to /tests 2023-01-11 09:32:08 +00:00
embedded-visualizer.py Reformat Python code with ruff 2024-12-04 23:03:44 +01:00
embedded-visualizer.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
empty-string.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
enum-thinlto.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
evec-in-struct.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
extern-c-fn.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
f16-natvis.rs Add Natvis visualiser and debuginfo tests for f16 2024-07-09 03:47:50 +01:00
fixed-sized-array.rs [AUTO_GENERATED] Migrate compiletest to use ui_test-style //@ directives 2024-02-22 16:04:04 +00:00
fn_ptr.rs Add and improve debuginfo tests for Windows 2025-01-13 09:38:04 +01:00
function-arg-initialization.rs tests: activate misspelled gdb-check in function-arg-initialization.rs 2025-10-28 06:21:17 +01:00
function-arguments.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
function-call.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
function-names.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
function-prologue-stepping-regular.rs Remove the omit_gdb_pretty_printer_section attribute 2025-08-01 20:04:59 +00:00
gdb-char.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
gdb-pretty-struct-and-enums.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
generic-enum-with-different-disr-sizes.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
generic-function.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
generic-functions-nested.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
generic-method-on-generic-struct.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
generic-static-method-on-struct-and-enum.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
generic-struct-style-enum.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
generic-struct.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
generic-tuple-style-enum.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
include_string.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
issue-7712.rs Delete min-lldb-version: 310 2024-08-18 16:58:26 -04:00
issue-12886.rs Remove the omit_gdb_pretty_printer_section attribute 2025-08-01 20:04:59 +00:00
issue-13213.rs Delete min-lldb-version: 310 2024-08-18 16:58:26 -04:00
issue-14411.rs Delete min-lldb-version: 310 2024-08-18 16:58:26 -04:00
issue-22656.rs Remove the omit_gdb_pretty_printer_section attribute 2025-08-01 20:04:59 +00:00
issue-57822.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
lexical-scope-in-for-loop.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
lexical-scope-in-if-let.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
lexical-scope-in-if.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
lexical-scope-in-match.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
lexical-scope-in-parameterless-closure.rs Delete min-lldb-version: 310 2024-08-18 16:58:26 -04:00
lexical-scope-in-stack-closure.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
lexical-scope-in-unconditional-loop.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
lexical-scope-in-unique-closure.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
lexical-scope-in-while.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
lexical-scope-with-macro.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
lexical-scopes-in-block-expression.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
limited-debuginfo.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
macro-stepping.inc Move /src/test to /tests 2023-01-11 09:32:08 +00:00
macro-stepping.rs Re-enable macro-stepping test for AArch64 2025-10-27 10:26:57 +00:00
marker-types.rs [AUTO_GENERATED] Migrate compiletest to use ui_test-style //@ directives 2024-02-22 16:04:04 +00:00
method-on-enum.rs Remove the omit_gdb_pretty_printer_section attribute 2025-08-01 20:04:59 +00:00
method-on-generic-struct.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
method-on-struct.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
method-on-trait.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
method-on-tuple-struct.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
msvc-pretty-enums.rs Stabilise repr128 2025-05-28 15:14:34 +01:00
msvc-scalarpair-params.rs [AUTO_GENERATED] Migrate compiletest to use ui_test-style //@ directives 2024-02-22 16:04:04 +00:00
multi-byte-chars.rs Delete min-lldb-version: 310 2024-08-18 16:58:26 -04:00
multi-cgu.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
multiline-calls.rs Use the fn_span when emitting function calls for better debug info. 2025-05-22 14:06:24 -07:00
multiple-functions-equal-var-names.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
multiple-functions.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
mutable-locs.rs [AUTO_GENERATED] Migrate compiletest to use ui_test-style //@ directives 2024-02-22 16:04:04 +00:00
mutex.rs Move some things to std::sync::poison and reexport them in std::sync 2025-01-02 15:21:41 +03:00
name-shadowing-and-scope-nesting.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
no_mangle-info.rs sess: default to v0 symbol mangling 2025-11-19 11:55:09 +00:00
numeric-types.rs Minor fixes to StdNonZeroNumberProvider for gdb 2025-11-05 11:42:54 -07:00
option-like-enum.rs Remove the omit_gdb_pretty_printer_section attribute 2025-08-01 20:04:59 +00:00
packed-struct-with-destructor.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
packed-struct.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
path.rs Add rust-lldb pretty printing for Path and PathBuf 2024-03-29 18:02:26 -06:00
pretty-huge-vec.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
pretty-slices.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
pretty-std-collections-hash.rs [AUTO_GENERATED] Migrate compiletest to use ui_test-style //@ directives 2024-02-22 16:04:04 +00:00
pretty-std-collections.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
pretty-std.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
pretty-uninitialized-vec.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
range-types.rs Update cdb annotations for range-types.rs with cdb 10.0.26100.2161 2024-11-17 00:42:30 +08:00
rc_arc.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
recursive-enum.rs Remove the omit_gdb_pretty_printer_section attribute 2025-08-01 20:04:59 +00:00
recursive-struct.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
recursive-type-with-gat.rs tests: {Meta,Pointee}Sized in non-minicore tests 2025-06-16 23:04:33 +00:00
reference-debuginfo.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
regression-bad-location-list-67992.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
result-types.rs [AUTO_GENERATED] Migrate compiletest to use ui_test-style //@ directives 2024-02-22 16:04:04 +00:00
rwlock-read.rs Move some things to std::sync::poison and reexport them in std::sync 2025-01-02 15:21:41 +03:00
rwlock-write.rs Move some things to std::sync::poison and reexport them in std::sync 2025-01-02 15:21:41 +03:00
self-in-default-method.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
self-in-generic-default-method.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
shadowed-argument.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
shadowed-variable.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
should-fail.rs Delete min-lldb-version: 310 2024-08-18 16:58:26 -04:00
simd.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
simple-lexical-scope.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
simple-struct.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
simple-tuple.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
skip_second_statement.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
skip_second_statement_collapse.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
static-method-on-struct-and-enum.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
step-into-match.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
strings-and-strs.rs Remove the omit_gdb_pretty_printer_section attribute 2025-08-01 20:04:59 +00:00
struct-in-enum.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
struct-in-struct.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
struct-namespace.rs Remove the omit_gdb_pretty_printer_section attribute 2025-08-01 20:04:59 +00:00
struct-style-enum.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
struct-with-destructor.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
text-to-include-1.txt Move /src/test to /tests 2023-01-11 09:32:08 +00:00
text-to-include-2.txt Move /src/test to /tests 2023-01-11 09:32:08 +00:00
text-to-include-3.txt Move /src/test to /tests 2023-01-11 09:32:08 +00:00
thread-names.rs Enable more debuginfo tests on Windows 2024-08-16 21:14:45 -04:00
thread.rs Revert "Remove the Arc rt::init allocation for thread info" 2025-01-14 13:37:25 +01:00
trait-pointers.rs Remove the omit_gdb_pretty_printer_section attribute 2025-08-01 20:04:59 +00:00
tuple-in-struct.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
tuple-in-tuple.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
tuple-struct.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
tuple-style-enum.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
type-names.cdb.js Move /src/test to /tests 2023-01-11 09:32:08 +00:00
type-names.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
union-smoke.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
unique-enum.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
unit-type.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
unreachable-locals.rs Remove the omit_gdb_pretty_printer_section attribute 2025-08-01 20:04:59 +00:00
unsized.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
var-captured-in-nested-closure.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
var-captured-in-sendable-closure.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
var-captured-in-stack-closure.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
vec-slices.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
vec.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00
zst-interferes-with-prologue.rs Ignore failing debuginfo tests with gcc backend 2025-10-13 15:20:49 +02:00