rust/compiler/rustc_codegen_gcc/src
Jubilee 60e8ab6ba8
Rollup merge of #130586 - dpaoliello:fixrawdylib, r=wesleywiser
Set "symbol name" in raw-dylib import libraries to the decorated name

`windows-rs` received a bug report that mixing raw-dylib generated and the Windows SDK import libraries was causing linker failures: <https://github.com/microsoft/windows-rs/issues/3285>

The root cause turned out to be #124958, that is we are not including the decorated name in the import library and so the import name type is also not being correctly set.

This change modifies the generation of import libraries to set the "symbol name" to the fully decorated name and correctly marks the import as being data vs function.

Note that this also required some changes to how the symbol is named within Rust: for MSVC we now need to use the decorated name but for MinGW we still need to use partially decorated (or undecorated) name.

Fixes #124958

Passing i686 MSVC and MinGW build: <https://github.com/rust-lang/rust/actions/runs/11000433888?pr=130586>

r? `@ChrisDenton`
2024-11-07 18:48:20 -08:00
..
back Reformat using the new identifier sorting from rustfmt 2024-09-22 19:11:29 -04:00
intrinsic cg_gcc: rustc_abi::Abi => BackendRepr 2024-10-29 15:01:01 -07:00
abi.rs Reformat using the new identifier sorting from rustfmt 2024-09-22 19:11:29 -04:00
allocator.rs Replace -Z default-hidden-visibility with -Z default-visibility 2024-10-01 22:32:13 +10:00
archive.rs Test fixing raw-dylib 2024-09-24 10:10:31 -07:00
asm.rs Basic inline assembly support for SPARC and SPARC64 2024-11-07 21:19:03 +09:00
attributes.rs codegen_ssa: consolidate tied feature checking 2024-09-24 15:48:49 +01:00
base.rs Merge commit '3187d32079b817522cc17413ec9185b130daf693' into subtree-update 2024-09-27 22:00:17 +02:00
builder.rs cg_gcc: rustc_abi::Abi => BackendRepr 2024-10-29 15:01:01 -07:00
callee.rs Effects cleanup 2024-10-26 10:19:07 +08:00
common.rs cg_gcc: Factor out rustc_target::abi 2024-10-08 18:24:56 -07:00
consts.rs Reduce dependence on the target name 2024-11-03 18:29:01 +00:00
context.rs rust_for_linux: -Zregparm=<N> commandline flag for X86 (#116972) 2024-10-18 00:29:31 +07:00
coverageinfo.rs Unbox and unwrap the contents of StatementKind::Coverage 2024-03-23 22:05:11 +11:00
debuginfo.rs Merge commit '3187d32079b817522cc17413ec9185b130daf693' into subtree-update 2024-09-27 22:00:17 +02:00
declare.rs Merge commit '3187d32079b817522cc17413ec9185b130daf693' into subtree-update 2024-09-27 22:00:17 +02:00
errors.rs mark some target features as 'forbidden' so they cannot be (un)set 2024-11-04 22:56:47 +01:00
gcc_util.rs mark some target features as 'forbidden' so they cannot be (un)set 2024-11-04 22:56:47 +01:00
int.rs Fmt 2024-09-27 22:09:18 +02:00
lib.rs mark some target features as 'forbidden' so they cannot be (un)set 2024-11-04 22:56:47 +01:00
mono_item.rs Merge commit '3187d32079b817522cc17413ec9185b130daf693' into subtree-update 2024-09-27 22:00:17 +02:00
type_.rs Rename supertraits of CodegenMethods. 2024-09-17 10:24:43 +10:00
type_of.rs cg_gcc: rustc_abi::Abi => BackendRepr 2024-10-29 15:01:01 -07:00