@@ -193,51 +193,18 @@ for mir::TerminatorKind<'gcx> {
193
193
194
194
impl_stable_hash_for ! ( struct mir:: Statement <' tcx> { source_info, kind } ) ;
195
195
196
- impl < ' a , ' gcx > HashStable < StableHashingContext < ' a > >
197
- for mir:: StatementKind < ' gcx > {
198
- fn hash_stable < W : StableHasherResult > ( & self ,
199
- hcx : & mut StableHashingContext < ' a > ,
200
- hasher : & mut StableHasher < W > ) {
201
- mem:: discriminant ( self ) . hash_stable ( hcx, hasher) ;
202
-
203
- match * self {
204
- mir:: StatementKind :: Assign ( ref place, ref rvalue) => {
205
- place. hash_stable ( hcx, hasher) ;
206
- rvalue. hash_stable ( hcx, hasher) ;
207
- }
208
- mir:: StatementKind :: FakeRead ( ref cause, ref place) => {
209
- cause. hash_stable ( hcx, hasher) ;
210
- place. hash_stable ( hcx, hasher) ;
211
- }
212
- mir:: StatementKind :: SetDiscriminant { ref place, variant_index } => {
213
- place. hash_stable ( hcx, hasher) ;
214
- variant_index. hash_stable ( hcx, hasher) ;
215
- }
216
- mir:: StatementKind :: StorageLive ( ref place) |
217
- mir:: StatementKind :: StorageDead ( ref place) => {
218
- place. hash_stable ( hcx, hasher) ;
219
- }
220
- mir:: StatementKind :: EscapeToRaw ( ref place) => {
221
- place. hash_stable ( hcx, hasher) ;
222
- }
223
- mir:: StatementKind :: Retag { fn_entry, ref place } => {
224
- fn_entry. hash_stable ( hcx, hasher) ;
225
- place. hash_stable ( hcx, hasher) ;
226
- }
227
- mir:: StatementKind :: AscribeUserType ( ref place, ref variance, ref c_ty) => {
228
- place. hash_stable ( hcx, hasher) ;
229
- variance. hash_stable ( hcx, hasher) ;
230
- c_ty. hash_stable ( hcx, hasher) ;
231
- }
232
- mir:: StatementKind :: Nop => { }
233
- mir:: StatementKind :: InlineAsm { ref asm, ref outputs, ref inputs } => {
234
- asm. hash_stable ( hcx, hasher) ;
235
- outputs. hash_stable ( hcx, hasher) ;
236
- inputs. hash_stable ( hcx, hasher) ;
237
- }
238
- }
239
- }
240
- }
196
+ impl_stable_hash_for ! ( impl <' gcx> for enum mir:: StatementKind <' gcx> [ mir:: StatementKind ] {
197
+ Assign ( place, rvalue) ,
198
+ FakeRead ( cause, place) ,
199
+ SetDiscriminant { place, variant_index } ,
200
+ StorageLive ( place) ,
201
+ StorageDead ( place) ,
202
+ EscapeToRaw ( place) ,
203
+ Retag { fn_entry, two_phase, place } ,
204
+ AscribeUserType ( place, variance, c_ty) ,
205
+ Nop ,
206
+ InlineAsm { asm, outputs, inputs } ,
207
+ } ) ;
241
208
242
209
impl_stable_hash_for ! ( enum mir:: FakeReadCause { ForMatchGuard , ForMatchedPlace , ForLet } ) ;
243
210
0 commit comments