diff options
Diffstat (limited to 'src/librustc_metadata/decoder.rs')
| -rw-r--r-- | src/librustc_metadata/decoder.rs | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/librustc_metadata/decoder.rs b/src/librustc_metadata/decoder.rs index b287db498fc..958c81989ff 100644 --- a/src/librustc_metadata/decoder.rs +++ b/src/librustc_metadata/decoder.rs @@ -1097,16 +1097,18 @@ impl<'a, 'tcx> CrateMetadata { } } - pub fn get_dylib_dependency_formats(&self) -> Vec<(CrateNum, LinkagePreference)> { - self.root + pub fn get_dylib_dependency_formats( + &self, + tcx: TyCtxt<'_, 'tcx, '_>, + ) -> &'tcx [(CrateNum, LinkagePreference)] { + tcx.arena.alloc_from_iter(self.root .dylib_dependency_formats .decode(self) .enumerate() .flat_map(|(i, link)| { let cnum = CrateNum::new(i + 1); link.map(|link| (self.cnum_map[cnum], link)) - }) - .collect() + })) } pub fn get_missing_lang_items( |
