mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-23 23:34:48 +00:00
Rollup merge of #118382 - shepmaster:unused-tuple-struct-field-cleanup, r=compiler-errors
Address unused tuple struct fields in the compiler r? `@compiler-errors`
This commit is contained in:
commit
fa636d0481
@ -42,6 +42,7 @@ use rustc_target::abi::FieldIdx;
|
||||
use smallvec::SmallVec;
|
||||
use std::cell::RefCell;
|
||||
use std::collections::BTreeMap;
|
||||
use std::marker::PhantomData;
|
||||
use std::ops::Deref;
|
||||
use std::rc::Rc;
|
||||
|
||||
@ -100,7 +101,7 @@ use renumber::RegionCtxt;
|
||||
rustc_fluent_macro::fluent_messages! { "../messages.ftl" }
|
||||
|
||||
/// Associate some local constants with the `'tcx` lifetime
|
||||
struct TyCtxtConsts<'tcx>(TyCtxt<'tcx>);
|
||||
struct TyCtxtConsts<'tcx>(PhantomData<&'tcx ()>);
|
||||
impl<'tcx> TyCtxtConsts<'tcx> {
|
||||
const DEREF_PROJECTION: &'tcx [PlaceElem<'tcx>; 1] = &[ProjectionElem::Deref];
|
||||
}
|
||||
|
@ -385,7 +385,7 @@ pub(crate) fn provide(providers: &mut Providers) {
|
||||
enum Context {
|
||||
Safe,
|
||||
/// in an `unsafe fn`
|
||||
UnsafeFn(HirId),
|
||||
UnsafeFn,
|
||||
/// in a *used* `unsafe` block
|
||||
/// (i.e. a block without unused-unsafe warning)
|
||||
UnsafeBlock(HirId),
|
||||
@ -407,7 +407,7 @@ impl<'tcx> intravisit::Visitor<'tcx> for UnusedUnsafeVisitor<'_, 'tcx> {
|
||||
};
|
||||
let unused_unsafe = match (self.context, used) {
|
||||
(_, false) => UnusedUnsafe::Unused,
|
||||
(Context::Safe, true) | (Context::UnsafeFn(_), true) => {
|
||||
(Context::Safe, true) | (Context::UnsafeFn, true) => {
|
||||
let previous_context = self.context;
|
||||
self.context = Context::UnsafeBlock(block.hir_id);
|
||||
intravisit::walk_block(self, block);
|
||||
@ -454,7 +454,7 @@ fn check_unused_unsafe(
|
||||
let body = tcx.hir().body(body_id);
|
||||
let hir_id = tcx.local_def_id_to_hir_id(def_id);
|
||||
let context = match tcx.hir().fn_sig_by_hir_id(hir_id) {
|
||||
Some(sig) if sig.header.unsafety == hir::Unsafety::Unsafe => Context::UnsafeFn(hir_id),
|
||||
Some(sig) if sig.header.unsafety == hir::Unsafety::Unsafe => Context::UnsafeFn,
|
||||
_ => Context::Safe,
|
||||
};
|
||||
|
||||
|
@ -223,7 +223,7 @@ impl<'a, 'b, 'tcx> visit::Visitor<'a> for DefCollector<'a, 'b, 'tcx> {
|
||||
// ```
|
||||
//
|
||||
// In that case, the impl-trait is lowered as an additional generic parameter.
|
||||
self.with_impl_trait(ImplTraitContext::Universal(self.parent_def), |this| {
|
||||
self.with_impl_trait(ImplTraitContext::Universal, |this| {
|
||||
visit::walk_generic_param(this, param)
|
||||
});
|
||||
}
|
||||
@ -310,9 +310,7 @@ impl<'a, 'b, 'tcx> visit::Visitor<'a> for DefCollector<'a, 'b, 'tcx> {
|
||||
if p.is_placeholder {
|
||||
self.visit_macro_invoc(p.id)
|
||||
} else {
|
||||
self.with_impl_trait(ImplTraitContext::Universal(self.parent_def), |this| {
|
||||
visit::walk_param(this, p)
|
||||
})
|
||||
self.with_impl_trait(ImplTraitContext::Universal, |this| visit::walk_param(this, p))
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -172,7 +172,7 @@ impl<'a> ParentScope<'a> {
|
||||
#[derive(Copy, Debug, Clone)]
|
||||
enum ImplTraitContext {
|
||||
Existential,
|
||||
Universal(LocalDefId),
|
||||
Universal,
|
||||
}
|
||||
|
||||
#[derive(Debug)]
|
||||
|
Loading…
Reference in New Issue
Block a user