Add subdiagnostic and suggestion for overflowing bin hex with sign bits
This commit is contained in:
parent
34d64ab7a2
commit
6033895ec2
3 changed files with 63 additions and 4 deletions
|
@ -1342,6 +1342,8 @@ pub struct OverflowingBinHex<'a> {
|
|||
pub sign: OverflowingBinHexSign,
|
||||
#[subdiagnostic]
|
||||
pub sub: Option<OverflowingBinHexSub<'a>>,
|
||||
#[subdiagnostic]
|
||||
pub sign_bit_sub: Option<OverflowingBinHexSignBitSub<'a>>,
|
||||
}
|
||||
|
||||
pub enum OverflowingBinHexSign {
|
||||
|
@ -1386,6 +1388,21 @@ pub enum OverflowingBinHexSub<'a> {
|
|||
Help { suggestion_ty: &'a str },
|
||||
}
|
||||
|
||||
#[derive(Subdiagnostic)]
|
||||
#[suggestion(
|
||||
lint_sign_bit_suggestion,
|
||||
code = "{lit_no_suffix}{uint_ty} as {int_ty}",
|
||||
applicability = "maybe-incorrect"
|
||||
)]
|
||||
pub struct OverflowingBinHexSignBitSub<'a> {
|
||||
#[primary_span]
|
||||
pub span: Span,
|
||||
pub lit_no_suffix: &'a str,
|
||||
pub negative_val: String,
|
||||
pub uint_ty: &'a str,
|
||||
pub int_ty: &'a str,
|
||||
}
|
||||
|
||||
#[derive(LintDiagnostic)]
|
||||
#[diag(lint_overflowing_int)]
|
||||
#[note]
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue