Address review comments
This commit is contained in:
parent
4887eb7b2d
commit
defc056ccc
3 changed files with 9 additions and 5 deletions
|
@ -947,8 +947,8 @@ impl Handler {
|
||||||
.get_expectation_id()
|
.get_expectation_id()
|
||||||
.expect("all diagnostics inside `unstable_expect_diagnostics` must have a `LintExpectationId`");
|
.expect("all diagnostics inside `unstable_expect_diagnostics` must have a `LintExpectationId`");
|
||||||
|
|
||||||
// The unstable to stable map only maps the unstable it to a stable id
|
// The unstable to stable map only maps the unstable `AttrId` to a stable `HirId` with an attribute index.
|
||||||
// the lint index is manually transferred here.
|
// The lint index inside the attribute is manually transferred here.
|
||||||
let lint_index = unstable_id.get_lint_index();
|
let lint_index = unstable_id.get_lint_index();
|
||||||
unstable_id.set_lint_index(None);
|
unstable_id.set_lint_index(None);
|
||||||
let mut stable_id = *unstable_to_stable
|
let mut stable_id = *unstable_to_stable
|
||||||
|
@ -966,6 +966,10 @@ impl Handler {
|
||||||
/// This methods steals all [`LintExpectationId`]s that are stored inside
|
/// This methods steals all [`LintExpectationId`]s that are stored inside
|
||||||
/// [`HandlerInner`] and indicate that the linked expectation has been fulfilled.
|
/// [`HandlerInner`] and indicate that the linked expectation has been fulfilled.
|
||||||
pub fn steal_fulfilled_expectation_ids(&self) -> FxHashSet<LintExpectationId> {
|
pub fn steal_fulfilled_expectation_ids(&self) -> FxHashSet<LintExpectationId> {
|
||||||
|
assert!(
|
||||||
|
self.inner.borrow().unstable_expect_diagnostics.is_empty(),
|
||||||
|
"`HandlerInner::unstable_expect_diagnostics` should be empty at this point",
|
||||||
|
);
|
||||||
std::mem::take(&mut self.inner.borrow_mut().fulfilled_expectations)
|
std::mem::take(&mut self.inner.borrow_mut().fulfilled_expectations)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -142,12 +142,12 @@ impl<HCX: rustc_hir::HashStableContext> ToStableHashKey<HCX> for LintExpectation
|
||||||
pub enum Level {
|
pub enum Level {
|
||||||
/// The `allow` level will not issue any message.
|
/// The `allow` level will not issue any message.
|
||||||
Allow,
|
Allow,
|
||||||
/// The `expect` level will suppress the lint message but intern produce a message
|
/// The `expect` level will suppress the lint message but in turn produce a message
|
||||||
/// if the lint wasn't issued in the expected scope. `Expect` should not be used as
|
/// if the lint wasn't issued in the expected scope. `Expect` should not be used as
|
||||||
/// an initial level for a lint.
|
/// an initial level for a lint.
|
||||||
///
|
///
|
||||||
/// Note that this still means that the lint is enabled in this position and should
|
/// Note that this still means that the lint is enabled in this position and should
|
||||||
/// be emitted, this will intern fulfill the expectation and suppress the lint.
|
/// be emitted, this will in turn fulfill the expectation and suppress the lint.
|
||||||
///
|
///
|
||||||
/// See RFC 2383.
|
/// See RFC 2383.
|
||||||
///
|
///
|
||||||
|
|
|
@ -387,7 +387,7 @@ pub fn struct_lint_level<'s, 'd>(
|
||||||
|
|
||||||
// Lint diagnostics that are covered by the expect level will not be emitted outside
|
// Lint diagnostics that are covered by the expect level will not be emitted outside
|
||||||
// the compiler. It is therefore not necessary to add any information for the user.
|
// the compiler. It is therefore not necessary to add any information for the user.
|
||||||
// This will therefore directly call the decorate function which will intern emit
|
// This will therefore directly call the decorate function which will in turn emit
|
||||||
// the `Diagnostic`.
|
// the `Diagnostic`.
|
||||||
if let Level::Expect(_) = level {
|
if let Level::Expect(_) = level {
|
||||||
let name = lint.name_lower();
|
let name = lint.name_lower();
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue