summaryrefslogtreecommitdiffstats
path: root/compiler/rustc_parse/src/errors.rs
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/rustc_parse/src/errors.rs')
-rw-r--r--compiler/rustc_parse/src/errors.rs55
1 files changed, 55 insertions, 0 deletions
diff --git a/compiler/rustc_parse/src/errors.rs b/compiler/rustc_parse/src/errors.rs
index 7c75e440a..8ab1ec298 100644
--- a/compiler/rustc_parse/src/errors.rs
+++ b/compiler/rustc_parse/src/errors.rs
@@ -431,6 +431,17 @@ pub(crate) struct ExpectedElseBlock {
}
#[derive(Diagnostic)]
+#[diag(parse_expected_struct_field)]
+pub(crate) struct ExpectedStructField {
+ #[primary_span]
+ #[label]
+ pub span: Span,
+ pub token: Token,
+ #[label(parse_ident_label)]
+ pub ident_span: Span,
+}
+
+#[derive(Diagnostic)]
#[diag(parse_outer_attribute_not_allowed_on_if_else)]
pub(crate) struct OuterAttributeNotAllowedOnIfElse {
#[primary_span]
@@ -510,6 +521,14 @@ pub(crate) struct CatchAfterTry {
}
#[derive(Diagnostic)]
+#[diag(parse_gen_fn)]
+#[help]
+pub(crate) struct GenFn {
+ #[primary_span]
+ pub span: Span,
+}
+
+#[derive(Diagnostic)]
#[diag(parse_comma_after_base_struct)]
#[note]
pub(crate) struct CommaAfterBaseStruct {
@@ -1359,6 +1378,34 @@ pub(crate) struct FnPtrWithGenericsSugg {
pub for_param_list_exists: bool,
}
+pub(crate) struct FnTraitMissingParen {
+ pub span: Span,
+ pub machine_applicable: bool,
+}
+
+impl AddToDiagnostic for FnTraitMissingParen {
+ fn add_to_diagnostic_with<F>(self, diag: &mut rustc_errors::Diagnostic, _: F)
+ where
+ F: Fn(
+ &mut rustc_errors::Diagnostic,
+ rustc_errors::SubdiagnosticMessage,
+ ) -> rustc_errors::SubdiagnosticMessage,
+ {
+ diag.span_label(self.span, crate::fluent_generated::parse_fn_trait_missing_paren);
+ let applicability = if self.machine_applicable {
+ Applicability::MachineApplicable
+ } else {
+ Applicability::MaybeIncorrect
+ };
+ diag.span_suggestion_short(
+ self.span.shrink_to_hi(),
+ crate::fluent_generated::parse_add_paren,
+ "()",
+ applicability,
+ );
+ }
+}
+
#[derive(Diagnostic)]
#[diag(parse_unexpected_if_with_if)]
pub(crate) struct UnexpectedIfWithIf(
@@ -1533,6 +1580,14 @@ pub(crate) enum AmbiguousMissingKwForItemSub {
}
#[derive(Diagnostic)]
+#[diag(parse_missing_fn_params)]
+pub(crate) struct MissingFnParams {
+ #[primary_span]
+ #[suggestion(code = "()", applicability = "machine-applicable", style = "short")]
+ pub span: Span,
+}
+
+#[derive(Diagnostic)]
#[diag(parse_missing_trait_in_trait_impl)]
pub(crate) struct MissingTraitInTraitImpl {
#[primary_span]