From bef2353e1bea928a7f99d09ed264da412686c5d1 Mon Sep 17 00:00:00 2001 From: Patrick Walton Date: Sat, 21 Dec 2013 13:46:08 -0800 Subject: [PATCH] librustc: De-`@mut` `IrMaps::var_kinds` --- src/librustc/middle/liveness.rs | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/librustc/middle/liveness.rs b/src/librustc/middle/liveness.rs index f754842c9f7d..4fea07a2f8c8 100644 --- a/src/librustc/middle/liveness.rs +++ b/src/librustc/middle/liveness.rs @@ -250,7 +250,7 @@ struct IrMaps { live_node_map: RefCell>, variable_map: RefCell>, capture_info_map: RefCell>, - var_kinds: ~[VarKind], + var_kinds: RefCell<~[VarKind]>, lnks: ~[LiveNodeKind], } @@ -267,7 +267,7 @@ fn IrMaps(tcx: ty::ctxt, live_node_map: RefCell::new(HashMap::new()), variable_map: RefCell::new(HashMap::new()), capture_info_map: RefCell::new(HashMap::new()), - var_kinds: ~[], + var_kinds: RefCell::new(~[]), lnks: ~[], } } @@ -297,7 +297,10 @@ impl IrMaps { pub fn add_variable(&mut self, vk: VarKind) -> Variable { let v = Variable(self.num_vars.get()); - self.var_kinds.push(vk); + { + let mut var_kinds = self.var_kinds.borrow_mut(); + var_kinds.get().push(vk); + } self.num_vars.set(self.num_vars.get() + 1); match vk { @@ -325,7 +328,8 @@ impl IrMaps { } pub fn variable_name(&mut self, var: Variable) -> @str { - match self.var_kinds[*var] { + let var_kinds = self.var_kinds.borrow(); + match var_kinds.get()[*var] { Local(LocalInfo { ident: nm, .. }) | Arg(_, nm) => { self.tcx.sess.str_of(nm) },