-
Notifications
You must be signed in to change notification settings - Fork 12.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
A number of tests fails with undefined references to rust_eh_unwind_resume
when codegen-units > 1
#43095
Comments
One cause of this is #43150 as we shouldn't codegen these function calls anyway, still investigating. |
Ok looks like this is also due to #43151. I think to paper over this issue we should just unconditionally compile compiler-builtins with I'm going to tag this as a regression as I think this won't affect just the bootstrap, but any builds with LTO that end up not using symbols from core. |
I've also filed rust-lang/compiler-builtins#177 to track the fix there. That includes a test which fails today and when passing should solve this issue. |
Compiler team might want to be aware of this. It seems to just impact our own bootstrap though. P-? |
Compile `compiler_builtins` with `abort` panic strategy A workaround for #43095 In case this causes unexpected consequences, I use a simpler workaround locally: ```diff --- a/src/bootstrap/bin/rustc.rs +++ b/src/bootstrap/bin/rustc.rs @@ -175,7 +175,9 @@ fn main() { } if let Ok(s) = env::var("RUSTC_CODEGEN_UNITS") { - cmd.arg("-C").arg(format!("codegen-units={}", s)); + if crate_name != "compiler_builtins" { + cmd.arg("-C").arg(format!("codegen-units={}", s)); + } } // Emit save-analysis info. ``` r? @alexcrichton
Compile `compiler_builtins` with `abort` panic strategy A workaround for #43095 In case this causes unexpected consequences, I use a simpler workaround locally: ```diff --- a/src/bootstrap/bin/rustc.rs +++ b/src/bootstrap/bin/rustc.rs @@ -175,7 +175,9 @@ fn main() { } if let Ok(s) = env::var("RUSTC_CODEGEN_UNITS") { - cmd.arg("-C").arg(format!("codegen-units={}", s)); + if crate_name != "compiler_builtins" { + cmd.arg("-C").arg(format!("codegen-units={}", s)); + } } // Emit save-analysis info. ``` r? @alexcrichton
I'll close this since the immediate problem is fixed and the underlying issues have their own issues. |
#42899 looks like a likely reason
cc @alexcrichton @japaric
Affected
run-pass
tests (there are also failing tests in other groups):Failures look like this:
This happens on Windows/GNU (which seems to be the only target using
rust_eh_unwind_resume
).The text was updated successfully, but these errors were encountered: