diff options
| author | bors <bors@rust-lang.org> | 2021-12-04 05:59:16 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2021-12-04 05:59:16 +0000 |
| commit | 887999d163bace7e79370b952bdd1f930ff4cdd5 (patch) | |
| tree | 0b2a5642dfe49a0cebe9744394169acebf412ccc /compiler/rustc_const_eval/src/transform/validate.rs | |
| parent | f5815727786aa1ed2793af05cf65c5d79c290c67 (diff) | |
| parent | 3dbb621c72e57c7eee9c10f20316d76c59168f83 (diff) | |
| download | rust-887999d163bace7e79370b952bdd1f930ff4cdd5.tar.gz rust-887999d163bace7e79370b952bdd1f930ff4cdd5.zip | |
Auto merge of #88439 - cynecx:unwind_asm, r=Amanieu
Unwinding support for inline assembly r? `@Amanieu`
Diffstat (limited to 'compiler/rustc_const_eval/src/transform/validate.rs')
| -rw-r--r-- | compiler/rustc_const_eval/src/transform/validate.rs | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/compiler/rustc_const_eval/src/transform/validate.rs b/compiler/rustc_const_eval/src/transform/validate.rs index b4bb6390db4..448a04f76b1 100644 --- a/compiler/rustc_const_eval/src/transform/validate.rs +++ b/compiler/rustc_const_eval/src/transform/validate.rs @@ -495,10 +495,13 @@ impl<'a, 'tcx> Visitor<'tcx> for TypeChecker<'a, 'tcx> { self.check_edge(location, *unwind, EdgeKind::Unwind); } } - TerminatorKind::InlineAsm { destination, .. } => { + TerminatorKind::InlineAsm { destination, cleanup, .. } => { if let Some(destination) = destination { self.check_edge(location, *destination, EdgeKind::Normal); } + if let Some(cleanup) = cleanup { + self.check_edge(location, *cleanup, EdgeKind::Unwind); + } } // Nothing to validate for these. TerminatorKind::Resume |
