Remove mir::LocalDecl::internal.
This commit is contained in:
parent
65519f5fc0
commit
e63d19c4dd
38 changed files with 106 additions and 57 deletions
|
@ -179,7 +179,7 @@ impl<'tcx> Visitor<'tcx> for UnsafetyChecker<'_, 'tcx> {
|
|||
// Check the base local: it might be an unsafe-to-access static. We only check derefs of the
|
||||
// temporary holding the static pointer to avoid duplicate errors
|
||||
// <https://github.com/rust-lang/rust/pull/78068#issuecomment-731753506>.
|
||||
if decl.internal && place.projection.first() == Some(&ProjectionElem::Deref) {
|
||||
if place.projection.first() == Some(&ProjectionElem::Deref) {
|
||||
// If the projection root is an artificial local that we introduced when
|
||||
// desugaring `static`, give a more specific error message
|
||||
// (avoid the general "raw pointer" clause below, that would only be confusing).
|
||||
|
|
|
@ -37,7 +37,7 @@ impl<'a, 'tcx> MutVisitor<'tcx> for DerefChecker<'a, 'tcx> {
|
|||
for (idx, (p_ref, p_elem)) in place.iter_projections().enumerate() {
|
||||
if !p_ref.projection.is_empty() && p_elem == ProjectionElem::Deref {
|
||||
let ty = p_ref.ty(self.local_decls, self.tcx).ty;
|
||||
let temp = self.patcher.new_internal_with_info(
|
||||
let temp = self.patcher.new_local_with_info(
|
||||
ty,
|
||||
self.local_decls[p_ref.local].source_info.span,
|
||||
LocalInfo::DerefTemp,
|
||||
|
|
|
@ -69,7 +69,7 @@ impl<'tcx, 'a> MutVisitor<'tcx> for ElaborateBoxDerefVisitor<'tcx, 'a> {
|
|||
let (unique_ty, nonnull_ty, ptr_ty) =
|
||||
build_ptr_tys(tcx, base_ty.boxed_ty(), self.unique_did, self.nonnull_did);
|
||||
|
||||
let ptr_local = self.patch.new_internal(ptr_ty, source_info.span);
|
||||
let ptr_local = self.patch.new_temp(ptr_ty, source_info.span);
|
||||
|
||||
self.patch.add_assign(
|
||||
location,
|
||||
|
|
|
@ -271,7 +271,7 @@ impl<'b, 'tcx> ElaborateDropsCtxt<'b, 'tcx> {
|
|||
let tcx = self.tcx;
|
||||
let patch = &mut self.patch;
|
||||
debug!("create_drop_flag({:?})", self.body.span);
|
||||
self.drop_flags[index].get_or_insert_with(|| patch.new_internal(tcx.types.bool, span));
|
||||
self.drop_flags[index].get_or_insert_with(|| patch.new_temp(tcx.types.bool, span));
|
||||
}
|
||||
|
||||
fn drop_flag(&mut self, index: MovePathIndex) -> Option<Place<'tcx>> {
|
||||
|
|
|
@ -321,7 +321,7 @@ impl<'tcx> TransformVisitor<'tcx> {
|
|||
|
||||
// Create a statement which reads the discriminant into a temporary
|
||||
fn get_discr(&self, body: &mut Body<'tcx>) -> (Statement<'tcx>, Place<'tcx>) {
|
||||
let temp_decl = LocalDecl::new(self.discr_ty, body.span).internal();
|
||||
let temp_decl = LocalDecl::new(self.discr_ty, body.span);
|
||||
let local_decls_len = body.local_decls.push(temp_decl);
|
||||
let temp = Place::from(local_decls_len);
|
||||
|
||||
|
|
|
@ -616,9 +616,7 @@ impl<'tcx> Inliner<'tcx> {
|
|||
// If there are any locals without storage markers, give them storage only for the
|
||||
// duration of the call.
|
||||
for local in callee_body.vars_and_temps_iter() {
|
||||
if !callee_body.local_decls[local].internal
|
||||
&& integrator.always_live_locals.contains(local)
|
||||
{
|
||||
if integrator.always_live_locals.contains(local) {
|
||||
let new_local = integrator.map_local(local);
|
||||
caller_body[callsite.block].statements.push(Statement {
|
||||
source_info: callsite.source_info,
|
||||
|
@ -641,9 +639,7 @@ impl<'tcx> Inliner<'tcx> {
|
|||
n += 1;
|
||||
}
|
||||
for local in callee_body.vars_and_temps_iter().rev() {
|
||||
if !callee_body.local_decls[local].internal
|
||||
&& integrator.always_live_locals.contains(local)
|
||||
{
|
||||
if integrator.always_live_locals.contains(local) {
|
||||
let new_local = integrator.map_local(local);
|
||||
caller_body[block].statements.push(Statement {
|
||||
source_info: callsite.source_info,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue