From 2d1dec78e7fd2fa0a569f797d147d5940e81f3d0 Mon Sep 17 00:00:00 2001 From: Marijn Haverbeke Date: Wed, 31 Aug 2011 18:45:37 +0200 Subject: Move mutability checking into its own pass. Having it in the alias pass was slightly more efficient (finding expression roots has to be done in both passes), but further muddled up the already complex alias checker. Also factors out some duplication in the mutability-checking code. --- src/comp/driver/rustc.rs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/comp/driver') diff --git a/src/comp/driver/rustc.rs b/src/comp/driver/rustc.rs index f3e80344f53..c281fc6a9b6 100644 --- a/src/comp/driver/rustc.rs +++ b/src/comp/driver/rustc.rs @@ -165,8 +165,10 @@ fn compile_input(sess: session::session, cfg: ast::crate_cfg, input: &istr, time(time_passes, ~"typestate checking", bind middle::tstate::ck::check_crate(ty_cx, crate)); } - let mut_map = time(time_passes, ~"alias checking", - bind middle::alias::check_crate(ty_cx, crate)); + let mut_map = time(time_passes, ~"mutability checking", + bind middle::mut::check_crate(ty_cx, crate)); + time(time_passes, ~"alias checking", + bind middle::alias::check_crate(ty_cx, crate)); time(time_passes, ~"kind checking", bind kind::check_crate(ty_cx, crate)); if sess.get_opts().no_trans { ret; } -- cgit 1.4.1-3-g733a5