@@ -1182,22 +1182,13 @@ impl<'tcx> OpaqueHiddenType<'tcx> {
11821182/// identified by both a universe, as well as a name residing within that universe. Distinct bound
11831183/// regions/types/consts within the same universe simply have an unknown relationship to one
11841184/// another.
1185- #[ derive( Copy , Clone , Debug , PartialEq , Eq , Hash , TyEncodable , TyDecodable , PartialOrd , Ord ) ]
1185+ #[ derive( Copy , Clone , Debug , PartialEq , Eq , Hash , PartialOrd , Ord ) ]
1186+ #[ derive( HashStable , TyEncodable , TyDecodable ) ]
11861187pub struct Placeholder < T > {
11871188 pub universe : UniverseIndex ,
11881189 pub name : T ,
11891190}
11901191
1191- impl < ' a , T > HashStable < StableHashingContext < ' a > > for Placeholder < T >
1192- where
1193- T : HashStable < StableHashingContext < ' a > > ,
1194- {
1195- fn hash_stable ( & self , hcx : & mut StableHashingContext < ' a > , hasher : & mut StableHasher ) {
1196- self . universe . hash_stable ( hcx, hasher) ;
1197- self . name . hash_stable ( hcx, hasher) ;
1198- }
1199- }
1200-
12011192pub type PlaceholderRegion = Placeholder < BoundRegionKind > ;
12021193
12031194pub type PlaceholderType = Placeholder < BoundVar > ;
@@ -1581,6 +1572,7 @@ impl<'tcx> PolyTraitRef<'tcx> {
15811572}
15821573
15831574#[ derive( Copy , Clone , Debug , PartialEq , Eq , Hash , TypeFoldable , TypeVisitable ) ]
1575+ #[ derive( HashStable ) ]
15841576pub struct ParamEnvAnd < ' tcx , T > {
15851577 pub param_env : ParamEnv < ' tcx > ,
15861578 pub value : T ,
@@ -1598,18 +1590,6 @@ impl<'tcx, T> ParamEnvAnd<'tcx, T> {
15981590 }
15991591}
16001592
1601- impl < ' a , ' tcx , T > HashStable < StableHashingContext < ' a > > for ParamEnvAnd < ' tcx , T >
1602- where
1603- T : HashStable < StableHashingContext < ' a > > ,
1604- {
1605- fn hash_stable ( & self , hcx : & mut StableHashingContext < ' a > , hasher : & mut StableHasher ) {
1606- let ParamEnvAnd { ref param_env, ref value } = * self ;
1607-
1608- param_env. hash_stable ( hcx, hasher) ;
1609- value. hash_stable ( hcx, hasher) ;
1610- }
1611- }
1612-
16131593#[ derive( Copy , Clone , Debug , HashStable , Encodable , Decodable ) ]
16141594pub struct Destructor {
16151595 /// The `DefId` of the destructor method
0 commit comments