@@ -2552,11 +2552,6 @@ pub struct OpaqueTy<'hir> {
25522552 pub in_trait : bool ,
25532553}
25542554
2555- #[ derive( Copy , Clone , Debug , HashStable_Generic ) ]
2556- pub struct AssocOpaqueTy {
2557- // Add some data if necessary
2558- }
2559-
25602555/// From whence the opaque type came.
25612556#[ derive( Copy , Clone , PartialEq , Eq , Debug , HashStable_Generic ) ]
25622557pub enum OpaqueTyOrigin {
@@ -3367,7 +3362,7 @@ pub enum OwnerNode<'hir> {
33673362 TraitItem ( & ' hir TraitItem < ' hir > ) ,
33683363 ImplItem ( & ' hir ImplItem < ' hir > ) ,
33693364 Crate ( & ' hir Mod < ' hir > ) ,
3370- AssocOpaqueTy ( & ' hir AssocOpaqueTy ) ,
3365+ Synthetic ,
33713366}
33723367
33733368impl < ' hir > OwnerNode < ' hir > {
@@ -3377,7 +3372,7 @@ impl<'hir> OwnerNode<'hir> {
33773372 | OwnerNode :: ForeignItem ( ForeignItem { ident, .. } )
33783373 | OwnerNode :: ImplItem ( ImplItem { ident, .. } )
33793374 | OwnerNode :: TraitItem ( TraitItem { ident, .. } ) => Some ( * ident) ,
3380- OwnerNode :: Crate ( ..) | OwnerNode :: AssocOpaqueTy ( .. ) => None ,
3375+ OwnerNode :: Crate ( ..) | OwnerNode :: Synthetic => None ,
33813376 }
33823377 }
33833378
@@ -3390,7 +3385,7 @@ impl<'hir> OwnerNode<'hir> {
33903385 | OwnerNode :: ImplItem ( ImplItem { span, .. } )
33913386 | OwnerNode :: TraitItem ( TraitItem { span, .. } ) => span,
33923387 OwnerNode :: Crate ( Mod { spans : ModSpans { inner_span, .. } , .. } ) => inner_span,
3393- OwnerNode :: AssocOpaqueTy ( .. ) => unreachable ! ( ) ,
3388+ OwnerNode :: Synthetic => unreachable ! ( ) ,
33943389 }
33953390 }
33963391
@@ -3449,7 +3444,7 @@ impl<'hir> OwnerNode<'hir> {
34493444 | OwnerNode :: ImplItem ( ImplItem { owner_id, .. } )
34503445 | OwnerNode :: ForeignItem ( ForeignItem { owner_id, .. } ) => * owner_id,
34513446 OwnerNode :: Crate ( ..) => crate :: CRATE_HIR_ID . owner ,
3452- OwnerNode :: AssocOpaqueTy ( .. ) => unreachable ! ( ) ,
3447+ OwnerNode :: Synthetic => unreachable ! ( ) ,
34533448 }
34543449 }
34553450
@@ -3493,7 +3488,7 @@ impl<'hir> Into<Node<'hir>> for OwnerNode<'hir> {
34933488 OwnerNode :: ImplItem ( n) => Node :: ImplItem ( n) ,
34943489 OwnerNode :: TraitItem ( n) => Node :: TraitItem ( n) ,
34953490 OwnerNode :: Crate ( n) => Node :: Crate ( n) ,
3496- OwnerNode :: AssocOpaqueTy ( n ) => Node :: AssocOpaqueTy ( n ) ,
3491+ OwnerNode :: Synthetic => Node :: Synthetic ,
34973492 }
34983493 }
34993494}
@@ -3531,7 +3526,8 @@ pub enum Node<'hir> {
35313526 WhereBoundPredicate ( & ' hir WhereBoundPredicate < ' hir > ) ,
35323527 // FIXME: Merge into `Node::Infer`.
35333528 ArrayLenInfer ( & ' hir InferArg ) ,
3534- AssocOpaqueTy ( & ' hir AssocOpaqueTy ) ,
3529+ // Created by query feeding
3530+ Synthetic ,
35353531 // Span by reference to minimize `Node`'s size
35363532 #[ allow( rustc:: pass_by_value) ]
35373533 Err ( & ' hir Span ) ,
@@ -3582,7 +3578,7 @@ impl<'hir> Node<'hir> {
35823578 | Node :: Infer ( ..)
35833579 | Node :: WhereBoundPredicate ( ..)
35843580 | Node :: ArrayLenInfer ( ..)
3585- | Node :: AssocOpaqueTy ( .. )
3581+ | Node :: Synthetic
35863582 | Node :: Err ( ..) => None ,
35873583 }
35883584 }
@@ -3695,7 +3691,7 @@ impl<'hir> Node<'hir> {
36953691 Node :: TraitItem ( i) => Some ( OwnerNode :: TraitItem ( i) ) ,
36963692 Node :: ImplItem ( i) => Some ( OwnerNode :: ImplItem ( i) ) ,
36973693 Node :: Crate ( i) => Some ( OwnerNode :: Crate ( i) ) ,
3698- Node :: AssocOpaqueTy ( i ) => Some ( OwnerNode :: AssocOpaqueTy ( i ) ) ,
3694+ Node :: Synthetic => Some ( OwnerNode :: Synthetic ) ,
36993695 _ => None ,
37003696 }
37013697 }
0 commit comments