diff options
| author | Matthew Jasper <mjjasper1@gmail.com> | 2023-12-22 16:38:20 +0000 |
|---|---|---|
| committer | Matthew Jasper <mjjasper1@gmail.com> | 2024-01-05 10:00:59 +0000 |
| commit | 7832ebbd4ff090aced6e338ff92e1353bbe88f76 (patch) | |
| tree | 54413fdab6e25c05d2d46fd4a14c15014801e890 /compiler | |
| parent | 26f48b4cba17a6f7d321bccaa86b345596923763 (diff) | |
| download | rust-7832ebbd4ff090aced6e338ff92e1353bbe88f76.tar.gz rust-7832ebbd4ff090aced6e338ff92e1353bbe88f76.zip | |
Handle context for const patterns correctly
Diffstat (limited to 'compiler')
| -rw-r--r-- | compiler/rustc_mir_build/src/check_unsafety.rs | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/compiler/rustc_mir_build/src/check_unsafety.rs b/compiler/rustc_mir_build/src/check_unsafety.rs index 7d0ce53997a..b4a02fae454 100644 --- a/compiler/rustc_mir_build/src/check_unsafety.rs +++ b/compiler/rustc_mir_build/src/check_unsafety.rs @@ -144,11 +144,17 @@ impl<'tcx> UnsafetyVisitor<'_, 'tcx> { let hir_context = self.tcx.local_def_id_to_hir_id(def); let safety_context = mem::replace(&mut self.safety_context, SafetyContext::Safe); let mut inner_visitor = UnsafetyVisitor { + tcx: self.tcx, thir: inner_thir, hir_context, safety_context, + body_target_features: self.body_target_features, + assignment_info: self.assignment_info, + in_union_destructure: false, + param_env: self.param_env, + inside_adt: false, warnings: self.warnings, - ..*self + suggest_unsafe_block: self.suggest_unsafe_block, }; inner_visitor.visit_expr(&inner_thir[expr]); // Unsafe blocks can be used in the inner body, make sure to take it into account |
