Skip to content

Commit f312cc1

Browse files
committed
---
yaml --- r: 11351 b: refs/heads/master c: 4e44437 h: refs/heads/master i: 11349: 8493ae5 11347: 7a74f19 11343: e61f78f v: v3
1 parent 4eba907 commit f312cc1

File tree

3 files changed

+17
-8
lines changed

3 files changed

+17
-8
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
refs/heads/master: cec1679cf60304a0992c491ed39834b48c460337
2+
refs/heads/master: 4e4443718021f9fb82c70f87e67bc4ae5ef67233
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
44
refs/heads/snap-stage3: 4a81779abd786ff22d71434c6d9a5917ea4cdfff
55
refs/heads/try: 2898dcc5d97da9427ac367542382b6239d9c0bbf

trunk/src/comp/metadata/cstore.rs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ export get_used_libraries;
2020
export add_used_link_args;
2121
export get_used_link_args;
2222
export add_use_stmt_cnum;
23-
export get_use_stmt_cnum;
23+
export find_use_stmt_cnum;
2424
export get_dep_hashes;
2525
export get_path;
2626

@@ -131,8 +131,9 @@ fn add_use_stmt_cnum(cstore: cstore, use_id: ast::node_id,
131131
p(cstore).use_crate_map.insert(use_id, cnum);
132132
}
133133

134-
fn get_use_stmt_cnum(cstore: cstore, use_id: ast::node_id) -> ast::crate_num {
135-
ret p(cstore).use_crate_map.get(use_id);
134+
fn find_use_stmt_cnum(cstore: cstore,
135+
use_id: ast::node_id) -> option<ast::crate_num> {
136+
p(cstore).use_crate_map.find(use_id)
136137
}
137138

138139
// returns hashes of crates directly used by this crate. Hashes are

trunk/src/comp/middle/resolve.rs

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1285,9 +1285,17 @@ fn lookup_in_mod(e: env, m: def, sp: span, name: ident, ns: namespace,
12851285
}
12861286
}
12871287

1288-
fn found_view_item(e: env, id: node_id) -> def {
1289-
let cnum = cstore::get_use_stmt_cnum(e.cstore, id);
1290-
ret ast::def_mod({crate: cnum, node: ast::crate_node_id});
1288+
fn found_view_item(e: env, id: node_id) -> option<def> {
1289+
alt cstore::find_use_stmt_cnum(e.cstore, id) {
1290+
some(cnum) {
1291+
some(ast::def_mod({crate: cnum, node: ast::crate_node_id}))
1292+
}
1293+
none {
1294+
// This can happen if we didn't load external crate info.
1295+
// Rustdoc depends on this.
1296+
none
1297+
}
1298+
}
12911299
}
12921300

12931301
fn lookup_import(e: env, defid: def_id, ns: namespace) -> option<def> {
@@ -1418,7 +1426,7 @@ fn lookup_in_mie(e: env, mie: mod_index_entry, ns: namespace) ->
14181426
option<def> {
14191427
alt mie {
14201428
mie_view_item(_, id, _) {
1421-
if ns == ns_module { ret some(found_view_item(e, id)); }
1429+
if ns == ns_module { ret found_view_item(e, id); }
14221430
}
14231431
mie_import_ident(id, _) { ret lookup_import(e, local_def(id), ns); }
14241432
mie_item(item) { ret found_def_item(item, ns); }

0 commit comments

Comments
 (0)