Skip to content

Commit 5fedef4

Browse files
committed
---
yaml --- r: 113633 b: refs/heads/snap-stage3 c: acfc99d h: refs/heads/master i: 113631: 6d5dc7c v: v3
1 parent 9133c55 commit 5fedef4

File tree

3 files changed

+19
-3
lines changed

3 files changed

+19
-3
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
refs/heads/master: abdacecdf86b4b5a4f432560445a24e1c5f4751b
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
4-
refs/heads/snap-stage3: eb6856c307ae8cff97c57f11be2cf04561e7f2eb
4+
refs/heads/snap-stage3: acfc99dddd26a318867d9e1602738619d097ac6f
55
refs/heads/try: 7c6c492fb2af9a85f21ff952942df3523b22fd17
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b

branches/snap-stage3/src/librustc/metadata/creader.rs

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ use back::svh::Svh;
1717
use driver::session::Session;
1818
use driver::{driver, config};
1919
use metadata::cstore;
20-
use metadata::cstore::CStore;
20+
use metadata::cstore::{CStore, CrateSource};
2121
use metadata::decoder;
2222
use metadata::loader;
2323
use metadata::loader::CratePaths;
@@ -68,10 +68,15 @@ impl<'a> visit::Visitor<()> for Env<'a> {
6868

6969
fn dump_crates(cstore: &CStore) {
7070
debug!("resolved crates:");
71-
cstore.iter_crate_data(|_, data| {
71+
cstore.iter_crate_data_origins(|_, data, opt_source| {
7272
debug!("crate_id: {}", data.crate_id());
7373
debug!(" cnum: {}", data.cnum);
7474
debug!(" hash: {}", data.hash());
75+
opt_source.map(|cs| {
76+
let CrateSource { dylib, rlib, cnum: _ } = cs;
77+
dylib.map(|dl| debug!(" dylib: {}", dl.display()));
78+
rlib.map(|rl| debug!(" rlib: {}", rl.display()));
79+
});
7580
})
7681
}
7782

branches/snap-stage3/src/librustc/metadata/cstore.rs

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,17 @@ impl CStore {
114114
}
115115
}
116116

117+
/// Like `iter_crate_data`, but passes source paths (if available) as well.
118+
pub fn iter_crate_data_origins(&self, i: |ast::CrateNum,
119+
&crate_metadata,
120+
Option<CrateSource>|) {
121+
for (&k, v) in self.metas.borrow().iter() {
122+
let origin = self.get_used_crate_source(k);
123+
origin.as_ref().map(|cs| { assert!(k == cs.cnum); });
124+
i(k, &**v, origin);
125+
}
126+
}
127+
117128
pub fn add_used_crate_source(&self, src: CrateSource) {
118129
let mut used_crate_sources = self.used_crate_sources.borrow_mut();
119130
if !used_crate_sources.contains(&src) {

0 commit comments

Comments
 (0)