diff options
| author | Matthias Krüger <matthias.krueger@famsik.de> | 2022-01-06 23:15:14 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-01-06 23:15:14 +0100 |
| commit | 0604cf5fd8aacb5eee6a627066e11ca3b5f48cf2 (patch) | |
| tree | 0f8b3b00473e482adf9f1f9b6ba6859087de1438 /compiler/rustc_mir_transform/src | |
| parent | cdc5c1381def01cfbb9a94598bbb7ea080dcad05 (diff) | |
| parent | 0db192a48c0118081f6cd9eaa51bf9807e18b985 (diff) | |
| download | rust-0604cf5fd8aacb5eee6a627066e11ca3b5f48cf2.tar.gz rust-0604cf5fd8aacb5eee6a627066e11ca3b5f48cf2.zip | |
Rollup merge of #92207 - tmiasko:delay-drop-elaboration-bug, r=jackh726
Delay remaining `span_bug`s in drop elaboration This follows changes from #67967 and converts remaining `span_bug`s into delayed bugs, since for const items drop elaboration might be executed on a MIR which failed borrowck. Fixes #81708. Fixes #91816.
Diffstat (limited to 'compiler/rustc_mir_transform/src')
| -rw-r--r-- | compiler/rustc_mir_transform/src/elaborate_drops.rs | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/compiler/rustc_mir_transform/src/elaborate_drops.rs b/compiler/rustc_mir_transform/src/elaborate_drops.rs index d346dfb1772..7320b2738a7 100644 --- a/compiler/rustc_mir_transform/src/elaborate_drops.rs +++ b/compiler/rustc_mir_transform/src/elaborate_drops.rs @@ -316,12 +316,12 @@ impl<'b, 'tcx> ElaborateDropsCtxt<'b, 'tcx> { LookupResult::Parent(Some(parent)) => { let (_maybe_live, maybe_dead) = self.init_data.maybe_live_dead(parent); if maybe_dead { - span_bug!( + self.tcx.sess.delay_span_bug( terminator.source_info.span, - "drop of untracked, uninitialized value {:?}, place {:?} ({:?})", - bb, - place, - path + &format!( + "drop of untracked, uninitialized value {:?}, place {:?} ({:?})", + bb, place, path, + ), ); } continue; @@ -368,10 +368,9 @@ impl<'b, 'tcx> ElaborateDropsCtxt<'b, 'tcx> { bb, ), LookupResult::Parent(..) => { - span_bug!( + self.tcx.sess.delay_span_bug( terminator.source_info.span, - "drop of untracked value {:?}", - bb + &format!("drop of untracked value {:?}", bb), ); } } |
