From 698f8c2f01ea549d77d7dc3338a12e04c11057b9 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 17 Apr 2024 14:02:58 +0200 Subject: Adding upstream version 1.64.0+dfsg1. Signed-off-by: Daniel Baumann --- .../session-diagnostic/diagnostic-derive.stderr | 423 +++++++++++++++++++++ 1 file changed, 423 insertions(+) create mode 100644 src/test/ui-fulldeps/session-diagnostic/diagnostic-derive.stderr (limited to 'src/test/ui-fulldeps/session-diagnostic/diagnostic-derive.stderr') diff --git a/src/test/ui-fulldeps/session-diagnostic/diagnostic-derive.stderr b/src/test/ui-fulldeps/session-diagnostic/diagnostic-derive.stderr new file mode 100644 index 000000000..c1080aa24 --- /dev/null +++ b/src/test/ui-fulldeps/session-diagnostic/diagnostic-derive.stderr @@ -0,0 +1,423 @@ +error: `#[derive(SessionDiagnostic)]` can only be used on structs + --> $DIR/diagnostic-derive.rs:39:1 + | +LL | / #[error(typeck::ambiguous_lifetime_bound, code = "E0123")] +LL | | +LL | | enum SessionDiagnosticOnEnum { +LL | | Foo, +LL | | Bar, +LL | | } + | |_^ + +error: `#[error = ...]` is not a valid attribute + --> $DIR/diagnostic-derive.rs:48:1 + | +LL | #[error = "E0123"] + | ^^^^^^^^^^^^^^^^^^ + +error: `#[nonsense(...)]` is not a valid attribute + --> $DIR/diagnostic-derive.rs:53:1 + | +LL | #[nonsense(typeck::ambiguous_lifetime_bound, code = "E0123")] + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + | + = help: only `error`, `warning`, `help`, `note` and `warn_` are valid attributes + +error: diagnostic kind not specified + --> $DIR/diagnostic-derive.rs:53:1 + | +LL | / #[nonsense(typeck::ambiguous_lifetime_bound, code = "E0123")] +LL | | +LL | | +LL | | +LL | | struct InvalidStructAttr {} + | |___________________________^ + | + = help: use the `#[error(...)]` attribute to create an error + +error: `#[error("...")]` is not a valid attribute + --> $DIR/diagnostic-derive.rs:60:9 + | +LL | #[error("E0123")] + | ^^^^^^^ + | + = help: first argument of the attribute should be the diagnostic slug + +error: diagnostic slug not specified + --> $DIR/diagnostic-derive.rs:60:1 + | +LL | / #[error("E0123")] +LL | | +LL | | +LL | | struct InvalidLitNestedAttr {} + | |______________________________^ + | + = help: specify the slug as the first argument to the attribute, such as `#[error(typeck::example_error)]` + +error: `#[error(nonsense(...))]` is not a valid attribute + --> $DIR/diagnostic-derive.rs:71:9 + | +LL | #[error(nonsense("foo"), code = "E0123", slug = "foo")] + | ^^^^^^^^^^^^^^^ + | + = help: first argument of the attribute should be the diagnostic slug + +error: diagnostic slug not specified + --> $DIR/diagnostic-derive.rs:71:1 + | +LL | / #[error(nonsense("foo"), code = "E0123", slug = "foo")] +LL | | +LL | | +LL | | struct InvalidNestedStructAttr1 {} + | |__________________________________^ + | + = help: specify the slug as the first argument to the attribute, such as `#[error(typeck::example_error)]` + +error: `#[error(nonsense = ...)]` is not a valid attribute + --> $DIR/diagnostic-derive.rs:77:9 + | +LL | #[error(nonsense = "...", code = "E0123", slug = "foo")] + | ^^^^^^^^^^^^^^^^ + | + = help: first argument of the attribute should be the diagnostic slug + +error: diagnostic slug not specified + --> $DIR/diagnostic-derive.rs:77:1 + | +LL | / #[error(nonsense = "...", code = "E0123", slug = "foo")] +LL | | +LL | | +LL | | struct InvalidNestedStructAttr2 {} + | |__________________________________^ + | + = help: specify the slug as the first argument to the attribute, such as `#[error(typeck::example_error)]` + +error: `#[error(nonsense = ...)]` is not a valid attribute + --> $DIR/diagnostic-derive.rs:83:9 + | +LL | #[error(nonsense = 4, code = "E0123", slug = "foo")] + | ^^^^^^^^^^^^ + | + = help: first argument of the attribute should be the diagnostic slug + +error: diagnostic slug not specified + --> $DIR/diagnostic-derive.rs:83:1 + | +LL | / #[error(nonsense = 4, code = "E0123", slug = "foo")] +LL | | +LL | | +LL | | struct InvalidNestedStructAttr3 {} + | |__________________________________^ + | + = help: specify the slug as the first argument to the attribute, such as `#[error(typeck::example_error)]` + +error: `#[error(slug = ...)]` is not a valid attribute + --> $DIR/diagnostic-derive.rs:89:59 + | +LL | #[error(typeck::ambiguous_lifetime_bound, code = "E0123", slug = "foo")] + | ^^^^^^^^^^^^ + | + = help: only `code` is a valid nested attributes following the slug + +error: `#[suggestion = ...]` is not a valid attribute + --> $DIR/diagnostic-derive.rs:96:5 + | +LL | #[suggestion = "bar"] + | ^^^^^^^^^^^^^^^^^^^^^ + +error: specified multiple times + --> $DIR/diagnostic-derive.rs:103:1 + | +LL | #[error(typeck::ambiguous_lifetime_bound, code = "E0456")] + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + | +note: previously specified here + --> $DIR/diagnostic-derive.rs:102:1 + | +LL | #[error(typeck::ambiguous_lifetime_bound, code = "E0123")] + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: specified multiple times + --> $DIR/diagnostic-derive.rs:103:1 + | +LL | #[error(typeck::ambiguous_lifetime_bound, code = "E0456")] + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + | +note: previously specified here + --> $DIR/diagnostic-derive.rs:102:1 + | +LL | #[error(typeck::ambiguous_lifetime_bound, code = "E0123")] + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: specified multiple times + --> $DIR/diagnostic-derive.rs:103:50 + | +LL | #[error(typeck::ambiguous_lifetime_bound, code = "E0456")] + | ^^^^^^^ + | +note: previously specified here + --> $DIR/diagnostic-derive.rs:102:50 + | +LL | #[error(typeck::ambiguous_lifetime_bound, code = "E0123")] + | ^^^^^^^ + +error: specified multiple times + --> $DIR/diagnostic-derive.rs:111:1 + | +LL | #[warning(typeck::ambiguous_lifetime_bound, code = "E0293")] + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + | +note: previously specified here + --> $DIR/diagnostic-derive.rs:110:1 + | +LL | #[error(typeck::ambiguous_lifetime_bound, code = "E0123")] + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: specified multiple times + --> $DIR/diagnostic-derive.rs:111:1 + | +LL | #[warning(typeck::ambiguous_lifetime_bound, code = "E0293")] + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + | +note: previously specified here + --> $DIR/diagnostic-derive.rs:110:1 + | +LL | #[error(typeck::ambiguous_lifetime_bound, code = "E0123")] + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: specified multiple times + --> $DIR/diagnostic-derive.rs:111:52 + | +LL | #[warning(typeck::ambiguous_lifetime_bound, code = "E0293")] + | ^^^^^^^ + | +note: previously specified here + --> $DIR/diagnostic-derive.rs:110:50 + | +LL | #[error(typeck::ambiguous_lifetime_bound, code = "E0123")] + | ^^^^^^^ + +error: specified multiple times + --> $DIR/diagnostic-derive.rs:118:66 + | +LL | #[error(typeck::ambiguous_lifetime_bound, code = "E0456", code = "E0457")] + | ^^^^^^^ + | +note: previously specified here + --> $DIR/diagnostic-derive.rs:118:50 + | +LL | #[error(typeck::ambiguous_lifetime_bound, code = "E0456", code = "E0457")] + | ^^^^^^^ + +error: `#[error(typeck::ambiguous_lifetime_bound)]` is not a valid attribute + --> $DIR/diagnostic-derive.rs:123:43 + | +LL | #[error(typeck::ambiguous_lifetime_bound, typeck::ambiguous_lifetime_bound, code = "E0456")] + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: diagnostic kind not specified + --> $DIR/diagnostic-derive.rs:128:1 + | +LL | struct KindNotProvided {} + | ^^^^^^^^^^^^^^^^^^^^^^^^^ + | + = help: use the `#[error(...)]` attribute to create an error + +error: diagnostic slug not specified + --> $DIR/diagnostic-derive.rs:131:1 + | +LL | / #[error(code = "E0456")] +LL | | +LL | | struct SlugNotProvided {} + | |_________________________^ + | + = help: specify the slug as the first argument to the attribute, such as `#[error(typeck::example_error)]` + +error: the `#[primary_span]` attribute can only be applied to fields of type `Span` or `MultiSpan` + --> $DIR/diagnostic-derive.rs:142:5 + | +LL | #[primary_span] + | ^^^^^^^^^^^^^^^ + +error: `#[nonsense]` is not a valid attribute + --> $DIR/diagnostic-derive.rs:150:5 + | +LL | #[nonsense] + | ^^^^^^^^^^^ + | + = help: only `skip_arg`, `primary_span`, `label`, `note`, `help` and `subdiagnostic` are valid field attributes + +error: the `#[label(...)]` attribute can only be applied to fields of type `Span` or `MultiSpan` + --> $DIR/diagnostic-derive.rs:167:5 + | +LL | #[label(typeck::label)] + | ^^^^^^^^^^^^^^^^^^^^^^^ + +error: `name` doesn't refer to a field on this type + --> $DIR/diagnostic-derive.rs:175:45 + | +LL | #[suggestion(typeck::suggestion, code = "{name}")] + | ^^^^^^^^ + +error: invalid format string: expected `'}'` but string was terminated + --> $DIR/diagnostic-derive.rs:180:16 + | +LL | #[derive(SessionDiagnostic)] + | - ^ expected `'}'` in format string + | | + | because of this opening brace + | + = note: if you intended to print `{`, you can escape it using `{{` + = note: this error originates in the derive macro `SessionDiagnostic` (in Nightly builds, run with -Z macro-backtrace for more info) + +error: invalid format string: unmatched `}` found + --> $DIR/diagnostic-derive.rs:190:15 + | +LL | #[derive(SessionDiagnostic)] + | ^ unmatched `}` in format string + | + = note: if you intended to print `}`, you can escape it using `}}` + = note: this error originates in the derive macro `SessionDiagnostic` (in Nightly builds, run with -Z macro-backtrace for more info) + +error: the `#[label(...)]` attribute can only be applied to fields of type `Span` or `MultiSpan` + --> $DIR/diagnostic-derive.rs:210:5 + | +LL | #[label(typeck::label)] + | ^^^^^^^^^^^^^^^^^^^^^^^ + +error: `#[suggestion(nonsense = ...)]` is not a valid attribute + --> $DIR/diagnostic-derive.rs:235:18 + | +LL | #[suggestion(nonsense = "bar")] + | ^^^^^^^^^^^^^^^^ + | + = help: only `message`, `code` and `applicability` are valid field attributes + +error: `#[suggestion(msg = ...)]` is not a valid attribute + --> $DIR/diagnostic-derive.rs:243:18 + | +LL | #[suggestion(msg = "bar")] + | ^^^^^^^^^^^ + | + = help: only `message`, `code` and `applicability` are valid field attributes + +error: wrong field type for suggestion + --> $DIR/diagnostic-derive.rs:265:5 + | +LL | / #[suggestion(typeck::suggestion, code = "This is suggested code")] +LL | | +LL | | suggestion: Applicability, + | |_____________________________^ + | + = help: `#[suggestion(...)]` should be applied to fields of type `Span` or `(Span, Applicability)` + +error: type of field annotated with `#[suggestion(...)]` contains more than one `Span` + --> $DIR/diagnostic-derive.rs:280:5 + | +LL | / #[suggestion(typeck::suggestion, code = "This is suggested code")] +LL | | +LL | | suggestion: (Span, Span, Applicability), + | |___________________________________________^ + +error: type of field annotated with `#[suggestion(...)]` contains more than one Applicability + --> $DIR/diagnostic-derive.rs:288:5 + | +LL | / #[suggestion(typeck::suggestion, code = "This is suggested code")] +LL | | +LL | | suggestion: (Applicability, Applicability, Span), + | |____________________________________________________^ + +error: `#[label = ...]` is not a valid attribute + --> $DIR/diagnostic-derive.rs:296:5 + | +LL | #[label = "bar"] + | ^^^^^^^^^^^^^^^^ + +error: applicability cannot be set in both the field and attribute + --> $DIR/diagnostic-derive.rs:447:52 + | +LL | #[suggestion(typeck::suggestion, code = "...", applicability = "maybe-incorrect")] + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: invalid applicability + --> $DIR/diagnostic-derive.rs:455:52 + | +LL | #[suggestion(typeck::suggestion, code = "...", applicability = "batman")] + | ^^^^^^^^^^^^^^^^^^^^^^^^ + +error: `#[label(...)]` is not a valid attribute + --> $DIR/diagnostic-derive.rs:518:5 + | +LL | #[label(typeck::label, foo)] + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: `#[label(...)]` is not a valid attribute + --> $DIR/diagnostic-derive.rs:526:5 + | +LL | #[label(typeck::label, foo = "...")] + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: `#[label(...)]` is not a valid attribute + --> $DIR/diagnostic-derive.rs:534:5 + | +LL | #[label(typeck::label, foo("..."))] + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: only `#[error(..)]` and `#[warning(..)]` are supported + --> $DIR/diagnostic-derive.rs:540:1 + | +LL | / #[lint(typeck::ambiguous_lifetime_bound)] +LL | | +LL | | struct LintsBad { +LL | | } + | |_^ + | + = help: use the `#[error(...)]` attribute to create a error + +error: only `#[lint(..)]` is supported + --> $DIR/diagnostic-derive.rs:551:1 + | +LL | / #[error(typeck::ambiguous_lifetime_bound)] +LL | | +LL | | struct ErrorsBad { +LL | | } + | |_^ + | + = help: use the `#[lint(...)]` attribute to create a lint + +error: cannot find attribute `nonsense` in this scope + --> $DIR/diagnostic-derive.rs:53:3 + | +LL | #[nonsense(typeck::ambiguous_lifetime_bound, code = "E0123")] + | ^^^^^^^^ + +error: cannot find attribute `nonsense` in this scope + --> $DIR/diagnostic-derive.rs:150:7 + | +LL | #[nonsense] + | ^^^^^^^^ + +error[E0425]: cannot find value `nonsense` in module `rustc_errors::fluent` + --> $DIR/diagnostic-derive.rs:66:9 + | +LL | #[error(nonsense, code = "E0123")] + | ^^^^^^^^ not found in `rustc_errors::fluent` + +error[E0277]: the trait bound `Hello: IntoDiagnosticArg` is not satisfied + --> $DIR/diagnostic-derive.rs:340:10 + | +LL | #[derive(SessionDiagnostic)] + | ^^^^^^^^^^^^^^^^^ the trait `IntoDiagnosticArg` is not implemented for `Hello` + | + = help: normalized in stderr +note: required by a bound in `DiagnosticBuilder::<'a, G>::set_arg` + --> $COMPILER_DIR/rustc_errors/src/diagnostic_builder.rs:539:19 + | +LL | arg: impl IntoDiagnosticArg, + | ^^^^^^^^^^^^^^^^^ required by this bound in `DiagnosticBuilder::<'a, G>::set_arg` + = note: this error originates in the derive macro `SessionDiagnostic` (in Nightly builds, run with -Z macro-backtrace for more info) + +error: aborting due to 48 previous errors + +Some errors have detailed explanations: E0277, E0425. +For more information about an error, try `rustc --explain E0277`. -- cgit v1.2.3