Skip to content

Commit 0d6ff60

Browse files
committed
---
yaml --- r: 96959 b: refs/heads/dist-snap c: 2612d76 h: refs/heads/master i: 96957: fe6c471 96955: 205bfac 96951: 963b8f4 96943: be4ffb2 96927: 324d241 96895: b1ab6ad v: v3
1 parent d0a23db commit 0d6ff60

File tree

3 files changed

+9
-6
lines changed

3 files changed

+9
-6
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ refs/heads/try: c274a6888410ce3e357e014568b43310ed787d36
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
88
refs/heads/try2: 147ecfdd8221e4a4d4e090486829a06da1e0ca3c
9-
refs/heads/dist-snap: 2ead970b215e2db865b00d48024c81d0052547eb
9+
refs/heads/dist-snap: 2612d76d2276d15e30c022426d2ae5222a080b83
1010
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596
1111
refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503
1212
refs/heads/try3: 9387340aab40a73e8424c48fd42f0c521a4875c0

branches/dist-snap/src/librustc/middle/ty.rs

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -303,7 +303,7 @@ struct ctxt_ {
303303
/// Despite its name, `items` does not only map NodeId to an item but
304304
/// also to expr/stmt/local/arg/etc
305305
items: ast_map::map,
306-
intrinsic_defs: @mut HashMap<ast::DefId, t>,
306+
intrinsic_defs: RefCell<HashMap<ast::DefId, t>>,
307307
freevars: freevars::freevar_map,
308308
tcache: type_cache,
309309
rcache: creader_cache,
@@ -989,7 +989,7 @@ pub fn mk_ctxt(s: session::Session,
989989
trait_refs: RefCell::new(HashMap::new()),
990990
trait_defs: RefCell::new(HashMap::new()),
991991
items: amap,
992-
intrinsic_defs: @mut HashMap::new(),
992+
intrinsic_defs: RefCell::new(HashMap::new()),
993993
freevars: freevars,
994994
tcache: @mut HashMap::new(),
995995
rcache: mk_rcache(),
@@ -4417,14 +4417,16 @@ pub fn count_traits_and_supertraits(tcx: ctxt,
44174417

44184418
pub fn get_tydesc_ty(tcx: ctxt) -> Result<t, ~str> {
44194419
tcx.lang_items.require(TyDescStructLangItem).map(|tydesc_lang_item| {
4420-
tcx.intrinsic_defs.find_copy(&tydesc_lang_item)
4420+
let intrinsic_defs = tcx.intrinsic_defs.borrow();
4421+
intrinsic_defs.get().find_copy(&tydesc_lang_item)
44214422
.expect("Failed to resolve TyDesc")
44224423
})
44234424
}
44244425

44254426
pub fn get_opaque_ty(tcx: ctxt) -> Result<t, ~str> {
44264427
tcx.lang_items.require(OpaqueStructLangItem).map(|opaque_lang_item| {
4427-
tcx.intrinsic_defs.find_copy(&opaque_lang_item)
4428+
let intrinsic_defs = tcx.intrinsic_defs.borrow();
4429+
intrinsic_defs.get().find_copy(&opaque_lang_item)
44284430
.expect("Failed to resolve Opaque")
44294431
})
44304432
}

branches/dist-snap/src/librustc/middle/typeck/collect.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,8 @@ pub fn collect_item_types(ccx: @mut CrateCtxt, crate: &ast::Crate) {
7676
lang_item: ast::DefId) {
7777
let ty::ty_param_bounds_and_ty { ty: ty, .. } =
7878
ccx.get_item_ty(lang_item);
79-
ccx.tcx.intrinsic_defs.insert(lang_item, ty);
79+
let mut intrinsic_defs = ccx.tcx.intrinsic_defs.borrow_mut();
80+
intrinsic_defs.get().insert(lang_item, ty);
8081
}
8182

8283
match ccx.tcx.lang_items.ty_desc() {

0 commit comments

Comments
 (0)