Skip to content

Instantly share code, notes, and snippets.

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 nikomatsakis/89ba40616137515214d5314a7e300d59 to your computer and use it in GitHub Desktop.
Save nikomatsakis/89ba40616137515214d5314a7e300d59 to your computer and use it in GitHub Desktop.
Crate {
owners: [
Owner(
OwnerInfo {
nodes: OwnerNodes {
hash_including_bodies: Fingerprint(
9379181034865639105,
6117811064914249914,
),
hash_without_bodies: Fingerprint(
9379181034865639105,
6117811064914249914,
),
nodes: [
Some(
ParentedNode {
parent: 4294967040,
node: Crate(
Mod {
spans: ModSpans {
inner_span: src/test/ui/impl-trait/v2/bounds_regression.rs:3:1: 26:13 (#0),
inject_use_span: src/test/ui/impl-trait/v2/bounds_regression.rs:5:1: 5:1 (#0),
},
item_ids: [
ItemId {
def_id: DefId(0:1 ~ bounds_regression[4f59]::{misc#0}),
},
ItemId {
def_id: DefId(0:2 ~ bounds_regression[4f59]::std),
},
ItemId {
def_id: DefId(0:3 ~ bounds_regression[4f59]::FakeGenerator),
},
ItemId {
def_id: DefId(0:6 ~ bounds_regression[4f59]::FakeFuture),
},
ItemId {
def_id: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
},
ItemId {
def_id: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
},
ItemId {
def_id: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
},
ItemId {
def_id: DefId(0:18 ~ bounds_regression[4f59]::main),
},
],
},
),
},
),
],
bodies: SortedMap {
data: [],
},
local_id_to_def_id: SortedMap {
data: [],
},
},
parenting: {
DefId(0:1 ~ bounds_regression[4f59]::{misc#0}): 0,
DefId(0:11 ~ bounds_regression[4f59]::GenFuture): 0,
DefId(0:8 ~ bounds_regression[4f59]::future_from_generator): 0,
DefId(0:2 ~ bounds_regression[4f59]::std): 0,
DefId(0:15 ~ bounds_regression[4f59]::{impl#0}): 0,
DefId(0:18 ~ bounds_regression[4f59]::main): 0,
DefId(0:6 ~ bounds_regression[4f59]::FakeFuture): 0,
DefId(0:3 ~ bounds_regression[4f59]::FakeGenerator): 0,
},
attrs: AttributeMap {
map: SortedMap {
data: [
(
0,
[
Attribute {
kind: Normal(
AttrItem {
path: Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:3:4: 3:11 (#0),
segments: [
PathSegment {
ident: feature#0,
id: NodeId(1),
args: None,
},
],
tokens: None,
},
args: Delimited(
DelimSpan {
open: src/test/ui/impl-trait/v2/bounds_regression.rs:3:11: 3:12 (#0),
close: src/test/ui/impl-trait/v2/bounds_regression.rs:3:41: 3:42 (#0),
},
Parenthesis,
TokenStream(
[
(
Token(
Token {
kind: Ident(
"return_position_impl_trait_v2",
false,
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:3:12: 3:41 (#0),
},
),
Alone,
),
],
),
),
tokens: None,
},
None,
),
id: AttrId(0),
style: Inner,
span: src/test/ui/impl-trait/v2/bounds_regression.rs:3:1: 3:43 (#0),
},
],
),
],
},
hash: Fingerprint(
7395128001090551163,
5735851622699458233,
),
},
trait_map: {},
},
),
Owner(
OwnerInfo {
nodes: OwnerNodes {
hash_including_bodies: Fingerprint(
16775350596719739846,
13673840692184936972,
),
hash_without_bodies: Fingerprint(
16775350596719739846,
13673840692184936972,
),
nodes: [
Some(
ParentedNode {
parent: 4294967040,
node: Item(
Item {
ident: #0,
def_id: DefId(0:1 ~ bounds_regression[4f59]::{misc#0}),
kind: Use(
Path {
span: no-location (#1),
res: Err,
segments: [
PathSegment {
ident: {{root}}#1,
hir_id: Some(
HirId {
owner: DefId(0:1 ~ bounds_regression[4f59]::{misc#0}),
local_id: 1,
},
),
res: Some(
Err,
),
args: None,
infer_args: false,
},
PathSegment {
ident: std#1,
hir_id: Some(
HirId {
owner: DefId(0:1 ~ bounds_regression[4f59]::{misc#0}),
local_id: 2,
},
),
res: Some(
Def(
Mod,
DefId(1:0 ~ std[c265]),
),
),
args: None,
infer_args: false,
},
PathSegment {
ident: prelude#1,
hir_id: Some(
HirId {
owner: DefId(0:1 ~ bounds_regression[4f59]::{misc#0}),
local_id: 3,
},
),
res: Some(
Def(
Mod,
DefId(1:69 ~ std[c265]::prelude),
),
),
args: None,
infer_args: false,
},
PathSegment {
ident: rust_2015#1,
hir_id: Some(
HirId {
owner: DefId(0:1 ~ bounds_regression[4f59]::{misc#0}),
local_id: 4,
},
),
res: Some(
Def(
Mod,
DefId(1:283 ~ std[c265]::prelude::rust_2015),
),
),
args: None,
infer_args: false,
},
],
},
Glob,
),
span: no-location (#1),
vis_span: no-location (#1),
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: PathSegment(
PathSegment {
ident: {{root}}#1,
hir_id: Some(
HirId {
owner: DefId(0:1 ~ bounds_regression[4f59]::{misc#0}),
local_id: 1,
},
),
res: Some(
Err,
),
args: None,
infer_args: false,
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: PathSegment(
PathSegment {
ident: std#1,
hir_id: Some(
HirId {
owner: DefId(0:1 ~ bounds_regression[4f59]::{misc#0}),
local_id: 2,
},
),
res: Some(
Def(
Mod,
DefId(1:0 ~ std[c265]),
),
),
args: None,
infer_args: false,
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: PathSegment(
PathSegment {
ident: prelude#1,
hir_id: Some(
HirId {
owner: DefId(0:1 ~ bounds_regression[4f59]::{misc#0}),
local_id: 3,
},
),
res: Some(
Def(
Mod,
DefId(1:69 ~ std[c265]::prelude),
),
),
args: None,
infer_args: false,
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: PathSegment(
PathSegment {
ident: rust_2015#1,
hir_id: Some(
HirId {
owner: DefId(0:1 ~ bounds_regression[4f59]::{misc#0}),
local_id: 4,
},
),
res: Some(
Def(
Mod,
DefId(1:283 ~ std[c265]::prelude::rust_2015),
),
),
args: None,
infer_args: false,
},
),
},
),
],
bodies: SortedMap {
data: [],
},
local_id_to_def_id: SortedMap {
data: [],
},
},
parenting: {},
attrs: AttributeMap {
map: SortedMap {
data: [
(
0,
[
Attribute {
kind: Normal(
AttrItem {
path: Path {
span: no-location (#1),
segments: [
PathSegment {
ident: prelude_import#1,
id: NodeId(3),
args: None,
},
],
tokens: None,
},
args: Empty,
tokens: None,
},
None,
),
id: AttrId(2),
style: Outer,
span: no-location (#1),
},
],
),
],
},
hash: Fingerprint(
7437590012180395556,
5274012775283555239,
),
},
trait_map: {},
},
),
Owner(
OwnerInfo {
nodes: OwnerNodes {
hash_including_bodies: Fingerprint(
4549817206309202523,
5086252752589725026,
),
hash_without_bodies: Fingerprint(
4549817206309202523,
5086252752589725026,
),
nodes: [
Some(
ParentedNode {
parent: 4294967040,
node: Item(
Item {
ident: std#2,
def_id: DefId(0:2 ~ bounds_regression[4f59]::std),
kind: ExternCrate(
None,
),
span: no-location (#1),
vis_span: no-location (#1),
},
),
},
),
],
bodies: SortedMap {
data: [],
},
local_id_to_def_id: SortedMap {
data: [],
},
},
parenting: {},
attrs: AttributeMap {
map: SortedMap {
data: [
(
0,
[
Attribute {
kind: Normal(
AttrItem {
path: Path {
span: no-location (#1),
segments: [
PathSegment {
ident: macro_use#1,
id: NodeId(9),
args: None,
},
],
tokens: None,
},
args: Empty,
tokens: None,
},
None,
),
id: AttrId(1),
style: Outer,
span: no-location (#1),
},
],
),
],
},
hash: Fingerprint(
5195025216825054662,
10798504374931303851,
),
},
trait_map: {},
},
),
Owner(
OwnerInfo {
nodes: OwnerNodes {
hash_including_bodies: Fingerprint(
7291679994257285529,
4484600733256463718,
),
hash_without_bodies: Fingerprint(
7291679994257285529,
4484600733256463718,
),
nodes: [
Some(
ParentedNode {
parent: 4294967040,
node: Item(
Item {
ident: FakeGenerator#0,
def_id: DefId(0:3 ~ bounds_regression[4f59]::FakeGenerator),
kind: Trait(
No,
Normal,
Generics {
params: [],
predicates: [],
has_where_clause: false,
where_clause_span: src/test/ui/impl-trait/v2/bounds_regression.rs:5:24: 5:24 (#0),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:5:24: 5:24 (#0),
},
[],
[
TraitItemRef {
id: TraitItemId {
def_id: DefId(0:4 ~ bounds_regression[4f59]::FakeGenerator::Yield),
},
ident: Yield#0,
kind: Type,
span: src/test/ui/impl-trait/v2/bounds_regression.rs:6:5: 6:16 (#0),
defaultness: Default {
has_value: false,
},
},
TraitItemRef {
id: TraitItemId {
def_id: DefId(0:5 ~ bounds_regression[4f59]::FakeGenerator::Return),
},
ident: Return#0,
kind: Type,
span: src/test/ui/impl-trait/v2/bounds_regression.rs:7:5: 7:17 (#0),
defaultness: Default {
has_value: false,
},
},
],
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:5:1: 8:2 (#0),
vis_span: src/test/ui/impl-trait/v2/bounds_regression.rs:5:1: 5:4 (#0),
},
),
},
),
],
bodies: SortedMap {
data: [],
},
local_id_to_def_id: SortedMap {
data: [],
},
},
parenting: {
DefId(0:4 ~ bounds_regression[4f59]::FakeGenerator::Yield): 0,
DefId(0:5 ~ bounds_regression[4f59]::FakeGenerator::Return): 0,
},
attrs: AttributeMap {
map: SortedMap {
data: [],
},
hash: Fingerprint(
9785122672296426403,
8173264106939382879,
),
},
trait_map: {},
},
),
Owner(
OwnerInfo {
nodes: OwnerNodes {
hash_including_bodies: Fingerprint(
4174734685227933345,
8715837774462249954,
),
hash_without_bodies: Fingerprint(
4174734685227933345,
8715837774462249954,
),
nodes: [
Some(
ParentedNode {
parent: 4294967040,
node: TraitItem(
TraitItem {
ident: Yield#0,
def_id: DefId(0:4 ~ bounds_regression[4f59]::FakeGenerator::Yield),
generics: Generics {
params: [],
predicates: [],
has_where_clause: false,
where_clause_span: src/test/ui/impl-trait/v2/bounds_regression.rs:6:15: 6:15 (#0),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:6:15: 6:15 (#0),
},
kind: Type(
[],
None,
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:6:5: 6:16 (#0),
},
),
},
),
],
bodies: SortedMap {
data: [],
},
local_id_to_def_id: SortedMap {
data: [],
},
},
parenting: {},
attrs: AttributeMap {
map: SortedMap {
data: [],
},
hash: Fingerprint(
9785122672296426403,
8173264106939382879,
),
},
trait_map: {},
},
),
Owner(
OwnerInfo {
nodes: OwnerNodes {
hash_including_bodies: Fingerprint(
10622562086715721958,
13650841663639376955,
),
hash_without_bodies: Fingerprint(
10622562086715721958,
13650841663639376955,
),
nodes: [
Some(
ParentedNode {
parent: 4294967040,
node: TraitItem(
TraitItem {
ident: Return#0,
def_id: DefId(0:5 ~ bounds_regression[4f59]::FakeGenerator::Return),
generics: Generics {
params: [],
predicates: [],
has_where_clause: false,
where_clause_span: src/test/ui/impl-trait/v2/bounds_regression.rs:7:16: 7:16 (#0),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:7:16: 7:16 (#0),
},
kind: Type(
[],
None,
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:7:5: 7:17 (#0),
},
),
},
),
],
bodies: SortedMap {
data: [],
},
local_id_to_def_id: SortedMap {
data: [],
},
},
parenting: {},
attrs: AttributeMap {
map: SortedMap {
data: [],
},
hash: Fingerprint(
9785122672296426403,
8173264106939382879,
),
},
trait_map: {},
},
),
Owner(
OwnerInfo {
nodes: OwnerNodes {
hash_including_bodies: Fingerprint(
8181217770795081662,
9000158812100753735,
),
hash_without_bodies: Fingerprint(
8181217770795081662,
9000158812100753735,
),
nodes: [
Some(
ParentedNode {
parent: 4294967040,
node: Item(
Item {
ident: FakeFuture#0,
def_id: DefId(0:6 ~ bounds_regression[4f59]::FakeFuture),
kind: Trait(
No,
Normal,
Generics {
params: [],
predicates: [],
has_where_clause: false,
where_clause_span: src/test/ui/impl-trait/v2/bounds_regression.rs:10:21: 10:21 (#0),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:10:21: 10:21 (#0),
},
[],
[
TraitItemRef {
id: TraitItemId {
def_id: DefId(0:7 ~ bounds_regression[4f59]::FakeFuture::Output),
},
ident: Output#0,
kind: Type,
span: src/test/ui/impl-trait/v2/bounds_regression.rs:11:5: 11:17 (#0),
defaultness: Default {
has_value: false,
},
},
],
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:10:1: 12:2 (#0),
vis_span: src/test/ui/impl-trait/v2/bounds_regression.rs:10:1: 10:4 (#0),
},
),
},
),
],
bodies: SortedMap {
data: [],
},
local_id_to_def_id: SortedMap {
data: [],
},
},
parenting: {
DefId(0:7 ~ bounds_regression[4f59]::FakeFuture::Output): 0,
},
attrs: AttributeMap {
map: SortedMap {
data: [],
},
hash: Fingerprint(
9785122672296426403,
8173264106939382879,
),
},
trait_map: {},
},
),
Owner(
OwnerInfo {
nodes: OwnerNodes {
hash_including_bodies: Fingerprint(
5469795484160053243,
9676408027687114763,
),
hash_without_bodies: Fingerprint(
5469795484160053243,
9676408027687114763,
),
nodes: [
Some(
ParentedNode {
parent: 4294967040,
node: TraitItem(
TraitItem {
ident: Output#0,
def_id: DefId(0:7 ~ bounds_regression[4f59]::FakeFuture::Output),
generics: Generics {
params: [],
predicates: [],
has_where_clause: false,
where_clause_span: src/test/ui/impl-trait/v2/bounds_regression.rs:11:16: 11:16 (#0),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:11:16: 11:16 (#0),
},
kind: Type(
[],
None,
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:11:5: 11:17 (#0),
},
),
},
),
],
bodies: SortedMap {
data: [],
},
local_id_to_def_id: SortedMap {
data: [],
},
},
parenting: {},
attrs: AttributeMap {
map: SortedMap {
data: [],
},
hash: Fingerprint(
9785122672296426403,
8173264106939382879,
),
},
trait_map: {},
},
),
Owner(
OwnerInfo {
nodes: OwnerNodes {
hash_including_bodies: Fingerprint(
16837134433158811326,
9497762894155511560,
),
hash_without_bodies: Fingerprint(
1244999581633464982,
17189569424696914153,
),
nodes: [
Some(
ParentedNode {
parent: 4294967040,
node: Item(
Item {
ident: future_from_generator#0,
def_id: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
kind: Fn(
FnSig {
header: FnHeader {
unsafety: Normal,
constness: NotConst,
asyncness: NotAsync,
abi: Rust,
},
decl: FnDecl {
inputs: [
Ty {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 16,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:15:8: 15:9 (#0),
res: Def(
TyParam,
DefId(0:9 ~ bounds_regression[4f59]::future_from_generator::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: Some(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 17,
},
),
res: Some(
Def(
TyParam,
DefId(0:9 ~ bounds_regression[4f59]::future_from_generator::T),
),
),
args: None,
infer_args: false,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:15:8: 15:9 (#0),
},
],
output: Return(
Ty {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 19,
},
kind: OpaqueDef(
ItemId {
def_id: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
},
[
Type(
Ty {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 18,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:30: 14:31 (#0),
res: Def(
TyParam,
DefId(0:9 ~ bounds_regression[4f59]::future_from_generator::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: None,
res: None,
args: None,
infer_args: true,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:30: 14:31 (#0),
},
),
],
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:6: 16:41 (#0),
},
),
c_variadic: false,
implicit_self: None,
},
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:1: 16:41 (#0),
},
Generics {
params: [
GenericParam {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 15,
},
name: Plain(
T#0,
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:30: 14:31 (#0),
pure_wrt_drop: false,
kind: Type {
default: None,
synthetic: false,
},
colon_span: Some(
src/test/ui/impl-trait/v2/bounds_regression.rs:14:31: 14:32 (#0),
),
},
],
predicates: [
BoundPredicate(
WhereBoundPredicate {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:31: 14:58 (#0),
origin: GenericParam,
bound_generic_params: [],
bounded_ty: Ty {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 14,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:30: 14:31 (#0),
res: Def(
TyParam,
DefId(0:9 ~ bounds_regression[4f59]::future_from_generator::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: None,
res: None,
args: None,
infer_args: true,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:30: 14:31 (#0),
},
bounds: [
Trait(
PolyTraitRef {
bound_generic_params: [],
trait_ref: TraitRef {
path: Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:33: 14:58 (#0),
res: Def(
Trait,
DefId(0:3 ~ bounds_regression[4f59]::FakeGenerator),
),
segments: [
PathSegment {
ident: FakeGenerator#0,
hir_id: Some(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 12,
},
),
res: Some(
Def(
Trait,
DefId(0:3 ~ bounds_regression[4f59]::FakeGenerator),
),
),
args: Some(
GenericArgs {
args: [],
bindings: [
TypeBinding {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 11,
},
ident: Yield#0,
gen_args: GenericArgs {
args: [],
bindings: [],
parenthesized: false,
span_ext: no-location (#0),
},
kind: Equality {
term: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 10,
},
kind: Tup(
[],
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:55: 14:57 (#0),
},
),
},
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:47: 14:57 (#0),
},
],
parenthesized: false,
span_ext: src/test/ui/impl-trait/v2/bounds_regression.rs:14:46: 14:58 (#0),
},
),
infer_args: false,
},
],
},
hir_ref_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 13,
},
},
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:33: 14:58 (#0),
},
None,
),
],
},
),
],
has_where_clause: false,
where_clause_span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:41: 16:41 (#0),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:29: 14:59 (#0),
},
BodyId {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 9,
},
},
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:1: 18:2 (#0),
vis_span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:1: 14:4 (#0),
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: Param(
Param {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 1,
},
pat: Pat {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 2,
},
kind: Binding(
Unannotated,
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 2,
},
x#0,
None,
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:15:5: 15:6 (#0),
default_binding_modes: true,
},
ty_span: src/test/ui/impl-trait/v2/bounds_regression.rs:15:8: 15:9 (#0),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:15:5: 15:9 (#0),
},
),
},
),
Some(
ParentedNode {
parent: 1,
node: Binding(
Pat {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 2,
},
kind: Binding(
Unannotated,
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 2,
},
x#0,
None,
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:15:5: 15:6 (#0),
default_binding_modes: true,
},
),
},
),
Some(
ParentedNode {
parent: 4,
node: PathSegment(
PathSegment {
ident: GenFuture#0,
hir_id: Some(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 3,
},
),
res: Some(
Err,
),
args: None,
infer_args: true,
},
),
},
),
Some(
ParentedNode {
parent: 7,
node: Expr(
Expr {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 4,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:17:5: 17:14 (#0),
res: Def(
Ctor(
Struct,
Fn,
),
DefId(0:12 ~ bounds_regression[4f59]::GenFuture::{constructor#0}),
),
segments: [
PathSegment {
ident: GenFuture#0,
hir_id: Some(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 3,
},
),
res: Some(
Err,
),
args: None,
infer_args: true,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:17:5: 17:14 (#0),
},
),
},
),
Some(
ParentedNode {
parent: 6,
node: PathSegment(
PathSegment {
ident: x#0,
hir_id: Some(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 5,
},
),
res: Some(
Local(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 2,
},
),
),
args: None,
infer_args: true,
},
),
},
),
Some(
ParentedNode {
parent: 7,
node: Expr(
Expr {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 6,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:17:15: 17:16 (#0),
res: Local(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 2,
},
),
segments: [
PathSegment {
ident: x#0,
hir_id: Some(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 5,
},
),
res: Some(
Local(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 2,
},
),
),
args: None,
infer_args: true,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:17:15: 17:16 (#0),
},
),
},
),
Some(
ParentedNode {
parent: 8,
node: Expr(
Expr {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 7,
},
kind: Call(
Expr {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 4,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:17:5: 17:14 (#0),
res: Def(
Ctor(
Struct,
Fn,
),
DefId(0:12 ~ bounds_regression[4f59]::GenFuture::{constructor#0}),
),
segments: [
PathSegment {
ident: GenFuture#0,
hir_id: Some(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 3,
},
),
res: Some(
Err,
),
args: None,
infer_args: true,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:17:5: 17:14 (#0),
},
[
Expr {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 6,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:17:15: 17:16 (#0),
res: Local(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 2,
},
),
segments: [
PathSegment {
ident: x#0,
hir_id: Some(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 5,
},
),
res: Some(
Local(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 2,
},
),
),
args: None,
infer_args: true,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:17:15: 17:16 (#0),
},
],
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:17:5: 17:17 (#0),
},
),
},
),
Some(
ParentedNode {
parent: 9,
node: Block(
Block {
stmts: [],
expr: Some(
Expr {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 7,
},
kind: Call(
Expr {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 4,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:17:5: 17:14 (#0),
res: Def(
Ctor(
Struct,
Fn,
),
DefId(0:12 ~ bounds_regression[4f59]::GenFuture::{constructor#0}),
),
segments: [
PathSegment {
ident: GenFuture#0,
hir_id: Some(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 3,
},
),
res: Some(
Err,
),
args: None,
infer_args: true,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:17:5: 17:14 (#0),
},
[
Expr {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 6,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:17:15: 17:16 (#0),
res: Local(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 2,
},
),
segments: [
PathSegment {
ident: x#0,
hir_id: Some(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 5,
},
),
res: Some(
Local(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 2,
},
),
),
args: None,
infer_args: true,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:17:15: 17:16 (#0),
},
],
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:17:5: 17:17 (#0),
},
),
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 8,
},
rules: DefaultBlock,
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:42: 18:2 (#0),
targeted_by_break: false,
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: Expr(
Expr {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 9,
},
kind: Block(
Block {
stmts: [],
expr: Some(
Expr {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 7,
},
kind: Call(
Expr {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 4,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:17:5: 17:14 (#0),
res: Def(
Ctor(
Struct,
Fn,
),
DefId(0:12 ~ bounds_regression[4f59]::GenFuture::{constructor#0}),
),
segments: [
PathSegment {
ident: GenFuture#0,
hir_id: Some(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 3,
},
),
res: Some(
Err,
),
args: None,
infer_args: true,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:17:5: 17:14 (#0),
},
[
Expr {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 6,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:17:15: 17:16 (#0),
res: Local(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 2,
},
),
segments: [
PathSegment {
ident: x#0,
hir_id: Some(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 5,
},
),
res: Some(
Local(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 2,
},
),
),
args: None,
infer_args: true,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:17:15: 17:16 (#0),
},
],
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:17:5: 17:17 (#0),
},
),
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 8,
},
rules: DefaultBlock,
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:42: 18:2 (#0),
targeted_by_break: false,
},
None,
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:42: 18:2 (#0),
},
),
},
),
Some(
ParentedNode {
parent: 13,
node: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 10,
},
kind: Tup(
[],
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:55: 14:57 (#0),
},
),
},
),
None,
Some(
ParentedNode {
parent: 13,
node: PathSegment(
PathSegment {
ident: FakeGenerator#0,
hir_id: Some(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 12,
},
),
res: Some(
Def(
Trait,
DefId(0:3 ~ bounds_regression[4f59]::FakeGenerator),
),
),
args: Some(
GenericArgs {
args: [],
bindings: [
TypeBinding {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 11,
},
ident: Yield#0,
gen_args: GenericArgs {
args: [],
bindings: [],
parenthesized: false,
span_ext: no-location (#0),
},
kind: Equality {
term: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 10,
},
kind: Tup(
[],
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:55: 14:57 (#0),
},
),
},
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:47: 14:57 (#0),
},
],
parenthesized: false,
span_ext: src/test/ui/impl-trait/v2/bounds_regression.rs:14:46: 14:58 (#0),
},
),
infer_args: false,
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: TraitRef(
TraitRef {
path: Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:33: 14:58 (#0),
res: Def(
Trait,
DefId(0:3 ~ bounds_regression[4f59]::FakeGenerator),
),
segments: [
PathSegment {
ident: FakeGenerator#0,
hir_id: Some(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 12,
},
),
res: Some(
Def(
Trait,
DefId(0:3 ~ bounds_regression[4f59]::FakeGenerator),
),
),
args: Some(
GenericArgs {
args: [],
bindings: [
TypeBinding {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 11,
},
ident: Yield#0,
gen_args: GenericArgs {
args: [],
bindings: [],
parenthesized: false,
span_ext: no-location (#0),
},
kind: Equality {
term: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 10,
},
kind: Tup(
[],
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:55: 14:57 (#0),
},
),
},
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:47: 14:57 (#0),
},
],
parenthesized: false,
span_ext: src/test/ui/impl-trait/v2/bounds_regression.rs:14:46: 14:58 (#0),
},
),
infer_args: false,
},
],
},
hir_ref_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 13,
},
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 14,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:30: 14:31 (#0),
res: Def(
TyParam,
DefId(0:9 ~ bounds_regression[4f59]::future_from_generator::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: None,
res: None,
args: None,
infer_args: true,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:30: 14:31 (#0),
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: GenericParam(
GenericParam {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 15,
},
name: Plain(
T#0,
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:30: 14:31 (#0),
pure_wrt_drop: false,
kind: Type {
default: None,
synthetic: false,
},
colon_span: Some(
src/test/ui/impl-trait/v2/bounds_regression.rs:14:31: 14:32 (#0),
),
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 16,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:15:8: 15:9 (#0),
res: Def(
TyParam,
DefId(0:9 ~ bounds_regression[4f59]::future_from_generator::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: Some(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 17,
},
),
res: Some(
Def(
TyParam,
DefId(0:9 ~ bounds_regression[4f59]::future_from_generator::T),
),
),
args: None,
infer_args: false,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:15:8: 15:9 (#0),
},
),
},
),
Some(
ParentedNode {
parent: 16,
node: PathSegment(
PathSegment {
ident: T#0,
hir_id: Some(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 17,
},
),
res: Some(
Def(
TyParam,
DefId(0:9 ~ bounds_regression[4f59]::future_from_generator::T),
),
),
args: None,
infer_args: false,
},
),
},
),
Some(
ParentedNode {
parent: 19,
node: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 18,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:30: 14:31 (#0),
res: Def(
TyParam,
DefId(0:9 ~ bounds_regression[4f59]::future_from_generator::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: None,
res: None,
args: None,
infer_args: true,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:30: 14:31 (#0),
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 19,
},
kind: OpaqueDef(
ItemId {
def_id: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
},
[
Type(
Ty {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 18,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:30: 14:31 (#0),
res: Def(
TyParam,
DefId(0:9 ~ bounds_regression[4f59]::future_from_generator::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: None,
res: None,
args: None,
infer_args: true,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:30: 14:31 (#0),
},
),
],
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:6: 16:41 (#0),
},
),
},
),
],
bodies: SortedMap {
data: [
(
9,
Body {
params: [
Param {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 1,
},
pat: Pat {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 2,
},
kind: Binding(
Unannotated,
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 2,
},
x#0,
None,
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:15:5: 15:6 (#0),
default_binding_modes: true,
},
ty_span: src/test/ui/impl-trait/v2/bounds_regression.rs:15:8: 15:9 (#0),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:15:5: 15:9 (#0),
},
],
value: Expr {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 9,
},
kind: Block(
Block {
stmts: [],
expr: Some(
Expr {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 7,
},
kind: Call(
Expr {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 4,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:17:5: 17:14 (#0),
res: Def(
Ctor(
Struct,
Fn,
),
DefId(0:12 ~ bounds_regression[4f59]::GenFuture::{constructor#0}),
),
segments: [
PathSegment {
ident: GenFuture#0,
hir_id: Some(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 3,
},
),
res: Some(
Err,
),
args: None,
infer_args: true,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:17:5: 17:14 (#0),
},
[
Expr {
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 6,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:17:15: 17:16 (#0),
res: Local(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 2,
},
),
segments: [
PathSegment {
ident: x#0,
hir_id: Some(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 5,
},
),
res: Some(
Local(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 2,
},
),
),
args: None,
infer_args: true,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:17:15: 17:16 (#0),
},
],
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:17:5: 17:17 (#0),
},
),
hir_id: HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 8,
},
rules: DefaultBlock,
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:42: 18:2 (#0),
targeted_by_break: false,
},
None,
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:42: 18:2 (#0),
},
generator_kind: None,
},
),
],
},
local_id_to_def_id: SortedMap {
data: [
(
15,
DefId(0:9 ~ bounds_regression[4f59]::future_from_generator::T),
),
],
},
},
parenting: {
DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}): 19,
},
attrs: AttributeMap {
map: SortedMap {
data: [],
},
hash: Fingerprint(
9785122672296426403,
8173264106939382879,
),
},
trait_map: {},
},
),
NonOwner(
HirId {
owner: DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
local_id: 15,
},
),
Owner(
OwnerInfo {
nodes: OwnerNodes {
hash_including_bodies: Fingerprint(
14366872611587767130,
4007153755474916027,
),
hash_without_bodies: Fingerprint(
14366872611587767130,
4007153755474916027,
),
nodes: [
Some(
ParentedNode {
parent: 4294967040,
node: Item(
Item {
ident: #0,
def_id: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
kind: OpaqueTy(
OpaqueTy {
generics: Generics {
params: [
GenericParam {
hir_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 8,
},
name: Plain(
MY-T#0,
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:30: 14:31 (#0),
pure_wrt_drop: false,
kind: Type {
default: None,
synthetic: false,
},
colon_span: Some(
src/test/ui/impl-trait/v2/bounds_regression.rs:14:31: 14:32 (#0),
),
},
],
predicates: [
BoundPredicate(
WhereBoundPredicate {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:31: 14:58 (#0),
origin: GenericParam,
bound_generic_params: [],
bounded_ty: Ty {
hir_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 13,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:30: 14:31 (#0),
res: Def(
TyParam,
DefId(0:19 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}::{opaque#0}),
),
segments: [
PathSegment {
ident: T#0,
hir_id: None,
res: None,
args: None,
infer_args: true,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:30: 14:31 (#0),
},
bounds: [
Trait(
PolyTraitRef {
bound_generic_params: [],
trait_ref: TraitRef {
path: Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:33: 14:58 (#0),
res: Def(
Trait,
DefId(0:3 ~ bounds_regression[4f59]::FakeGenerator),
),
segments: [
PathSegment {
ident: FakeGenerator#0,
hir_id: Some(
HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 11,
},
),
res: Some(
Def(
Trait,
DefId(0:3 ~ bounds_regression[4f59]::FakeGenerator),
),
),
args: Some(
GenericArgs {
args: [],
bindings: [
TypeBinding {
hir_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 10,
},
ident: Yield#0,
gen_args: GenericArgs {
args: [],
bindings: [],
parenthesized: false,
span_ext: no-location (#0),
},
kind: Equality {
term: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 9,
},
kind: Tup(
[],
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:55: 14:57 (#0),
},
),
},
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:47: 14:57 (#0),
},
],
parenthesized: false,
span_ext: src/test/ui/impl-trait/v2/bounds_regression.rs:14:46: 14:58 (#0),
},
),
infer_args: false,
},
],
},
hir_ref_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 12,
},
},
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:33: 14:58 (#0),
},
None,
),
],
},
),
],
has_where_clause: true,
where_clause_span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:6: 16:41 (#0),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:6: 16:41 (#0),
},
bounds: [
Trait(
PolyTraitRef {
bound_generic_params: [],
trait_ref: TraitRef {
path: Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:11: 16:41 (#0),
res: Def(
Trait,
DefId(0:6 ~ bounds_regression[4f59]::FakeFuture),
),
segments: [
PathSegment {
ident: FakeFuture#0,
hir_id: Some(
HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 6,
},
),
res: Some(
Def(
Trait,
DefId(0:6 ~ bounds_regression[4f59]::FakeFuture),
),
),
args: Some(
GenericArgs {
args: [],
bindings: [
TypeBinding {
hir_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 5,
},
ident: Output#0,
gen_args: GenericArgs {
args: [],
bindings: [],
parenthesized: false,
span_ext: no-location (#0),
},
kind: Equality {
term: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 1,
},
kind: Path(
TypeRelative(
Ty {
hir_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 3,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:31: 16:32 (#0),
res: Def(
TyParam,
DefId(0:9 ~ bounds_regression[4f59]::future_from_generator::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: Some(
HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 2,
},
),
res: Some(
Def(
TyParam,
DefId(0:9 ~ bounds_regression[4f59]::future_from_generator::T),
),
),
args: None,
infer_args: false,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:31: 16:32 (#0),
},
PathSegment {
ident: Return#0,
hir_id: Some(
HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 4,
},
),
res: Some(
Err,
),
args: None,
infer_args: false,
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:31: 16:40 (#0),
},
),
},
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:22: 16:40 (#0),
},
],
parenthesized: false,
span_ext: src/test/ui/impl-trait/v2/bounds_regression.rs:16:21: 16:41 (#0),
},
),
infer_args: false,
},
],
},
hir_ref_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 7,
},
},
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:11: 16:41 (#0),
},
None,
),
],
origin: FnReturn(
DefId(0:8 ~ bounds_regression[4f59]::future_from_generator),
),
},
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:6: 16:41 (#4),
vis_span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:6: 16:6 (#0),
},
),
},
),
Some(
ParentedNode {
parent: 7,
node: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 1,
},
kind: Path(
TypeRelative(
Ty {
hir_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 3,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:31: 16:32 (#0),
res: Def(
TyParam,
DefId(0:9 ~ bounds_regression[4f59]::future_from_generator::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: Some(
HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 2,
},
),
res: Some(
Def(
TyParam,
DefId(0:9 ~ bounds_regression[4f59]::future_from_generator::T),
),
),
args: None,
infer_args: false,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:31: 16:32 (#0),
},
PathSegment {
ident: Return#0,
hir_id: Some(
HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 4,
},
),
res: Some(
Err,
),
args: None,
infer_args: false,
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:31: 16:40 (#0),
},
),
},
),
Some(
ParentedNode {
parent: 3,
node: PathSegment(
PathSegment {
ident: T#0,
hir_id: Some(
HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 2,
},
),
res: Some(
Def(
TyParam,
DefId(0:9 ~ bounds_regression[4f59]::future_from_generator::T),
),
),
args: None,
infer_args: false,
},
),
},
),
Some(
ParentedNode {
parent: 1,
node: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 3,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:31: 16:32 (#0),
res: Def(
TyParam,
DefId(0:9 ~ bounds_regression[4f59]::future_from_generator::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: Some(
HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 2,
},
),
res: Some(
Def(
TyParam,
DefId(0:9 ~ bounds_regression[4f59]::future_from_generator::T),
),
),
args: None,
infer_args: false,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:31: 16:32 (#0),
},
),
},
),
Some(
ParentedNode {
parent: 1,
node: PathSegment(
PathSegment {
ident: Return#0,
hir_id: Some(
HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 4,
},
),
res: Some(
Err,
),
args: None,
infer_args: false,
},
),
},
),
None,
Some(
ParentedNode {
parent: 7,
node: PathSegment(
PathSegment {
ident: FakeFuture#0,
hir_id: Some(
HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 6,
},
),
res: Some(
Def(
Trait,
DefId(0:6 ~ bounds_regression[4f59]::FakeFuture),
),
),
args: Some(
GenericArgs {
args: [],
bindings: [
TypeBinding {
hir_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 5,
},
ident: Output#0,
gen_args: GenericArgs {
args: [],
bindings: [],
parenthesized: false,
span_ext: no-location (#0),
},
kind: Equality {
term: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 1,
},
kind: Path(
TypeRelative(
Ty {
hir_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 3,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:31: 16:32 (#0),
res: Def(
TyParam,
DefId(0:9 ~ bounds_regression[4f59]::future_from_generator::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: Some(
HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 2,
},
),
res: Some(
Def(
TyParam,
DefId(0:9 ~ bounds_regression[4f59]::future_from_generator::T),
),
),
args: None,
infer_args: false,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:31: 16:32 (#0),
},
PathSegment {
ident: Return#0,
hir_id: Some(
HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 4,
},
),
res: Some(
Err,
),
args: None,
infer_args: false,
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:31: 16:40 (#0),
},
),
},
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:22: 16:40 (#0),
},
],
parenthesized: false,
span_ext: src/test/ui/impl-trait/v2/bounds_regression.rs:16:21: 16:41 (#0),
},
),
infer_args: false,
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: TraitRef(
TraitRef {
path: Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:11: 16:41 (#0),
res: Def(
Trait,
DefId(0:6 ~ bounds_regression[4f59]::FakeFuture),
),
segments: [
PathSegment {
ident: FakeFuture#0,
hir_id: Some(
HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 6,
},
),
res: Some(
Def(
Trait,
DefId(0:6 ~ bounds_regression[4f59]::FakeFuture),
),
),
args: Some(
GenericArgs {
args: [],
bindings: [
TypeBinding {
hir_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 5,
},
ident: Output#0,
gen_args: GenericArgs {
args: [],
bindings: [],
parenthesized: false,
span_ext: no-location (#0),
},
kind: Equality {
term: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 1,
},
kind: Path(
TypeRelative(
Ty {
hir_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 3,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:31: 16:32 (#0),
res: Def(
TyParam,
DefId(0:9 ~ bounds_regression[4f59]::future_from_generator::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: Some(
HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 2,
},
),
res: Some(
Def(
TyParam,
DefId(0:9 ~ bounds_regression[4f59]::future_from_generator::T),
),
),
args: None,
infer_args: false,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:31: 16:32 (#0),
},
PathSegment {
ident: Return#0,
hir_id: Some(
HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 4,
},
),
res: Some(
Err,
),
args: None,
infer_args: false,
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:31: 16:40 (#0),
},
),
},
span: src/test/ui/impl-trait/v2/bounds_regression.rs:16:22: 16:40 (#0),
},
],
parenthesized: false,
span_ext: src/test/ui/impl-trait/v2/bounds_regression.rs:16:21: 16:41 (#0),
},
),
infer_args: false,
},
],
},
hir_ref_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 7,
},
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: GenericParam(
GenericParam {
hir_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 8,
},
name: Plain(
MY-T#0,
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:30: 14:31 (#0),
pure_wrt_drop: false,
kind: Type {
default: None,
synthetic: false,
},
colon_span: Some(
src/test/ui/impl-trait/v2/bounds_regression.rs:14:31: 14:32 (#0),
),
},
),
},
),
Some(
ParentedNode {
parent: 12,
node: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 9,
},
kind: Tup(
[],
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:55: 14:57 (#0),
},
),
},
),
None,
Some(
ParentedNode {
parent: 12,
node: PathSegment(
PathSegment {
ident: FakeGenerator#0,
hir_id: Some(
HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 11,
},
),
res: Some(
Def(
Trait,
DefId(0:3 ~ bounds_regression[4f59]::FakeGenerator),
),
),
args: Some(
GenericArgs {
args: [],
bindings: [
TypeBinding {
hir_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 10,
},
ident: Yield#0,
gen_args: GenericArgs {
args: [],
bindings: [],
parenthesized: false,
span_ext: no-location (#0),
},
kind: Equality {
term: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 9,
},
kind: Tup(
[],
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:55: 14:57 (#0),
},
),
},
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:47: 14:57 (#0),
},
],
parenthesized: false,
span_ext: src/test/ui/impl-trait/v2/bounds_regression.rs:14:46: 14:58 (#0),
},
),
infer_args: false,
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: TraitRef(
TraitRef {
path: Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:33: 14:58 (#0),
res: Def(
Trait,
DefId(0:3 ~ bounds_regression[4f59]::FakeGenerator),
),
segments: [
PathSegment {
ident: FakeGenerator#0,
hir_id: Some(
HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 11,
},
),
res: Some(
Def(
Trait,
DefId(0:3 ~ bounds_regression[4f59]::FakeGenerator),
),
),
args: Some(
GenericArgs {
args: [],
bindings: [
TypeBinding {
hir_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 10,
},
ident: Yield#0,
gen_args: GenericArgs {
args: [],
bindings: [],
parenthesized: false,
span_ext: no-location (#0),
},
kind: Equality {
term: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 9,
},
kind: Tup(
[],
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:55: 14:57 (#0),
},
),
},
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:47: 14:57 (#0),
},
],
parenthesized: false,
span_ext: src/test/ui/impl-trait/v2/bounds_regression.rs:14:46: 14:58 (#0),
},
),
infer_args: false,
},
],
},
hir_ref_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 12,
},
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 13,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:30: 14:31 (#0),
res: Def(
TyParam,
DefId(0:19 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}::{opaque#0}),
),
segments: [
PathSegment {
ident: T#0,
hir_id: None,
res: None,
args: None,
infer_args: true,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:14:30: 14:31 (#0),
},
),
},
),
],
bodies: SortedMap {
data: [],
},
local_id_to_def_id: SortedMap {
data: [
(
8,
DefId(0:19 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}::{opaque#0}),
),
],
},
},
parenting: {},
attrs: AttributeMap {
map: SortedMap {
data: [],
},
hash: Fingerprint(
9785122672296426403,
8173264106939382879,
),
},
trait_map: {},
},
),
Owner(
OwnerInfo {
nodes: OwnerNodes {
hash_including_bodies: Fingerprint(
17652517928095161806,
2319571192116186451,
),
hash_without_bodies: Fingerprint(
17652517928095161806,
2319571192116186451,
),
nodes: [
Some(
ParentedNode {
parent: 4294967040,
node: Item(
Item {
ident: GenFuture#0,
def_id: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
kind: Struct(
Tuple(
[
FieldDef {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:48: 20:49 (#0),
vis_span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:48: 20:48 (#0),
ident: 0#0,
hir_id: HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 4,
},
ty: Ty {
hir_id: HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 2,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:48: 20:49 (#0),
res: Def(
TyParam,
DefId(0:13 ~ bounds_regression[4f59]::GenFuture::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: Some(
HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 3,
},
),
res: Some(
Def(
TyParam,
DefId(0:13 ~ bounds_regression[4f59]::GenFuture::T),
),
),
args: None,
infer_args: false,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:48: 20:49 (#0),
},
},
],
HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 1,
},
),
Generics {
params: [
GenericParam {
hir_id: HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 10,
},
name: Plain(
T#0,
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:18: 20:19 (#0),
pure_wrt_drop: false,
kind: Type {
default: None,
synthetic: false,
},
colon_span: Some(
src/test/ui/impl-trait/v2/bounds_regression.rs:20:19: 20:20 (#0),
),
},
],
predicates: [
BoundPredicate(
WhereBoundPredicate {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:19: 20:46 (#0),
origin: GenericParam,
bound_generic_params: [],
bounded_ty: Ty {
hir_id: HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 9,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:18: 20:19 (#0),
res: Def(
TyParam,
DefId(0:13 ~ bounds_regression[4f59]::GenFuture::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: None,
res: None,
args: None,
infer_args: true,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:18: 20:19 (#0),
},
bounds: [
Trait(
PolyTraitRef {
bound_generic_params: [],
trait_ref: TraitRef {
path: Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:21: 20:46 (#0),
res: Def(
Trait,
DefId(0:3 ~ bounds_regression[4f59]::FakeGenerator),
),
segments: [
PathSegment {
ident: FakeGenerator#0,
hir_id: Some(
HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 7,
},
),
res: Some(
Def(
Trait,
DefId(0:3 ~ bounds_regression[4f59]::FakeGenerator),
),
),
args: Some(
GenericArgs {
args: [],
bindings: [
TypeBinding {
hir_id: HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 6,
},
ident: Yield#0,
gen_args: GenericArgs {
args: [],
bindings: [],
parenthesized: false,
span_ext: no-location (#0),
},
kind: Equality {
term: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 5,
},
kind: Tup(
[],
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:43: 20:45 (#0),
},
),
},
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:35: 20:45 (#0),
},
],
parenthesized: false,
span_ext: src/test/ui/impl-trait/v2/bounds_regression.rs:20:34: 20:46 (#0),
},
),
infer_args: false,
},
],
},
hir_ref_id: HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 8,
},
},
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:21: 20:46 (#0),
},
None,
),
],
},
),
],
has_where_clause: false,
where_clause_span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:50: 20:50 (#0),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:17: 20:47 (#0),
},
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:1: 20:51 (#0),
vis_span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:1: 20:1 (#0),
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: Ctor(
Tuple(
[
FieldDef {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:48: 20:49 (#0),
vis_span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:48: 20:48 (#0),
ident: 0#0,
hir_id: HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 4,
},
ty: Ty {
hir_id: HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 2,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:48: 20:49 (#0),
res: Def(
TyParam,
DefId(0:13 ~ bounds_regression[4f59]::GenFuture::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: Some(
HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 3,
},
),
res: Some(
Def(
TyParam,
DefId(0:13 ~ bounds_regression[4f59]::GenFuture::T),
),
),
args: None,
infer_args: false,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:48: 20:49 (#0),
},
},
],
HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 1,
},
),
),
},
),
Some(
ParentedNode {
parent: 4,
node: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 2,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:48: 20:49 (#0),
res: Def(
TyParam,
DefId(0:13 ~ bounds_regression[4f59]::GenFuture::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: Some(
HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 3,
},
),
res: Some(
Def(
TyParam,
DefId(0:13 ~ bounds_regression[4f59]::GenFuture::T),
),
),
args: None,
infer_args: false,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:48: 20:49 (#0),
},
),
},
),
Some(
ParentedNode {
parent: 2,
node: PathSegment(
PathSegment {
ident: T#0,
hir_id: Some(
HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 3,
},
),
res: Some(
Def(
TyParam,
DefId(0:13 ~ bounds_regression[4f59]::GenFuture::T),
),
),
args: None,
infer_args: false,
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: Field(
FieldDef {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:48: 20:49 (#0),
vis_span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:48: 20:48 (#0),
ident: 0#0,
hir_id: HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 4,
},
ty: Ty {
hir_id: HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 2,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:48: 20:49 (#0),
res: Def(
TyParam,
DefId(0:13 ~ bounds_regression[4f59]::GenFuture::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: Some(
HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 3,
},
),
res: Some(
Def(
TyParam,
DefId(0:13 ~ bounds_regression[4f59]::GenFuture::T),
),
),
args: None,
infer_args: false,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:48: 20:49 (#0),
},
},
),
},
),
Some(
ParentedNode {
parent: 8,
node: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 5,
},
kind: Tup(
[],
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:43: 20:45 (#0),
},
),
},
),
None,
Some(
ParentedNode {
parent: 8,
node: PathSegment(
PathSegment {
ident: FakeGenerator#0,
hir_id: Some(
HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 7,
},
),
res: Some(
Def(
Trait,
DefId(0:3 ~ bounds_regression[4f59]::FakeGenerator),
),
),
args: Some(
GenericArgs {
args: [],
bindings: [
TypeBinding {
hir_id: HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 6,
},
ident: Yield#0,
gen_args: GenericArgs {
args: [],
bindings: [],
parenthesized: false,
span_ext: no-location (#0),
},
kind: Equality {
term: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 5,
},
kind: Tup(
[],
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:43: 20:45 (#0),
},
),
},
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:35: 20:45 (#0),
},
],
parenthesized: false,
span_ext: src/test/ui/impl-trait/v2/bounds_regression.rs:20:34: 20:46 (#0),
},
),
infer_args: false,
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: TraitRef(
TraitRef {
path: Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:21: 20:46 (#0),
res: Def(
Trait,
DefId(0:3 ~ bounds_regression[4f59]::FakeGenerator),
),
segments: [
PathSegment {
ident: FakeGenerator#0,
hir_id: Some(
HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 7,
},
),
res: Some(
Def(
Trait,
DefId(0:3 ~ bounds_regression[4f59]::FakeGenerator),
),
),
args: Some(
GenericArgs {
args: [],
bindings: [
TypeBinding {
hir_id: HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 6,
},
ident: Yield#0,
gen_args: GenericArgs {
args: [],
bindings: [],
parenthesized: false,
span_ext: no-location (#0),
},
kind: Equality {
term: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 5,
},
kind: Tup(
[],
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:43: 20:45 (#0),
},
),
},
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:35: 20:45 (#0),
},
],
parenthesized: false,
span_ext: src/test/ui/impl-trait/v2/bounds_regression.rs:20:34: 20:46 (#0),
},
),
infer_args: false,
},
],
},
hir_ref_id: HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 8,
},
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 9,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:18: 20:19 (#0),
res: Def(
TyParam,
DefId(0:13 ~ bounds_regression[4f59]::GenFuture::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: None,
res: None,
args: None,
infer_args: true,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:18: 20:19 (#0),
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: GenericParam(
GenericParam {
hir_id: HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 10,
},
name: Plain(
T#0,
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:20:18: 20:19 (#0),
pure_wrt_drop: false,
kind: Type {
default: None,
synthetic: false,
},
colon_span: Some(
src/test/ui/impl-trait/v2/bounds_regression.rs:20:19: 20:20 (#0),
),
},
),
},
),
],
bodies: SortedMap {
data: [],
},
local_id_to_def_id: SortedMap {
data: [
(
1,
DefId(0:12 ~ bounds_regression[4f59]::GenFuture::{constructor#0}),
),
(
4,
DefId(0:14 ~ bounds_regression[4f59]::GenFuture::0),
),
(
10,
DefId(0:13 ~ bounds_regression[4f59]::GenFuture::T),
),
],
},
},
parenting: {},
attrs: AttributeMap {
map: SortedMap {
data: [],
},
hash: Fingerprint(
9785122672296426403,
8173264106939382879,
),
},
trait_map: {},
},
),
NonOwner(
HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 1,
},
),
NonOwner(
HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 10,
},
),
NonOwner(
HirId {
owner: DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
local_id: 4,
},
),
Owner(
OwnerInfo {
nodes: OwnerNodes {
hash_including_bodies: Fingerprint(
10046720095049791381,
16487828011078022159,
),
hash_without_bodies: Fingerprint(
10046720095049791381,
16487828011078022159,
),
nodes: [
Some(
ParentedNode {
parent: 4294967040,
node: Item(
Item {
ident: #0,
def_id: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
kind: Impl(
Impl {
unsafety: Normal,
polarity: "positive",
defaultness: Final,
defaultness_span: None,
constness: NotConst,
generics: Generics {
params: [
GenericParam {
hir_id: HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 6,
},
name: Plain(
T#0,
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:6: 22:7 (#0),
pure_wrt_drop: false,
kind: Type {
default: None,
synthetic: false,
},
colon_span: Some(
src/test/ui/impl-trait/v2/bounds_regression.rs:22:7: 22:8 (#0),
),
},
],
predicates: [
BoundPredicate(
WhereBoundPredicate {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:7: 22:34 (#0),
origin: GenericParam,
bound_generic_params: [],
bounded_ty: Ty {
hir_id: HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 5,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:6: 22:7 (#0),
res: Def(
TyParam,
DefId(0:16 ~ bounds_regression[4f59]::{impl#0}::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: None,
res: None,
args: None,
infer_args: true,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:6: 22:7 (#0),
},
bounds: [
Trait(
PolyTraitRef {
bound_generic_params: [],
trait_ref: TraitRef {
path: Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:9: 22:34 (#0),
res: Def(
Trait,
DefId(0:3 ~ bounds_regression[4f59]::FakeGenerator),
),
segments: [
PathSegment {
ident: FakeGenerator#0,
hir_id: Some(
HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 3,
},
),
res: Some(
Def(
Trait,
DefId(0:3 ~ bounds_regression[4f59]::FakeGenerator),
),
),
args: Some(
GenericArgs {
args: [],
bindings: [
TypeBinding {
hir_id: HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 2,
},
ident: Yield#0,
gen_args: GenericArgs {
args: [],
bindings: [],
parenthesized: false,
span_ext: no-location (#0),
},
kind: Equality {
term: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 1,
},
kind: Tup(
[],
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:31: 22:33 (#0),
},
),
},
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:23: 22:33 (#0),
},
],
parenthesized: false,
span_ext: src/test/ui/impl-trait/v2/bounds_regression.rs:22:22: 22:34 (#0),
},
),
infer_args: false,
},
],
},
hir_ref_id: HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 4,
},
},
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:9: 22:34 (#0),
},
None,
),
],
},
),
],
has_where_clause: false,
where_clause_span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:63: 22:63 (#0),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:5: 22:35 (#0),
},
of_trait: Some(
TraitRef {
path: Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:36: 22:46 (#0),
res: Def(
Trait,
DefId(0:6 ~ bounds_regression[4f59]::FakeFuture),
),
segments: [
PathSegment {
ident: FakeFuture#0,
hir_id: Some(
HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 7,
},
),
res: Some(
Def(
Trait,
DefId(0:6 ~ bounds_regression[4f59]::FakeFuture),
),
),
args: None,
infer_args: false,
},
],
},
hir_ref_id: HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 8,
},
},
),
self_ty: Ty {
hir_id: HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 9,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:51: 22:63 (#0),
res: Def(
Struct,
DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
),
segments: [
PathSegment {
ident: GenFuture#0,
hir_id: Some(
HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 12,
},
),
res: Some(
Err,
),
args: Some(
GenericArgs {
args: [
Type(
Ty {
hir_id: HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 10,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:61: 22:62 (#0),
res: Def(
TyParam,
DefId(0:16 ~ bounds_regression[4f59]::{impl#0}::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: Some(
HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 11,
},
),
res: Some(
Def(
TyParam,
DefId(0:16 ~ bounds_regression[4f59]::{impl#0}::T),
),
),
args: None,
infer_args: false,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:61: 22:62 (#0),
},
),
],
bindings: [],
parenthesized: false,
span_ext: src/test/ui/impl-trait/v2/bounds_regression.rs:22:60: 22:63 (#0),
},
),
infer_args: false,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:51: 22:63 (#0),
},
items: [
ImplItemRef {
id: ImplItemId {
def_id: DefId(0:17 ~ bounds_regression[4f59]::{impl#0}::Output),
},
ident: Output#0,
kind: Type,
span: src/test/ui/impl-trait/v2/bounds_regression.rs:23:5: 23:29 (#0),
defaultness: Final,
trait_item_def_id: Some(
DefId(0:7 ~ bounds_regression[4f59]::FakeFuture::Output),
),
},
],
},
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:1: 24:2 (#0),
vis_span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:1: 22:1 (#0),
},
),
},
),
Some(
ParentedNode {
parent: 4,
node: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 1,
},
kind: Tup(
[],
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:31: 22:33 (#0),
},
),
},
),
None,
Some(
ParentedNode {
parent: 4,
node: PathSegment(
PathSegment {
ident: FakeGenerator#0,
hir_id: Some(
HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 3,
},
),
res: Some(
Def(
Trait,
DefId(0:3 ~ bounds_regression[4f59]::FakeGenerator),
),
),
args: Some(
GenericArgs {
args: [],
bindings: [
TypeBinding {
hir_id: HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 2,
},
ident: Yield#0,
gen_args: GenericArgs {
args: [],
bindings: [],
parenthesized: false,
span_ext: no-location (#0),
},
kind: Equality {
term: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 1,
},
kind: Tup(
[],
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:31: 22:33 (#0),
},
),
},
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:23: 22:33 (#0),
},
],
parenthesized: false,
span_ext: src/test/ui/impl-trait/v2/bounds_regression.rs:22:22: 22:34 (#0),
},
),
infer_args: false,
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: TraitRef(
TraitRef {
path: Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:9: 22:34 (#0),
res: Def(
Trait,
DefId(0:3 ~ bounds_regression[4f59]::FakeGenerator),
),
segments: [
PathSegment {
ident: FakeGenerator#0,
hir_id: Some(
HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 3,
},
),
res: Some(
Def(
Trait,
DefId(0:3 ~ bounds_regression[4f59]::FakeGenerator),
),
),
args: Some(
GenericArgs {
args: [],
bindings: [
TypeBinding {
hir_id: HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 2,
},
ident: Yield#0,
gen_args: GenericArgs {
args: [],
bindings: [],
parenthesized: false,
span_ext: no-location (#0),
},
kind: Equality {
term: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 1,
},
kind: Tup(
[],
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:31: 22:33 (#0),
},
),
},
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:23: 22:33 (#0),
},
],
parenthesized: false,
span_ext: src/test/ui/impl-trait/v2/bounds_regression.rs:22:22: 22:34 (#0),
},
),
infer_args: false,
},
],
},
hir_ref_id: HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 4,
},
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 5,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:6: 22:7 (#0),
res: Def(
TyParam,
DefId(0:16 ~ bounds_regression[4f59]::{impl#0}::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: None,
res: None,
args: None,
infer_args: true,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:6: 22:7 (#0),
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: GenericParam(
GenericParam {
hir_id: HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 6,
},
name: Plain(
T#0,
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:6: 22:7 (#0),
pure_wrt_drop: false,
kind: Type {
default: None,
synthetic: false,
},
colon_span: Some(
src/test/ui/impl-trait/v2/bounds_regression.rs:22:7: 22:8 (#0),
),
},
),
},
),
Some(
ParentedNode {
parent: 8,
node: PathSegment(
PathSegment {
ident: FakeFuture#0,
hir_id: Some(
HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 7,
},
),
res: Some(
Def(
Trait,
DefId(0:6 ~ bounds_regression[4f59]::FakeFuture),
),
),
args: None,
infer_args: false,
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: TraitRef(
TraitRef {
path: Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:36: 22:46 (#0),
res: Def(
Trait,
DefId(0:6 ~ bounds_regression[4f59]::FakeFuture),
),
segments: [
PathSegment {
ident: FakeFuture#0,
hir_id: Some(
HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 7,
},
),
res: Some(
Def(
Trait,
DefId(0:6 ~ bounds_regression[4f59]::FakeFuture),
),
),
args: None,
infer_args: false,
},
],
},
hir_ref_id: HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 8,
},
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 9,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:51: 22:63 (#0),
res: Def(
Struct,
DefId(0:11 ~ bounds_regression[4f59]::GenFuture),
),
segments: [
PathSegment {
ident: GenFuture#0,
hir_id: Some(
HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 12,
},
),
res: Some(
Err,
),
args: Some(
GenericArgs {
args: [
Type(
Ty {
hir_id: HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 10,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:61: 22:62 (#0),
res: Def(
TyParam,
DefId(0:16 ~ bounds_regression[4f59]::{impl#0}::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: Some(
HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 11,
},
),
res: Some(
Def(
TyParam,
DefId(0:16 ~ bounds_regression[4f59]::{impl#0}::T),
),
),
args: None,
infer_args: false,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:61: 22:62 (#0),
},
),
],
bindings: [],
parenthesized: false,
span_ext: src/test/ui/impl-trait/v2/bounds_regression.rs:22:60: 22:63 (#0),
},
),
infer_args: false,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:51: 22:63 (#0),
},
),
},
),
Some(
ParentedNode {
parent: 9,
node: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 10,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:61: 22:62 (#0),
res: Def(
TyParam,
DefId(0:16 ~ bounds_regression[4f59]::{impl#0}::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: Some(
HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 11,
},
),
res: Some(
Def(
TyParam,
DefId(0:16 ~ bounds_regression[4f59]::{impl#0}::T),
),
),
args: None,
infer_args: false,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:61: 22:62 (#0),
},
),
},
),
Some(
ParentedNode {
parent: 10,
node: PathSegment(
PathSegment {
ident: T#0,
hir_id: Some(
HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 11,
},
),
res: Some(
Def(
TyParam,
DefId(0:16 ~ bounds_regression[4f59]::{impl#0}::T),
),
),
args: None,
infer_args: false,
},
),
},
),
Some(
ParentedNode {
parent: 9,
node: PathSegment(
PathSegment {
ident: GenFuture#0,
hir_id: Some(
HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 12,
},
),
res: Some(
Err,
),
args: Some(
GenericArgs {
args: [
Type(
Ty {
hir_id: HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 10,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:61: 22:62 (#0),
res: Def(
TyParam,
DefId(0:16 ~ bounds_regression[4f59]::{impl#0}::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: Some(
HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 11,
},
),
res: Some(
Def(
TyParam,
DefId(0:16 ~ bounds_regression[4f59]::{impl#0}::T),
),
),
args: None,
infer_args: false,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:22:61: 22:62 (#0),
},
),
],
bindings: [],
parenthesized: false,
span_ext: src/test/ui/impl-trait/v2/bounds_regression.rs:22:60: 22:63 (#0),
},
),
infer_args: false,
},
),
},
),
],
bodies: SortedMap {
data: [],
},
local_id_to_def_id: SortedMap {
data: [
(
6,
DefId(0:16 ~ bounds_regression[4f59]::{impl#0}::T),
),
],
},
},
parenting: {
DefId(0:17 ~ bounds_regression[4f59]::{impl#0}::Output): 0,
},
attrs: AttributeMap {
map: SortedMap {
data: [],
},
hash: Fingerprint(
9785122672296426403,
8173264106939382879,
),
},
trait_map: {},
},
),
NonOwner(
HirId {
owner: DefId(0:15 ~ bounds_regression[4f59]::{impl#0}),
local_id: 6,
},
),
Owner(
OwnerInfo {
nodes: OwnerNodes {
hash_including_bodies: Fingerprint(
11699371978382539733,
15830727026036763193,
),
hash_without_bodies: Fingerprint(
11699371978382539733,
15830727026036763193,
),
nodes: [
Some(
ParentedNode {
parent: 4294967040,
node: ImplItem(
ImplItem {
ident: Output#0,
def_id: DefId(0:17 ~ bounds_regression[4f59]::{impl#0}::Output),
generics: Generics {
params: [],
predicates: [],
has_where_clause: false,
where_clause_span: src/test/ui/impl-trait/v2/bounds_regression.rs:23:28: 23:28 (#0),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:23:16: 23:16 (#0),
},
kind: TyAlias(
Ty {
hir_id: HirId {
owner: DefId(0:17 ~ bounds_regression[4f59]::{impl#0}::Output),
local_id: 1,
},
kind: Path(
TypeRelative(
Ty {
hir_id: HirId {
owner: DefId(0:17 ~ bounds_regression[4f59]::{impl#0}::Output),
local_id: 3,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:23:19: 23:20 (#0),
res: Def(
TyParam,
DefId(0:16 ~ bounds_regression[4f59]::{impl#0}::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: Some(
HirId {
owner: DefId(0:17 ~ bounds_regression[4f59]::{impl#0}::Output),
local_id: 2,
},
),
res: Some(
Def(
TyParam,
DefId(0:16 ~ bounds_regression[4f59]::{impl#0}::T),
),
),
args: None,
infer_args: false,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:23:19: 23:20 (#0),
},
PathSegment {
ident: Return#0,
hir_id: Some(
HirId {
owner: DefId(0:17 ~ bounds_regression[4f59]::{impl#0}::Output),
local_id: 4,
},
),
res: Some(
Err,
),
args: None,
infer_args: false,
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:23:19: 23:28 (#0),
},
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:23:5: 23:29 (#0),
vis_span: src/test/ui/impl-trait/v2/bounds_regression.rs:23:5: 23:5 (#0),
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:17 ~ bounds_regression[4f59]::{impl#0}::Output),
local_id: 1,
},
kind: Path(
TypeRelative(
Ty {
hir_id: HirId {
owner: DefId(0:17 ~ bounds_regression[4f59]::{impl#0}::Output),
local_id: 3,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:23:19: 23:20 (#0),
res: Def(
TyParam,
DefId(0:16 ~ bounds_regression[4f59]::{impl#0}::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: Some(
HirId {
owner: DefId(0:17 ~ bounds_regression[4f59]::{impl#0}::Output),
local_id: 2,
},
),
res: Some(
Def(
TyParam,
DefId(0:16 ~ bounds_regression[4f59]::{impl#0}::T),
),
),
args: None,
infer_args: false,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:23:19: 23:20 (#0),
},
PathSegment {
ident: Return#0,
hir_id: Some(
HirId {
owner: DefId(0:17 ~ bounds_regression[4f59]::{impl#0}::Output),
local_id: 4,
},
),
res: Some(
Err,
),
args: None,
infer_args: false,
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:23:19: 23:28 (#0),
},
),
},
),
Some(
ParentedNode {
parent: 3,
node: PathSegment(
PathSegment {
ident: T#0,
hir_id: Some(
HirId {
owner: DefId(0:17 ~ bounds_regression[4f59]::{impl#0}::Output),
local_id: 2,
},
),
res: Some(
Def(
TyParam,
DefId(0:16 ~ bounds_regression[4f59]::{impl#0}::T),
),
),
args: None,
infer_args: false,
},
),
},
),
Some(
ParentedNode {
parent: 1,
node: Ty(
Ty {
hir_id: HirId {
owner: DefId(0:17 ~ bounds_regression[4f59]::{impl#0}::Output),
local_id: 3,
},
kind: Path(
Resolved(
None,
Path {
span: src/test/ui/impl-trait/v2/bounds_regression.rs:23:19: 23:20 (#0),
res: Def(
TyParam,
DefId(0:16 ~ bounds_regression[4f59]::{impl#0}::T),
),
segments: [
PathSegment {
ident: T#0,
hir_id: Some(
HirId {
owner: DefId(0:17 ~ bounds_regression[4f59]::{impl#0}::Output),
local_id: 2,
},
),
res: Some(
Def(
TyParam,
DefId(0:16 ~ bounds_regression[4f59]::{impl#0}::T),
),
),
args: None,
infer_args: false,
},
],
},
),
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:23:19: 23:20 (#0),
},
),
},
),
Some(
ParentedNode {
parent: 1,
node: PathSegment(
PathSegment {
ident: Return#0,
hir_id: Some(
HirId {
owner: DefId(0:17 ~ bounds_regression[4f59]::{impl#0}::Output),
local_id: 4,
},
),
res: Some(
Err,
),
args: None,
infer_args: false,
},
),
},
),
],
bodies: SortedMap {
data: [],
},
local_id_to_def_id: SortedMap {
data: [],
},
},
parenting: {},
attrs: AttributeMap {
map: SortedMap {
data: [],
},
hash: Fingerprint(
9785122672296426403,
8173264106939382879,
),
},
trait_map: {},
},
),
Owner(
OwnerInfo {
nodes: OwnerNodes {
hash_including_bodies: Fingerprint(
14106346861983295339,
12586666574128227455,
),
hash_without_bodies: Fingerprint(
3557825909256106911,
7280051348205236696,
),
nodes: [
Some(
ParentedNode {
parent: 4294967040,
node: Item(
Item {
ident: main#0,
def_id: DefId(0:18 ~ bounds_regression[4f59]::main),
kind: Fn(
FnSig {
header: FnHeader {
unsafety: Normal,
constness: NotConst,
asyncness: NotAsync,
abi: Rust,
},
decl: FnDecl {
inputs: [],
output: DefaultReturn(
src/test/ui/impl-trait/v2/bounds_regression.rs:26:11: 26:11 (#0),
),
c_variadic: false,
implicit_self: None,
},
span: src/test/ui/impl-trait/v2/bounds_regression.rs:26:1: 26:10 (#0),
},
Generics {
params: [],
predicates: [],
has_where_clause: false,
where_clause_span: src/test/ui/impl-trait/v2/bounds_regression.rs:26:10: 26:10 (#0),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:26:8: 26:8 (#0),
},
BodyId {
hir_id: HirId {
owner: DefId(0:18 ~ bounds_regression[4f59]::main),
local_id: 2,
},
},
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:26:1: 26:13 (#0),
vis_span: src/test/ui/impl-trait/v2/bounds_regression.rs:26:1: 26:1 (#0),
},
),
},
),
Some(
ParentedNode {
parent: 2,
node: Block(
Block {
stmts: [],
expr: None,
hir_id: HirId {
owner: DefId(0:18 ~ bounds_regression[4f59]::main),
local_id: 1,
},
rules: DefaultBlock,
span: src/test/ui/impl-trait/v2/bounds_regression.rs:26:11: 26:13 (#0),
targeted_by_break: false,
},
),
},
),
Some(
ParentedNode {
parent: 0,
node: Expr(
Expr {
hir_id: HirId {
owner: DefId(0:18 ~ bounds_regression[4f59]::main),
local_id: 2,
},
kind: Block(
Block {
stmts: [],
expr: None,
hir_id: HirId {
owner: DefId(0:18 ~ bounds_regression[4f59]::main),
local_id: 1,
},
rules: DefaultBlock,
span: src/test/ui/impl-trait/v2/bounds_regression.rs:26:11: 26:13 (#0),
targeted_by_break: false,
},
None,
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:26:11: 26:13 (#0),
},
),
},
),
],
bodies: SortedMap {
data: [
(
2,
Body {
params: [],
value: Expr {
hir_id: HirId {
owner: DefId(0:18 ~ bounds_regression[4f59]::main),
local_id: 2,
},
kind: Block(
Block {
stmts: [],
expr: None,
hir_id: HirId {
owner: DefId(0:18 ~ bounds_regression[4f59]::main),
local_id: 1,
},
rules: DefaultBlock,
span: src/test/ui/impl-trait/v2/bounds_regression.rs:26:11: 26:13 (#0),
targeted_by_break: false,
},
None,
),
span: src/test/ui/impl-trait/v2/bounds_regression.rs:26:11: 26:13 (#0),
},
generator_kind: None,
},
),
],
},
local_id_to_def_id: SortedMap {
data: [],
},
},
parenting: {},
attrs: AttributeMap {
map: SortedMap {
data: [],
},
hash: Fingerprint(
9785122672296426403,
8173264106939382879,
),
},
trait_map: {},
},
),
NonOwner(
HirId {
owner: DefId(0:10 ~ bounds_regression[4f59]::future_from_generator::{opaque#0}),
local_id: 8,
},
),
],
hir_hash: Fingerprint(
1258128317965105770,
8741939152545677592,
),
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment