about summary refs log tree commit diff
path: root/compiler/rustc_mir_transform/src/coverage/debug.rs
diff options
context:
space:
mode:
authorMatthias Krüger <matthias.krueger@famsik.de>2022-02-24 07:48:04 +0100
committerGitHub <noreply@github.com>2022-02-24 07:48:04 +0100
commit77a8e60dd7285423815002a747ce24602936f59b (patch)
tree7ed35c936798446ac900c90d70c4de7abf15fad2 /compiler/rustc_mir_transform/src/coverage/debug.rs
parente780264e1e5c1efa6ab76c7b17a9677f16add5e0 (diff)
parentbe454f056fc7637da6d1922c532d73831dc072db (diff)
downloadrust-77a8e60dd7285423815002a747ce24602936f59b.tar.gz
rust-77a8e60dd7285423815002a747ce24602936f59b.zip
Rollup merge of #89887 - arlosi:char-debug, r=wesleywiser
Change `char` type in debuginfo to DW_ATE_UTF

Rust previously encoded the `char` type as DW_ATE_unsigned_char. The more appropriate encoding is `DW_ATE_UTF`.

Clang also uses the DW_ATE_UTF for `char32_t` in C++.

This fixes the display of the `char` type in the Windows debuggers. Without this change, the variable did not show in the locals window.
![image](https://user-images.githubusercontent.com/704597/137368067-9b3e4dc8-a075-44ba-a687-bf3810a44e5a.png)

LLDB 13 is also able to display the char value, when before it failed with `need to add support for DW_TAG_base_type 'char' encoded with DW_ATE = 0x8, bit_size = 32`

r? `@wesleywiser`
Diffstat (limited to 'compiler/rustc_mir_transform/src/coverage/debug.rs')
0 files changed, 0 insertions, 0 deletions