@@ -6,7 +6,7 @@ use std::ops::{Deref, DerefMut};
6
6
use rustc_abi:: { ExternAbi , Size } ;
7
7
use rustc_apfloat:: Float ;
8
8
use rustc_apfloat:: ieee:: { Double , Half , Quad , Single } ;
9
- use rustc_data_structures:: fx:: { FxHashMap , FxIndexMap } ;
9
+ use rustc_data_structures:: fx:: { FxIndexMap , IndexEntry } ;
10
10
use rustc_data_structures:: unord:: UnordMap ;
11
11
use rustc_hir as hir;
12
12
use rustc_hir:: LangItem ;
@@ -3497,8 +3497,8 @@ pub fn trimmed_def_paths(tcx: TyCtxt<'_>, (): ()) -> DefIdMap<Symbol> {
3497
3497
3498
3498
// Once constructed, unique namespace+symbol pairs will have a `Some(_)` entry, while
3499
3499
// non-unique pairs will have a `None` entry.
3500
- let unique_symbols_rev: & mut FxHashMap < ( Namespace , Symbol ) , Option < DefId > > =
3501
- & mut FxHashMap :: default ( ) ;
3500
+ let unique_symbols_rev: & mut FxIndexMap < ( Namespace , Symbol ) , Option < DefId > > =
3501
+ & mut FxIndexMap :: default ( ) ;
3502
3502
3503
3503
for symbol_set in tcx. resolutions ( ( ) ) . glob_map . values ( ) {
3504
3504
for symbol in symbol_set {
@@ -3508,27 +3508,23 @@ pub fn trimmed_def_paths(tcx: TyCtxt<'_>, (): ()) -> DefIdMap<Symbol> {
3508
3508
}
3509
3509
}
3510
3510
3511
- for_each_def ( tcx, |ident, ns, def_id| {
3512
- use std:: collections:: hash_map:: Entry :: { Occupied , Vacant } ;
3513
-
3514
- match unique_symbols_rev. entry ( ( ns, ident. name ) ) {
3515
- Occupied ( mut v) => match v. get ( ) {
3516
- None => { }
3517
- Some ( existing) => {
3518
- if * existing != def_id {
3519
- v. insert ( None ) ;
3520
- }
3511
+ for_each_def ( tcx, |ident, ns, def_id| match unique_symbols_rev. entry ( ( ns, ident. name ) ) {
3512
+ IndexEntry :: Occupied ( mut v) => match v. get ( ) {
3513
+ None => { }
3514
+ Some ( existing) => {
3515
+ if * existing != def_id {
3516
+ v. insert ( None ) ;
3521
3517
}
3522
- } ,
3523
- Vacant ( v) => {
3524
- v. insert ( Some ( def_id) ) ;
3525
3518
}
3519
+ } ,
3520
+ IndexEntry :: Vacant ( v) => {
3521
+ v. insert ( Some ( def_id) ) ;
3526
3522
}
3527
3523
} ) ;
3528
3524
3529
3525
// Put the symbol from all the unique namespace+symbol pairs into `map`.
3530
3526
let mut map: DefIdMap < Symbol > = Default :: default ( ) ;
3531
- for ( ( _, symbol) , opt_def_id) in unique_symbols_rev. drain ( ) {
3527
+ for ( ( _, symbol) , opt_def_id) in unique_symbols_rev. drain ( .. ) {
3532
3528
use std:: collections:: hash_map:: Entry :: { Occupied , Vacant } ;
3533
3529
3534
3530
if let Some ( def_id) = opt_def_id {
0 commit comments