Skip to content

Commit

Permalink
Remove dead code
Browse files Browse the repository at this point in the history
  • Loading branch information
Mark-Simulacrum committed Aug 1, 2018
1 parent f390917 commit 8592039
Show file tree
Hide file tree
Showing 6 changed files with 16 additions and 67 deletions.
5 changes: 1 addition & 4 deletions src/librustc_borrowck/borrowck/check_loans.rs
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,6 @@ struct CheckLoanCtxt<'a, 'tcx: 'a> {
dfcx_loans: &'a LoanDataFlow<'a, 'tcx>,
move_data: &'a move_data::FlowedMoveData<'a, 'tcx>,
all_loans: &'a [Loan<'tcx>],
param_env: ty::ParamEnv<'tcx>,
movable_generator: bool,
}

Expand Down Expand Up @@ -215,7 +214,6 @@ pub fn check_loans<'a, 'b, 'c, 'tcx>(bccx: &BorrowckCtxt<'a, 'tcx>,
dfcx_loans,
move_data,
all_loans,
param_env,
movable_generator,
};
let rvalue_promotable_map = bccx.tcx.rvalue_promotable_map(def_id);
Expand Down Expand Up @@ -801,8 +799,7 @@ impl<'a, 'tcx> CheckLoanCtxt<'a, 'tcx> {
use_kind,
&lp,
the_move,
moved_lp,
self.param_env);
moved_lp);
false
});
}
Expand Down
8 changes: 2 additions & 6 deletions src/librustc_borrowck/borrowck/gather_loans/gather_moves.rs
Original file line number Diff line number Diff line change
Expand Up @@ -163,15 +163,11 @@ pub fn gather_assignment<'a, 'tcx>(bccx: &BorrowckCtxt<'a, 'tcx>,
move_data: &MoveData<'tcx>,
assignment_id: hir::ItemLocalId,
assignment_span: Span,
assignee_loan_path: Rc<LoanPath<'tcx>>,
assignee_id: hir::ItemLocalId,
mode: euv::MutateMode) {
assignee_loan_path: Rc<LoanPath<'tcx>>) {
move_data.add_assignment(bccx.tcx,
assignee_loan_path,
assignment_id,
assignment_span,
assignee_id,
mode);
assignment_span);
}

// (keep in sync with move_error::report_cannot_move_out_of )
Expand Down
3 changes: 1 addition & 2 deletions src/librustc_borrowck/borrowck/gather_loans/lifetime.rs
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,7 @@ pub fn guarantee_lifetime<'a, 'tcx>(bccx: &BorrowckCtxt<'a, 'tcx>,
span: Span,
cause: euv::LoanCause,
cmt: &'a mc::cmt_<'tcx>,
loan_region: ty::Region<'tcx>,
_: ty::BorrowKind)
loan_region: ty::Region<'tcx>)
-> Result<(),()> {
//! Reports error if `loan_region` is larger than S
//! where S is `item_scope` if `cmt` is an upvar,
Expand Down
14 changes: 5 additions & 9 deletions src/librustc_borrowck/borrowck/gather_loans/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -145,12 +145,11 @@ impl<'a, 'tcx> euv::Delegate<'tcx> for GatherLoanCtxt<'a, 'tcx> {
assignment_id: ast::NodeId,
assignment_span: Span,
assignee_cmt: &mc::cmt_<'tcx>,
mode: euv::MutateMode)
_: euv::MutateMode)
{
self.guarantee_assignment_valid(assignment_id,
assignment_span,
assignee_cmt,
mode);
assignee_cmt);
}

fn decl_without_init(&mut self, id: ast::NodeId, _span: Span) {
Expand Down Expand Up @@ -246,8 +245,7 @@ impl<'a, 'tcx> GatherLoanCtxt<'a, 'tcx> {
fn guarantee_assignment_valid(&mut self,
assignment_id: ast::NodeId,
assignment_span: Span,
cmt: &mc::cmt_<'tcx>,
mode: euv::MutateMode) {
cmt: &mc::cmt_<'tcx>) {

let opt_lp = opt_loan_path(cmt);
debug!("guarantee_assignment_valid(assignment_id={}, cmt={:?}) opt_lp={:?}",
Expand Down Expand Up @@ -282,9 +280,7 @@ impl<'a, 'tcx> GatherLoanCtxt<'a, 'tcx> {
self.bccx.tcx.hir.node_to_hir_id(assignment_id)
.local_id,
assignment_span,
lp,
cmt.hir_id.local_id,
mode);
lp);
}
None => {
// This can occur with e.g. `*foo() = 5`. In such
Expand Down Expand Up @@ -320,7 +316,7 @@ impl<'a, 'tcx> GatherLoanCtxt<'a, 'tcx> {
// Check that the lifetime of the borrow does not exceed
// the lifetime of the data being borrowed.
if lifetime::guarantee_lifetime(self.bccx, self.item_ub,
borrow_span, cause, cmt, loan_region, req_kind).is_err() {
borrow_span, cause, cmt, loan_region).is_err() {
return; // reported an error, no sense in reporting more.
}

Expand Down
20 changes: 1 addition & 19 deletions src/librustc_borrowck/borrowck/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -638,8 +638,7 @@ impl<'a, 'tcx> BorrowckCtxt<'a, 'tcx> {
use_kind: MovedValueUseKind,
lp: &LoanPath<'tcx>,
the_move: &move_data::Move,
moved_lp: &LoanPath<'tcx>,
_param_env: ty::ParamEnv<'tcx>) {
moved_lp: &LoanPath<'tcx>) {
let (verb, verb_participle) = match use_kind {
MovedInUse => ("use", "used"),
MovedInCapture => ("capture", "captured"),
Expand Down Expand Up @@ -804,23 +803,6 @@ impl<'a, 'tcx> BorrowckCtxt<'a, 'tcx> {
self.signal_error();
}

pub fn struct_span_err_with_code<S: Into<MultiSpan>>(&self,
s: S,
msg: &str,
code: DiagnosticId)
-> DiagnosticBuilder<'a> {
self.tcx.sess.struct_span_err_with_code(s, msg, code)
}

pub fn span_err_with_code<S: Into<MultiSpan>>(
&self,
s: S,
msg: &str,
code: DiagnosticId,
) {
self.tcx.sess.span_err_with_code(s, msg, code);
}

fn report_bckerr(&self, err: &BckError<'a, 'tcx>) {
let error_span = err.span.clone();

Expand Down
33 changes: 6 additions & 27 deletions src/librustc_borrowck/borrowck/move_data.rs
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,8 @@ use dataflow::{DataFlowContext, BitwiseOperator, DataFlowOperator, KillFrom};

use borrowck::*;
use rustc::cfg;
use rustc::middle::expr_use_visitor as euv;
use rustc::middle::expr_use_visitor::MutateMode;
use rustc::ty::{self, TyCtxt};
use rustc::util::nodemap::{FxHashMap, FxHashSet};
use rustc::util::nodemap::FxHashMap;

use std::cell::RefCell;
use std::rc::Rc;
Expand Down Expand Up @@ -49,9 +47,6 @@ pub struct MoveData<'tcx> {
/// assigned dataflow bits, but we track them because they still
/// kill move bits.
pub path_assignments: RefCell<Vec<Assignment>>,

/// Assignments to a variable or path, like `x = foo`, but not `x += foo`.
pub assignee_ids: RefCell<FxHashSet<hir::ItemLocalId>>,
}

pub struct FlowedMoveData<'a, 'tcx: 'a> {
Expand Down Expand Up @@ -149,9 +144,6 @@ pub struct Assignment {

/// span of node where assignment occurs
pub span: Span,

/// id for place expression on lhs of assignment
pub assignee_id: hir::ItemLocalId,
}

#[derive(Clone, Copy)]
Expand Down Expand Up @@ -386,9 +378,7 @@ impl<'a, 'tcx> MoveData<'tcx> {
pub fn add_assignment(&self, tcx: TyCtxt<'a, 'tcx, 'tcx>,
lp: Rc<LoanPath<'tcx>>,
assign_id: hir::ItemLocalId,
span: Span,
assignee_id: hir::ItemLocalId,
mode: euv::MutateMode) {
span: Span) {
// Assigning to one union field automatically assigns to all its fields.
if let LpExtend(ref base_lp, mutbl, LpInterior(opt_variant_id, interior)) = lp.kind {
if let ty::TyAdt(adt_def, _) = base_lp.ty.sty {
Expand All @@ -405,39 +395,28 @@ impl<'a, 'tcx> MoveData<'tcx> {
LpInterior(opt_variant_id, field));
let sibling_lp = Rc::new(LoanPath::new(sibling_lp_kind, field_ty));
self.add_assignment_helper(tcx, sibling_lp, assign_id,
span, assignee_id, mode);
span);
}
return;
}
}
}

self.add_assignment_helper(tcx, lp.clone(), assign_id, span, assignee_id, mode);
self.add_assignment_helper(tcx, lp.clone(), assign_id, span);
}

fn add_assignment_helper(&self, tcx: TyCtxt<'a, 'tcx, 'tcx>,
lp: Rc<LoanPath<'tcx>>,
assign_id: hir::ItemLocalId,
span: Span,
assignee_id: hir::ItemLocalId,
mode: euv::MutateMode) {
debug!("add_assignment(lp={:?}, assign_id={:?}, assignee_id={:?}",
lp, assign_id, assignee_id);
span: Span) {
debug!("add_assignment(lp={:?}, assign_id={:?}", lp, assign_id);

let path_index = self.move_path(tcx, lp.clone());

match mode {
MutateMode::Init | MutateMode::JustWrite => {
self.assignee_ids.borrow_mut().insert(assignee_id);
}
MutateMode::WriteAndRead => { }
}

let assignment = Assignment {
path: path_index,
id: assign_id,
span,
assignee_id,
};

if self.is_var_path(path_index) {
Expand Down

0 comments on commit 8592039

Please sign in to comment.