diff options
| author | Gary Guo <gary@garyguo.net> | 2022-04-24 13:13:41 +0100 |
|---|---|---|
| committer | Gary Guo <gary@garyguo.net> | 2022-04-24 13:13:41 +0100 |
| commit | 9ebeb284b588c0549dca2169227cabb7417825be (patch) | |
| tree | e9d386cde4bb9436878acf82f8c18fcb05ede5dc /compiler/rustc_codegen_ssa/src | |
| parent | 8693227e5e3c7cf76e4a8f5f04cb572cff083627 (diff) | |
| download | rust-9ebeb284b588c0549dca2169227cabb7417825be.tar.gz rust-9ebeb284b588c0549dca2169227cabb7417825be.zip | |
Fix MSVC hang issue
Diffstat (limited to 'compiler/rustc_codegen_ssa/src')
| -rw-r--r-- | compiler/rustc_codegen_ssa/src/back/link.rs | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/compiler/rustc_codegen_ssa/src/back/link.rs b/compiler/rustc_codegen_ssa/src/back/link.rs index 45ae5ffc513..2dc3f4e8f3a 100644 --- a/compiler/rustc_codegen_ssa/src/back/link.rs +++ b/compiler/rustc_codegen_ssa/src/back/link.rs @@ -1691,6 +1691,12 @@ fn add_linked_symbol_object( return; }; + // NOTE(nbdd0121): MSVC will hang if the input object file contains no sections, + // so add an empty section. + if file.format() == object::BinaryFormat::Coff { + file.add_section(Vec::new(), ".text".into(), object::SectionKind::Text); + } + for (sym, kind) in symbols.iter() { file.add_symbol(object::write::Symbol { name: sym.clone().into(), |
