about summary refs log tree commit diff
path: root/compiler/rustc_interface/src/interface.rs
diff options
context:
space:
mode:
authorDaniel Cheng <zetafunction@gmail.com>2023-10-23 19:59:36 -0700
committerDaniel Cheng <zetafunction@gmail.com>2023-10-24 13:42:28 -0700
commit8fa800db61a78a6b7467ac2867ff20fc717a00be (patch)
tree842f7d6d1fc91af2dd0a9d4e0087d9720b7410a6 /compiler/rustc_interface/src/interface.rs
parent858a42bf46a49bc64228d69b757294fe7a9bba6c (diff)
downloadrust-8fa800db61a78a6b7467ac2867ff20fc717a00be.tar.gz
rust-8fa800db61a78a6b7467ac2867ff20fc717a00be.zip
Mark .rmeta files as /SAFESEH on x86 Windows.
Chrome links .rlibs with /WHOLEARCHIVE or -Wl,--whole-archive to prevent
the linker from discarding static initializers. This works well, except
on Windows x86, where lld complains:

  error: /safeseh: lib.rmeta is not compatible with SEH

The fix is simply to mark the .rmeta as SAFESEH aware. This is trivially
true, since the metadata file does not contain any executable code.
Diffstat (limited to 'compiler/rustc_interface/src/interface.rs')
0 files changed, 0 insertions, 0 deletions