@@ -1639,9 +1639,10 @@ impl<'a: 'ast, 'ast, 'tcx> LateResolutionVisitor<'a, '_, 'ast, 'tcx> {
1639
1639
} else {
1640
1640
3
1641
1641
} ;
1642
- return Some ( ( order, item. name ) ) ;
1642
+ Some ( ( order, item. name ) )
1643
+ } else {
1644
+ None
1643
1645
}
1644
- None
1645
1646
} )
1646
1647
. collect :: < Vec < _ > > ( ) ;
1647
1648
items. sort_by_key ( |( order, _) | * order) ;
@@ -2147,11 +2148,12 @@ impl<'a: 'ast, 'ast, 'tcx> LateResolutionVisitor<'a, '_, 'ast, 'tcx> {
2147
2148
if suggest_only_tuple_variants {
2148
2149
// Suggest only tuple variants regardless of whether they have fields and do not
2149
2150
// suggest path with added parentheses.
2150
- let suggestable_variants = variants
2151
+ let mut suggestable_variants = variants
2151
2152
. iter ( )
2152
2153
. filter ( |( .., kind) | * kind == CtorKind :: Fn )
2153
2154
. map ( |( variant, ..) | path_names_to_string ( variant) )
2154
2155
. collect :: < Vec < _ > > ( ) ;
2156
+ suggestable_variants. sort ( ) ;
2155
2157
2156
2158
let non_suggestable_variant_count = variants. len ( ) - suggestable_variants. len ( ) ;
2157
2159
@@ -2202,7 +2204,7 @@ impl<'a: 'ast, 'ast, 'tcx> LateResolutionVisitor<'a, '_, 'ast, 'tcx> {
2202
2204
}
2203
2205
} ;
2204
2206
2205
- let suggestable_variants = variants
2207
+ let mut suggestable_variants = variants
2206
2208
. iter ( )
2207
2209
. filter ( |( _, def_id, kind) | !needs_placeholder ( * def_id, * kind) )
2208
2210
. map ( |( variant, _, kind) | ( path_names_to_string ( variant) , kind) )
@@ -2211,6 +2213,7 @@ impl<'a: 'ast, 'ast, 'tcx> LateResolutionVisitor<'a, '_, 'ast, 'tcx> {
2211
2213
CtorKind :: Fn => format ! ( "({variant}())" ) ,
2212
2214
} )
2213
2215
. collect :: < Vec < _ > > ( ) ;
2216
+ suggestable_variants. sort ( ) ;
2214
2217
let no_suggestable_variant = suggestable_variants. is_empty ( ) ;
2215
2218
2216
2219
if !no_suggestable_variant {
@@ -2228,7 +2231,7 @@ impl<'a: 'ast, 'ast, 'tcx> LateResolutionVisitor<'a, '_, 'ast, 'tcx> {
2228
2231
) ;
2229
2232
}
2230
2233
2231
- let suggestable_variants_with_placeholders = variants
2234
+ let mut suggestable_variants_with_placeholders = variants
2232
2235
. iter ( )
2233
2236
. filter ( |( _, def_id, kind) | needs_placeholder ( * def_id, * kind) )
2234
2237
. map ( |( variant, _, kind) | ( path_names_to_string ( variant) , kind) )
@@ -2237,6 +2240,7 @@ impl<'a: 'ast, 'ast, 'tcx> LateResolutionVisitor<'a, '_, 'ast, 'tcx> {
2237
2240
_ => None ,
2238
2241
} )
2239
2242
. collect :: < Vec < _ > > ( ) ;
2243
+ suggestable_variants_with_placeholders. sort ( ) ;
2240
2244
2241
2245
if !suggestable_variants_with_placeholders. is_empty ( ) {
2242
2246
let msg =
0 commit comments