Fix Step feature flag, make tidy lint more useful to find things like this

This commit is contained in:
ltdk 2021-05-09 17:13:22 -04:00
parent 380bbe8d47
commit e6b12c8e4f
2 changed files with 14 additions and 4 deletions

View File

@ -106,7 +106,7 @@ pub unsafe trait Step: Clone + PartialOrd + Sized {
/// For any `a` and `n`, where no overflow occurs:
///
/// * `Step::forward_unchecked(a, n)` is equivalent to `Step::forward(a, n)`
#[unstable(feature = "unchecked_math", reason = "niche optimization path", issue = "none")]
#[unstable(feature = "step_trait_ext", reason = "recently added", issue = "42168")]
unsafe fn forward_unchecked(start: Self, count: usize) -> Self {
Step::forward(start, count)
}
@ -178,7 +178,7 @@ pub unsafe trait Step: Clone + PartialOrd + Sized {
/// For any `a` and `n`, where no overflow occurs:
///
/// * `Step::backward_unchecked(a, n)` is equivalent to `Step::backward(a, n)`
#[unstable(feature = "unchecked_math", reason = "niche optimization path", issue = "none")]
#[unstable(feature = "step_trait_ext", reason = "recently added", issue = "42168")]
unsafe fn backward_unchecked(start: Self, count: usize) -> Self {
Step::backward(start, count)
}

View File

@ -51,6 +51,14 @@ pub struct Feature {
pub has_gate_test: bool,
pub tracking_issue: Option<NonZeroU32>,
}
impl Feature {
fn tracking_issue_display(&self) -> impl fmt::Display {
match self.tracking_issue {
None => "none".to_string(),
Some(x) => x.to_string(),
}
}
}
pub type Features = HashMap<String, Feature>;
@ -361,10 +369,12 @@ fn get_and_check_lib_features(
if f.tracking_issue != s.tracking_issue && f.level != Status::Stable {
tidy_error!(
bad,
"{}:{}: mismatches the `issue` in {}",
"{}:{}: `issue` \"{}\" mismatches the {} `issue` of \"{}\"",
file.display(),
line,
display
f.tracking_issue_display(),
display,
s.tracking_issue_display(),
);
}
}