Port "BorrowedTooLong" diagnostic
This commit is contained in:
parent
8fc5ba65e1
commit
58e901b6fd
4 changed files with 45 additions and 7 deletions
|
@ -970,3 +970,13 @@ pub struct LfBoundNotSatisfied<'a> {
|
|||
#[subdiagnostic]
|
||||
pub notes: Vec<note_and_explain::RegionExplanation<'a>>,
|
||||
}
|
||||
|
||||
#[derive(Diagnostic)]
|
||||
#[diag(infer_borrowed_too_long, code = "E0490")]
|
||||
pub struct BorrowedTooLong<'a> {
|
||||
#[primary_span]
|
||||
pub span: Span,
|
||||
pub ty: Ty<'a>,
|
||||
#[subdiagnostic]
|
||||
pub notes: Vec<note_and_explain::RegionExplanation<'a>>,
|
||||
}
|
||||
|
|
|
@ -123,12 +123,14 @@ pub enum PrefixKind {
|
|||
Empty,
|
||||
RefValidFor,
|
||||
ContentValidFor,
|
||||
TypeValidFor,
|
||||
TypeObjValidFor,
|
||||
SourcePointerValidFor,
|
||||
TypeSatisfy,
|
||||
TypeOutlive,
|
||||
LfInstantiatedWith,
|
||||
LfMustOutlive,
|
||||
TypeValidFor,
|
||||
BorrowLastsFor,
|
||||
}
|
||||
|
||||
pub enum SuffixKind {
|
||||
|
@ -143,12 +145,14 @@ impl IntoDiagnosticArg for PrefixKind {
|
|||
Self::Empty => "empty",
|
||||
Self::RefValidFor => "ref_valid_for",
|
||||
Self::ContentValidFor => "content_valid_for",
|
||||
Self::TypeValidFor => "type_valid_for",
|
||||
Self::TypeObjValidFor => "type_obj_valid_for",
|
||||
Self::SourcePointerValidFor => "source_pointer_valid_for",
|
||||
Self::TypeSatisfy => "type_satisfy",
|
||||
Self::TypeOutlive => "type_outlive",
|
||||
Self::LfInstantiatedWith => "lf_instantiated_with",
|
||||
Self::LfMustOutlive => "lf_must_outlive",
|
||||
Self::TypeValidFor => "type_valid_for",
|
||||
Self::BorrowLastsFor => "borrow_lasts_for",
|
||||
}
|
||||
.into();
|
||||
rustc_errors::DiagnosticArgValue::Str(kind)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue