71
71
return_place : & mir:: Place < ' tcx > ,
72
72
) {
73
73
let return_ty = return_place. ty ( * self . item . body , self . item . tcx ) . ty ;
74
- let qualif =
75
- Q :: in_call ( self . item , & |l| self . qualifs_per_local . contains ( l) , func, args, return_ty) ;
74
+ let qualif = Q :: in_call (
75
+ self . item ,
76
+ & mut |l| self . qualifs_per_local . contains ( l) ,
77
+ func,
78
+ args,
79
+ return_ty,
80
+ ) ;
76
81
if !return_place. is_indirect ( ) {
77
82
self . assign_qualif_direct ( return_place, qualif) ;
78
83
}
@@ -105,7 +110,7 @@ where
105
110
rvalue : & mir:: Rvalue < ' tcx > ,
106
111
location : Location ,
107
112
) {
108
- let qualif = Q :: in_rvalue ( self . item , & |l| self . qualifs_per_local . contains ( l) , rvalue) ;
113
+ let qualif = Q :: in_rvalue ( self . item , & mut |l| self . qualifs_per_local . contains ( l) , rvalue) ;
109
114
if !place. is_indirect ( ) {
110
115
self . assign_qualif_direct ( place, qualif) ;
111
116
}
@@ -120,7 +125,8 @@ where
120
125
// here; that occurs in `apply_call_return_effect`.
121
126
122
127
if let mir:: TerminatorKind :: DropAndReplace { value, location : dest, .. } = kind {
123
- let qualif = Q :: in_operand ( self . item , & |l| self . qualifs_per_local . contains ( l) , value) ;
128
+ let qualif =
129
+ Q :: in_operand ( self . item , & mut |l| self . qualifs_per_local . contains ( l) , value) ;
124
130
if !dest. is_indirect ( ) {
125
131
self . assign_qualif_direct ( dest, qualif) ;
126
132
}
0 commit comments