Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Auto merge of #46457 - m4b:no_mangle_static, r=michaelwoerister
Don't set the linkage_name for static variables For `no_mangle` statics: 1. Linkage_name no longer set 2. The static variable also no longer has a dwarf namespace scope This matches C++ output, which does not set the linkage_name and is not scoped: e.g. c++: ``` 0x000000b6: DW_TAG_base_type [8] DW_AT_name [DW_FORM_strp] ( .debug_str[0x00000077] = "long int") DW_AT_encoding [DW_FORM_data1] (DW_ATE_signed) DW_AT_byte_size [DW_FORM_data1] (0x08) 0x000000bd: DW_TAG_variable [9] DW_AT_name [DW_FORM_strp] ( .debug_str[0x00000053] = "TEST") DW_AT_type [DW_FORM_ref4] (cu + 0x0048 => {0x00000048}) DW_AT_external [DW_FORM_flag_present] (true) DW_AT_decl_file [DW_FORM_data1] ("/home/m4b/tmp/bad_debug/test.cpp") DW_AT_decl_line [DW_FORM_data1] (14) DW_AT_location [DW_FORM_exprloc] (<0x9> 03 40 10 20 00 00 00 00 00 ) 0x000000d2: DW_TAG_namespace [2] * DW_AT_name [DW_FORM_strp] ( .debug_str[0x0000009d] = "std") ``` and (now) Rust: ``` 0x0000002a: DW_TAG_variable [2] DW_AT_name [DW_FORM_strp] ( .debug_str[0x00000046] = "TEST") DW_AT_type [DW_FORM_ref4] (cu + 0x0045 => {0x00000045}) DW_AT_external [DW_FORM_flag_present] (true) DW_AT_decl_file [DW_FORM_data1] ("/tmp/test.rs") DW_AT_decl_line [DW_FORM_data1] (8) DW_AT_alignment [DW_FORM_udata] (1) DW_AT_location [DW_FORM_exprloc] (<0x9> 03 c0 4d 06 00 00 00 00 00 ) 0x00000040: DW_TAG_namespace [3] * DW_AT_name [DW_FORM_strp] ( .debug_str[0x0000004b] = "test") ```
- Loading branch information