@@ -3510,10 +3510,9 @@ impl<'a, 'gcx, 'tcx> FnCtxt<'a, 'gcx, 'tcx> {
35103510 _ => span_bug ! ( span, "non-ADT passed to check_expr_struct_fields" )
35113511 } ;
35123512
3513- let mut remaining_fields = FxHashMap :: default ( ) ;
3514- for ( i, field) in variant. fields . iter ( ) . enumerate ( ) {
3515- remaining_fields. insert ( field. ident . modern ( ) , ( i, field) ) ;
3516- }
3513+ let mut remaining_fields = variant. fields . iter ( ) . enumerate ( ) . map ( |( i, field) |
3514+ ( field. ident . modern ( ) , ( i, field) )
3515+ ) . collect :: < FxHashMap < _ , _ > > ( ) ;
35173516
35183517 let mut seen_fields = FxHashMap :: default ( ) ;
35193518
@@ -5051,10 +5050,8 @@ impl<'a, 'gcx, 'tcx> FnCtxt<'a, 'gcx, 'tcx> {
50515050 // provided (if any) into their appropriate spaces. We'll also report
50525051 // errors if type parameters are provided in an inappropriate place.
50535052
5054- let mut generic_segs = FxHashSet :: default ( ) ;
5055- for PathSeg ( _, index) in & path_segs {
5056- generic_segs. insert ( index) ;
5057- }
5053+ let generic_segs = path_segs. iter ( ) . map ( |PathSeg ( _, index) | index)
5054+ . collect :: < FxHashSet < _ > > ( ) ;
50585055 AstConv :: prohibit_generics ( self , segments. iter ( ) . enumerate ( ) . filter_map ( |( index, seg) | {
50595056 if !generic_segs. contains ( & index) {
50605057 Some ( seg)
0 commit comments