rust/compiler/rustc_passes/src
Matthias Krüger 60cb794181
Rollup merge of #121391 - Nadrieril:fix-liveness, r=compiler-errors
never patterns: Fix liveness analysis in the presence of never patterns

There's a bunch of code that only looks at the first alternative of an or-pattern, under the assumption that all alternatives have the same set of bindings. This is true except for never pattern alternatives  (e.g. `Ok(x) | Err(!)`), so we skip these. I expect there's other code with this problem, I'll have to check that later.

I don't have tests for this yet because mir lowering causes other issues; I'll have some in the next PR.

r? ``@compiler-errors``
2024-02-21 22:48:58 +01:00
..
liveness Match unmatched backticks in compiler/ that are part of rustdoc 2023-03-03 08:39:00 +01:00
abi_test.rs Remove Session methods that duplicate DiagCtxt methods. 2023-12-24 08:05:28 +11:00
check_attr.rs Rollup merge of #120917 - chenyukang:yukang-dead-parameters, r=compiler-errors 2024-02-12 18:04:08 +01:00
check_const.rs Reduce capabilities of Diagnostic. 2024-02-20 13:22:17 +11:00
dead.rs Overhaul the handling of errors at the top-level. 2024-02-22 08:03:47 +11:00
debugger_visualizer.rs Add check for ui_testing via promoting parameters from ParseSess to Session 2024-01-13 12:11:13 -05:00
diagnostic_items.rs Remove Session methods that duplicate DiagCtxt methods. 2023-12-24 08:05:28 +11:00
entry.rs Stop using String for error codes. 2024-01-29 07:41:41 +11:00
errors.rs Reduce capabilities of Diagnostic. 2024-02-20 13:22:17 +11:00
hir_id_validator.rs Add DiagCtxt::delayed_bug. 2024-01-10 07:33:07 +11:00
hir_stats.rs Add an ErrorGuaranteed to ast::TyKind::Err. 2024-02-15 09:35:11 +11:00
lang_items.rs resolve: Scale back unloading of speculatively loaded crates 2024-02-18 20:59:19 +03:00
layout_test.rs Remove Session methods that duplicate DiagCtxt methods. 2023-12-24 08:05:28 +11:00
lib.rs Use generic NonZero internally. 2024-02-15 08:09:42 +01:00
lib_features.rs Remove Session methods that duplicate DiagCtxt methods. 2023-12-24 08:05:28 +11:00
liveness.rs Fix liveness analysis in the presence of never patterns 2024-02-21 12:04:39 +01:00
loops.rs hir: Remove fn opt_hir_id and fn opt_span 2024-02-07 09:38:24 +03:00
naked_functions.rs Rename TyCtxt::emit_spanned_lint as TyCtxt::emit_node_span_lint. 2024-01-23 08:09:05 +11:00
reachable.rs Move some methods from tcx.hir() to tcx 2023-12-12 06:40:29 -08:00
stability.rs Replace NonZero::<_>::new with NonZero::new. 2024-02-15 08:09:42 +01:00
upvars.rs is_closure_like 2024-02-11 22:09:52 +00:00
weak_lang_items.rs Stop mentioning internal lang items in no_std binary errors 2024-01-10 21:18:54 +01:00