aboutsummaryrefslogtreecommitdiff
path: root/src/comp/middle/resolve.rs
diff options
context:
space:
mode:
authorPatrick Walton <[email protected]>2011-03-25 11:10:50 -0700
committerPatrick Walton <[email protected]>2011-03-25 11:11:21 -0700
commite2d6475308481a43facb0e95e9535c5602bf54f2 (patch)
tree7953ea0a80b10457168af8a4e2411863bf6cc122 /src/comp/middle/resolve.rs
parentUpdate pretty printer for ports, channels, send and receive (diff)
downloadrust-e2d6475308481a43facb0e95e9535c5602bf54f2.tar.xz
rust-e2d6475308481a43facb0e95e9535c5602bf54f2.zip
rustc: Store cached crate metadata in the session
Diffstat (limited to 'src/comp/middle/resolve.rs')
-rw-r--r--src/comp/middle/resolve.rs14
1 files changed, 5 insertions, 9 deletions
diff --git a/src/comp/middle/resolve.rs b/src/comp/middle/resolve.rs
index fb357c53..2c378c8f 100644
--- a/src/comp/middle/resolve.rs
+++ b/src/comp/middle/resolve.rs
@@ -137,11 +137,10 @@ fn find_final_def(&env e, import_map index,
}
fn found_crate(&env e, &import_map index, &span sp,
- vec[ident] idents,
- @ast.external_crate_info cinfo) -> def_wrap {
+ vec[ident] idents, int cnum) -> def_wrap {
auto len = _vec.len[ident](idents);
auto rest_idents = _vec.slice[ident](idents, 1u, len);
- auto def = creader.lookup_def(sp, cinfo, rest_idents);
+ auto def = creader.lookup_def(e.sess, sp, cnum, rest_idents);
ret def_wrap_other(def);
}
@@ -171,12 +170,9 @@ fn find_final_def(&env e, import_map index,
}
case (def_wrap_use(?vi)) {
alt (vi.node) {
- case (ast.view_item_use(_, _, _, ?ann)) {
- alt (ann) {
- case (ast.ann_crate(?cinfo)) {
- ret found_crate(e, index, sp, idents, cinfo);
- }
- }
+ case (ast.view_item_use(_, _, _, ?cnum_opt)) {
+ auto cnum = option.get[int](cnum_opt);
+ ret found_crate(e, index, sp, idents, cnum);
}
}
}