diff --git a/Cargo.lock b/Cargo.lock index b05351a1e9694..d6c6bffa95835 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3500,6 +3500,7 @@ dependencies = [ "rustc_lexer", "rustc_middle", "rustc_mir_dataflow", + "rustc_mir_transform", "rustc_serialize", "rustc_session", "rustc_span", diff --git a/compiler/rustc_borrowck/Cargo.toml b/compiler/rustc_borrowck/Cargo.toml index eb2fdbd07967d..0c7bdd3ead59e 100644 --- a/compiler/rustc_borrowck/Cargo.toml +++ b/compiler/rustc_borrowck/Cargo.toml @@ -22,6 +22,7 @@ rustc_lexer = { path = "../rustc_lexer" } rustc_middle = { path = "../rustc_middle" } rustc_const_eval = { path = "../rustc_const_eval" } rustc_mir_dataflow = { path = "../rustc_mir_dataflow" } +rustc_mir_transform = { path = "../rustc_mir_transform" } rustc_serialize = { path = "../rustc_serialize" } rustc_session = { path = "../rustc_session" } rustc_target = { path = "../rustc_target" } diff --git a/compiler/rustc_borrowck/src/diagnostics/conflict_errors.rs b/compiler/rustc_borrowck/src/diagnostics/conflict_errors.rs index ba111d394ec26..ddd5df55b5353 100644 --- a/compiler/rustc_borrowck/src/diagnostics/conflict_errors.rs +++ b/compiler/rustc_borrowck/src/diagnostics/conflict_errors.rs @@ -1846,7 +1846,7 @@ impl<'cx, 'tcx> MirBorrowckCtxt<'cx, 'tcx> { Some((method_did, method_substs)), ) = ( &self.body[loan.reserve_location.block].terminator, - rustc_const_eval::util::find_self_call( + rustc_mir_transform::util::find_self_call( tcx, self.body, loan.assigned_place.local, diff --git a/compiler/rustc_borrowck/src/diagnostics/mod.rs b/compiler/rustc_borrowck/src/diagnostics/mod.rs index 84acfbf941d05..5770d8467c687 100644 --- a/compiler/rustc_borrowck/src/diagnostics/mod.rs +++ b/compiler/rustc_borrowck/src/diagnostics/mod.rs @@ -893,7 +893,7 @@ impl<'cx, 'tcx> MirBorrowckCtxt<'cx, 'tcx> { }) = &self.body[location.block].terminator { let (method_did, method_substs) = if let Some(info) = - rustc_const_eval::util::find_self_call( + rustc_mir_transform::util::find_self_call( self.infcx.tcx, &self.body, target_temp, diff --git a/compiler/rustc_borrowck/src/diagnostics/mutability_errors.rs b/compiler/rustc_borrowck/src/diagnostics/mutability_errors.rs index 8ed50075ecbae..af5348220ff93 100644 --- a/compiler/rustc_borrowck/src/diagnostics/mutability_errors.rs +++ b/compiler/rustc_borrowck/src/diagnostics/mutability_errors.rs @@ -16,8 +16,8 @@ use rustc_span::{BytePos, Span}; use crate::diagnostics::BorrowedContentSource; use crate::MirBorrowckCtxt; -use rustc_const_eval::util::collect_writes::FindAssignments; use rustc_errors::{Applicability, DiagnosticBuilder}; +use rustc_mir_transform::util::collect_writes::FindAssignments; #[derive(Copy, Clone, Debug, Eq, PartialEq)] pub(crate) enum AccessKind { diff --git a/compiler/rustc_const_eval/src/lib.rs b/compiler/rustc_const_eval/src/lib.rs index 92854af55bbf3..e64c7a50c8e72 100644 --- a/compiler/rustc_const_eval/src/lib.rs +++ b/compiler/rustc_const_eval/src/lib.rs @@ -18,8 +18,6 @@ Rust MIR: a lowered representation of Rust. #![feature(option_get_or_insert_default)] #![feature(never_type)] #![feature(trait_alias)] -#![feature(trusted_len)] -#![feature(trusted_step)] #![feature(try_blocks)] #![recursion_limit = "256"] @@ -31,7 +29,6 @@ extern crate rustc_middle; pub mod const_eval; pub mod interpret; pub mod transform; -pub mod util; use rustc_middle::ty::query::Providers; diff --git a/compiler/rustc_mir_transform/src/lib.rs b/compiler/rustc_mir_transform/src/lib.rs index 8e1601fb719c0..4ae6ad97298e4 100644 --- a/compiler/rustc_mir_transform/src/lib.rs +++ b/compiler/rustc_mir_transform/src/lib.rs @@ -7,6 +7,7 @@ #![feature(option_get_or_insert_default)] #![feature(once_cell)] #![feature(never_type)] +#![feature(trusted_len)] #![feature(trusted_step)] #![feature(try_blocks)] #![recursion_limit = "256"] @@ -17,7 +18,6 @@ extern crate tracing; extern crate rustc_middle; use required_consts::RequiredConstsVisitor; -use rustc_const_eval::util; use rustc_data_structures::fx::FxIndexSet; use rustc_data_structures::steal::Steal; use rustc_hir as hir; @@ -80,6 +80,7 @@ mod simplify_comparison_integral; mod simplify_try; mod uninhabited_enum_branching; mod unreachable_prop; +pub mod util; use rustc_const_eval::transform::check_consts::{self, ConstCx}; use rustc_const_eval::transform::promote_consts; diff --git a/compiler/rustc_const_eval/src/util/aggregate.rs b/compiler/rustc_mir_transform/src/util/aggregate.rs similarity index 100% rename from compiler/rustc_const_eval/src/util/aggregate.rs rename to compiler/rustc_mir_transform/src/util/aggregate.rs diff --git a/compiler/rustc_const_eval/src/util/alignment.rs b/compiler/rustc_mir_transform/src/util/alignment.rs similarity index 100% rename from compiler/rustc_const_eval/src/util/alignment.rs rename to compiler/rustc_mir_transform/src/util/alignment.rs diff --git a/compiler/rustc_const_eval/src/util/collect_writes.rs b/compiler/rustc_mir_transform/src/util/collect_writes.rs similarity index 100% rename from compiler/rustc_const_eval/src/util/collect_writes.rs rename to compiler/rustc_mir_transform/src/util/collect_writes.rs diff --git a/compiler/rustc_const_eval/src/util/find_self_call.rs b/compiler/rustc_mir_transform/src/util/find_self_call.rs similarity index 100% rename from compiler/rustc_const_eval/src/util/find_self_call.rs rename to compiler/rustc_mir_transform/src/util/find_self_call.rs diff --git a/compiler/rustc_const_eval/src/util/mod.rs b/compiler/rustc_mir_transform/src/util/mod.rs similarity index 100% rename from compiler/rustc_const_eval/src/util/mod.rs rename to compiler/rustc_mir_transform/src/util/mod.rs