mirror of
https://github.com/rust-lang/rust.git
synced 2025-02-05 19:43:24 +00:00
Remove coroutine info when building coroutine drop body
This commit is contained in:
parent
cd6d8f2a04
commit
3004e8c44b
@ -1231,7 +1231,12 @@ fn create_coroutine_drop_shim<'tcx>(
|
||||
drop_clean: BasicBlock,
|
||||
) -> Body<'tcx> {
|
||||
let mut body = body.clone();
|
||||
body.arg_count = 1; // make sure the resume argument is not included here
|
||||
// Take the coroutine info out of the body, since the drop shim is
|
||||
// not a coroutine body itself; it just has its drop built out of it.
|
||||
let _ = body.coroutine.take();
|
||||
// Make sure the resume argument is not included here, since we're
|
||||
// building a body for `drop_in_place`.
|
||||
body.arg_count = 1;
|
||||
|
||||
let source_info = SourceInfo::outermost(body.span);
|
||||
|
||||
|
@ -1,25 +1,4 @@
|
||||
// MIR for `main::{closure#0}` 0 coroutine_drop
|
||||
/* coroutine_layout = CoroutineLayout {
|
||||
field_tys: {
|
||||
_0: CoroutineSavedTy {
|
||||
ty: std::string::String,
|
||||
source_info: SourceInfo {
|
||||
span: $DIR/coroutine_drop_cleanup.rs:12:13: 12:15 (#0),
|
||||
scope: scope[0],
|
||||
},
|
||||
ignore_for_traits: false,
|
||||
},
|
||||
},
|
||||
variant_fields: {
|
||||
Unresumed(0): [],
|
||||
Returned (1): [],
|
||||
Panicked (2): [],
|
||||
Suspend0 (3): [_0],
|
||||
},
|
||||
storage_conflicts: BitMatrix(1x1) {
|
||||
(_0, _0),
|
||||
},
|
||||
} */
|
||||
|
||||
fn main::{closure#0}(_1: *mut {coroutine@$DIR/coroutine_drop_cleanup.rs:11:15: 11:17}) -> () {
|
||||
let mut _0: ();
|
||||
|
@ -1,25 +1,4 @@
|
||||
// MIR for `main::{closure#0}` 0 coroutine_drop
|
||||
/* coroutine_layout = CoroutineLayout {
|
||||
field_tys: {
|
||||
_0: CoroutineSavedTy {
|
||||
ty: std::string::String,
|
||||
source_info: SourceInfo {
|
||||
span: $DIR/coroutine_drop_cleanup.rs:12:13: 12:15 (#0),
|
||||
scope: scope[0],
|
||||
},
|
||||
ignore_for_traits: false,
|
||||
},
|
||||
},
|
||||
variant_fields: {
|
||||
Unresumed(0): [],
|
||||
Returned (1): [],
|
||||
Panicked (2): [],
|
||||
Suspend0 (3): [_0],
|
||||
},
|
||||
storage_conflicts: BitMatrix(1x1) {
|
||||
(_0, _0),
|
||||
},
|
||||
} */
|
||||
|
||||
fn main::{closure#0}(_1: *mut {coroutine@$DIR/coroutine_drop_cleanup.rs:11:15: 11:17}) -> () {
|
||||
let mut _0: ();
|
||||
|
Loading…
Reference in New Issue
Block a user