diff options
| author | Laurențiu Nicola <lnicola@dend.ro> | 2024-10-22 10:12:22 +0300 |
|---|---|---|
| committer | Laurențiu Nicola <lnicola@dend.ro> | 2024-10-22 10:12:22 +0300 |
| commit | 5d540f4cc96460530e5056345d0325ff35a5746f (patch) | |
| tree | 1eea67e6482c5f42dac4074dbc538fa2941ea996 /compiler/rustc_mir_transform/src/coverage/mod.rs | |
| parent | 5038ee728227325ac0aca5e44c42171e473a93e3 (diff) | |
| parent | 1de57a5ce952c722f7053aeacfc6c90bc139b678 (diff) | |
| download | rust-5d540f4cc96460530e5056345d0325ff35a5746f.tar.gz rust-5d540f4cc96460530e5056345d0325ff35a5746f.zip | |
Merge from rust-lang/rust
Diffstat (limited to 'compiler/rustc_mir_transform/src/coverage/mod.rs')
| -rw-r--r-- | compiler/rustc_mir_transform/src/coverage/mod.rs | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/compiler/rustc_mir_transform/src/coverage/mod.rs b/compiler/rustc_mir_transform/src/coverage/mod.rs index d0f30314e79..2e4c503f3ce 100644 --- a/compiler/rustc_mir_transform/src/coverage/mod.rs +++ b/compiler/rustc_mir_transform/src/coverage/mod.rs @@ -524,6 +524,11 @@ fn extract_hir_info<'tcx>(tcx: TyCtxt<'tcx>, def_id: LocalDefId) -> ExtractedHir // FIXME(#79625): Consider improving MIR to provide the information needed, to avoid going back // to HIR for it. + // HACK: For synthetic MIR bodies (async closures), use the def id of the HIR body. + if tcx.is_synthetic_mir(def_id) { + return extract_hir_info(tcx, tcx.local_parent(def_id)); + } + let hir_node = tcx.hir_node_by_def_id(def_id); let fn_body_id = hir_node.body_id().expect("HIR node is a function with body"); let hir_body = tcx.hir().body(fn_body_id); |
