@@ -51,15 +51,15 @@ use crate::{
51
51
/// Similarly, at a given `drop` statement, the set-intersection
52
52
/// between this data and `MaybeUninitializedPlaces` yields the set of
53
53
/// places that would require a dynamic drop-flag at that statement.
54
- pub struct MaybeInitializedPlaces < ' a , ' mir , ' tcx > {
54
+ pub struct MaybeInitializedPlaces < ' mir , ' tcx > {
55
55
tcx : TyCtxt < ' tcx > ,
56
56
body : & ' mir Body < ' tcx > ,
57
- move_data : & ' a MoveData < ' tcx > ,
57
+ move_data : & ' mir MoveData < ' tcx > ,
58
58
skip_unreachable_unwind : bool ,
59
59
}
60
60
61
- impl < ' a , ' mir , ' tcx > MaybeInitializedPlaces < ' a , ' mir , ' tcx > {
62
- pub fn new ( tcx : TyCtxt < ' tcx > , body : & ' mir Body < ' tcx > , move_data : & ' a MoveData < ' tcx > ) -> Self {
61
+ impl < ' mir , ' tcx > MaybeInitializedPlaces < ' mir , ' tcx > {
62
+ pub fn new ( tcx : TyCtxt < ' tcx > , body : & ' mir Body < ' tcx > , move_data : & ' mir MoveData < ' tcx > ) -> Self {
63
63
MaybeInitializedPlaces { tcx, body, move_data, skip_unreachable_unwind : false }
64
64
}
65
65
@@ -85,7 +85,7 @@ impl<'a, 'mir, 'tcx> MaybeInitializedPlaces<'a, 'mir, 'tcx> {
85
85
}
86
86
}
87
87
88
- impl < ' a , ' mir , ' tcx > HasMoveData < ' tcx > for MaybeInitializedPlaces < ' a , ' mir , ' tcx > {
88
+ impl < ' mir , ' tcx > HasMoveData < ' tcx > for MaybeInitializedPlaces < ' mir , ' tcx > {
89
89
fn move_data ( & self ) -> & MoveData < ' tcx > {
90
90
self . move_data
91
91
}
@@ -126,17 +126,17 @@ impl<'a, 'mir, 'tcx> HasMoveData<'tcx> for MaybeInitializedPlaces<'a, 'mir, 'tcx
126
126
/// Similarly, at a given `drop` statement, the set-intersection
127
127
/// between this data and `MaybeInitializedPlaces` yields the set of
128
128
/// places that would require a dynamic drop-flag at that statement.
129
- pub struct MaybeUninitializedPlaces < ' a , ' mir , ' tcx > {
129
+ pub struct MaybeUninitializedPlaces < ' mir , ' tcx > {
130
130
tcx : TyCtxt < ' tcx > ,
131
131
body : & ' mir Body < ' tcx > ,
132
- move_data : & ' a MoveData < ' tcx > ,
132
+ move_data : & ' mir MoveData < ' tcx > ,
133
133
134
134
mark_inactive_variants_as_uninit : bool ,
135
135
skip_unreachable_unwind : BitSet < mir:: BasicBlock > ,
136
136
}
137
137
138
- impl < ' a , ' mir , ' tcx > MaybeUninitializedPlaces < ' a , ' mir , ' tcx > {
139
- pub fn new ( tcx : TyCtxt < ' tcx > , body : & ' mir Body < ' tcx > , move_data : & ' a MoveData < ' tcx > ) -> Self {
138
+ impl < ' mir , ' tcx > MaybeUninitializedPlaces < ' mir , ' tcx > {
139
+ pub fn new ( tcx : TyCtxt < ' tcx > , body : & ' mir Body < ' tcx > , move_data : & ' mir MoveData < ' tcx > ) -> Self {
140
140
MaybeUninitializedPlaces {
141
141
tcx,
142
142
body,
@@ -165,7 +165,7 @@ impl<'a, 'mir, 'tcx> MaybeUninitializedPlaces<'a, 'mir, 'tcx> {
165
165
}
166
166
}
167
167
168
- impl < ' a , ' tcx > HasMoveData < ' tcx > for MaybeUninitializedPlaces < ' a , ' _ , ' tcx > {
168
+ impl < ' tcx > HasMoveData < ' tcx > for MaybeUninitializedPlaces < ' _ , ' tcx > {
169
169
fn move_data ( & self ) -> & MoveData < ' tcx > {
170
170
self . move_data
171
171
}
@@ -205,18 +205,18 @@ impl<'a, 'tcx> HasMoveData<'tcx> for MaybeUninitializedPlaces<'a, '_, 'tcx> {
205
205
/// Similarly, at a given `drop` statement, the set-difference between
206
206
/// this data and `MaybeInitializedPlaces` yields the set of places
207
207
/// that would require a dynamic drop-flag at that statement.
208
- pub struct DefinitelyInitializedPlaces < ' a , ' tcx > {
209
- body : & ' a Body < ' tcx > ,
210
- move_data : & ' a MoveData < ' tcx > ,
208
+ pub struct DefinitelyInitializedPlaces < ' mir , ' tcx > {
209
+ body : & ' mir Body < ' tcx > ,
210
+ move_data : & ' mir MoveData < ' tcx > ,
211
211
}
212
212
213
- impl < ' a , ' tcx > DefinitelyInitializedPlaces < ' a , ' tcx > {
214
- pub fn new ( body : & ' a Body < ' tcx > , move_data : & ' a MoveData < ' tcx > ) -> Self {
213
+ impl < ' mir , ' tcx > DefinitelyInitializedPlaces < ' mir , ' tcx > {
214
+ pub fn new ( body : & ' mir Body < ' tcx > , move_data : & ' mir MoveData < ' tcx > ) -> Self {
215
215
DefinitelyInitializedPlaces { body, move_data }
216
216
}
217
217
}
218
218
219
- impl < ' a , ' tcx > HasMoveData < ' tcx > for DefinitelyInitializedPlaces < ' a , ' tcx > {
219
+ impl < ' mir , ' tcx > HasMoveData < ' tcx > for DefinitelyInitializedPlaces < ' mir , ' tcx > {
220
220
fn move_data ( & self ) -> & MoveData < ' tcx > {
221
221
self . move_data
222
222
}
@@ -251,24 +251,24 @@ impl<'a, 'tcx> HasMoveData<'tcx> for DefinitelyInitializedPlaces<'a, 'tcx> {
251
251
/// c = S; // {a, b, c, d }
252
252
/// }
253
253
/// ```
254
- pub struct EverInitializedPlaces < ' a , ' mir , ' tcx > {
254
+ pub struct EverInitializedPlaces < ' mir , ' tcx > {
255
255
body : & ' mir Body < ' tcx > ,
256
- move_data : & ' a MoveData < ' tcx > ,
256
+ move_data : & ' mir MoveData < ' tcx > ,
257
257
}
258
258
259
- impl < ' a , ' mir , ' tcx > EverInitializedPlaces < ' a , ' mir , ' tcx > {
260
- pub fn new ( body : & ' mir Body < ' tcx > , move_data : & ' a MoveData < ' tcx > ) -> Self {
259
+ impl < ' mir , ' tcx > EverInitializedPlaces < ' mir , ' tcx > {
260
+ pub fn new ( body : & ' mir Body < ' tcx > , move_data : & ' mir MoveData < ' tcx > ) -> Self {
261
261
EverInitializedPlaces { body, move_data }
262
262
}
263
263
}
264
264
265
- impl < ' a , ' tcx > HasMoveData < ' tcx > for EverInitializedPlaces < ' a , ' _ , ' tcx > {
265
+ impl < ' tcx > HasMoveData < ' tcx > for EverInitializedPlaces < ' _ , ' tcx > {
266
266
fn move_data ( & self ) -> & MoveData < ' tcx > {
267
267
self . move_data
268
268
}
269
269
}
270
270
271
- impl < ' a , ' mir , ' tcx > MaybeInitializedPlaces < ' a , ' mir , ' tcx > {
271
+ impl < ' mir , ' tcx > MaybeInitializedPlaces < ' mir , ' tcx > {
272
272
fn update_bits (
273
273
trans : & mut impl GenKill < MovePathIndex > ,
274
274
path : MovePathIndex ,
@@ -281,7 +281,7 @@ impl<'a, 'mir, 'tcx> MaybeInitializedPlaces<'a, 'mir, 'tcx> {
281
281
}
282
282
}
283
283
284
- impl < ' a , ' tcx > MaybeUninitializedPlaces < ' a , ' _ , ' tcx > {
284
+ impl < ' tcx > MaybeUninitializedPlaces < ' _ , ' tcx > {
285
285
fn update_bits (
286
286
trans : & mut impl GenKill < MovePathIndex > ,
287
287
path : MovePathIndex ,
@@ -294,7 +294,7 @@ impl<'a, 'tcx> MaybeUninitializedPlaces<'a, '_, 'tcx> {
294
294
}
295
295
}
296
296
297
- impl < ' a , ' tcx > DefinitelyInitializedPlaces < ' a , ' tcx > {
297
+ impl < ' mir , ' tcx > DefinitelyInitializedPlaces < ' mir , ' tcx > {
298
298
fn update_bits (
299
299
trans : & mut impl GenKill < MovePathIndex > ,
300
300
path : MovePathIndex ,
@@ -307,7 +307,7 @@ impl<'a, 'tcx> DefinitelyInitializedPlaces<'a, 'tcx> {
307
307
}
308
308
}
309
309
310
- impl < ' tcx > AnalysisDomain < ' tcx > for MaybeInitializedPlaces < ' _ , ' _ , ' tcx > {
310
+ impl < ' tcx > AnalysisDomain < ' tcx > for MaybeInitializedPlaces < ' _ , ' tcx > {
311
311
/// There can be many more `MovePathIndex` than there are locals in a MIR body.
312
312
/// We use a chunked bitset to avoid paying too high a memory footprint.
313
313
type Domain = MaybeReachable < ChunkedBitSet < MovePathIndex > > ;
@@ -329,7 +329,7 @@ impl<'tcx> AnalysisDomain<'tcx> for MaybeInitializedPlaces<'_, '_, 'tcx> {
329
329
}
330
330
}
331
331
332
- impl < ' tcx > GenKillAnalysis < ' tcx > for MaybeInitializedPlaces < ' _ , ' _ , ' tcx > {
332
+ impl < ' tcx > GenKillAnalysis < ' tcx > for MaybeInitializedPlaces < ' _ , ' tcx > {
333
333
type Idx = MovePathIndex ;
334
334
335
335
fn domain_size ( & self , _: & Body < ' tcx > ) -> usize {
@@ -442,7 +442,7 @@ impl<'tcx> GenKillAnalysis<'tcx> for MaybeInitializedPlaces<'_, '_, 'tcx> {
442
442
}
443
443
}
444
444
445
- impl < ' tcx > AnalysisDomain < ' tcx > for MaybeUninitializedPlaces < ' _ , ' _ , ' tcx > {
445
+ impl < ' tcx > AnalysisDomain < ' tcx > for MaybeUninitializedPlaces < ' _ , ' tcx > {
446
446
/// There can be many more `MovePathIndex` than there are locals in a MIR body.
447
447
/// We use a chunked bitset to avoid paying too high a memory footprint.
448
448
type Domain = ChunkedBitSet < MovePathIndex > ;
@@ -466,7 +466,7 @@ impl<'tcx> AnalysisDomain<'tcx> for MaybeUninitializedPlaces<'_, '_, 'tcx> {
466
466
}
467
467
}
468
468
469
- impl < ' tcx > GenKillAnalysis < ' tcx > for MaybeUninitializedPlaces < ' _ , ' _ , ' tcx > {
469
+ impl < ' tcx > GenKillAnalysis < ' tcx > for MaybeUninitializedPlaces < ' _ , ' tcx > {
470
470
type Idx = MovePathIndex ;
471
471
472
472
fn domain_size ( & self , _: & Body < ' tcx > ) -> usize {
@@ -571,7 +571,7 @@ impl<'tcx> GenKillAnalysis<'tcx> for MaybeUninitializedPlaces<'_, '_, 'tcx> {
571
571
}
572
572
}
573
573
574
- impl < ' a , ' tcx > AnalysisDomain < ' tcx > for DefinitelyInitializedPlaces < ' a , ' tcx > {
574
+ impl < ' mir , ' tcx > AnalysisDomain < ' tcx > for DefinitelyInitializedPlaces < ' mir , ' tcx > {
575
575
/// Use set intersection as the join operator.
576
576
type Domain = lattice:: Dual < BitSet < MovePathIndex > > ;
577
577
@@ -643,7 +643,7 @@ impl<'tcx> GenKillAnalysis<'tcx> for DefinitelyInitializedPlaces<'_, 'tcx> {
643
643
}
644
644
}
645
645
646
- impl < ' tcx > AnalysisDomain < ' tcx > for EverInitializedPlaces < ' _ , ' _ , ' tcx > {
646
+ impl < ' tcx > AnalysisDomain < ' tcx > for EverInitializedPlaces < ' _ , ' tcx > {
647
647
/// There can be many more `InitIndex` than there are locals in a MIR body.
648
648
/// We use a chunked bitset to avoid paying too high a memory footprint.
649
649
type Domain = ChunkedBitSet < InitIndex > ;
@@ -662,7 +662,7 @@ impl<'tcx> AnalysisDomain<'tcx> for EverInitializedPlaces<'_, '_, 'tcx> {
662
662
}
663
663
}
664
664
665
- impl < ' tcx > GenKillAnalysis < ' tcx > for EverInitializedPlaces < ' _ , ' _ , ' tcx > {
665
+ impl < ' tcx > GenKillAnalysis < ' tcx > for EverInitializedPlaces < ' _ , ' tcx > {
666
666
type Idx = InitIndex ;
667
667
668
668
fn domain_size ( & self , _: & Body < ' tcx > ) -> usize {
0 commit comments