@@ -216,6 +216,7 @@ use crate::creader::Library;
216
216
use crate :: rmeta:: { rustc_version, MetadataBlob , METADATA_HEADER } ;
217
217
218
218
use rustc_data_structures:: fx:: { FxHashMap , FxHashSet } ;
219
+ use rustc_data_structures:: memmap:: Mmap ;
219
220
use rustc_data_structures:: owning_ref:: OwningRef ;
220
221
use rustc_data_structures:: svh:: Svh ;
221
222
use rustc_data_structures:: sync:: MetadataRef ;
@@ -232,7 +233,6 @@ use rustc_target::spec::{Target, TargetTriple};
232
233
233
234
use snap:: read:: FrameDecoder ;
234
235
use std:: io:: { Read , Result as IoResult , Write } ;
235
- use std:: ops:: Deref ;
236
236
use std:: path:: { Path , PathBuf } ;
237
237
use std:: { cmp, fmt, fs} ;
238
238
use tracing:: { debug, info, warn} ;
@@ -727,19 +727,6 @@ impl<'a> CrateLocator<'a> {
727
727
}
728
728
}
729
729
730
- /// A trivial wrapper for `Mmap` that implements `StableDeref`.
731
- struct StableDerefMmap ( memmap2:: Mmap ) ;
732
-
733
- impl Deref for StableDerefMmap {
734
- type Target = [ u8 ] ;
735
-
736
- fn deref ( & self ) -> & [ u8 ] {
737
- self . 0 . deref ( )
738
- }
739
- }
740
-
741
- unsafe impl stable_deref_trait:: StableDeref for StableDerefMmap { }
742
-
743
730
fn get_metadata_section (
744
731
target : & Target ,
745
732
flavor : CrateFlavor ,
@@ -779,11 +766,11 @@ fn get_metadata_section(
779
766
// mmap the file, because only a small fraction of it is read.
780
767
let file = std:: fs:: File :: open ( filename)
781
768
. map_err ( |_| format ! ( "failed to open rmeta metadata: '{}'" , filename. display( ) ) ) ?;
782
- let mmap = unsafe { memmap2 :: Mmap :: map ( & file) } ;
769
+ let mmap = unsafe { Mmap :: map ( file) } ;
783
770
let mmap = mmap
784
771
. map_err ( |_| format ! ( "failed to mmap rmeta metadata: '{}'" , filename. display( ) ) ) ?;
785
772
786
- rustc_erase_owner ! ( OwningRef :: new( StableDerefMmap ( mmap) ) . map_owner_box( ) )
773
+ rustc_erase_owner ! ( OwningRef :: new( mmap) . map_owner_box( ) )
787
774
}
788
775
} ;
789
776
let blob = MetadataBlob :: new ( raw_bytes) ;
0 commit comments