Skip to content

Commit 29b7660

Browse files
committed
Move external crate/lib resolution to its own pass
The scope of external crate reading is beyond the resolve pass now, as it builds up tables of information needed for several different purposes.
1 parent 85535fc commit 29b7660

File tree

2 files changed

+2
-2
lines changed

2 files changed

+2
-2
lines changed

src/comp/driver/rustc.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,8 @@ fn compile_input(session::session sess, ast::crate_cfg cfg, str input,
112112
}
113113
auto ast_map = time(time_passes, "ast indexing",
114114
bind middle::ast_map::map_crate(*crate));
115+
time(time_passes, "external crate/lib resolution",
116+
bind creader::read_crates(sess, *crate));
115117
auto d =
116118
time(time_passes, "resolution",
117119
bind resolve::resolve_crate(sess, ast_map, crate));

src/comp/middle/resolve.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ import ast::def_id;
77
import ast::node_id;
88
import ast::local_def;
99

10-
import metadata::creader;
1110
import metadata::decoder;
1211
import metadata::cstore;
1312
import driver::session::session;
@@ -125,7 +124,6 @@ tag namespace { ns_value; ns_type; ns_module; }
125124

126125
fn resolve_crate(session sess, &ast_map::map amap, @ast::crate crate) ->
127126
tup(def_map, constr_table) {
128-
creader::read_crates(sess, *crate);
129127
auto e =
130128
@rec(crate_map=sess.get_cstore().use_crate_map,
131129
def_map=new_int_hash[def](),

0 commit comments

Comments
 (0)