Some mixes of Rust with C/C++ are broken for arm64 mac and windows #92885
Closed
Description
After #88354, Firefox builds fail with e.g:
LLVM ERROR: Function Import: link error: linking module flags 'branch-target-enforcement': IDs have conflicting behaviors in '/builds/worker/workspace/obj-build/aarch64-pc-windows-msvc/release/gkrust_gtest.libnsstring-be03ad04cbf7bb1a.nsstring.ce1e3b11-cgu.0.rcgu.o571656940' and '../../../dom/media/webrtc/jsapi/Unified_cpp_media_webrtc_jsapi0.obj'
This happens when targeting arm64 macos or arm64 windows.
Not only did the default change and now diverges from clang (causing the above error when mixing objects from clang and rust), but it's also apparently not possible to disable the feature.
Note this also now reached beta.
Cc: @jacobbramley, @Jmc18134, @nagisa