Throw error on failure in loading llvm-plugin#104517
Conversation
|
Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @cuviper (or someone else) soon. Please see the contribution instructions for more information. |
|
I think this is intentional to continue without the plugin, but you're right that |
|
A non-functional-change would be to concatenate all the plugins that failed into the error message and return it after the loop is done, though in practice I don't think it is a huge deal either way. |
|
In the legacy pass manager, not able to load a plugin used to be an error / panic. So I am not sure why the behavior should change with the new pass manager. Concatenating the errors is definitely better, but as mentioned it isn't a big deal either way. |
OK, fair enough! @bors r+ |
…iaskrgr Rollup of 9 pull requests Successful merges: - rust-lang#103908 (Suggest `.clone()` or `ref binding` on E0382) - rust-lang#104517 (Throw error on failure in loading llvm-plugin) - rust-lang#104594 (Properly handle `Pin<&mut dyn* Trait>` receiver in codegen) - rust-lang#104742 (Make `deref_into_dyn_supertrait` lint the impl and not the usage) - rust-lang#104753 (Pass `InferCtxt` to `DropRangeVisitor` so we can resolve vars) - rust-lang#104771 (Add regression test for issue rust-lang#99938) - rust-lang#104772 (Small accessibility improvements) - rust-lang#104775 (Use ObligationCtxt::normalize) - rust-lang#104778 (:arrow_up: rust-analyzer) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
The following code silently ignores the error as the
LLVMRustSetLastErroronly tracks one error at a time. At all other places whereLLVMRustSetLastErroris used the code immediately returns.rust/compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp
Lines 801 to 804 in 251831e