os-rust/compiler
Nicholas Nethercote e72e7e9ae3 Merge CompilerError::CompilationFailed and CompilerError::ICE.
`CompilerError` has `CompilationFailed` and `ICE` variants, which seems
reasonable at first. But the way it identifies them is flawed:
- If compilation errors out, i.e. `RunCompiler::run` returns an `Err`,
  it uses `CompilationFailed`, which is reasonable.
- If compilation panics with `FatalError`, it catches the panic and uses
  `ICE`. This is sometimes right, because ICEs do cause `FatalError`
  panics, but sometimes wrong, because certain compiler errors also
  cause `FatalError` panics. (The compiler/rustdoc/clippy/whatever just
  catches the `FatalError` with `catch_with_exit_code` in `main`.)

In other words, certain non-ICE compilation failures get miscategorized
as ICEs. It's not possible to reliably distinguish the two cases, so
this commit merges them. It also renames the combined variant as just
`Failed`, to better match the existing `Interrupted` and `Skipped`
variants.

Here is an example of a non-ICE failure that causes a `FatalError`
panic, from `tests/ui/recursion_limit/issue-105700.rs`:
```
 #![recursion_limit="4"]
 #![invalid_attribute]
 #![invalid_attribute]
 #![invalid_attribute]
 #![invalid_attribute]
 #![invalid_attribute]
 //~^ERROR recursion limit reached while expanding

 fn main() {{}}
```
2024-02-17 09:40:44 +11:00
..
rustc Clean up rustc_*/Cargo.toml. 2023-10-30 08:46:02 +11:00
rustc_abi Fix rustc_abi build on stable 2024-01-16 21:15:31 +01:00
rustc_arena Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_ast Rollup merge of #121109 - nnethercote:TyKind-Err-guar-2, r=oli-obk 2024-02-16 00:27:32 +01:00
rustc_ast_lowering Rollup merge of #121109 - nnethercote:TyKind-Err-guar-2, r=oli-obk 2024-02-16 00:27:32 +01:00
rustc_ast_passes Add an ErrorGuaranteed to ast::TyKind::Err. 2024-02-15 09:35:11 +11:00
rustc_ast_pretty Rollup merge of #121109 - nnethercote:TyKind-Err-guar-2, r=oli-obk 2024-02-16 00:27:32 +01:00
rustc_attr Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_baked_icu_data Bump cfg(bootstrap)s 2023-11-15 19:41:28 -05:00
rustc_borrowck Auto merge of #120931 - chenyukang:yukang-cleanup-hashmap, r=michaelwoerister 2024-02-15 12:36:37 +00:00
rustc_builtin_macros Add ErrorGuaranteed to ast::LitKind::Err, token::LitKind::Err. 2024-02-15 14:46:08 +11:00
rustc_codegen_cranelift Auto merge of #120843 - matthiaskrgr:rollup-med37z5, r=matthiaskrgr 2024-02-09 15:34:48 +00:00
rustc_codegen_gcc Rollup merge of #120693 - nnethercote:invert-diagnostic-lints, r=davidtwco 2024-02-09 14:41:50 +01:00
rustc_codegen_llvm Auto merge of #121142 - GuillaumeGomez:rollup-5qmksjw, r=GuillaumeGomez 2024-02-15 17:00:55 +00:00
rustc_codegen_ssa Auto merge of #120931 - chenyukang:yukang-cleanup-hashmap, r=michaelwoerister 2024-02-15 12:36:37 +00:00
rustc_const_eval Auto merge of #120931 - chenyukang:yukang-cleanup-hashmap, r=michaelwoerister 2024-02-15 12:36:37 +00:00
rustc_data_structures Auto merge of #120931 - chenyukang:yukang-cleanup-hashmap, r=michaelwoerister 2024-02-15 12:36:37 +00:00
rustc_driver Bump cfg(bootstrap)s 2023-11-15 19:41:28 -05:00
rustc_driver_impl Rollup merge of #120693 - nnethercote:invert-diagnostic-lints, r=davidtwco 2024-02-09 14:41:50 +01:00
rustc_error_codes Dejargnonize subst 2024-02-12 15:46:35 +09:00
rustc_error_messages Remove good_path_delayed_bug. 2024-02-13 09:33:35 +11:00
rustc_errors Auto merge of #121142 - GuillaumeGomez:rollup-5qmksjw, r=GuillaumeGomez 2024-02-15 17:00:55 +00:00
rustc_expand Rollup merge of #121109 - nnethercote:TyKind-Err-guar-2, r=oli-obk 2024-02-16 00:27:32 +01:00
rustc_feature Rollup merge of #120965 - ChrisDenton:sahf, r=michaelwoerister 2024-02-12 23:18:54 +01:00
rustc_fluent_macro Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_fs_util Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_graphviz Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_hir Rollup merge of #120958 - ShoyuVanilla:remove-subst, r=oli-obk 2024-02-12 23:18:54 +01:00
rustc_hir_analysis Auto merge of #121142 - GuillaumeGomez:rollup-5qmksjw, r=GuillaumeGomez 2024-02-15 17:00:55 +00:00
rustc_hir_pretty Lower anonymous structs or unions to HIR 2024-02-12 12:47:23 +08:00
rustc_hir_typeck Rollup merge of #121146 - compiler-errors:ignore-diverging-arms, r=estebank 2024-02-16 00:27:34 +01:00
rustc_incremental Make impl_trait_ref into a query also returning more information about the impl 2024-02-12 09:42:41 +00:00
rustc_index Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_index_macros Step all bootstrap cfgs forward 2024-02-08 07:44:34 -05:00
rustc_infer Remove a suggestion that is redundant 2024-02-15 17:20:44 +00:00
rustc_interface clean up potential_query_instability with FxIndexMap and UnordMap 2024-02-14 18:36:37 +08:00
rustc_lexer Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_lint Auto merge of #121142 - GuillaumeGomez:rollup-5qmksjw, r=GuillaumeGomez 2024-02-15 17:00:55 +00:00
rustc_lint_defs Bump indexmap 2024-02-13 21:03:34 +00:00
rustc_llvm Pin cc version 2024-02-13 21:13:06 +00:00
rustc_log Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_macros Rollup merge of #120693 - nnethercote:invert-diagnostic-lints, r=davidtwco 2024-02-09 14:41:50 +01:00
rustc_metadata Return ConstAllocation from eval_static_initializer query directly 2024-02-15 10:25:18 +00:00
rustc_middle Rollup merge of #121146 - compiler-errors:ignore-diverging-arms, r=estebank 2024-02-16 00:27:34 +01:00
rustc_mir_build Add ErrorGuaranteed to ast::LitKind::Err, token::LitKind::Err. 2024-02-15 14:46:08 +11:00
rustc_mir_dataflow Rollup merge of #120802 - oli-obk:drop_elab_ice, r=compiler-errors 2024-02-13 06:27:38 +01:00
rustc_mir_transform Rollup merge of #121147 - tmiasko:no-debug-body, r=compiler-errors 2024-02-16 00:27:35 +01:00
rustc_monomorphize Auto merge of #120931 - chenyukang:yukang-cleanup-hashmap, r=michaelwoerister 2024-02-15 12:36:37 +00:00
rustc_next_trait_solver Move visitable bounds up into interner 2024-02-13 15:53:15 +00:00
rustc_parse Rollup merge of #121109 - nnethercote:TyKind-Err-guar-2, r=oli-obk 2024-02-16 00:27:32 +01:00
rustc_parse_format Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_passes Add an ErrorGuaranteed to ast::TyKind::Err. 2024-02-15 09:35:11 +11:00
rustc_pattern_analysis Auto merge of #120991 - matthiaskrgr:rollup-f8kw2st, r=matthiaskrgr 2024-02-13 00:31:53 +00:00
rustc_privacy Dejargnonize subst 2024-02-12 15:46:35 +09:00
rustc_query_impl Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_query_system Use fewer delayed bugs. 2024-02-14 20:30:37 +11:00
rustc_resolve Rollup merge of #121084 - oli-obk:create_def_forever_red2, r=WaffleLapkin 2024-02-15 09:20:20 +01:00
rustc_serialize Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_session Auto merge of #121142 - GuillaumeGomez:rollup-5qmksjw, r=GuillaumeGomez 2024-02-15 17:00:55 +00:00
rustc_smir Merge CompilerError::CompilationFailed and CompilerError::ICE. 2024-02-17 09:40:44 +11:00
rustc_span Rollup merge of #120965 - ChrisDenton:sahf, r=michaelwoerister 2024-02-12 23:18:54 +01:00
rustc_symbol_mangling Rollup merge of #120958 - ShoyuVanilla:remove-subst, r=oli-obk 2024-02-12 23:18:54 +01:00
rustc_target Update aarch64 target feature docs to match LLVM 2024-02-15 14:36:29 +00:00
rustc_trait_selection Rollup merge of #121119 - compiler-errors:async-fn-kind-errs, r=oli-obk 2024-02-16 00:27:33 +01:00
rustc_traits Dejargnonize subst 2024-02-12 15:46:35 +09:00
rustc_transmute Invert diagnostic lints. 2024-02-06 13:12:33 +11:00
rustc_ty_utils Auto merge of #120919 - oli-obk:impl_polarity, r=compiler-errors 2024-02-13 02:48:49 +00:00
rustc_type_ir Move visitable bounds up into interner 2024-02-13 15:53:15 +00:00
stable_mir Merge CompilerError::CompilationFailed and CompilerError::ICE. 2024-02-17 09:40:44 +11:00