]> git.lizzy.rs Git - rust.git/commit
Auto merge of #46899 - m4b:linkage_name_equals_symbol_name, r=michaelwoerister
authorbors <bors@rust-lang.org>
Sun, 24 Dec 2017 23:35:19 +0000 (23:35 +0000)
committerbors <bors@rust-lang.org>
Sun, 24 Dec 2017 23:35:19 +0000 (23:35 +0000)
commita834b861788712ec54fb17beb03132416da03dd2
tree132dff3fb58001277d513ebfb5ed663a280d08ca
parentc284f8807eb3a1d728242bb6a767b0306d6f6bd5
parent990a5cc1e51301cc623bd5864f15ace66fdc186a
Auto merge of #46899 - m4b:linkage_name_equals_symbol_name, r=michaelwoerister

Set the dwarf linkage_name to the mangled name

ref #46453

@michaelwoerister or anyone else who knows, i'm not sure if this is the correct instance to pass here (or how to get the correct one precisely): https://github.com//m4b/rust/blob/5a94a48678ec0a20ea6a63a783e63546bf9459b1/src/librustc_trans/debuginfo/namespace.rs#L36

So don't merge this yet, I'd like to learn about correct instance first; however, I think this already fixes a bunch of weirdness i'm seeing debugging from time to time, not to mention backtraces in gdb via `bt` are now ~readable~ meaningful :tada:

E.g.:

new:
```
(gdb) bt
#0  <inline::Foo as core::convert::From<()>>::from () at /home/m4b/tmp/bad_debug/inline.rs:11
#1  0x000055555555a35d in inline::deadbeef () at /home/m4b/tmp/bad_debug/inline.rs:16
#2  0x000055555555a380 in inline::main () at /home/m4b/tmp/bad_debug/inline.rs:20
```

old:
```
(gdb) bt
#0  inline::{{impl}}::from () at /home/m4b/tmp/bad_debug/inline.rs:11
#1  0x000055555555b0ed in inline::deadbeef () at /home/m4b/tmp/bad_debug/inline.rs:16
#2  0x000055555555b120 in inline::main () at /home/m4b/tmp/bad_debug/inline.rs:20
```