@@ -2168,12 +2168,12 @@ impl<'a> LoweringContext<'a> {
2168
2168
// let result = match ::std::iter::IntoIterator::into_iter(<head>) {
2169
2169
// mut iter => {
2170
2170
// [opt_ident]: loop {
2171
- // let next ;
2171
+ // let mut _next ;
2172
2172
// match ::std::iter::Iterator::next(&mut iter) {
2173
- // ::std::option::Option::Some(val) => next = val,
2173
+ // ::std::option::Option::Some(val) => _next = val,
2174
2174
// ::std::option::Option::None => break
2175
2175
// };
2176
- // let <pat> = next ;
2176
+ // let <pat> = _next ;
2177
2177
// StmtExpr(<body>);
2178
2178
// }
2179
2179
// }
@@ -2186,8 +2186,8 @@ impl<'a> LoweringContext<'a> {
2186
2186
2187
2187
let iter = self . str_to_ident ( "iter" ) ;
2188
2188
2189
- let next_ident = self . str_to_ident ( "next " ) ;
2190
- let next_pat = self . pat_ident ( e. span , next_ident) ;
2189
+ let next_ident = self . str_to_ident ( "_next " ) ;
2190
+ let next_pat = self . pat_ident_binding_mode ( e. span , next_ident, hir :: BindByValue ( hir :: MutMutable ) ) ;
2191
2191
2192
2192
// `::std::option::Option::Some(val) => next = val`
2193
2193
let pat_arm = {
@@ -2233,13 +2233,13 @@ impl<'a> LoweringContext<'a> {
2233
2233
2234
2234
let next_expr = P ( self . expr_ident ( e. span , next_ident, next_pat. id ) ) ;
2235
2235
2236
- // `let next `
2236
+ // `let mut _next `
2237
2237
let next_let = self . stmt_let_pat ( e. span ,
2238
2238
None ,
2239
2239
next_pat,
2240
2240
hir:: LocalSource :: ForLoopDesugar ) ;
2241
2241
2242
- // `let <pat> = next `
2242
+ // `let <pat> = _next `
2243
2243
let pat = self . lower_pat ( pat) ;
2244
2244
let pat_let = self . stmt_let_pat ( e. span ,
2245
2245
Some ( next_expr) ,
0 commit comments