about summary refs log tree commit diff
diff options
context:
space:
mode:
authorFelix S. Klock II <pnkfelix@pnkfx.org>2017-08-21 11:04:15 +0200
committerFelix S. Klock II <pnkfelix@pnkfx.org>2017-08-21 12:49:18 +0200
commitc280afcc1c6b7c14218bf2a8322ebb3ac692485a (patch)
tree2540e22ad1ba49967482c93c3dc06798f4abc1a5
parent4da2a88abc99eebbc5bdbfd8aada728982a262d7 (diff)
downloadrust-c280afcc1c6b7c14218bf2a8322ebb3ac692485a.tar.gz
rust-c280afcc1c6b7c14218bf2a8322ebb3ac692485a.zip
Remove the `rustc_mir::transform` entry point for mir-borrowck.
-rw-r--r--src/librustc_driver/driver.rs4
-rw-r--r--src/librustc_mir/transform/borrow_check.rs25
2 files changed, 1 insertions, 28 deletions
diff --git a/src/librustc_driver/driver.rs b/src/librustc_driver/driver.rs
index 011c769519a..246fc7fc524 100644
--- a/src/librustc_driver/driver.rs
+++ b/src/librustc_driver/driver.rs
@@ -983,10 +983,6 @@ pub fn phase_3_run_analysis_passes<'tcx, F, R>(sess: &'tcx Session,
 
     // borrowck runs between MIR_VALIDATED and MIR_OPTIMIZED.
 
-    // FIXME: niko says this should be a query (see rustc::ty::maps)
-    // instead of a pass.
-    passes.push_pass(MIR_VALIDATED, mir::transform::borrow_check::BorrowckMir);
-
     // These next passes must be executed together
     passes.push_pass(MIR_OPTIMIZED, mir::transform::no_landing_pads::NoLandingPads);
     passes.push_pass(MIR_OPTIMIZED, mir::transform::add_call_guards::CriticalCallEdges);
diff --git a/src/librustc_mir/transform/borrow_check.rs b/src/librustc_mir/transform/borrow_check.rs
index c5333134a68..c8e3dfedd76 100644
--- a/src/librustc_mir/transform/borrow_check.rs
+++ b/src/librustc_mir/transform/borrow_check.rs
@@ -15,7 +15,7 @@ use rustc::ty::{self, TyCtxt, ParamEnv};
 use rustc::mir::{AssertMessage, BasicBlock, BorrowKind, Location, Lvalue};
 use rustc::mir::{Mir, Mutability, Operand, Projection, ProjectionElem, Rvalue};
 use rustc::mir::{Statement, StatementKind, Terminator, TerminatorKind};
-use rustc::mir::transform::{MirPass, MirSource};
+use rustc::mir::transform::{MirSource};
 
 use rustc_data_structures::indexed_set::{self, IdxSetBuf};
 use rustc_data_structures::indexed_vec::{Idx};
@@ -34,29 +34,6 @@ use util::borrowck_errors::{BorrowckErrors, Origin};
 use self::MutateMode::{JustWrite, WriteAndRead};
 use self::ConsumeKind::{Consume};
 
-pub struct BorrowckMir;
-
-impl MirPass for BorrowckMir {
-    fn run_pass<'a, 'tcx>(&self, tcx: TyCtxt<'a, 'tcx, 'tcx>, src: MirSource, mir: &mut Mir<'tcx>) {
-
-        // let err_count = tcx.sess.err_count();
-        // if err_count > 0 {
-        //     // compiling a broken program can obviously result in a
-        //     // broken MIR, so try not to report duplicate errors.
-        //     debug!("skipping BorrowckMir: {} due to {} previous errors",
-        //            tcx.node_path_str(src.item_id()), err_count);
-        //     return;
-        // }
-
-        debug!("run_pass BorrowckMir: {}", tcx.node_path_str(src.item_id()));
-
-        let def_id = tcx.hir.local_def_id(src.item_id());
-        if tcx.has_attr(def_id, "rustc_mir_borrowck") || tcx.sess.opts.debugging_opts.borrowck_mir {
-            borrowck_mir(tcx, src, mir);
-        }
-    }
-}
-
 pub(crate) fn borrowck_mir<'a, 'tcx>(tcx: TyCtxt<'a, 'tcx, 'tcx>, src: MirSource, mir: &Mir<'tcx>)
 {
     let id = src.item_id();