diff options
Diffstat (limited to 'src/comp/middle')
| -rw-r--r-- | src/comp/middle/fold.rs | 11 | ||||
| -rw-r--r-- | src/comp/middle/resolve.rs | 14 |
2 files changed, 11 insertions, 14 deletions
diff --git a/src/comp/middle/fold.rs b/src/comp/middle/fold.rs index 9525e58b..da898f4d 100644 --- a/src/comp/middle/fold.rs +++ b/src/comp/middle/fold.rs @@ -265,7 +265,7 @@ type ast_fold[ENV] = // View Item folds. (fn(&ENV e, &span sp, ident ident, vec[@meta_item] meta_items, - def_id id, ann a) -> @view_item) fold_view_item_use, + def_id id, option.t[int]) -> @view_item) fold_view_item_use, (fn(&ENV e, &span sp, ident i, vec[ident] idents, def_id id, option.t[def]) -> @view_item) fold_view_item_import, @@ -883,9 +883,9 @@ fn fold_view_item[ENV](&ENV env, ast_fold[ENV] fld, @view_item vi) } alt (vi.node) { - case (ast.view_item_use(?ident, ?meta_items, ?def_id, ?ann)) { + case (ast.view_item_use(?ident, ?meta_items, ?def_id, ?cnum)) { ret fld.fold_view_item_use(env_, vi.span, ident, meta_items, - def_id, ann); + def_id, cnum); } case (ast.view_item_import(?def_ident, ?idents, ?def_id, ?target_def)) { @@ -1400,8 +1400,9 @@ fn identity_fold_item_obj[ENV](&ENV e, &span sp, ident i, fn identity_fold_view_item_use[ENV](&ENV e, &span sp, ident i, vec[@meta_item] meta_items, - def_id id, ann a) -> @view_item { - ret @respan(sp, ast.view_item_use(i, meta_items, id, a)); + def_id id, option.t[int] cnum) + -> @view_item { + ret @respan(sp, ast.view_item_use(i, meta_items, id, cnum)); } fn identity_fold_view_item_import[ENV](&ENV e, &span sp, ident i, 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); } } } |