Skip to content

Instantly share code, notes, and snippets.

@eholk
Last active March 1, 2022 00:28
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save eholk/82098d01e812cf30c4051f1f4d87be29 to your computer and use it in GitHub Desktop.
Save eholk/82098d01e812cf30c4051f1f4d87be29 to your computer and use it in GitHub Desktop.
┐rustc_typeck::expr_use_visitor::consume_body body=Body { params: [], value: Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 17 }, kind: Match(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, kind: Call(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0), res: Def(Fn, DefId(0:6 ~ issue_57017[360b]::status)), segments: [PathSegment { ident: status#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 7 }), res: Some(Err), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0) }, [Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) }]), span: src/test/ui/generator/issue-57017.rs:18:27: 18:42 (#0) }, [Arm { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 14 }, span: src/test/ui/generator/issue-57017.rs:19:9: 19:25 (#0), pat: Pat { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, kind: Binding(Unannotated, HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, _status#0, None), span: src/test/ui/generator/issue-57017.rs:19:9: 19:16 (#0), default_binding_modes: true }, guard: None, body: Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }, kind: Yield(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }, Yield), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) } }], Normal), span: src/test/ui/generator/issue-57017.rs:18:21: 20:6 (#0) }, generator_kind: Some(Gen) }
├─0ms DEBUG rustc_typeck::expr_use_visitor consume_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 17 }, kind: Match(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, kind: Call(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0), res: Def(Fn, DefId(0:6 ~ issue_57017[360b]::status)), segments: [PathSegment { ident: status#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 7 }), res: Some(Err), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0) }, [Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) }]), span: src/test/ui/generator/issue-57017.rs:18:27: 18:42 (#0) }, [Arm { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 14 }, span: src/test/ui/generator/issue-57017.rs:19:9: 19:25 (#0), pat: Pat { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, kind: Binding(Unannotated, HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, _status#0, None), span: src/test/ui/generator/issue-57017.rs:19:9: 19:16 (#0), default_binding_modes: true }, guard: None, body: Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }, kind: Yield(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }, Yield), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) } }], Normal), span: src/test/ui/generator/issue-57017.rs:18:21: 20:6 (#0) })
├─0ms DEBUG rustc_typeck::expr_use_visitor delegate_consume(place_with_id=PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 17 }, place: Place { base_ty: (), base: Rvalue, projections: [] } })
├─0ms DEBUG rustc_typeck::expr_use_visitor walk_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 17 }, kind: Match(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, kind: Call(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0), res: Def(Fn, DefId(0:6 ~ issue_57017[360b]::status)), segments: [PathSegment { ident: status#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 7 }), res: Some(Err), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0) }, [Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) }]), span: src/test/ui/generator/issue-57017.rs:18:27: 18:42 (#0) }, [Arm { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 14 }, span: src/test/ui/generator/issue-57017.rs:19:9: 19:25 (#0), pat: Pat { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, kind: Binding(Unannotated, HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, _status#0, None), span: src/test/ui/generator/issue-57017.rs:19:9: 19:16 (#0), default_binding_modes: true }, guard: None, body: Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }, kind: Yield(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }, Yield), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) } }], Normal), span: src/test/ui/generator/issue-57017.rs:18:21: 20:6 (#0) })
├─0ms DEBUG rustc_typeck::expr_use_visitor borrow_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, kind: Call(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0), res: Def(Fn, DefId(0:6 ~ issue_57017[360b]::status)), segments: [PathSegment { ident: status#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 7 }), res: Some(Err), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0) }, [Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) }]), span: src/test/ui/generator/issue-57017.rs:18:27: 18:42 (#0) }, bk=ImmBorrow)
├─0ms DEBUG rustc_typeck::expr_use_visitor walk_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, kind: Call(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0), res: Def(Fn, DefId(0:6 ~ issue_57017[360b]::status)), segments: [PathSegment { ident: status#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 7 }), res: Some(Err), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0) }, [Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) }]), span: src/test/ui/generator/issue-57017.rs:18:27: 18:42 (#0) })
├─0ms DEBUG rustc_typeck::expr_use_visitor consume_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0), res: Def(Fn, DefId(0:6 ~ issue_57017[360b]::status)), segments: [PathSegment { ident: status#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 7 }), res: Some(Err), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0) })
├─0ms DEBUG rustc_typeck::expr_use_visitor delegate_consume(place_with_id=PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, place: Place { base_ty: for<'r> fn(&'r Client) -> i16 {status}, base: Rvalue, projections: [] } })
├─0ms DEBUG rustc_typeck::expr_use_visitor walk_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0), res: Def(Fn, DefId(0:6 ~ issue_57017[360b]::status)), segments: [PathSegment { ident: status#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 7 }), res: Some(Err), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0) })
├─0ms DEBUG rustc_typeck::expr_use_visitor consume_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) })
├─0ms DEBUG rustc_typeck::expr_use_visitor delegate_consume(place_with_id=PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, place: Place { base_ty: &Client, base: Rvalue, projections: [] } })
├─0ms DEBUG rustc_typeck::expr_use_visitor walk_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) })
├─0ms DEBUG rustc_typeck::expr_use_visitor walk_adjustment expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) } adj=Deref(None) -> Client
├─3ms DEBUG rustc_typeck::expr_use_visitor walk_adjustment expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) } adj=Borrow(Ref('_#1r, Not)) -> &Client
├─3ms DEBUG rustc_typeck::expr_use_visitor walk_autoref(expr.hir_id=HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 } base_place=PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, place: Place { base_ty: &Client, base: Rvalue, projections: [Projection { ty: Client, kind: Deref }] } } autoref=Ref('_#1r, Not))
├─3ms DEBUG rustc_typeck::expr_use_visitor borrow_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }, bk=ImmBorrow)
├─3ms DEBUG rustc_typeck::expr_use_visitor walk_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) })
├─3ms DEBUG rustc_typeck::expr_use_visitor walk_pat(discr_place=PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, place: Place { base_ty: i16, base: Rvalue, projections: [] } }, pat=Pat { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, kind: Binding(Unannotated, HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, _status#0, None), span: src/test/ui/generator/issue-57017.rs:19:9: 19:16 (#0), default_binding_modes: true })
├─3ms DEBUG rustc_typeck::expr_use_visitor walk_pat: binding place=PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, place: Place { base_ty: i16, base: Rvalue, projections: [] } } pat=Pat { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, kind: Binding(Unannotated, HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, _status#0, None), span: src/test/ui/generator/issue-57017.rs:19:9: 19:16 (#0), default_binding_modes: true }
├─3ms DEBUG rustc_typeck::expr_use_visitor walk_pat: pat.hir_id=HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 } bm=BindByValue(Not)
├─3ms DEBUG rustc_typeck::expr_use_visitor walk_pat: pat_ty=i16
├─3ms DEBUG rustc_typeck::expr_use_visitor walk_pat binding consuming pat
├─3ms DEBUG rustc_typeck::expr_use_visitor delegate_consume(place_with_id=PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, place: Place { base_ty: i16, base: Rvalue, projections: [] } })
├─3ms DEBUG rustc_typeck::expr_use_visitor consume_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }, kind: Yield(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }, Yield), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) })
├─3ms DEBUG rustc_typeck::expr_use_visitor delegate_consume(place_with_id=PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }, place: Place { base_ty: (), base: Rvalue, projections: [] } })
├─3ms DEBUG rustc_typeck::expr_use_visitor walk_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }, kind: Yield(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }, Yield), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) })
├─3ms DEBUG rustc_typeck::expr_use_visitor consume_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) })
├─3ms DEBUG rustc_typeck::expr_use_visitor delegate_consume(place_with_id=PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, place: Place { base_ty: (), base: Rvalue, projections: [] } })
├─3ms DEBUG rustc_typeck::expr_use_visitor walk_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) })
┐rustc_typeck::expr_use_visitor::consume_body body=Body { params: [], value: Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 17 }, kind: Match(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, kind: Call(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0), res: Def(Fn, DefId(0:6 ~ issue_57017[360b]::status)), segments: [PathSegment { ident: status#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 7 }), res: Some(Err), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0) }, [Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) }]), span: src/test/ui/generator/issue-57017.rs:18:27: 18:42 (#0) }, [Arm { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 14 }, span: src/test/ui/generator/issue-57017.rs:19:9: 19:25 (#0), pat: Pat { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, kind: Binding(Unannotated, HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, _status#0, None), span: src/test/ui/generator/issue-57017.rs:19:9: 19:16 (#0), default_binding_modes: true }, guard: None, body: Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }, kind: Yield(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }, Yield), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) } }], Normal), span: src/test/ui/generator/issue-57017.rs:18:21: 20:6 (#0) }, generator_kind: Some(Gen) }
├─0ms DEBUG rustc_typeck::expr_use_visitor consume_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 17 }, kind: Match(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, kind: Call(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0), res: Def(Fn, DefId(0:6 ~ issue_57017[360b]::status)), segments: [PathSegment { ident: status#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 7 }), res: Some(Err), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0) }, [Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) }]), span: src/test/ui/generator/issue-57017.rs:18:27: 18:42 (#0) }, [Arm { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 14 }, span: src/test/ui/generator/issue-57017.rs:19:9: 19:25 (#0), pat: Pat { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, kind: Binding(Unannotated, HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, _status#0, None), span: src/test/ui/generator/issue-57017.rs:19:9: 19:16 (#0), default_binding_modes: true }, guard: None, body: Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }, kind: Yield(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }, Yield), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) } }], Normal), span: src/test/ui/generator/issue-57017.rs:18:21: 20:6 (#0) })
├─0ms DEBUG rustc_typeck::expr_use_visitor delegate_consume(place_with_id=PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 17 }, place: Place { base_ty: (), base: Rvalue, projections: [] } })
├─0ms DEBUG rustc_typeck::check::generator_interior::drop_ranges::record_consumed_borrow copy: place_with_id = PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 17 }, place: Place { base_ty: (), base: Rvalue, projections: [] } }
├─0ms DEBUG rustc_typeck::expr_use_visitor walk_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 17 }, kind: Match(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, kind: Call(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0), res: Def(Fn, DefId(0:6 ~ issue_57017[360b]::status)), segments: [PathSegment { ident: status#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 7 }), res: Some(Err), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0) }, [Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) }]), span: src/test/ui/generator/issue-57017.rs:18:27: 18:42 (#0) }, [Arm { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 14 }, span: src/test/ui/generator/issue-57017.rs:19:9: 19:25 (#0), pat: Pat { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, kind: Binding(Unannotated, HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, _status#0, None), span: src/test/ui/generator/issue-57017.rs:19:9: 19:16 (#0), default_binding_modes: true }, guard: None, body: Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }, kind: Yield(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }, Yield), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) } }], Normal), span: src/test/ui/generator/issue-57017.rs:18:21: 20:6 (#0) })
├─0ms DEBUG rustc_typeck::expr_use_visitor borrow_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, kind: Call(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0), res: Def(Fn, DefId(0:6 ~ issue_57017[360b]::status)), segments: [PathSegment { ident: status#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 7 }), res: Some(Err), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0) }, [Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) }]), span: src/test/ui/generator/issue-57017.rs:18:27: 18:42 (#0) }, bk=ImmBorrow)
├─0ms DEBUG rustc_typeck::check::generator_interior::drop_ranges::record_consumed_borrow borrow: place_with_id = PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, place: Place { base_ty: i16, base: Rvalue, projections: [] } }, diag_expr_id=HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, borrow_kind=ImmBorrow, is_autoref=false
├─0ms DEBUG rustc_typeck::expr_use_visitor walk_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, kind: Call(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0), res: Def(Fn, DefId(0:6 ~ issue_57017[360b]::status)), segments: [PathSegment { ident: status#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 7 }), res: Some(Err), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0) }, [Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) }]), span: src/test/ui/generator/issue-57017.rs:18:27: 18:42 (#0) })
├─0ms DEBUG rustc_typeck::expr_use_visitor consume_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0), res: Def(Fn, DefId(0:6 ~ issue_57017[360b]::status)), segments: [PathSegment { ident: status#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 7 }), res: Some(Err), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0) })
├─0ms DEBUG rustc_typeck::expr_use_visitor delegate_consume(place_with_id=PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, place: Place { base_ty: for<'r> fn(&'r Client) -> i16 {status}, base: Rvalue, projections: [] } })
├─0ms DEBUG rustc_typeck::check::generator_interior::drop_ranges::record_consumed_borrow copy: place_with_id = PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, place: Place { base_ty: for<'r> fn(&'r Client) -> i16 {status}, base: Rvalue, projections: [] } }
├─0ms DEBUG rustc_typeck::expr_use_visitor walk_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0), res: Def(Fn, DefId(0:6 ~ issue_57017[360b]::status)), segments: [PathSegment { ident: status#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 7 }), res: Some(Err), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0) })
├─0ms DEBUG rustc_typeck::expr_use_visitor consume_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) })
├─0ms DEBUG rustc_typeck::expr_use_visitor delegate_consume(place_with_id=PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, place: Place { base_ty: &Client, base: Rvalue, projections: [] } })
├─0ms DEBUG rustc_typeck::check::generator_interior::drop_ranges::record_consumed_borrow copy: place_with_id = PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, place: Place { base_ty: &Client, base: Rvalue, projections: [] } }
├─0ms DEBUG rustc_typeck::expr_use_visitor walk_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) })
├─0ms DEBUG rustc_typeck::expr_use_visitor walk_adjustment expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) } adj=Deref(None) -> Client
├─0ms DEBUG rustc_typeck::expr_use_visitor walk_adjustment expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) } adj=Borrow(Ref('_#1r, Not)) -> &Client
├─0ms DEBUG rustc_typeck::expr_use_visitor walk_autoref(expr.hir_id=HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 } base_place=PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, place: Place { base_ty: &Client, base: Rvalue, projections: [Projection { ty: Client, kind: Deref }] } } autoref=Ref('_#1r, Not))
├─0ms DEBUG rustc_typeck::check::generator_interior::drop_ranges::record_consumed_borrow borrow: place_with_id = PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, place: Place { base_ty: &Client, base: Rvalue, projections: [Projection { ty: Client, kind: Deref }] } }, diag_expr_id=HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, borrow_kind=ImmBorrow, is_autoref=true
├─0ms DEBUG rustc_typeck::expr_use_visitor borrow_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }, bk=ImmBorrow)
├─0ms DEBUG rustc_typeck::check::generator_interior::drop_ranges::record_consumed_borrow borrow: place_with_id = PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, place: Place { base_ty: Client, base: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), projections: [] } }, diag_expr_id=HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, borrow_kind=ImmBorrow, is_autoref=false
├─0ms DEBUG rustc_typeck::expr_use_visitor walk_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) })
├─0ms DEBUG rustc_typeck::expr_use_visitor walk_pat(discr_place=PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, place: Place { base_ty: i16, base: Rvalue, projections: [] } }, pat=Pat { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, kind: Binding(Unannotated, HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, _status#0, None), span: src/test/ui/generator/issue-57017.rs:19:9: 19:16 (#0), default_binding_modes: true })
├─0ms DEBUG rustc_typeck::expr_use_visitor walk_pat: binding place=PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, place: Place { base_ty: i16, base: Rvalue, projections: [] } } pat=Pat { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, kind: Binding(Unannotated, HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, _status#0, None), span: src/test/ui/generator/issue-57017.rs:19:9: 19:16 (#0), default_binding_modes: true }
├─0ms DEBUG rustc_typeck::expr_use_visitor walk_pat: pat.hir_id=HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 } bm=BindByValue(Not)
├─0ms DEBUG rustc_typeck::expr_use_visitor walk_pat: pat_ty=i16
├─0ms DEBUG rustc_typeck::check::generator_interior::drop_ranges::record_consumed_borrow mutate PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, place: Place { base_ty: i16, base: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }), projections: [] } }; diag_expr_id=HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }
├─0ms DEBUG rustc_typeck::expr_use_visitor walk_pat binding consuming pat
├─0ms DEBUG rustc_typeck::expr_use_visitor delegate_consume(place_with_id=PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, place: Place { base_ty: i16, base: Rvalue, projections: [] } })
├─0ms DEBUG rustc_typeck::check::generator_interior::drop_ranges::record_consumed_borrow copy: place_with_id = PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, place: Place { base_ty: i16, base: Rvalue, projections: [] } }
├─0ms DEBUG rustc_typeck::expr_use_visitor consume_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }, kind: Yield(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }, Yield), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) })
├─0ms DEBUG rustc_typeck::expr_use_visitor delegate_consume(place_with_id=PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }, place: Place { base_ty: (), base: Rvalue, projections: [] } })
├─0ms DEBUG rustc_typeck::check::generator_interior::drop_ranges::record_consumed_borrow copy: place_with_id = PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }, place: Place { base_ty: (), base: Rvalue, projections: [] } }
├─0ms DEBUG rustc_typeck::expr_use_visitor walk_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }, kind: Yield(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }, Yield), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) })
├─0ms DEBUG rustc_typeck::expr_use_visitor consume_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) })
├─0ms DEBUG rustc_typeck::expr_use_visitor delegate_consume(place_with_id=PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, place: Place { base_ty: (), base: Rvalue, projections: [] } })
├─0ms DEBUG rustc_typeck::check::generator_interior::drop_ranges::record_consumed_borrow copy: place_with_id = PlaceWithHirId { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, place: Place { base_ty: (), base: Rvalue, projections: [] } }
├─0ms DEBUG rustc_typeck::expr_use_visitor walk_expr(expr=Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) })
DEBUG rustc_typeck::check::generator_interior::drop_ranges::cfg_build consumed_places: {}
DEBUG rustc_typeck::check::generator_interior::drop_ranges::cfg_build hir_id_map: {}
DEBUG rustc_typeck::check::generator_interior::drop_ranges::cfg_build consuming expr HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, count=id(1)
DEBUG rustc_typeck::check::generator_interior::drop_ranges::cfg_build consuming expr HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, count=id(2)
DEBUG rustc_typeck::check::generator_interior::drop_ranges::cfg_build consuming expr HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, count=id(3)
DEBUG rustc_typeck::check::generator_interior::drop_ranges::cfg_build consuming expr HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, count=id(4)
DEBUG rustc_typeck::check::generator_interior::drop_ranges::cfg_build consuming expr HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, count=id(6)
DEBUG rustc_typeck::check::generator_interior::drop_ranges::cfg_build consuming expr HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }, count=id(7)
DEBUG rustc_typeck::check::generator_interior::drop_ranges::cfg_build consuming expr HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 17 }, count=id(8)
DEBUG rustc_typeck::check::generator_interior::drop_ranges borrowed_temporaries = {HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }}
DEBUG rustc_typeck::check::generator_interior is_borrowed_temporary: false
DEBUG rustc_typeck::check::generator_interior parent_node: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 })
DEBUG rustc_typeck::check::generator_interior attempting to record type ty=Client; hir_id=HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }; scope=Some(Node(11)); expr=Some(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }); source_span=src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0); expr_count=2
DEBUG rustc_typeck::check::generator_interior no type in expr = Some(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), count = 2, span = Some(src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0))
DEBUG rustc_typeck::check::generator_interior attempting to record type ty=Client; hir_id=HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }; scope=Some(Node(11)); expr=Some(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }); source_span=src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0); expr_count=2
DEBUG rustc_typeck::check::generator_interior no type in expr = Some(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), count = 2, span = Some(src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0))
DEBUG rustc_typeck::check::generator_interior is_borrowed_temporary: true
DEBUG rustc_typeck::check::generator_interior attempting to record type ty=&Client; hir_id=HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }; scope=Some(Node(17)); expr=Some(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) }); source_span=src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0); expr_count=3
DEBUG rustc_typeck::check::generator_interior comparing counts yield: 7 self: 3, source_span = src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0)
DEBUG rustc_typeck::check::generator_interior type in expr = Some(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) }), scope = Some(Node(17)), type = &Client, count = 3, yield_span = src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0)
DEBUG rustc_typeck::check::generator_interior attempting to record type ty=&Client; hir_id=HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }; scope=Some(Node(17)); expr=Some(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) }); source_span=src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0); expr_count=3
DEBUG rustc_typeck::check::generator_interior comparing counts yield: 7 self: 3, source_span = src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0)
DEBUG rustc_typeck::check::generator_interior type in expr = Some(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) }), scope = Some(Node(17)), type = &Client, count = 3, yield_span = src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0)
DEBUG rustc_typeck::check::generator_interior is_borrowed_temporary: true
DEBUG rustc_typeck::check::generator_interior attempting to record type ty=i16; hir_id=HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }; scope=Some(Node(17)); expr=Some(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, kind: Call(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0), res: Def(Fn, DefId(0:6 ~ issue_57017[360b]::status)), segments: [PathSegment { ident: status#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 7 }), res: Some(Err), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0) }, [Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) }]), span: src/test/ui/generator/issue-57017.rs:18:27: 18:42 (#0) }); source_span=src/test/ui/generator/issue-57017.rs:18:27: 18:42 (#0); expr_count=4
DEBUG rustc_typeck::check::generator_interior comparing counts yield: 7 self: 4, source_span = src/test/ui/generator/issue-57017.rs:18:27: 18:42 (#0)
DEBUG rustc_typeck::check::generator_interior type in expr = Some(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, kind: Call(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0), res: Def(Fn, DefId(0:6 ~ issue_57017[360b]::status)), segments: [PathSegment { ident: status#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 7 }), res: Some(Err), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0) }, [Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) }]), span: src/test/ui/generator/issue-57017.rs:18:27: 18:42 (#0) }), scope = Some(Node(17)), type = i16, count = 4, yield_span = src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0)
DEBUG rustc_typeck::check::generator_interior attempting to record type ty=i16; hir_id=HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }; scope=Some(Node(17)); expr=Some(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, kind: Call(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0), res: Def(Fn, DefId(0:6 ~ issue_57017[360b]::status)), segments: [PathSegment { ident: status#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 7 }), res: Some(Err), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0) }, [Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) }]), span: src/test/ui/generator/issue-57017.rs:18:27: 18:42 (#0) }); source_span=src/test/ui/generator/issue-57017.rs:18:27: 18:42 (#0); expr_count=4
DEBUG rustc_typeck::check::generator_interior comparing counts yield: 7 self: 4, source_span = src/test/ui/generator/issue-57017.rs:18:27: 18:42 (#0)
DEBUG rustc_typeck::check::generator_interior type in expr = Some(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, kind: Call(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0), res: Def(Fn, DefId(0:6 ~ issue_57017[360b]::status)), segments: [PathSegment { ident: status#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 7 }), res: Some(Err), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0) }, [Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) }]), span: src/test/ui/generator/issue-57017.rs:18:27: 18:42 (#0) }), scope = Some(Node(17)), type = i16, count = 4, yield_span = src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0)
DEBUG rustc_typeck::check::generator_interior attempting to record type ty=i16; hir_id=HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }; scope=Some(Node(14)); expr=None; source_span=src/test/ui/generator/issue-57017.rs:19:9: 19:16 (#0); expr_count=5
DEBUG rustc_typeck::check::generator_interior comparing counts yield: 7 self: 5, source_span = src/test/ui/generator/issue-57017.rs:19:9: 19:16 (#0)
DEBUG rustc_typeck::check::generator_interior type in expr = None, scope = Some(Node(14)), type = i16, count = 5, yield_span = src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0)
DEBUG rustc_typeck::check::generator_interior is_borrowed_temporary: false
DEBUG rustc_typeck::check::generator_interior parent_node: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 })
DEBUG rustc_typeck::check::generator_interior attempting to record type ty=(); hir_id=HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }; scope=Some(Node(16)); expr=Some(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }); source_span=src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0); expr_count=6
DEBUG rustc_typeck::check::generator_interior comparing counts yield: 7 self: 6, source_span = src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0)
DEBUG rustc_typeck::check::generator_interior type in expr = Some(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }), scope = Some(Node(16)), type = (), count = 6, yield_span = src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0)
DEBUG rustc_typeck::check::generator_interior attempting to record type ty=(); hir_id=HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }; scope=Some(Node(16)); expr=Some(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }); source_span=src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0); expr_count=6
DEBUG rustc_typeck::check::generator_interior comparing counts yield: 7 self: 6, source_span = src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0)
DEBUG rustc_typeck::check::generator_interior type in expr = Some(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }), scope = Some(Node(16)), type = (), count = 6, yield_span = src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0)
DEBUG rustc_typeck::check::generator_interior is_borrowed_temporary: false
DEBUG rustc_typeck::check::generator_interior parent_node: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 14 })
DEBUG rustc_typeck::check::generator_interior attempting to record type ty=(); hir_id=HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }; scope=Some(Node(14)); expr=Some(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }, kind: Yield(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }, Yield), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }); source_span=src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0); expr_count=7
DEBUG rustc_typeck::check::generator_interior comparing counts yield: 7 self: 7, source_span = src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0)
DEBUG rustc_typeck::check::generator_interior type in expr = Some(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }, kind: Yield(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }, Yield), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }), scope = Some(Node(14)), type = (), count = 7, yield_span = src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0)
DEBUG rustc_typeck::check::generator_interior attempting to record type ty=(); hir_id=HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }; scope=Some(Node(14)); expr=Some(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }, kind: Yield(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }, Yield), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }); source_span=src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0); expr_count=7
DEBUG rustc_typeck::check::generator_interior comparing counts yield: 7 self: 7, source_span = src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0)
DEBUG rustc_typeck::check::generator_interior type in expr = Some(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }, kind: Yield(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }, Yield), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }), scope = Some(Node(14)), type = (), count = 7, yield_span = src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0)
DEBUG rustc_typeck::check::generator_interior is_borrowed_temporary: false
DEBUG rustc_typeck::check::generator_interior parent_node: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 18 })
DEBUG rustc_typeck::check::generator_interior attempting to record type ty=(); hir_id=HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 17 }; scope=Some(Node(18)); expr=Some(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 17 }, kind: Match(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, kind: Call(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0), res: Def(Fn, DefId(0:6 ~ issue_57017[360b]::status)), segments: [PathSegment { ident: status#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 7 }), res: Some(Err), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0) }, [Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) }]), span: src/test/ui/generator/issue-57017.rs:18:27: 18:42 (#0) }, [Arm { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 14 }, span: src/test/ui/generator/issue-57017.rs:19:9: 19:25 (#0), pat: Pat { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, kind: Binding(Unannotated, HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, _status#0, None), span: src/test/ui/generator/issue-57017.rs:19:9: 19:16 (#0), default_binding_modes: true }, guard: None, body: Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }, kind: Yield(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }, Yield), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) } }], Normal), span: src/test/ui/generator/issue-57017.rs:18:21: 20:6 (#0) }); source_span=src/test/ui/generator/issue-57017.rs:18:21: 20:6 (#0); expr_count=8
DEBUG rustc_typeck::check::generator_interior no type in expr = Some(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 17 }, kind: Match(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, kind: Call(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0), res: Def(Fn, DefId(0:6 ~ issue_57017[360b]::status)), segments: [PathSegment { ident: status#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 7 }), res: Some(Err), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0) }, [Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) }]), span: src/test/ui/generator/issue-57017.rs:18:27: 18:42 (#0) }, [Arm { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 14 }, span: src/test/ui/generator/issue-57017.rs:19:9: 19:25 (#0), pat: Pat { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, kind: Binding(Unannotated, HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, _status#0, None), span: src/test/ui/generator/issue-57017.rs:19:9: 19:16 (#0), default_binding_modes: true }, guard: None, body: Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }, kind: Yield(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }, Yield), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) } }], Normal), span: src/test/ui/generator/issue-57017.rs:18:21: 20:6 (#0) }), count = 8, span = Some(src/test/ui/generator/issue-57017.rs:18:21: 20:6 (#0))
DEBUG rustc_typeck::check::generator_interior attempting to record type ty=(); hir_id=HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 17 }; scope=Some(Node(18)); expr=Some(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 17 }, kind: Match(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, kind: Call(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0), res: Def(Fn, DefId(0:6 ~ issue_57017[360b]::status)), segments: [PathSegment { ident: status#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 7 }), res: Some(Err), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0) }, [Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) }]), span: src/test/ui/generator/issue-57017.rs:18:27: 18:42 (#0) }, [Arm { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 14 }, span: src/test/ui/generator/issue-57017.rs:19:9: 19:25 (#0), pat: Pat { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, kind: Binding(Unannotated, HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, _status#0, None), span: src/test/ui/generator/issue-57017.rs:19:9: 19:16 (#0), default_binding_modes: true }, guard: None, body: Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }, kind: Yield(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }, Yield), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) } }], Normal), span: src/test/ui/generator/issue-57017.rs:18:21: 20:6 (#0) }); source_span=src/test/ui/generator/issue-57017.rs:18:21: 20:6 (#0); expr_count=8
DEBUG rustc_typeck::check::generator_interior no type in expr = Some(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 17 }, kind: Match(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }, kind: Call(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 8 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0), res: Def(Fn, DefId(0:6 ~ issue_57017[360b]::status)), segments: [PathSegment { ident: status#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 7 }), res: Some(Err), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:27: 18:33 (#0) }, [Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }, kind: AddrOf(Ref, Not, Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 10 }, kind: Path(Resolved(None, Path { span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0), res: Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 }), segments: [PathSegment { ident: client#0, hir_id: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 9 }), res: Some(Local(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 5 })), args: None, infer_args: true }] })), span: src/test/ui/generator/issue-57017.rs:18:35: 18:41 (#0) }), span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0) }]), span: src/test/ui/generator/issue-57017.rs:18:27: 18:42 (#0) }, [Arm { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 14 }, span: src/test/ui/generator/issue-57017.rs:19:9: 19:25 (#0), pat: Pat { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, kind: Binding(Unannotated, HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 13 }, _status#0, None), span: src/test/ui/generator/issue-57017.rs:19:9: 19:16 (#0), default_binding_modes: true }, guard: None, body: Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }, kind: Yield(Expr { hir_id: HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }, kind: Tup([]), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) }, Yield), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0) } }], Normal), span: src/test/ui/generator/issue-57017.rs:18:21: 20:6 (#0) }), count = 8, span = Some(src/test/ui/generator/issue-57017.rs:18:21: 20:6 (#0))
DEBUG rustc_typeck::check::generator_interior types in generator {GeneratorInteriorTypeCause { ty: &Client, span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0), scope_span: Some(src/test/ui/generator/issue-57017.rs:18:21: 20:6 (#0)), yield_span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0), expr: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }) }, GeneratorInteriorTypeCause { ty: &Client, span: src/test/ui/generator/issue-57017.rs:18:34: 18:41 (#0), scope_span: Some(src/test/ui/generator/issue-57017.rs:18:21: 20:6 (#0)), yield_span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0), expr: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 11 }) }, GeneratorInteriorTypeCause { ty: i16, span: src/test/ui/generator/issue-57017.rs:18:27: 18:42 (#0), scope_span: Some(src/test/ui/generator/issue-57017.rs:18:21: 20:6 (#0)), yield_span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0), expr: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 12 }) }, GeneratorInteriorTypeCause { ty: i16, span: src/test/ui/generator/issue-57017.rs:19:9: 19:16 (#0), scope_span: Some(src/test/ui/generator/issue-57017.rs:19:9: 19:25 (#0)), yield_span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0), expr: None }, GeneratorInteriorTypeCause { ty: (), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0), scope_span: Some(src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0)), yield_span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0), expr: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 15 }) }, GeneratorInteriorTypeCause { ty: (), span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0), scope_span: Some(src/test/ui/generator/issue-57017.rs:19:9: 19:25 (#0)), yield_span: src/test/ui/generator/issue-57017.rs:19:20: 19:25 (#0), expr: Some(HirId { owner: DefId(0:9 ~ issue_57017[360b]::main), local_id: 16 }) }}, span = src/test/ui/generator/issue-57017.rs:18:21: 20:6 (#0)
DEBUG rustc_typeck::check::generator_interior types in generator after region replacement for<'r> {&'r Client, i16, ()}, span = src/test/ui/generator/issue-57017.rs:18:21: 20:6 (#0)
error: generator cannot be sent between threads safely
--> src/test/ui/generator/issue-57017.rs:21:5
|
21 | assert_send(g);
| ^^^^^^^^^^^ generator is not `Send`
|
= help: the trait `Sync` is not implemented for `Client`
note: generator is not `Send` as this value is used across a yield
--> src/test/ui/generator/issue-57017.rs:19:20
|
18 | let g = move || match status(&client) {
| ------- has type `&Client` which is not `Send`
19 | _status => yield,
| ^^^^^ yield occurs here, with `&client` maybe used later
20 | };
| - `&client` is later dropped here
note: required by a bound in `assert_send`
--> src/test/ui/generator/issue-57017.rs:13:19
|
13 | fn assert_send<T: Send>(_thing: T) {}
| ^^^^ required by this bound in `assert_send`
error: aborting due to previous error
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment