rust icon indicating copy to clipboard operation
rust copied to clipboard

Overhaul `Diagnostic` and `DiagnosticBuilder`

Open nnethercote opened this issue 1 year ago • 2 comments

(Draft code, still very speculative.)

r? @ghost

nnethercote avatar Feb 02 '24 06:02 nnethercote

rustc_macros::diagnostics was changed

cc @davidtwco, @compiler-errors, @TaKO8Ki

Some changes might have occurred in exhaustiveness checking

cc @Nadrieril

Some changes occurred in src/tools/clippy

cc @rust-lang/clippy

rustbot avatar Feb 02 '24 06:02 rustbot

The job x86_64-gnu-llvm-16 failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
#12 writing image sha256:701b2e5398fb6662062e43168da45c5d020eba6fd7cfdea8032628c45ad6d6c1 done
#12 naming to docker.io/library/rust-ci done
#12 DONE 10.1s
##[endgroup]
Setting extra environment values for docker:  --env ENABLE_GCC_CODEGEN=1 --env GCC_EXEC_PREFIX=/usr/lib/gcc/
[CI_JOB_NAME=x86_64-gnu-llvm-16]
##[group]Clock drift check
  local time: Fri Feb  2 19:34:02 UTC 2024
  network time: Fri, 02 Feb 2024 19:34:02 GMT
  network time: Fri, 02 Feb 2024 19:34:02 GMT
##[endgroup]
sccache: Starting the server...
##[group]Configure the build
configure: processing command line
configure: 
configure: build.configure-args := ['--build=x86_64-unknown-linux-gnu', '--llvm-root=/usr/lib/llvm-16', '--enable-llvm-link-shared', '--set', 'rust.thin-lto-import-instr-limit=10', '--set', 'change-id=99999999', '--enable-verbose-configure', '--enable-sccache', '--disable-manage-submodules', '--enable-locked-deps', '--enable-cargo-native-static', '--set', 'rust.codegen-units-std=1', '--set', 'dist.compression-profile=balanced', '--dist-compression-formats=xz', '--set', 'build.optimized-compiler-builtins', '--disable-dist-src', '--release-channel=nightly', '--enable-debug-assertions', '--enable-overflow-checks', '--enable-llvm-assertions', '--set', 'rust.verify-llvm-ir', '--set', 'rust.codegen-backends=llvm,cranelift,gcc', '--set', 'llvm.static-libstdcpp', '--enable-new-symbol-mangling']
configure: target.x86_64-unknown-linux-gnu.llvm-config := /usr/lib/llvm-16/bin/llvm-config
configure: llvm.link-shared     := True
configure: rust.thin-lto-import-instr-limit := 10
configure: change-id            := 99999999
---
Uplifting rustc (stage1 -> stage3)
##[group]Testing stage2 compiletest suite=ui-fulldeps mode=ui (x86_64-unknown-linux-gnu)

running 42 tests
...........F.....F.......F................
failures:

---- [ui] tests/ui-fulldeps/internal-lints/diagnostics.rs stdout ----

---
---- [ui] tests/ui-fulldeps/session-diagnostic/diagnostic-derive-doc-comment-field.rs stdout ----
diff of stderr:

9    |
10    = help: normalized in stderr
11 note: required by a bound in `DiagnosticBuilder::<'a, G>::arg`
-   --> $COMPILER_DIR/rustc_errors/src/diagnostic_builder.rs:LL:CC
-    = note: this error originates in the macro `forward` (in Nightly builds, run with -Z macro-backtrace for more info)
+   --> $COMPILER_DIR/rustc_errors/src/diagnostic.rs:LL:CC
14 
15 error[E0277]: the trait bound `NotIntoDiagnosticArg: IntoDiagnosticArg` is not satisfied

22    |          ^^^^^^^^^^^^^^^^^^^^ the trait `IntoDiagnosticArg` is not implemented for `NotIntoDiagnosticArg`
23    |
24    = help: normalized in stderr
24    = help: normalized in stderr
- note: required by a bound in `Diagnostic::arg`
+ note: required by a bound in `DiagnosticBuilder::<'a, G>::arg`
26   --> $COMPILER_DIR/rustc_errors/src/diagnostic.rs:LL:CC
28 error: aborting due to 2 previous errors


The actual stderr differed from the expected stderr.
---
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive-doc-comment-field.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui-fulldeps/session-diagnostic/diagnostic-derive-doc-comment-field" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui-fulldeps/session-diagnostic/diagnostic-derive-doc-comment-field/auxiliary"
stdout: none
--- stderr -------------------------------
error[E0277]: the trait bound `NotIntoDiagnosticArg: IntoDiagnosticArg` is not satisfied
   |
LL | #[derive(Diagnostic)]
   |          ---------- required by a bound introduced by this call
...
---
             i32
             i64
             i128
           and 49 others
note: required by a bound in `DiagnosticBuilder::<'a, G>::arg`
  --> /rustc/FAKE_PREFIX/compiler/rustc_errors/src/diagnostic.rs:1241:5

error[E0277]: the trait bound `NotIntoDiagnosticArg: IntoDiagnosticArg` is not satisfied
   |
LL | #[derive(Subdiagnostic)]
   |          ------------- required by a bound introduced by this call
...
---
             i32
             i64
             i128
           and 49 others
note: required by a bound in `DiagnosticBuilder::<'a, G>::arg`
  --> /rustc/FAKE_PREFIX/compiler/rustc_errors/src/diagnostic.rs:1241:5
error: aborting due to 2 previous errors

For more information about this error, try `rustc --explain E0277`.
------------------------------------------
------------------------------------------


---- [ui] tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs stdout ----
diff of stderr:

655    |
656    = help: normalized in stderr
657 note: required by a bound in `DiagnosticBuilder::<'a, G>::arg`
-   --> $COMPILER_DIR/rustc_errors/src/diagnostic_builder.rs:LL:CC
-    = note: this error originates in the macro `forward` (in Nightly builds, run with -Z macro-backtrace for more info)
+   --> $COMPILER_DIR/rustc_errors/src/diagnostic.rs:1241:5
661 error: aborting due to 84 previous errors
662 


---
--- stderr -------------------------------
error: unsupported type attribute for diagnostic derive enum
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:47:1
   |
LL | #[diag(no_crate_example, code = E0123)]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:50:5
   |
   |
LL |     Foo,
   |     ^^^
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:52:5
   |
LL |     Bar,
LL |     Bar,
   |     ^^^
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`

error: `#[nonsense(...)]` is not a valid attribute
   |
   |
LL | #[nonsense(no_crate_example, code = E0123)]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:63:1
   |
   |
LL | / #[nonsense(no_crate_example, code = E0123)]
LL | | //~^ ERROR `#[nonsense(...)]` is not a valid attribute
LL | | //~^^ ERROR diagnostic slug not specified
LL | | //~^^^ ERROR cannot find attribute `nonsense` in this scope
LL | | struct InvalidStructAttr {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:70:1
   |
LL | / #[diag(code = E0123)]
LL | / #[diag(code = E0123)]
LL | | //~^ ERROR diagnostic slug not specified
LL | | struct InvalidLitNestedAttr {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: diagnostic slug must be the first argument
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:80:16
   |
   |
LL | #[diag(nonsense("foo"), code = E0123, slug = "foo")]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:80:1
   |
   |
LL | / #[diag(nonsense("foo"), code = E0123, slug = "foo")]
LL | | //~^ ERROR diagnostic slug must be the first argument
LL | | //~| ERROR diagnostic slug not specified
LL | | struct InvalidNestedStructAttr1 {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: unknown argument
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:86:8
   |
   |
LL | #[diag(nonsense = "...", code = E0123, slug = "foo")]
   |
   |
   = note: only the `code` parameter is valid after the slug
error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:86:1
   |
   |
LL | / #[diag(nonsense = "...", code = E0123, slug = "foo")]
LL | | //~^ ERROR unknown argument
LL | | //~| ERROR diagnostic slug not specified
LL | | struct InvalidNestedStructAttr2 {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: unknown argument
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:92:8
   |
   |
LL | #[diag(nonsense = 4, code = E0123, slug = "foo")]
   |
   |
   = note: only the `code` parameter is valid after the slug
error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:92:1
   |
   |
LL | / #[diag(nonsense = 4, code = E0123, slug = "foo")]
LL | | //~^ ERROR unknown argument
LL | | //~| ERROR diagnostic slug not specified
LL | | struct InvalidNestedStructAttr3 {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: unknown argument
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:98:40
   |
   |
LL | #[diag(no_crate_example, code = E0123, slug = "foo")]
   |
   |
   = note: only the `code` parameter is valid after the slug

error: `#[suggestion = ...]` is not a valid attribute
   |
   |
LL |     #[suggestion = "bar"]

error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:112:8
   |
   |
LL | #[diag(no_crate_example, code = E0456)]
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:111:8
   |
   |
LL | #[diag(no_crate_example, code = E0123)]

error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:112:26
   |
   |
LL | #[diag(no_crate_example, code = E0456)]
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:111:26
   |
   |
LL | #[diag(no_crate_example, code = E0123)]

error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:118:40
   |
   |
LL | #[diag(no_crate_example, code = E0123, code = E0456)]
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:118:26
   |
   |
LL | #[diag(no_crate_example, code = E0123, code = E0456)]

error: diagnostic slug must be the first argument
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:123:43
   |
   |
LL | #[diag(no_crate_example, no_crate::example, code = E0123)]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:128:1
   |
   |
LL | struct KindNotProvided {} //~ ERROR diagnostic slug not specified
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:131:1
   |
LL | / #[diag(code = E0123)]
LL | / #[diag(code = E0123)]
LL | | //~^ ERROR diagnostic slug not specified
LL | | struct SlugNotProvided {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`

error: the `#[primary_span]` attribute can only be applied to fields of type `Span` or `MultiSpan`
   |
   |
LL |     #[primary_span]


error: `#[nonsense]` is not a valid attribute
   |
   |
LL |     #[nonsense]


error: the `#[label(...)]` attribute can only be applied to fields of type `Span` or `MultiSpan`
   |
   |
LL |     #[label(no_crate_label)]

error: `name` doesn't refer to a field on this type
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:175:46
   |
   |
LL |     #[suggestion(no_crate_suggestion, code = "{name}")]


error: invalid format string: expected `'}'` but string was terminated
   |
LL | #[derive(Diagnostic)]
LL | #[derive(Diagnostic)]
   |          ^^^^^^^^^^ expected `'}'` in format string
   |
   = note: if you intended to print `{`, you can escape it using `{{`
   = note: this error originates in the derive macro `Diagnostic` (in Nightly builds, run with -Z macro-backtrace for more info)

error: invalid format string: unmatched `}` found
   |
LL | #[derive(Diagnostic)]
LL | #[derive(Diagnostic)]
   |          ^^^^^^^^^^ unmatched `}` in format string
   |
   = note: if you intended to print `}`, you can escape it using `}}`
   = note: this error originates in the derive macro `Diagnostic` (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`
   |
   |
LL |     #[label(no_crate_label)]

error: suggestion without `code = "..."`
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:229:5
   |
   |
LL |     #[suggestion(no_crate_suggestion)]

error: invalid nested attribute
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:237:18
   |
   |
LL |     #[suggestion(nonsense = "bar")]
   |
   |
   = help: only `no_span`, `style`, `code` and `applicability` are valid nested attributes
error: suggestion without `code = "..."`
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:237:5
   |
   |
LL |     #[suggestion(nonsense = "bar")]

error: invalid nested attribute
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:246:18
   |
   |
LL |     #[suggestion(msg = "bar")]
   |
   |
   = help: only `no_span`, `style`, `code` and `applicability` are valid nested attributes
error: suggestion without `code = "..."`
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:246:5
   |
   |
LL |     #[suggestion(msg = "bar")]

error: wrong field type for suggestion
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:269:5
   |
   |
LL | /     #[suggestion(no_crate_suggestion, code = "This is suggested code")]
LL | |     //~^ ERROR wrong field type for suggestion
LL | |     suggestion: Applicability,
   |
   |
   = help: `#[suggestion(...)]` should be applied to fields of type `Span` or `(Span, Applicability)`
error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:285:24
   |
   |
LL |     suggestion: (Span, Span, Applicability),
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:285:18
   |
   |
LL |     suggestion: (Span, Span, Applicability),

error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:293:33
   |
   |
LL |     suggestion: (Applicability, Applicability, Span),
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:293:18
   |
   |
LL |     suggestion: (Applicability, Applicability, Span),


error: `#[label = ...]` is not a valid attribute
   |
   |
LL |     #[label = "bar"]

error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:451:5
   |
   |
LL |     #[suggestion(no_crate_suggestion, code = "...", applicability = "maybe-incorrect")]
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:453:24
   |
   |
LL |     suggestion: (Span, Applicability),

error: invalid applicability
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:459:69
   |
   |
LL |     #[suggestion(no_crate_suggestion, code = "...", applicability = "batman")]


error: the `#[help(...)]` attribute can only be applied to fields of type `Span`, `MultiSpan`, `bool` or `()`
   |
   |
LL |     #[help(no_crate_help)]

error: a diagnostic slug must be the first argument to the attribute
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:535:32
   |
   |
LL |     #[label(no_crate_label, foo)]


error: only `no_span` is a valid nested attribute
   |
   |
LL |     #[label(no_crate_label, foo = "...")]


error: only `no_span` is a valid nested attribute
   |
   |
LL |     #[label(no_crate_label, foo("..."))]


error: `#[primary_span]` is not a valid attribute
   |
   |
LL |     #[primary_span]
   |
   = help: the `primary_span` field attribute is not valid for lint diagnostics


error: `#[error(...)]` is not a valid attribute
   |
   |
LL | #[error(no_crate_example, code = E0123)]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:583:1
   |
   |
LL | / #[error(no_crate_example, code = E0123)]
LL | | //~^ ERROR `#[error(...)]` is not a valid attribute
LL | | //~| ERROR diagnostic slug not specified
LL | | //~| ERROR cannot find attribute `error` in this scope
LL | | struct ErrorAttribute {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`

error: `#[warn_(...)]` is not a valid attribute
   |
   |
LL | #[warn_(no_crate_example, code = E0123)]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:590:1
   |
   |
LL | / #[warn_(no_crate_example, code = E0123)]
LL | | //~^ ERROR `#[warn_(...)]` is not a valid attribute
LL | | //~| ERROR diagnostic slug not specified
LL | | //~| ERROR cannot find attribute `warn_` in this scope
LL | | struct WarnAttribute {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`

error: `#[lint(...)]` is not a valid attribute
   |
   |
LL | #[lint(no_crate_example, code = E0123)]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:597:1
   |
   |
LL | / #[lint(no_crate_example, code = E0123)]
LL | | //~^ ERROR `#[lint(...)]` is not a valid attribute
LL | | //~| ERROR diagnostic slug not specified
LL | | //~| ERROR cannot find attribute `lint` in this scope
LL | | struct LintAttributeOnSessionDiag {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`

error: `#[lint(...)]` is not a valid attribute
   |
   |
LL | #[lint(no_crate_example, code = E0123)]


error: `#[lint(...)]` is not a valid attribute
   |
   |
LL | #[lint(no_crate_example, code = E0123)]
   |
   |
   = note: duplicate diagnostic emitted due to `-Z deduplicate-diagnostics=no`
error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:604:1
   |
   |
LL | / #[lint(no_crate_example, code = E0123)]
LL | | //~^ ERROR `#[lint(...)]` is not a valid attribute
LL | | //~| ERROR `#[lint(...)]` is not a valid attribute
LL | | //~| ERROR diagnostic slug not specified
LL | | //~| ERROR cannot find attribute `lint` in this scope
LL | | struct LintAttributeOnLintDiag {}
   |
   |
   = help: specify the slug as the first argument to the attribute, such as `#[diag(compiletest_example)]`
error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:614:53
   |
   |
LL |     #[suggestion(no_crate_suggestion, code = "...", code = ",,,")]
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:614:39
   |
   |
LL |     #[suggestion(no_crate_suggestion, code = "...", code = ",,,")]

error: wrong types for suggestion
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:623:24
   |
   |
LL |     suggestion: (Span, usize),
   |                        ^^^^^
   |
   = help: `#[suggestion(...)]` on a tuple field must be applied to fields of type `(Span, Applicability)`
error: wrong types for suggestion
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:631:17
   |
   |
LL |     suggestion: (Span,),
   |
   |
   = help: `#[suggestion(...)]` on a tuple field must be applied to fields of type `(Span, Applicability)`
error: suggestion without `code = "..."`
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:638:5
   |
   |
LL |     #[suggestion(no_crate_suggestion)]


error: `#[multipart_suggestion(...)]` is not a valid attribute
   |
LL | #[multipart_suggestion(no_crate_suggestion)]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   |
   = help: consider creating a `Subdiagnostic` instead

error: `#[multipart_suggestion(...)]` is not a valid attribute
   |
LL | #[multipart_suggestion()]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   |
   = help: consider creating a `Subdiagnostic` instead

error: `#[multipart_suggestion(...)]` is not a valid attribute
   |
   |
LL |     #[multipart_suggestion(no_crate_suggestion)]
   |
   = help: consider creating a `Subdiagnostic` instead


error: `#[suggestion(...)]` is not a valid attribute
   |
LL | #[suggestion(no_crate_suggestion, code = "...")]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   |
   = help: `#[label]` and `#[suggestion]` can only be applied to fields

error: `#[label]` is not a valid attribute
---

error: cannot find attribute `multipart_suggestion` in this scope
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:652:7
   |
LL |     #[multipart_suggestion(no_crate_suggestion)]

error[E0425]: cannot find value `nonsense` in module `crate::fluent_generated`
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:75:8
   |
   |
LL | #[diag(nonsense, code = E0123)]
   |        ^^^^^^^^ not found in `crate::fluent_generated`

error[E0425]: cannot find value `__code_34` in this scope
   |
   |
LL | #[derive(Diagnostic)] //~ ERROR cannot find value `__code_34` in this scope
   |
   = note: this error originates in the derive macro `Diagnostic` (in Nightly builds, run with -Z macro-backtrace for more info)


error[E0277]: the trait bound `Hello: IntoDiagnosticArg` is not satisfied
   |
LL | #[derive(Diagnostic)]
   |          ---------- required by a bound introduced by this call
...
...
LL |     other: Hello,
   |            ^^^^^ the trait `IntoDiagnosticArg` is not implemented for `Hello`
   = help: the following other types implement trait `IntoDiagnosticArg`:
             bool
             char
             isize
             isize
             i8
             i16
             i32
             i64
             i128
           and 68 others
note: required by a bound in `DiagnosticBuilder::<'a, G>::arg`
  --> /rustc/FAKE_PREFIX/compiler/rustc_errors/src/diagnostic.rs:1241:5
error: aborting due to 84 previous errors

Some errors have detailed explanations: E0277, E0425, E0433.
For more information about an error, try `rustc --explain E0277`.

rust-log-analyzer avatar Feb 02 '24 19:02 rust-log-analyzer

:umbrella: The latest upstream changes (presumably #120620) made this pull request unmergeable. Please resolve the merge conflicts.

bors avatar Feb 04 '24 21:02 bors

The job x86_64-gnu-llvm-16 failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
#12 writing image sha256:9e08f439d10e77c022396c29cc94a99f9fcc5c85c55fc9c6249d722be4dfc5f1 done
#12 naming to docker.io/library/rust-ci done
#12 DONE 10.3s
##[endgroup]
Setting extra environment values for docker:  --env ENABLE_GCC_CODEGEN=1 --env GCC_EXEC_PREFIX=/usr/lib/gcc/
[CI_JOB_NAME=x86_64-gnu-llvm-16]
##[group]Clock drift check
  local time: Tue Feb  6 09:27:59 UTC 2024
  network time: Tue, 06 Feb 2024 09:27:59 GMT
  network time: Tue, 06 Feb 2024 09:27:59 GMT
##[endgroup]
sccache: Starting the server...
##[group]Configure the build
configure: processing command line
configure: 
configure: build.configure-args := ['--build=x86_64-unknown-linux-gnu', '--llvm-root=/usr/lib/llvm-16', '--enable-llvm-link-shared', '--set', 'rust.thin-lto-import-instr-limit=10', '--set', 'change-id=99999999', '--enable-verbose-configure', '--enable-sccache', '--disable-manage-submodules', '--enable-locked-deps', '--enable-cargo-native-static', '--set', 'rust.codegen-units-std=1', '--set', 'dist.compression-profile=balanced', '--dist-compression-formats=xz', '--set', 'build.optimized-compiler-builtins', '--disable-dist-src', '--release-channel=nightly', '--enable-debug-assertions', '--enable-overflow-checks', '--enable-llvm-assertions', '--set', 'rust.verify-llvm-ir', '--set', 'rust.codegen-backends=llvm,cranelift,gcc', '--set', 'llvm.static-libstdcpp', '--enable-new-symbol-mangling']
configure: target.x86_64-unknown-linux-gnu.llvm-config := /usr/lib/llvm-16/bin/llvm-config
configure: llvm.link-shared     := True
configure: rust.thin-lto-import-instr-limit := 10
configure: change-id            := 99999999
---
Uplifting rustc (stage1 -> stage3)
##[group]Testing stage2 compiletest suite=ui-fulldeps mode=ui (x86_64-unknown-linux-gnu)

running 42 tests
.................F.......F................
failures:

---- [ui] tests/ui-fulldeps/session-diagnostic/diagnostic-derive-doc-comment-field.rs stdout ----
diff of stderr:
diff of stderr:

8    |          ^^^^^^^^^^^^^^^^^^^^ the trait `IntoDiagnosticArg` is not implemented for `NotIntoDiagnosticArg`
9    |
10    = help: normalized in stderr
- note: required by a bound in `DiagnosticBuilder::<'a, G>::arg`
-   --> $COMPILER_DIR/rustc_errors/src/diagnostic_builder.rs:LL:CC
-    = note: this error originates in the macro `forward` (in Nightly builds, run with -Z macro-backtrace for more info)
+ note: required by a bound in `rustc_errors::diagnostic::<impl DiagnosticBuilder<'a, G>>::arg`
+   --> $COMPILER_DIR/rustc_errors/src/diagnostic.rs:LL:CC
14 
15 error[E0277]: the trait bound `NotIntoDiagnosticArg: IntoDiagnosticArg` is not satisfied

22    |          ^^^^^^^^^^^^^^^^^^^^ the trait `IntoDiagnosticArg` is not implemented for `NotIntoDiagnosticArg`
23    |
24    = help: normalized in stderr
24    = help: normalized in stderr
- note: required by a bound in `Diagnostic::arg`
+ note: required by a bound in `rustc_errors::diagnostic::<impl DiagnosticBuilder<'a, G>>::arg`
26   --> $COMPILER_DIR/rustc_errors/src/diagnostic.rs:LL:CC
Build completed unsuccessfully in 0:13:37
28 error: aborting due to 2 previous errors


---
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive-doc-comment-field.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui-fulldeps/session-diagnostic/diagnostic-derive-doc-comment-field" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui-fulldeps/session-diagnostic/diagnostic-derive-doc-comment-field/auxiliary"
stdout: none
--- stderr -------------------------------
error[E0277]: the trait bound `NotIntoDiagnosticArg: IntoDiagnosticArg` is not satisfied
   |
LL | #[derive(Diagnostic)]
   |          ---------- required by a bound introduced by this call
...
---
             i32
             i64
             i128
           and 49 others
note: required by a bound in `rustc_errors::diagnostic::<impl DiagnosticBuilder<'a, G>>::arg`
  --> /rustc/FAKE_PREFIX/compiler/rustc_errors/src/diagnostic.rs:1016:5

error[E0277]: the trait bound `NotIntoDiagnosticArg: IntoDiagnosticArg` is not satisfied
   |
LL | #[derive(Subdiagnostic)]
   |          ------------- required by a bound introduced by this call
...
---
             i32
             i64
             i128
           and 49 others
note: required by a bound in `rustc_errors::diagnostic::<impl DiagnosticBuilder<'a, G>>::arg`
  --> /rustc/FAKE_PREFIX/compiler/rustc_errors/src/diagnostic.rs:1016:5
error: aborting due to 2 previous errors

For more information about this error, try `rustc --explain E0277`.
------------------------------------------
------------------------------------------


---- [ui] tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs stdout ----
diff of stderr:

654    |            ^^^^^ the trait `IntoDiagnosticArg` is not implemented for `Hello`
656    = help: normalized in stderr
656    = help: normalized in stderr
- note: required by a bound in `DiagnosticBuilder::<'a, G>::arg`
-   --> $COMPILER_DIR/rustc_errors/src/diagnostic_builder.rs:LL:CC
-    = note: this error originates in the macro `forward` (in Nightly builds, run with -Z macro-backtrace for more info)
+ note: required by a bound in `rustc_errors::diagnostic::<impl DiagnosticBuilder<'a, G>>::arg`
+   --> $COMPILER_DIR/rustc_errors/src/diagnostic.rs:1016:5
661 error: aborting due to 84 previous errors
662 


---
--- stderr -------------------------------
error: unsupported type attribute for diagnostic derive enum
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:47:1
   |
LL | #[diag(no_crate_example, code = E0123)]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:50:5
   |
   |
LL |     Foo,
   |     ^^^
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:52:5
   |
LL |     Bar,
LL |     Bar,
   |     ^^^
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`

error: `#[nonsense(...)]` is not a valid attribute
   |
   |
LL | #[nonsense(no_crate_example, code = E0123)]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:63:1
   |
   |
LL | / #[nonsense(no_crate_example, code = E0123)]
LL | | //~^ ERROR `#[nonsense(...)]` is not a valid attribute
LL | | //~^^ ERROR diagnostic slug not specified
LL | | //~^^^ ERROR cannot find attribute `nonsense` in this scope
LL | | struct InvalidStructAttr {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:70:1
   |
LL | / #[diag(code = E0123)]
LL | / #[diag(code = E0123)]
LL | | //~^ ERROR diagnostic slug not specified
LL | | struct InvalidLitNestedAttr {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: diagnostic slug must be the first argument
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:80:16
   |
   |
LL | #[diag(nonsense("foo"), code = E0123, slug = "foo")]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:80:1
   |
   |
LL | / #[diag(nonsense("foo"), code = E0123, slug = "foo")]
LL | | //~^ ERROR diagnostic slug must be the first argument
LL | | //~| ERROR diagnostic slug not specified
LL | | struct InvalidNestedStructAttr1 {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: unknown argument
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:86:8
   |
   |
LL | #[diag(nonsense = "...", code = E0123, slug = "foo")]
   |
   |
   = note: only the `code` parameter is valid after the slug
error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:86:1
   |
   |
LL | / #[diag(nonsense = "...", code = E0123, slug = "foo")]
LL | | //~^ ERROR unknown argument
LL | | //~| ERROR diagnostic slug not specified
LL | | struct InvalidNestedStructAttr2 {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: unknown argument
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:92:8
   |
   |
LL | #[diag(nonsense = 4, code = E0123, slug = "foo")]
   |
   |
   = note: only the `code` parameter is valid after the slug
error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:92:1
   |
   |
LL | / #[diag(nonsense = 4, code = E0123, slug = "foo")]
LL | | //~^ ERROR unknown argument
LL | | //~| ERROR diagnostic slug not specified
LL | | struct InvalidNestedStructAttr3 {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: unknown argument
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:98:40
   |
   |
LL | #[diag(no_crate_example, code = E0123, slug = "foo")]
   |
   |
   = note: only the `code` parameter is valid after the slug

error: `#[suggestion = ...]` is not a valid attribute
   |
   |
LL |     #[suggestion = "bar"]

error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:112:8
   |
   |
LL | #[diag(no_crate_example, code = E0456)]
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:111:8
   |
   |
LL | #[diag(no_crate_example, code = E0123)]

error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:112:26
   |
   |
LL | #[diag(no_crate_example, code = E0456)]
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:111:26
   |
   |
LL | #[diag(no_crate_example, code = E0123)]

error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:118:40
   |
   |
LL | #[diag(no_crate_example, code = E0123, code = E0456)]
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:118:26
   |
   |
LL | #[diag(no_crate_example, code = E0123, code = E0456)]

error: diagnostic slug must be the first argument
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:123:43
   |
   |
LL | #[diag(no_crate_example, no_crate::example, code = E0123)]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:128:1
   |
   |
LL | struct KindNotProvided {} //~ ERROR diagnostic slug not specified
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:131:1
   |
LL | / #[diag(code = E0123)]
LL | / #[diag(code = E0123)]
LL | | //~^ ERROR diagnostic slug not specified
LL | | struct SlugNotProvided {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`

error: the `#[primary_span]` attribute can only be applied to fields of type `Span` or `MultiSpan`
   |
   |
LL |     #[primary_span]


error: `#[nonsense]` is not a valid attribute
   |
   |
LL |     #[nonsense]


error: the `#[label(...)]` attribute can only be applied to fields of type `Span` or `MultiSpan`
   |
   |
LL |     #[label(no_crate_label)]

error: `name` doesn't refer to a field on this type
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:175:46
   |
   |
LL |     #[suggestion(no_crate_suggestion, code = "{name}")]


error: invalid format string: expected `'}'` but string was terminated
   |
LL | #[derive(Diagnostic)]
LL | #[derive(Diagnostic)]
   |          ^^^^^^^^^^ expected `'}'` in format string
   |
   = note: if you intended to print `{`, you can escape it using `{{`
   = note: this error originates in the derive macro `Diagnostic` (in Nightly builds, run with -Z macro-backtrace for more info)

error: invalid format string: unmatched `}` found
   |
LL | #[derive(Diagnostic)]
LL | #[derive(Diagnostic)]
   |          ^^^^^^^^^^ unmatched `}` in format string
   |
   = note: if you intended to print `}`, you can escape it using `}}`
   = note: this error originates in the derive macro `Diagnostic` (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`
   |
   |
LL |     #[label(no_crate_label)]

error: suggestion without `code = "..."`
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:229:5
   |
   |
LL |     #[suggestion(no_crate_suggestion)]

error: invalid nested attribute
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:237:18
   |
   |
LL |     #[suggestion(nonsense = "bar")]
   |
   |
   = help: only `no_span`, `style`, `code` and `applicability` are valid nested attributes
error: suggestion without `code = "..."`
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:237:5
   |
   |
LL |     #[suggestion(nonsense = "bar")]

error: invalid nested attribute
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:246:18
   |
   |
LL |     #[suggestion(msg = "bar")]
   |
   |
   = help: only `no_span`, `style`, `code` and `applicability` are valid nested attributes
error: suggestion without `code = "..."`
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:246:5
   |
   |
LL |     #[suggestion(msg = "bar")]

error: wrong field type for suggestion
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:269:5
   |
   |
LL | /     #[suggestion(no_crate_suggestion, code = "This is suggested code")]
LL | |     //~^ ERROR wrong field type for suggestion
LL | |     suggestion: Applicability,
   |
   |
   = help: `#[suggestion(...)]` should be applied to fields of type `Span` or `(Span, Applicability)`
error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:285:24
   |
   |
LL |     suggestion: (Span, Span, Applicability),
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:285:18
   |
   |
LL |     suggestion: (Span, Span, Applicability),

error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:293:33
   |
   |
LL |     suggestion: (Applicability, Applicability, Span),
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:293:18
   |
   |
LL |     suggestion: (Applicability, Applicability, Span),


error: `#[label = ...]` is not a valid attribute
   |
   |
LL |     #[label = "bar"]

error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:451:5
   |
   |
LL |     #[suggestion(no_crate_suggestion, code = "...", applicability = "maybe-incorrect")]
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:453:24
   |
   |
LL |     suggestion: (Span, Applicability),

error: invalid applicability
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:459:69
   |
   |
LL |     #[suggestion(no_crate_suggestion, code = "...", applicability = "batman")]


error: the `#[help(...)]` attribute can only be applied to fields of type `Span`, `MultiSpan`, `bool` or `()`
   |
   |
LL |     #[help(no_crate_help)]

error: a diagnostic slug must be the first argument to the attribute
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:535:32
   |
   |
LL |     #[label(no_crate_label, foo)]


error: only `no_span` is a valid nested attribute
   |
   |
LL |     #[label(no_crate_label, foo = "...")]


error: only `no_span` is a valid nested attribute
   |
   |
LL |     #[label(no_crate_label, foo("..."))]


error: `#[primary_span]` is not a valid attribute
   |
   |
LL |     #[primary_span]
   |
   = help: the `primary_span` field attribute is not valid for lint diagnostics


error: `#[error(...)]` is not a valid attribute
   |
   |
LL | #[error(no_crate_example, code = E0123)]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:583:1
   |
   |
LL | / #[error(no_crate_example, code = E0123)]
LL | | //~^ ERROR `#[error(...)]` is not a valid attribute
LL | | //~| ERROR diagnostic slug not specified
LL | | //~| ERROR cannot find attribute `error` in this scope
LL | | struct ErrorAttribute {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`

error: `#[warn_(...)]` is not a valid attribute
   |
   |
LL | #[warn_(no_crate_example, code = E0123)]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:590:1
   |
   |
LL | / #[warn_(no_crate_example, code = E0123)]
LL | | //~^ ERROR `#[warn_(...)]` is not a valid attribute
LL | | //~| ERROR diagnostic slug not specified
LL | | //~| ERROR cannot find attribute `warn_` in this scope
LL | | struct WarnAttribute {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`

error: `#[lint(...)]` is not a valid attribute
   |
   |
LL | #[lint(no_crate_example, code = E0123)]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:597:1
   |
   |
LL | / #[lint(no_crate_example, code = E0123)]
LL | | //~^ ERROR `#[lint(...)]` is not a valid attribute
LL | | //~| ERROR diagnostic slug not specified
LL | | //~| ERROR cannot find attribute `lint` in this scope
LL | | struct LintAttributeOnSessionDiag {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`

error: `#[lint(...)]` is not a valid attribute
   |
   |
LL | #[lint(no_crate_example, code = E0123)]


error: `#[lint(...)]` is not a valid attribute
   |
   |
LL | #[lint(no_crate_example, code = E0123)]
   |
   |
   = note: duplicate diagnostic emitted due to `-Z deduplicate-diagnostics=no`
error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:604:1
   |
   |
LL | / #[lint(no_crate_example, code = E0123)]
LL | | //~^ ERROR `#[lint(...)]` is not a valid attribute
LL | | //~| ERROR `#[lint(...)]` is not a valid attribute
LL | | //~| ERROR diagnostic slug not specified
LL | | //~| ERROR cannot find attribute `lint` in this scope
LL | | struct LintAttributeOnLintDiag {}
   |
   |
   = help: specify the slug as the first argument to the attribute, such as `#[diag(compiletest_example)]`
error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:614:53
   |
   |
LL |     #[suggestion(no_crate_suggestion, code = "...", code = ",,,")]
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:614:39
   |
   |
LL |     #[suggestion(no_crate_suggestion, code = "...", code = ",,,")]

error: wrong types for suggestion
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:623:24
   |
   |
LL |     suggestion: (Span, usize),
   |                        ^^^^^
   |
   = help: `#[suggestion(...)]` on a tuple field must be applied to fields of type `(Span, Applicability)`
error: wrong types for suggestion
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:631:17
   |
   |
LL |     suggestion: (Span,),
   |
   |
   = help: `#[suggestion(...)]` on a tuple field must be applied to fields of type `(Span, Applicability)`
error: suggestion without `code = "..."`
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:638:5
   |
   |
LL |     #[suggestion(no_crate_suggestion)]


error: `#[multipart_suggestion(...)]` is not a valid attribute
   |
LL | #[multipart_suggestion(no_crate_suggestion)]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   |
   = help: consider creating a `Subdiagnostic` instead

error: `#[multipart_suggestion(...)]` is not a valid attribute
   |
LL | #[multipart_suggestion()]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   |
   = help: consider creating a `Subdiagnostic` instead

error: `#[multipart_suggestion(...)]` is not a valid attribute
   |
   |
LL |     #[multipart_suggestion(no_crate_suggestion)]
   |
   = help: consider creating a `Subdiagnostic` instead


error: `#[suggestion(...)]` is not a valid attribute
   |
LL | #[suggestion(no_crate_suggestion, code = "...")]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   |
   = help: `#[label]` and `#[suggestion]` can only be applied to fields

error: `#[label]` is not a valid attribute
---

error: cannot find attribute `multipart_suggestion` in this scope
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:652:7
   |
LL |     #[multipart_suggestion(no_crate_suggestion)]

error[E0425]: cannot find value `nonsense` in module `crate::fluent_generated`
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:75:8
   |
   |
LL | #[diag(nonsense, code = E0123)]
   |        ^^^^^^^^ not found in `crate::fluent_generated`

error[E0425]: cannot find value `__code_34` in this scope
   |
   |
LL | #[derive(Diagnostic)] //~ ERROR cannot find value `__code_34` in this scope
   |
   = note: this error originates in the derive macro `Diagnostic` (in Nightly builds, run with -Z macro-backtrace for more info)


error[E0277]: the trait bound `Hello: IntoDiagnosticArg` is not satisfied
   |
LL | #[derive(Diagnostic)]
   |          ---------- required by a bound introduced by this call
...
...
LL |     other: Hello,
   |            ^^^^^ the trait `IntoDiagnosticArg` is not implemented for `Hello`
   = help: the following other types implement trait `IntoDiagnosticArg`:
             bool
             char
             isize
             isize
             i8
             i16
             i32
             i64
             i128
           and 68 others
note: required by a bound in `rustc_errors::diagnostic::<impl DiagnosticBuilder<'a, G>>::arg`
  --> /rustc/FAKE_PREFIX/compiler/rustc_errors/src/diagnostic.rs:1016:5
error: aborting due to 84 previous errors

Some errors have detailed explanations: E0277, E0425, E0433.
For more information about an error, try `rustc --explain E0277`.

rust-log-analyzer avatar Feb 06 '24 09:02 rust-log-analyzer

The job mingw-check failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
#13 3.961 Building wheels for collected packages: reuse
#13 3.962   Building wheel for reuse (pyproject.toml): started
#13 4.286   Building wheel for reuse (pyproject.toml): finished with status 'done'
#13 4.287   Created wheel for reuse: filename=reuse-1.1.0-cp310-cp310-manylinux_2_35_x86_64.whl size=181117 sha256=f5f58750481f69515c2c0d1d503daf565e2565c370d07fc6aeb95fe3498b4269
#13 4.287   Stored in directory: /tmp/pip-ephem-wheel-cache-pnhp1h_j/wheels/c2/3c/b9/1120c2ab4bd82694f7e6f0537dc5b9a085c13e2c69a8d0c76d
#13 4.290 Installing collected packages: boolean-py, binaryornot, setuptools, reuse, python-debian, markupsafe, license-expression, jinja2, chardet
#13 4.311   Attempting uninstall: setuptools
#13 4.312     Found existing installation: setuptools 59.6.0
#13 4.313     Not uninstalling setuptools at /usr/lib/python3/dist-packages, outside environment /usr
---
 Documenting rustc_session v0.0.0 (/checkout/compiler/rustc_session)
 Documenting rustc_llvm v0.0.0 (/checkout/compiler/rustc_llvm)
 Documenting rustc_errors v0.0.0 (/checkout/compiler/rustc_errors)
 Documenting rustc_lint_defs v0.0.0 (/checkout/compiler/rustc_lint_defs)
error: unresolved link to `Diagnostic::span_label`
    |
    |
366 |         #[doc = concat!("See [`Diagnostic::", stringify!($f), "()`].")]
...
...
412 |     with_fn!((span_label, with_span_label)(span: Span, label: impl Into<SubdiagnosticMessage>));
    |
    = note: the link appears in this line:
            
            
            See [`Diagnostic::span_label()`].
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^
    = note: the struct `Diagnostic` has no function named `span_label`
    = note: `-D rustdoc::broken-intra-doc-links` implied by `-D warnings`
    = help: to override `-D warnings` add `#[allow(rustdoc::broken_intra_doc_links)]`
    = note: this error originates in the macro `with_fn` (in Nightly builds, run with -Z macro-backtrace for more info)

error: unresolved link to `Diagnostic::span_labels`
    |
    |
366 |         #[doc = concat!("See [`Diagnostic::", stringify!($f), "()`].")]
...
...
422 |     with_fn!((span_labels, with_span_labels)(spans: impl IntoIterator<Item = Span>, label: &str));
    |
    = note: the link appears in this line:
            
            
            See [`Diagnostic::span_labels()`].
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^
    = note: the struct `Diagnostic` has no function named `span_labels`
    = note: this error originates in the macro `with_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
error: unresolved link to `Diagnostic::note`
   --> compiler/rustc_errors/src/diagnostic.rs:366:9
    |
    |
366 |           #[doc = concat!("See [`Diagnostic::", stringify!($f), "()`].")]
...
...
506 | /     with_fn!((note, with_note)(
507 | |         msg: impl Into<SubdiagnosticMessage>,
    | |______- in this macro invocation
    |
    = note: the link appears in this line:
            
            
            See [`Diagnostic::note()`].
                 ^^^^^^^^^^^^^^^^^^^^
    = note: the struct `Diagnostic` has no function named `note`
    = note: this error originates in the macro `with_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
error: unresolved link to `Diagnostic::note`
   --> compiler/rustc_errors/src/diagnostic.rs:516:24
    |
    |
516 |     /// This is like [`Diagnostic::note()`], but it gets its own span.
    |                        ^^^^^^^^^^^^^^^^^^ the struct `Diagnostic` has no function named `note`
error: unresolved link to `Diagnostic::note`
   --> compiler/rustc_errors/src/diagnostic.rs:523:24
    |
    |
523 |     /// This is like [`Diagnostic::note()`], but it gets its own span.
    |                        ^^^^^^^^^^^^^^^^^^ the struct `Diagnostic` has no function named `note`
error: unresolved link to `Diagnostic::span_note`
   --> compiler/rustc_errors/src/diagnostic.rs:366:9
    |
    |
366 |           #[doc = concat!("See [`Diagnostic::", stringify!($f), "()`].")]
...
...
532 | /     with_fn!((span_note, with_span_note)(
533 | |         sp: impl Into<MultiSpan>,
534 | |         msg: impl Into<SubdiagnosticMessage>,
    | |______- in this macro invocation
    |
    = note: the link appears in this line:
            
            
            See [`Diagnostic::span_note()`].
                 ^^^^^^^^^^^^^^^^^^^^^^^^^
    = note: the struct `Diagnostic` has no function named `span_note`
    = note: this error originates in the macro `with_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
error: unresolved link to `Diagnostic::note`
   --> compiler/rustc_errors/src/diagnostic.rs:538:24
    |
    |
538 |     /// This is like [`Diagnostic::note()`], but it gets its own span.
    |                        ^^^^^^^^^^^^^^^^^^ the struct `Diagnostic` has no function named `note`

error: unresolved link to `Diagnostic::warn`
    |
    |
366 |         #[doc = concat!("See [`Diagnostic::", stringify!($f), "()`].")]
...
...
553 |     with_fn!((warn, with_warn)(msg: impl Into<SubdiagnosticMessage>));
    |
    = note: the link appears in this line:
            
            
            See [`Diagnostic::warn()`].
                 ^^^^^^^^^^^^^^^^^^^^
    = note: the struct `Diagnostic` has no function named `warn`
    = note: this error originates in the macro `with_fn` (in Nightly builds, run with -Z macro-backtrace for more info)

error: unresolved link to `Diagnostic::warn`
    |
    |
556 |     /// This is like [`Diagnostic::warn()`], but it gets its own span.
    |                        ^^^^^^^^^^^^^^^^^^ the struct `Diagnostic` has no function named `warn`
error: unresolved link to `Diagnostic::help`
   --> compiler/rustc_errors/src/diagnostic.rs:366:9
    |
    |
366 |         #[doc = concat!("See [`Diagnostic::", stringify!($f), "()`].")]
...
...
571 |     with_fn!((help, with_help)(msg: impl Into<SubdiagnosticMessage>));
    |
    = note: the link appears in this line:
            
            
            See [`Diagnostic::help()`].
                 ^^^^^^^^^^^^^^^^^^^^
    = note: the struct `Diagnostic` has no function named `help`
    = note: this error originates in the macro `with_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
error: unresolved link to `Diagnostic::help`
   --> compiler/rustc_errors/src/diagnostic.rs:574:24
    |
    |
574 |     /// This is like [`Diagnostic::help()`], but it gets its own span.
    |                        ^^^^^^^^^^^^^^^^^^ the struct `Diagnostic` has no function named `help`
error: unresolved link to `Diagnostic::help`
   --> compiler/rustc_errors/src/diagnostic.rs:587:24
    |
    |
587 |     /// This is like [`Diagnostic::help()`], but it gets its own span.
    |                        ^^^^^^^^^^^^^^^^^^ the struct `Diagnostic` has no function named `help`
error: unresolved link to `Diagnostic::multipart_suggestion`
   --> compiler/rustc_errors/src/diagnostic.rs:366:9
    |
    |
366 |           #[doc = concat!("See [`Diagnostic::", stringify!($f), "()`].")]
...
...
627 | /     with_fn!((multipart_suggestion, with_multipart_suggestion)(
628 | |         msg: impl Into<SubdiagnosticMessage>,
629 | |         suggestion: Vec<(Span, String)>,
630 | |         applicability: Applicability,
    | |______- in this macro invocation
    |
    = note: the link appears in this line:
            
            
            See [`Diagnostic::multipart_suggestion()`].
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    = note: the struct `Diagnostic` has no function named `multipart_suggestion`
    = note: this error originates in the macro `with_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
error: unresolved link to `Diagnostic::multipart_suggestion`
   --> compiler/rustc_errors/src/diagnostic.rs:649:11
    |
    |
649 |     /// [`Diagnostic::multipart_suggestion()`] but you can set the [`SuggestionStyle`].
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the struct `Diagnostic` has no function named `multipart_suggestion`
error: unresolved link to `Diagnostic::span_suggestion`
   --> compiler/rustc_errors/src/diagnostic.rs:366:9
    |
    |
366 |           #[doc = concat!("See [`Diagnostic::", stringify!($f), "()`].")]
...
...
739 | /     with_fn!((span_suggestion, with_span_suggestion)(
740 | |         sp: Span,
741 | |         msg: impl Into<SubdiagnosticMessage>,
742 | |         suggestion: impl ToString,
743 | |         applicability: Applicability,
    | |______- in this macro invocation
    |
    = note: the link appears in this line:
            
            
            See [`Diagnostic::span_suggestion()`].
    = note: the struct `Diagnostic` has no function named `span_suggestion`
    = note: this error originates in the macro `with_fn` (in Nightly builds, run with -Z macro-backtrace for more info)

error: unresolved link to `Diagnostic::span_suggestion`
error: unresolved link to `Diagnostic::span_suggestion`
   --> compiler/rustc_errors/src/diagnostic.rs:746:11
    |
746 |     /// [`Diagnostic::span_suggestion()`] but you can set the [`SuggestionStyle`].
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the struct `Diagnostic` has no function named `span_suggestion`
error: unresolved link to `Diagnostic::span_suggestion_verbose`
   --> compiler/rustc_errors/src/diagnostic.rs:366:9
    |
    |
366 |           #[doc = concat!("See [`Diagnostic::", stringify!($f), "()`].")]
...
...
787 | /     with_fn!((span_suggestion_verbose, with_span_suggestion_verbose)(
788 | |         sp: Span,
789 | |         msg: impl Into<SubdiagnosticMessage>,
790 | |         suggestion: impl ToString,
791 | |         applicability: Applicability,
    | |______- in this macro invocation
    |
    = note: the link appears in this line:
            
            
            See [`Diagnostic::span_suggestion_verbose()`].
    = note: the struct `Diagnostic` has no function named `span_suggestion_verbose`
    = note: this error originates in the macro `with_fn` (in Nightly builds, run with -Z macro-backtrace for more info)

error: unresolved link to `Diagnostic::span_suggestion`
error: unresolved link to `Diagnostic::span_suggestion`
   --> compiler/rustc_errors/src/diagnostic.rs:795:20
    |
795 |     /// See also [`Diagnostic::span_suggestion()`].
    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the struct `Diagnostic` has no function named `span_suggestion`
error: unresolved link to `Diagnostic::span_suggestions`
   --> compiler/rustc_errors/src/diagnostic.rs:366:9
    |
    |
366 |           #[doc = concat!("See [`Diagnostic::", stringify!($f), "()`].")]
...
...
811 | /     with_fn!((span_suggestions, with_span_suggestions)(
812 | |         sp: Span,
813 | |         msg: impl Into<SubdiagnosticMessage>,
814 | |         suggestions: impl IntoIterator<Item = String>,
815 | |         applicability: Applicability,
    | |______- in this macro invocation
    |
    = note: the link appears in this line:
            
            
            See [`Diagnostic::span_suggestions()`].
    = note: the struct `Diagnostic` has no function named `span_suggestions`
    = note: this error originates in the macro `with_fn` (in Nightly builds, run with -Z macro-backtrace for more info)

error: unresolved link to `Diagnostic::multipart_suggestion`
error: unresolved link to `Diagnostic::multipart_suggestion`
   --> compiler/rustc_errors/src/diagnostic.rs:847:20
    |
847 |     /// See also [`Diagnostic::multipart_suggestion()`].
    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the struct `Diagnostic` has no function named `multipart_suggestion`
error: unresolved link to `Diagnostic::span_suggestion_short`
   --> compiler/rustc_errors/src/diagnostic.rs:366:9
    |
    |
366 |           #[doc = concat!("See [`Diagnostic::", stringify!($f), "()`].")]
...
...
909 | /     with_fn!((span_suggestion_short, with_span_suggestion_short)(
910 | |         sp: Span,
911 | |         msg: impl Into<SubdiagnosticMessage>,
912 | |         suggestion: impl ToString,
913 | |         applicability: Applicability,
    | |______- in this macro invocation
    |
    = note: the link appears in this line:
            
            
            See [`Diagnostic::span_suggestion_short()`].
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    = note: the struct `Diagnostic` has no function named `span_suggestion_short`
    = note: this error originates in the macro `with_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
error: unresolved link to `Diagnostic::tool_only_span_suggestion`
   --> compiler/rustc_errors/src/diagnostic.rs:366:9
    |
    |
366 |           #[doc = concat!("See [`Diagnostic::", stringify!($f), "()`].")]
...
...
959 | /     with_fn!((tool_only_span_suggestion, with_tool_only_span_suggestion)(
960 | |         sp: Span,
961 | |         msg: impl Into<SubdiagnosticMessage>,
962 | |         suggestion: impl ToString,
963 | |         applicability: Applicability,
    | |______- in this macro invocation
    |
    = note: the link appears in this line:
            
            
            See [`Diagnostic::tool_only_span_suggestion()`].
    = note: the struct `Diagnostic` has no function named `tool_only_span_suggestion`
    = note: this error originates in the macro `with_fn` (in Nightly builds, run with -Z macro-backtrace for more info)


error: incompatible link kind for `Diagnostic::span`
    |
    |
366 |         #[doc = concat!("See [`Diagnostic::", stringify!($f), "()`].")]
...
...
997 |     with_fn!((span, with_span)(sp: impl Into<MultiSpan>));
    |
    = note: the link appears in this line:
            
            
            See [`Diagnostic::span()`].
    = note: this link resolved to a field, which is not a function
    = help: to link to the field, remove the disambiguator: Diagnostic::span
    = note: this error originates in the macro `with_fn` (in Nightly builds, run with -Z macro-backtrace for more info)


error: incompatible link kind for `Diagnostic::code`
     |
     |
366  |         #[doc = concat!("See [`Diagnostic::", stringify!($f), "()`].")]
...
...
1008 |     with_fn!((code, with_code)(code: ErrCode));
     |
     = note: the link appears in this line:
             
             
             See [`Diagnostic::code()`].
     = note: this link resolved to a field, which is not a function
     = help: to link to the field, remove the disambiguator: Diagnostic::code
     = note: this error originates in the macro `with_fn` (in Nightly builds, run with -Z macro-backtrace for more info)


error: unresolved link to `Diagnostic::primary_message`
    --> compiler/rustc_errors/src/diagnostic.rs:366:9
     |
366  |         #[doc = concat!("See [`Diagnostic::", stringify!($f), "()`].")]
...
...
1014 |     with_fn!((primary_message, with_primary_message)(msg: impl Into<DiagnosticMessage>));
     |
     = note: the link appears in this line:
             
             
             See [`Diagnostic::primary_message()`].
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
     = note: the struct `Diagnostic` has no function named `primary_message`
     = note: this error originates in the macro `with_fn` (in Nightly builds, run with -Z macro-backtrace for more info)
error: could not document `rustc_errors`

Caused by:
Caused by:
  process didn't exit successfully: `/checkout/obj/build/bootstrap/debug/rustdoc --edition=2021 --crate-type lib --crate-name rustc_errors compiler/rustc_errors/src/lib.rs --target x86_64-unknown-linux-gnu -o /checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/doc --cfg 'feature="rustc_use_parallel_compiler"' -Zunstable-options --check-cfg 'cfg(feature, values("rustc_use_parallel_compiler"))' --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat -C metadata=185e281839008feb -L dependency=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps -L dependency=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/release/deps --extern annotate_snippets=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/libannotate_snippets-39ef21e95353c5d5.rmeta --extern derive_setters=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/release/deps/libderive_setters-4ce089f1faa6f959.so --extern rustc_ast=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/librustc_ast-c29a7a4a8fb4963b.rmeta --extern rustc_ast_pretty=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/librustc_ast_pretty-1dd73fe4fce047dd.rmeta --extern rustc_data_structures=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/librustc_data_structures-bfc0412bbace91ba.rmeta --extern rustc_error_codes=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/librustc_error_codes-bae48000633ac757.rmeta --extern rustc_error_messages=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/librustc_error_messages-e63b69eb4aa8ac1d.rmeta --extern rustc_fluent_macro=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/release/deps/librustc_fluent_macro-2685d59ba6ae9557.so --extern rustc_hir=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/librustc_hir-45f004f25d17978e.rmeta --extern rustc_index=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/librustc_index-d94d47a73d3ae89a.rmeta --extern rustc_lint_defs=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/librustc_lint_defs-3cb15c12152da59d.rmeta --extern rustc_macros=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/release/deps/librustc_macros-ba8a824cec70a568.so --extern rustc_serialize=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/librustc_serialize-f17792ab35a51978.rmeta --extern rustc_span=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/librustc_span-8bc5a1afaafcdd6d.rmeta --extern rustc_target=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/librustc_target-e8cbe457e3721546.rmeta --extern rustc_type_ir=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/librustc_type_ir-13e9c4d207c42024.rmeta --extern serde=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/libserde-bb301bdc9378518e.rmeta --extern serde_json=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/libserde_json-1c015c32c49a4fa2.rmeta --extern termcolor=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/libtermcolor-c353ce9b5708eb30.rmeta --extern termize=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/libtermize-0cbec8c63703abb7.rmeta --extern tracing=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/libtracing-0063cc7f8511d30f.rmeta --extern unicode_width=/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/libunicode_width-e425089dfe6327e3.rmeta --extern-html-root-url 'annotate_snippets=https://docs.rs/annotate-snippets/0.10.1/' --extern-html-root-url 'derive_setters=https://docs.rs/derive_setters/0.1.6/' --extern-html-root-url 'serde=https://docs.rs/serde/1.0.185/' --extern-html-root-url 'serde_json=https://docs.rs/serde_json/1.0.99/' --extern-html-root-url 'termcolor=https://docs.rs/termcolor/1.2.0/' --extern-html-root-url 'termize=https://docs.rs/termize/0.1.1/' --extern-html-root-url 'tracing=https://docs.rs/tracing/0.1.37/' --extern-html-root-url 'unicode_width=https://docs.rs/unicode-width/0.1.11/' -Zunstable-options --cfg=bootstrap --cfg=windows_raw_dylib -Csymbol-mangling-version=v0 -Zunstable-options '--check-cfg=cfg(bootstrap)' '--check-cfg=cfg(parallel_compiler)' '--check-cfg=cfg(no_btreemap_remove_entry)' '--check-cfg=cfg(crossbeam_loom)' '--check-cfg=cfg(span_locations)' '--check-cfg=cfg(rustix_use_libc)' '--check-cfg=cfg(emulate_second_only_system)' '--check-cfg=cfg(windows_raw_dylib)' --document-private-items --document-hidden-items -Dwarnings '-Wrustdoc::invalid_codeblock_attributes' --crate-version '1.78.0-nightly (237cedc5c 2024-02-06)' --document-private-items '-Arustdoc::private-intra-doc-links' --enable-index-page -Zunstable-options -Znormalize-docs --show-type-layout --generate-link-to-definition '-Zcrate-attr=warn(rust_2018_idioms)' --cfg=parallel_compiler --extern-html-root-url 'ena=https://docs.rs/ena/latest/'` (exit status: 1)
Build completed unsuccessfully in 0:00:37
  local time: Tue Feb  6 10:49:24 UTC 2024
  network time: Tue, 06 Feb 2024 10:49:24 GMT
##[error]Process completed with exit code 1.

rust-log-analyzer avatar Feb 06 '24 10:02 rust-log-analyzer

The job x86_64-gnu-llvm-16 failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
#12 writing image sha256:67be854905e1f25f918f5ee06b8b2f365e29c0ce3e1e2d9ca7596c6988b2a783 done
#12 naming to docker.io/library/rust-ci done
#12 DONE 10.0s
##[endgroup]
Setting extra environment values for docker:  --env ENABLE_GCC_CODEGEN=1 --env GCC_EXEC_PREFIX=/usr/lib/gcc/
[CI_JOB_NAME=x86_64-gnu-llvm-16]
##[group]Clock drift check
  local time: Tue Feb  6 21:31:24 UTC 2024
  network time: Tue, 06 Feb 2024 21:31:24 GMT
  network time: Tue, 06 Feb 2024 21:31:24 GMT
##[endgroup]
sccache: Starting the server...
##[group]Configure the build
configure: processing command line
configure: 
configure: build.configure-args := ['--build=x86_64-unknown-linux-gnu', '--llvm-root=/usr/lib/llvm-16', '--enable-llvm-link-shared', '--set', 'rust.thin-lto-import-instr-limit=10', '--set', 'change-id=99999999', '--enable-verbose-configure', '--enable-sccache', '--disable-manage-submodules', '--enable-locked-deps', '--enable-cargo-native-static', '--set', 'rust.codegen-units-std=1', '--set', 'dist.compression-profile=balanced', '--dist-compression-formats=xz', '--set', 'build.optimized-compiler-builtins', '--disable-dist-src', '--release-channel=nightly', '--enable-debug-assertions', '--enable-overflow-checks', '--enable-llvm-assertions', '--set', 'rust.verify-llvm-ir', '--set', 'rust.codegen-backends=llvm,cranelift,gcc', '--set', 'llvm.static-libstdcpp', '--enable-new-symbol-mangling']
configure: target.x86_64-unknown-linux-gnu.llvm-config := /usr/lib/llvm-16/bin/llvm-config
configure: llvm.link-shared     := True
configure: rust.thin-lto-import-instr-limit := 10
configure: change-id            := 99999999
---
---- [ui] tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs stdout ----
diff of stderr:

655    |
656    = help: normalized in stderr
657 note: required by a bound in `rustc_errors::diagnostic::<impl DiagnosticBuilder<'a, G>>::arg`
-   --> $COMPILER_DIR/rustc_errors/src/diagnostic.rs:1016:5
+   --> $COMPILER_DIR/rustc_errors/src/diagnostic.rs:1014:5
660 error: aborting due to 84 previous errors
661 


---
--- stderr -------------------------------
error: unsupported type attribute for diagnostic derive enum
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:47:1
   |
LL | #[diag(no_crate_example, code = E0123)]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:50:5
   |
   |
LL |     Foo,
   |     ^^^
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:52:5
   |
LL |     Bar,
LL |     Bar,
   |     ^^^
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`

error: `#[nonsense(...)]` is not a valid attribute
   |
   |
LL | #[nonsense(no_crate_example, code = E0123)]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:63:1
   |
   |
LL | / #[nonsense(no_crate_example, code = E0123)]
LL | | //~^ ERROR `#[nonsense(...)]` is not a valid attribute
LL | | //~^^ ERROR diagnostic slug not specified
LL | | //~^^^ ERROR cannot find attribute `nonsense` in this scope
LL | | struct InvalidStructAttr {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:70:1
   |
LL | / #[diag(code = E0123)]
LL | / #[diag(code = E0123)]
LL | | //~^ ERROR diagnostic slug not specified
LL | | struct InvalidLitNestedAttr {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: diagnostic slug must be the first argument
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:80:16
   |
   |
LL | #[diag(nonsense("foo"), code = E0123, slug = "foo")]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:80:1
   |
   |
LL | / #[diag(nonsense("foo"), code = E0123, slug = "foo")]
LL | | //~^ ERROR diagnostic slug must be the first argument
LL | | //~| ERROR diagnostic slug not specified
LL | | struct InvalidNestedStructAttr1 {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: unknown argument
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:86:8
   |
   |
LL | #[diag(nonsense = "...", code = E0123, slug = "foo")]
   |
   |
   = note: only the `code` parameter is valid after the slug
error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:86:1
   |
   |
LL | / #[diag(nonsense = "...", code = E0123, slug = "foo")]
LL | | //~^ ERROR unknown argument
LL | | //~| ERROR diagnostic slug not specified
LL | | struct InvalidNestedStructAttr2 {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: unknown argument
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:92:8
   |
   |
LL | #[diag(nonsense = 4, code = E0123, slug = "foo")]
   |
   |
   = note: only the `code` parameter is valid after the slug
error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:92:1
   |
   |
LL | / #[diag(nonsense = 4, code = E0123, slug = "foo")]
LL | | //~^ ERROR unknown argument
LL | | //~| ERROR diagnostic slug not specified
LL | | struct InvalidNestedStructAttr3 {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: unknown argument
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:98:40
   |
   |
LL | #[diag(no_crate_example, code = E0123, slug = "foo")]
   |
   |
   = note: only the `code` parameter is valid after the slug

error: `#[suggestion = ...]` is not a valid attribute
   |
   |
LL |     #[suggestion = "bar"]

error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:112:8
   |
   |
LL | #[diag(no_crate_example, code = E0456)]
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:111:8
   |
   |
LL | #[diag(no_crate_example, code = E0123)]

error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:112:26
   |
   |
LL | #[diag(no_crate_example, code = E0456)]
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:111:26
   |
   |
LL | #[diag(no_crate_example, code = E0123)]

error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:118:40
   |
   |
LL | #[diag(no_crate_example, code = E0123, code = E0456)]
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:118:26
   |
   |
LL | #[diag(no_crate_example, code = E0123, code = E0456)]

error: diagnostic slug must be the first argument
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:123:43
   |
   |
LL | #[diag(no_crate_example, no_crate::example, code = E0123)]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:128:1
   |
   |
LL | struct KindNotProvided {} //~ ERROR diagnostic slug not specified
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:131:1
   |
LL | / #[diag(code = E0123)]
LL | / #[diag(code = E0123)]
LL | | //~^ ERROR diagnostic slug not specified
LL | | struct SlugNotProvided {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`

error: the `#[primary_span]` attribute can only be applied to fields of type `Span` or `MultiSpan`
   |
   |
LL |     #[primary_span]


error: `#[nonsense]` is not a valid attribute
   |
   |
LL |     #[nonsense]


error: the `#[label(...)]` attribute can only be applied to fields of type `Span` or `MultiSpan`
   |
   |
LL |     #[label(no_crate_label)]

error: `name` doesn't refer to a field on this type
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:175:46
   |
   |
LL |     #[suggestion(no_crate_suggestion, code = "{name}")]


error: invalid format string: expected `'}'` but string was terminated
   |
LL | #[derive(Diagnostic)]
LL | #[derive(Diagnostic)]
   |          ^^^^^^^^^^ expected `'}'` in format string
   |
   = note: if you intended to print `{`, you can escape it using `{{`
   = note: this error originates in the derive macro `Diagnostic` (in Nightly builds, run with -Z macro-backtrace for more info)

error: invalid format string: unmatched `}` found
   |
LL | #[derive(Diagnostic)]
LL | #[derive(Diagnostic)]
   |          ^^^^^^^^^^ unmatched `}` in format string
   |
   = note: if you intended to print `}`, you can escape it using `}}`
   = note: this error originates in the derive macro `Diagnostic` (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`
   |
   |
LL |     #[label(no_crate_label)]

error: suggestion without `code = "..."`
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:229:5
Build completed unsuccessfully in 0:13:40
Build completed unsuccessfully in 0:13:40
   |
LL |     #[suggestion(no_crate_suggestion)]

error: invalid nested attribute
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:237:18
   |
   |
LL |     #[suggestion(nonsense = "bar")]
   |
   |
   = help: only `no_span`, `style`, `code` and `applicability` are valid nested attributes
error: suggestion without `code = "..."`
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:237:5
   |
   |
LL |     #[suggestion(nonsense = "bar")]

error: invalid nested attribute
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:246:18
   |
   |
LL |     #[suggestion(msg = "bar")]
   |
   |
   = help: only `no_span`, `style`, `code` and `applicability` are valid nested attributes
error: suggestion without `code = "..."`
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:246:5
   |
   |
LL |     #[suggestion(msg = "bar")]

error: wrong field type for suggestion
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:269:5
   |
   |
LL | /     #[suggestion(no_crate_suggestion, code = "This is suggested code")]
LL | |     //~^ ERROR wrong field type for suggestion
LL | |     suggestion: Applicability,
   |
   |
   = help: `#[suggestion(...)]` should be applied to fields of type `Span` or `(Span, Applicability)`
error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:285:24
   |
   |
LL |     suggestion: (Span, Span, Applicability),
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:285:18
   |
   |
LL |     suggestion: (Span, Span, Applicability),

error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:293:33
   |
   |
LL |     suggestion: (Applicability, Applicability, Span),
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:293:18
   |
   |
LL |     suggestion: (Applicability, Applicability, Span),


error: `#[label = ...]` is not a valid attribute
   |
   |
LL |     #[label = "bar"]

error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:451:5
   |
   |
LL |     #[suggestion(no_crate_suggestion, code = "...", applicability = "maybe-incorrect")]
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:453:24
   |
   |
LL |     suggestion: (Span, Applicability),

error: invalid applicability
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:459:69
   |
   |
LL |     #[suggestion(no_crate_suggestion, code = "...", applicability = "batman")]


error: the `#[help(...)]` attribute can only be applied to fields of type `Span`, `MultiSpan`, `bool` or `()`
   |
   |
LL |     #[help(no_crate_help)]

error: a diagnostic slug must be the first argument to the attribute
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:535:32
   |
   |
LL |     #[label(no_crate_label, foo)]


error: only `no_span` is a valid nested attribute
   |
   |
LL |     #[label(no_crate_label, foo = "...")]


error: only `no_span` is a valid nested attribute
   |
   |
LL |     #[label(no_crate_label, foo("..."))]


error: `#[primary_span]` is not a valid attribute
   |
   |
LL |     #[primary_span]
   |
   = help: the `primary_span` field attribute is not valid for lint diagnostics


error: `#[error(...)]` is not a valid attribute
   |
   |
LL | #[error(no_crate_example, code = E0123)]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:583:1
   |
   |
LL | / #[error(no_crate_example, code = E0123)]
LL | | //~^ ERROR `#[error(...)]` is not a valid attribute
LL | | //~| ERROR diagnostic slug not specified
LL | | //~| ERROR cannot find attribute `error` in this scope
LL | | struct ErrorAttribute {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`

error: `#[warn_(...)]` is not a valid attribute
   |
   |
LL | #[warn_(no_crate_example, code = E0123)]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:590:1
   |
   |
LL | / #[warn_(no_crate_example, code = E0123)]
LL | | //~^ ERROR `#[warn_(...)]` is not a valid attribute
LL | | //~| ERROR diagnostic slug not specified
LL | | //~| ERROR cannot find attribute `warn_` in this scope
LL | | struct WarnAttribute {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`

error: `#[lint(...)]` is not a valid attribute
   |
   |
LL | #[lint(no_crate_example, code = E0123)]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:597:1
   |
   |
LL | / #[lint(no_crate_example, code = E0123)]
LL | | //~^ ERROR `#[lint(...)]` is not a valid attribute
LL | | //~| ERROR diagnostic slug not specified
LL | | //~| ERROR cannot find attribute `lint` in this scope
LL | | struct LintAttributeOnSessionDiag {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`

error: `#[lint(...)]` is not a valid attribute
   |
   |
LL | #[lint(no_crate_example, code = E0123)]


error: `#[lint(...)]` is not a valid attribute
   |
   |
LL | #[lint(no_crate_example, code = E0123)]
   |
   |
   = note: duplicate diagnostic emitted due to `-Z deduplicate-diagnostics=no`
error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:604:1
   |
   |
LL | / #[lint(no_crate_example, code = E0123)]
LL | | //~^ ERROR `#[lint(...)]` is not a valid attribute
LL | | //~| ERROR `#[lint(...)]` is not a valid attribute
LL | | //~| ERROR diagnostic slug not specified
LL | | //~| ERROR cannot find attribute `lint` in this scope
LL | | struct LintAttributeOnLintDiag {}
   |
   |
   = help: specify the slug as the first argument to the attribute, such as `#[diag(compiletest_example)]`
error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:614:53
   |
   |
LL |     #[suggestion(no_crate_suggestion, code = "...", code = ",,,")]
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:614:39
   |
   |
LL |     #[suggestion(no_crate_suggestion, code = "...", code = ",,,")]

error: wrong types for suggestion
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:623:24
   |
   |
LL |     suggestion: (Span, usize),
   |                        ^^^^^
   |
   = help: `#[suggestion(...)]` on a tuple field must be applied to fields of type `(Span, Applicability)`
error: wrong types for suggestion
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:631:17
   |
   |
LL |     suggestion: (Span,),
   |
   |
   = help: `#[suggestion(...)]` on a tuple field must be applied to fields of type `(Span, Applicability)`
error: suggestion without `code = "..."`
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:638:5
   |
   |
LL |     #[suggestion(no_crate_suggestion)]


error: `#[multipart_suggestion(...)]` is not a valid attribute
   |
LL | #[multipart_suggestion(no_crate_suggestion)]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   |
   = help: consider creating a `Subdiagnostic` instead

error: `#[multipart_suggestion(...)]` is not a valid attribute
   |
LL | #[multipart_suggestion()]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   |
   = help: consider creating a `Subdiagnostic` instead

error: `#[multipart_suggestion(...)]` is not a valid attribute
   |
   |
LL |     #[multipart_suggestion(no_crate_suggestion)]
   |
   = help: consider creating a `Subdiagnostic` instead


error: `#[suggestion(...)]` is not a valid attribute
   |
LL | #[suggestion(no_crate_suggestion, code = "...")]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   |
   = help: `#[label]` and `#[suggestion]` can only be applied to fields

---

error: cannot find attribute `multipart_suggestion` in this scope
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:652:7
   |
LL |     #[multipart_suggestion(no_crate_suggestion)]

error[E0425]: cannot find value `nonsense` in module `crate::fluent_generated`
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:75:8
   |
   |
LL | #[diag(nonsense, code = E0123)]
   |        ^^^^^^^^ not found in `crate::fluent_generated`

error[E0425]: cannot find value `__code_34` in this scope
   |
   |
LL | #[derive(Diagnostic)] //~ ERROR cannot find value `__code_34` in this scope
   |
   = note: this error originates in the derive macro `Diagnostic` (in Nightly builds, run with -Z macro-backtrace for more info)


error[E0277]: the trait bound `Hello: IntoDiagnosticArg` is not satisfied
   |
LL | #[derive(Diagnostic)]
   |          ---------- required by a bound introduced by this call
...
...
LL |     other: Hello,
   |            ^^^^^ the trait `IntoDiagnosticArg` is not implemented for `Hello`
   = help: the following other types implement trait `IntoDiagnosticArg`:
             bool
             char
             isize
             isize
             i8
             i16
             i32
             i64
             i128
           and 68 others
note: required by a bound in `rustc_errors::diagnostic::<impl DiagnosticBuilder<'a, G>>::arg`
  --> /rustc/FAKE_PREFIX/compiler/rustc_errors/src/diagnostic.rs:1014:5
error: aborting due to 84 previous errors

Some errors have detailed explanations: E0277, E0425, E0433.
For more information about an error, try `rustc --explain E0277`.

rust-log-analyzer avatar Feb 06 '24 21:02 rust-log-analyzer

The job x86_64-gnu-llvm-16 failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
#12 writing image sha256:05826139046d5199904c0157b6c175c9a99bddd2dc6058b9735fda3d34cfa97c done
#12 naming to docker.io/library/rust-ci done
#12 DONE 10.0s
##[endgroup]
Setting extra environment values for docker:  --env ENABLE_GCC_CODEGEN=1 --env GCC_EXEC_PREFIX=/usr/lib/gcc/
[CI_JOB_NAME=x86_64-gnu-llvm-16]
##[group]Clock drift check
  local time: Tue Feb  6 22:25:46 UTC 2024
  network time: Tue, 06 Feb 2024 22:25:46 GMT
  network time: Tue, 06 Feb 2024 22:25:46 GMT
##[endgroup]
sccache: Starting the server...
##[group]Configure the build
configure: processing command line
configure: 
configure: build.configure-args := ['--build=x86_64-unknown-linux-gnu', '--llvm-root=/usr/lib/llvm-16', '--enable-llvm-link-shared', '--set', 'rust.thin-lto-import-instr-limit=10', '--set', 'change-id=99999999', '--enable-verbose-configure', '--enable-sccache', '--disable-manage-submodules', '--enable-locked-deps', '--enable-cargo-native-static', '--set', 'rust.codegen-units-std=1', '--set', 'dist.compression-profile=balanced', '--dist-compression-formats=xz', '--set', 'build.optimized-compiler-builtins', '--disable-dist-src', '--release-channel=nightly', '--enable-debug-assertions', '--enable-overflow-checks', '--enable-llvm-assertions', '--set', 'rust.verify-llvm-ir', '--set', 'rust.codegen-backends=llvm,cranelift,gcc', '--set', 'llvm.static-libstdcpp', '--enable-new-symbol-mangling']
configure: target.x86_64-unknown-linux-gnu.llvm-config := /usr/lib/llvm-16/bin/llvm-config
configure: llvm.link-shared     := True
configure: rust.thin-lto-import-instr-limit := 10
configure: change-id            := 99999999
---
---- [ui] tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs stdout ----
diff of stderr:

655    |
656    = help: normalized in stderr
657 note: required by a bound in `rustc_errors::diagnostic::<impl DiagnosticBuilder<'a, G>>::arg`
-   --> $COMPILER_DIR/rustc_errors/src/diagnostic.rs:1014:5
+   --> $COMPILER_DIR/rustc_errors/src/diagnostic.rs:1010:5
660 error: aborting due to 84 previous errors
661 


---
--- stderr -------------------------------
error: unsupported type attribute for diagnostic derive enum
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:47:1
   |
LL | #[diag(no_crate_example, code = E0123)]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:50:5
Build completed unsuccessfully in 0:13:43
Build completed unsuccessfully in 0:13:43
   |
LL |     Foo,
   |     ^^^
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:52:5
   |
LL |     Bar,
LL |     Bar,
   |     ^^^
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`

error: `#[nonsense(...)]` is not a valid attribute
   |
   |
LL | #[nonsense(no_crate_example, code = E0123)]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:63:1
   |
   |
LL | / #[nonsense(no_crate_example, code = E0123)]
LL | | //~^ ERROR `#[nonsense(...)]` is not a valid attribute
LL | | //~^^ ERROR diagnostic slug not specified
LL | | //~^^^ ERROR cannot find attribute `nonsense` in this scope
LL | | struct InvalidStructAttr {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:70:1
   |
LL | / #[diag(code = E0123)]
LL | / #[diag(code = E0123)]
LL | | //~^ ERROR diagnostic slug not specified
LL | | struct InvalidLitNestedAttr {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: diagnostic slug must be the first argument
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:80:16
   |
   |
LL | #[diag(nonsense("foo"), code = E0123, slug = "foo")]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:80:1
   |
   |
LL | / #[diag(nonsense("foo"), code = E0123, slug = "foo")]
LL | | //~^ ERROR diagnostic slug must be the first argument
LL | | //~| ERROR diagnostic slug not specified
LL | | struct InvalidNestedStructAttr1 {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: unknown argument
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:86:8
   |
   |
LL | #[diag(nonsense = "...", code = E0123, slug = "foo")]
   |
   |
   = note: only the `code` parameter is valid after the slug
error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:86:1
   |
   |
LL | / #[diag(nonsense = "...", code = E0123, slug = "foo")]
LL | | //~^ ERROR unknown argument
LL | | //~| ERROR diagnostic slug not specified
LL | | struct InvalidNestedStructAttr2 {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: unknown argument
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:92:8
   |
   |
LL | #[diag(nonsense = 4, code = E0123, slug = "foo")]
   |
   |
   = note: only the `code` parameter is valid after the slug
error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:92:1
   |
   |
LL | / #[diag(nonsense = 4, code = E0123, slug = "foo")]
LL | | //~^ ERROR unknown argument
LL | | //~| ERROR diagnostic slug not specified
LL | | struct InvalidNestedStructAttr3 {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: unknown argument
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:98:40
   |
   |
LL | #[diag(no_crate_example, code = E0123, slug = "foo")]
   |
   |
   = note: only the `code` parameter is valid after the slug

error: `#[suggestion = ...]` is not a valid attribute
   |
   |
LL |     #[suggestion = "bar"]

error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:112:8
   |
   |
LL | #[diag(no_crate_example, code = E0456)]
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:111:8
   |
   |
LL | #[diag(no_crate_example, code = E0123)]

error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:112:26
   |
   |
LL | #[diag(no_crate_example, code = E0456)]
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:111:26
   |
   |
LL | #[diag(no_crate_example, code = E0123)]

error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:118:40
   |
   |
LL | #[diag(no_crate_example, code = E0123, code = E0456)]
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:118:26
   |
   |
LL | #[diag(no_crate_example, code = E0123, code = E0456)]

error: diagnostic slug must be the first argument
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:123:43
   |
   |
LL | #[diag(no_crate_example, no_crate::example, code = E0123)]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:128:1
   |
   |
LL | struct KindNotProvided {} //~ ERROR diagnostic slug not specified
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`
error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:131:1
   |
LL | / #[diag(code = E0123)]
LL | / #[diag(code = E0123)]
LL | | //~^ ERROR diagnostic slug not specified
LL | | struct SlugNotProvided {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`

error: the `#[primary_span]` attribute can only be applied to fields of type `Span` or `MultiSpan`
   |
   |
LL |     #[primary_span]


error: `#[nonsense]` is not a valid attribute
   |
   |
LL |     #[nonsense]


error: the `#[label(...)]` attribute can only be applied to fields of type `Span` or `MultiSpan`
   |
   |
LL |     #[label(no_crate_label)]

error: `name` doesn't refer to a field on this type
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:175:46
   |
   |
LL |     #[suggestion(no_crate_suggestion, code = "{name}")]


error: invalid format string: expected `'}'` but string was terminated
   |
LL | #[derive(Diagnostic)]
LL | #[derive(Diagnostic)]
   |          ^^^^^^^^^^ expected `'}'` in format string
   |
   = note: if you intended to print `{`, you can escape it using `{{`
   = note: this error originates in the derive macro `Diagnostic` (in Nightly builds, run with -Z macro-backtrace for more info)

error: invalid format string: unmatched `}` found
   |
LL | #[derive(Diagnostic)]
LL | #[derive(Diagnostic)]
   |          ^^^^^^^^^^ unmatched `}` in format string
   |
   = note: if you intended to print `}`, you can escape it using `}}`
   = note: this error originates in the derive macro `Diagnostic` (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`
   |
   |
LL |     #[label(no_crate_label)]

error: suggestion without `code = "..."`
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:229:5
   |
   |
LL |     #[suggestion(no_crate_suggestion)]

error: invalid nested attribute
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:237:18
   |
   |
LL |     #[suggestion(nonsense = "bar")]
   |
   |
   = help: only `no_span`, `style`, `code` and `applicability` are valid nested attributes
error: suggestion without `code = "..."`
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:237:5
   |
   |
LL |     #[suggestion(nonsense = "bar")]

error: invalid nested attribute
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:246:18
   |
   |
LL |     #[suggestion(msg = "bar")]
   |
   |
   = help: only `no_span`, `style`, `code` and `applicability` are valid nested attributes
error: suggestion without `code = "..."`
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:246:5
   |
   |
LL |     #[suggestion(msg = "bar")]

error: wrong field type for suggestion
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:269:5
   |
   |
LL | /     #[suggestion(no_crate_suggestion, code = "This is suggested code")]
LL | |     //~^ ERROR wrong field type for suggestion
LL | |     suggestion: Applicability,
   |
   |
   = help: `#[suggestion(...)]` should be applied to fields of type `Span` or `(Span, Applicability)`
error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:285:24
   |
   |
LL |     suggestion: (Span, Span, Applicability),
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:285:18
   |
   |
LL |     suggestion: (Span, Span, Applicability),

error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:293:33
   |
   |
LL |     suggestion: (Applicability, Applicability, Span),
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:293:18
   |
   |
LL |     suggestion: (Applicability, Applicability, Span),


error: `#[label = ...]` is not a valid attribute
   |
   |
LL |     #[label = "bar"]

error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:451:5
   |
   |
LL |     #[suggestion(no_crate_suggestion, code = "...", applicability = "maybe-incorrect")]
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:453:24
   |
   |
LL |     suggestion: (Span, Applicability),

error: invalid applicability
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:459:69
   |
   |
LL |     #[suggestion(no_crate_suggestion, code = "...", applicability = "batman")]


error: the `#[help(...)]` attribute can only be applied to fields of type `Span`, `MultiSpan`, `bool` or `()`
   |
   |
LL |     #[help(no_crate_help)]

error: a diagnostic slug must be the first argument to the attribute
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:535:32
   |
   |
LL |     #[label(no_crate_label, foo)]


error: only `no_span` is a valid nested attribute
   |
   |
LL |     #[label(no_crate_label, foo = "...")]


error: only `no_span` is a valid nested attribute
   |
   |
LL |     #[label(no_crate_label, foo("..."))]


error: `#[primary_span]` is not a valid attribute
   |
   |
LL |     #[primary_span]
   |
   = help: the `primary_span` field attribute is not valid for lint diagnostics


error: `#[error(...)]` is not a valid attribute
   |
   |
LL | #[error(no_crate_example, code = E0123)]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:583:1
   |
   |
LL | / #[error(no_crate_example, code = E0123)]
LL | | //~^ ERROR `#[error(...)]` is not a valid attribute
LL | | //~| ERROR diagnostic slug not specified
LL | | //~| ERROR cannot find attribute `error` in this scope
LL | | struct ErrorAttribute {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`

error: `#[warn_(...)]` is not a valid attribute
   |
   |
LL | #[warn_(no_crate_example, code = E0123)]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:590:1
   |
   |
LL | / #[warn_(no_crate_example, code = E0123)]
LL | | //~^ ERROR `#[warn_(...)]` is not a valid attribute
LL | | //~| ERROR diagnostic slug not specified
LL | | //~| ERROR cannot find attribute `warn_` in this scope
LL | | struct WarnAttribute {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`

error: `#[lint(...)]` is not a valid attribute
   |
   |
LL | #[lint(no_crate_example, code = E0123)]

error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:597:1
   |
   |
LL | / #[lint(no_crate_example, code = E0123)]
LL | | //~^ ERROR `#[lint(...)]` is not a valid attribute
LL | | //~| ERROR diagnostic slug not specified
LL | | //~| ERROR cannot find attribute `lint` in this scope
LL | | struct LintAttributeOnSessionDiag {}
   |
   |
   = help: specify the slug as the first argument to the `#[diag(...)]` attribute, such as `#[diag(hir_analysis_example_error)]`

error: `#[lint(...)]` is not a valid attribute
   |
   |
LL | #[lint(no_crate_example, code = E0123)]


error: `#[lint(...)]` is not a valid attribute
   |
   |
LL | #[lint(no_crate_example, code = E0123)]
   |
   |
   = note: duplicate diagnostic emitted due to `-Z deduplicate-diagnostics=no`
error: diagnostic slug not specified
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:604:1
   |
   |
LL | / #[lint(no_crate_example, code = E0123)]
LL | | //~^ ERROR `#[lint(...)]` is not a valid attribute
LL | | //~| ERROR `#[lint(...)]` is not a valid attribute
LL | | //~| ERROR diagnostic slug not specified
LL | | //~| ERROR cannot find attribute `lint` in this scope
LL | | struct LintAttributeOnLintDiag {}
   |
   |
   = help: specify the slug as the first argument to the attribute, such as `#[diag(compiletest_example)]`
error: specified multiple times
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:614:53
   |
   |
LL |     #[suggestion(no_crate_suggestion, code = "...", code = ",,,")]
   |
note: previously specified here
  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:614:39
   |
   |
LL |     #[suggestion(no_crate_suggestion, code = "...", code = ",,,")]

error: wrong types for suggestion
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:623:24
   |
   |
LL |     suggestion: (Span, usize),
   |                        ^^^^^
   |
   = help: `#[suggestion(...)]` on a tuple field must be applied to fields of type `(Span, Applicability)`
error: wrong types for suggestion
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:631:17
   |
   |
LL |     suggestion: (Span,),
   |
   |
   = help: `#[suggestion(...)]` on a tuple field must be applied to fields of type `(Span, Applicability)`
error: suggestion without `code = "..."`
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:638:5
   |
   |
LL |     #[suggestion(no_crate_suggestion)]


error: `#[multipart_suggestion(...)]` is not a valid attribute
   |
LL | #[multipart_suggestion(no_crate_suggestion)]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   |
   = help: consider creating a `Subdiagnostic` instead

error: `#[multipart_suggestion(...)]` is not a valid attribute
   |
LL | #[multipart_suggestion()]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   |
   = help: consider creating a `Subdiagnostic` instead

error: `#[multipart_suggestion(...)]` is not a valid attribute
   |
   |
LL |     #[multipart_suggestion(no_crate_suggestion)]
   |
   = help: consider creating a `Subdiagnostic` instead


error: `#[suggestion(...)]` is not a valid attribute
   |
LL | #[suggestion(no_crate_suggestion, code = "...")]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   |
   = help: `#[label]` and `#[suggestion]` can only be applied to fields

---

error: cannot find attribute `multipart_suggestion` in this scope
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:652:7
   |
LL |     #[multipart_suggestion(no_crate_suggestion)]

error[E0425]: cannot find value `nonsense` in module `crate::fluent_generated`
##[error]  --> /checkout/tests/ui-fulldeps/session-diagnostic/diagnostic-derive.rs:75:8
   |
   |
LL | #[diag(nonsense, code = E0123)]
   |        ^^^^^^^^ not found in `crate::fluent_generated`

error[E0425]: cannot find value `__code_34` in this scope
   |
   |
LL | #[derive(Diagnostic)] //~ ERROR cannot find value `__code_34` in this scope
   |
   = note: this error originates in the derive macro `Diagnostic` (in Nightly builds, run with -Z macro-backtrace for more info)


error[E0277]: the trait bound `Hello: IntoDiagnosticArg` is not satisfied
   |
LL | #[derive(Diagnostic)]
   |          ---------- required by a bound introduced by this call
...
...
LL |     other: Hello,
   |            ^^^^^ the trait `IntoDiagnosticArg` is not implemented for `Hello`
   = help: the following other types implement trait `IntoDiagnosticArg`:
             bool
             char
             isize
             isize
             i8
             i16
             i32
             i64
             i128
           and 68 others
note: required by a bound in `rustc_errors::diagnostic::<impl DiagnosticBuilder<'a, G>>::arg`
  --> /rustc/FAKE_PREFIX/compiler/rustc_errors/src/diagnostic.rs:1010:5
error: aborting due to 84 previous errors

Some errors have detailed explanations: E0277, E0425, E0433.
For more information about an error, try `rustc --explain E0277`.

rust-log-analyzer avatar Feb 06 '24 22:02 rust-log-analyzer

:umbrella: The latest upstream changes (presumably #120748) made this pull request unmergeable. Please resolve the merge conflicts.

bors avatar Feb 07 '24 22:02 bors

Some changes occurred to MIR optimizations

cc @rust-lang/wg-mir-opt

rustbot avatar Feb 08 '24 03:02 rustbot

@bors try

nnethercote avatar Feb 08 '24 03:02 nnethercote

:hourglass: Trying commit 40fb7d5414c64173b9e85d37414a22c5a8999f9f with merge dcb3508f801971ecd3d274efc644c3f4229af03c...

bors avatar Feb 08 '24 03:02 bors

:sunny: Try build successful - checks-actions Build commit: dcb3508f801971ecd3d274efc644c3f4229af03c (dcb3508f801971ecd3d274efc644c3f4229af03c)

bors avatar Feb 08 '24 04:02 bors

The job x86_64-gnu-tools failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
   Compiling rustc_borrowck v0.0.0 (/checkout/compiler/rustc_borrowck)
error: diagnostics should be created using translatable messages
   --> compiler/rustc_const_eval/src/transform/check_consts/ops.rs:601:14
    |
601 |             .help("to fix this, the value can be extracted to a `const` and then used.");
    |
    = note: `#[deny(rustc::untranslatable_diagnostic)]` on by default

error: diagnostics should be created using translatable messages
error: diagnostics should be created using translatable messages
   --> compiler/rustc_const_eval/src/transform/check_consts/ops.rs:600:14
    |
600 | ...   .note("`static` and `const` variables can refer to other `const` variables. A `const` variable, however, cannot refer to a `static`...

error: could not compile `rustc_const_eval` (lib) due to 2 previous errors
warning: build failed, waiting for other jobs to finish...
error: diagnostics should only be created in `IntoDiagnostic`/`AddToDiagnostic` impls
error: diagnostics should only be created in `IntoDiagnostic`/`AddToDiagnostic` impls
    --> compiler/rustc_borrowck/src/lib.rs:2499:26
     |
2499 |                     diag.note(format!("...and {} other attempted mutable borrows", count - 10));
     |
     = note: `#[deny(rustc::diagnostic_outside_of_impl)]` on by default

error: diagnostics should be created using translatable messages
error: diagnostics should be created using translatable messages
    --> compiler/rustc_borrowck/src/lib.rs:2499:26
     |
2499 |                     diag.note(format!("...and {} other attempted mutable borrows", count - 10));
     |
     = note: `#[deny(rustc::untranslatable_diagnostic)]` on by default

error: could not compile `rustc_borrowck` (lib) due to 2 previous errors

rust-log-analyzer avatar Feb 12 '24 21:02 rust-log-analyzer

:umbrella: The latest upstream changes (presumably #120931) made this pull request unmergeable. Please resolve the merge conflicts.

bors avatar Feb 15 '24 14:02 bors

:umbrella: The latest upstream changes (presumably #121227) made this pull request unmergeable. Please resolve the merge conflicts.

bors avatar Feb 17 '24 14:02 bors

The job x86_64-gnu-tools failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
   Compiling rustc_borrowck v0.0.0 (/checkout/compiler/rustc_borrowck)
error: the item `ErrCode` is imported redundantly
 --> compiler/rustc_hir_analysis/src/structured_errors/wrong_number_of_generic_args.rs:2:75
  |
2 | use rustc_errors::{codes::*, pluralize, Applicability, DiagnosticBuilder, ErrCode, MultiSpan};
  |                    -------- the item `ErrCode` is already imported here   ^^^^^^^
  = note: `-D unused-imports` implied by `-D warnings`
  = help: to override `-D warnings` add `#[allow(unused_imports)]`

error: could not compile `rustc_hir_analysis` (lib) due to 1 previous error

rust-log-analyzer avatar Feb 18 '24 19:02 rust-log-analyzer

@bors r+

davidtwco avatar Feb 20 '24 10:02 davidtwco

:pushpin: Commit f6f87798439e2ce7861da761b444fe0978335ed9 has been approved by davidtwco

It is now in the queue for this repository.

bors avatar Feb 20 '24 10:02 bors

:hourglass: Testing commit f6f87798439e2ce7861da761b444fe0978335ed9 with merge 29f87ade9d78d233e85ef6ca2d6153d0d4fd38d6...

bors avatar Feb 20 '24 12:02 bors

:sunny: Test successful - checks-actions Approved by: davidtwco Pushing 29f87ade9d78d233e85ef6ca2d6153d0d4fd38d6 to master...

bors avatar Feb 20 '24 14:02 bors

Finished benchmarking commit (29f87ade9d78d233e85ef6ca2d6153d0d4fd38d6): comparison URL.

Overall result: ✅ improvements - no action needed

@rustbot label: -perf-regression

Instruction count

This is a highly reliable metric that was used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-0.3% [-0.3%, -0.3%] 1
Improvements ✅
(secondary)
-3.6% [-5.2%, -1.9%] 2
All ❌✅ (primary) -0.3% [-0.3%, -0.3%] 1

Max RSS (memory usage)

Results

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
2.1% [2.1%, 2.1%] 1
Regressions ❌
(secondary)
3.1% [3.0%, 3.2%] 2
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-1.6% [-3.7%, -0.8%] 4
All ❌✅ (primary) 2.1% [2.1%, 2.1%] 1

Cycles

Results

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-3.3% [-3.7%, -2.9%] 2
All ❌✅ (primary) - - 0

Binary size

This benchmark run did not return any relevant results for this metric.

Bootstrap: 639.567s -> 640.822s (0.20%) Artifact size: 310.63 MiB -> 308.66 MiB (-0.63%)

rust-timer avatar Feb 20 '24 15:02 rust-timer

I believe this has broken Rocket on nightly. Here's the ICE:

thread 'rustc' panicked at compiler/rustc_errors/src/diagnostic_builder.rs:117:9:
invalid diagnostic level (Warning)
stack backtrace:
   0:     0x7ff40f98caf6 - std::backtrace_rs::backtrace::libunwind::trace::h1eedb42239d9af6b
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/std/src/../../backtrace/src/backtrace/libunwind.rs:104:5
   1:     0x7ff40f98caf6 - std::backtrace_rs::backtrace::trace_unsynchronized::hf37e37075d32c152
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x7ff40f98caf6 - std::sys_common::backtrace::_print_fmt::h089ff4e21712e78d
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/std/src/sys_common/backtrace.rs:68:5
   3:     0x7ff40f98caf6 - <:sys_common::backtrace::_print::displaybacktrace as core::fmt::display>::fmt::h249f2f40a85530bd
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/std/src/sys_common/backtrace.rs:44:22
   4:     0x7ff40f9dda7c - core::fmt::rt::Argument::fmt::h0aeed2b676ebf5da
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/core/src/fmt/rt.rs:142:9
   5:     0x7ff40f9dda7c - core::fmt::write::h25b3f5340152b6c4
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/core/src/fmt/mod.rs:1120:17
   6:     0x7ff40f98142f - std::io::Write::write_fmt::h8746a81e0adfe285
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/std/src/io/mod.rs:1846:15
   7:     0x7ff40f98c8a4 - std::sys_common::backtrace::_print::hcf22409f3667d346
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/std/src/sys_common/backtrace.rs:47:5
   8:     0x7ff40f98c8a4 - std::sys_common::backtrace::print::h7d3fd33863df24d3
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/std/src/sys_common/backtrace.rs:34:9
   9:     0x7ff40f98f5eb - std::panicking::default_hook::{{closure}}::h69f3f4f5b3bceec1
  10:     0x7ff40f98f339 - std::panicking::default_hook::hf73563d650f0e118
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/std/src/panicking.rs:292:9
  11:     0x7ff41281a63c - std[38a2ac7f7aa65357]::panicking::update_hook::>::{closure#0}
  12:     0x7ff40f98fd50 - <:boxed::box> as core::ops::function::Fn>::call::h0f1d4fd9cb21869d
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/alloc/src/boxed.rs:2030:9
  13:     0x7ff40f98fd50 - std::panicking::rust_panic_with_hook::h55549baaf7aa2e9c
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/std/src/panicking.rs:786:13
  14:     0x7ff40f98fa92 - std::panicking::begin_panic_handler::{{closure}}::ha0f2b022514542bd
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/std/src/panicking.rs:660:13
  15:     0x7ff40f98cfd6 - std::sys_common::backtrace::__rust_end_short_backtrace::h710104fb518da581
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/std/src/sys_common/backtrace.rs:171:18
  16:     0x7ff40f98f7c4 - rust_begin_unwind
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/std/src/panicking.rs:648:5
  17:     0x7ff40f9d9f95 - core::panicking::panic_fmt::h98f81ca1314e2b14
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/core/src/panicking.rs:72:14
  18:     0x7ff414aee592 - ::emit_producing_guarantee
  19:     0x7ff413f0b2a4 - > as proc_macro[478832a3ff351ddb]::bridge::server::DispatcherTrait>::dispatch
  20:     0x7ff413f08376 -  as core[9082f35584c4c405]::convert::From>::from::call::::run_bridge_and_client>>::{closure#0}>
  21:     0x7ff3ecde306f - proc_macro::bridge::closure::Closure::call::h98a90dd4c3bd18d9
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/proc_macro/src/bridge/closure.rs:30:18
  22:     0x7ff3ecde306f - proc_macro::bridge::client::FreeFunctions::emit_diagnostic::{{closure}}::h02a3b7ffb0337edf
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/proc_macro/src/bridge/client.rs:238:43
  23:     0x7ff3ecde306f - proc_macro::bridge::client::Bridge::with::{{closure}}::h4a7782b669169a4e
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/proc_macro/src/bridge/client.rs:312:47
  24:     0x7ff3ecde306f - proc_macro::bridge::scoped_cell::ScopedCell::replace::h71fa0068b5643e5f
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/proc_macro/src/bridge/scoped_cell.rs:56:9
  25:     0x7ff3ecde306f - proc_macro::bridge::client::BridgeState::with::{{closure}}::ha67dc0[569](https://github.com/rwf2/Rocket/actions/runs/7985532655/job/21804162579#step:11:570)336188c
                               at /rustc/bb594538fc6e84213a6b8d5e165442[570](https://github.com/rwf2/Rocket/actions/runs/7985532655/job/21804162579#step:11:571)aa48923/library/proc_macro/src/bridge/client.rs:299:35
  26:     0x7ff3ecde306f - std::thread::local::LocalKey::try_with::hf59b7c62c02da428
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/std/src/thread/local.rs:286:16
  27:     0x7ff3ecde306f - std::thread::local::LocalKey::with::h4a285a6948869979
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/std/src/thread/local.rs:262:9
  28:     0x7ff3ecde306f - proc_macro::bridge::client::BridgeState::with::h7efcfe9838a80494
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/proc_macro/src/bridge/client.rs:299:22
  29:     0x7ff3ecde306f - proc_macro::bridge::client::Bridge::with::h1aa91c3ee1cfd06f
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/proc_macro/src/bridge/client.rs:305:9
  30:     0x7ff3ecde306f - proc_macro::bridge::client::FreeFunctions::emit_diagnostic::h1e0a8325d6884b21
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/proc_macro/src/bridge/client.rs:231:17
  31:     0x7ff3ecde306f - proc_macro::diagnostic::Diagnostic::emit::h4d32195130f72312
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/proc_macro/src/diagnostic.rs:173:9
  32:     0x7ff3ecc0cb8c - proc_macro2_diagnostics::diagnostic::Diagnostic::emit_as_tokens::h7376933de7600d53
                               at /home/runner/.cargo/registry/src/index.crates.io-6f17d22bba15001f/proc-macro2-diagnostics-0.10.1/src/diagnostic.rs:185:9
  33:     0x7ff3ecc0cc7e - proc_macro2_diagnostics::diagnostic::Diagnostic::emit_as_item_tokens::hdefbf272558007fd
                               at /home/runner/.cargo/registry/src/index.crates.io-6f17d22bba15001f/proc-macro2-diagnostics-0.10.1/src/diagnostic.rs:193:9
  34:     0x7ff3ecafd3e6 - <:http_codegen::mediatype as devise_core::from_meta::frommeta>::from_meta::h7686f3e587a6c6bc
  35:     0x7ff3ecb53efa - <:option::option> as devise_core::from_meta::FromMeta>::from_meta::h0aab5359903e7f4d
  36:     0x7ff3ecb78556 - rocket_codegen::attribute::route::parse::_::::from_meta::h44442893fb49c605
  37:     0x7ff3ecb728a3 - rocket_codegen::attribute::route::incomplete_route::h71b825bdcb5b45d4
  38:     0x7ff3ecb7365c - rocket_codegen::attribute::route::route_attribute::hb228309f02baa254
  39:     0x7ff3ecaec0bf - rocket_codegen::put::h9ddfe8d1e9c1b876
  40:     0x7ff3ecadd7b4 - core::ops::function::Fn::call::hb0b2d304bd8ba2ba
  41:     0x7ff3eca86737 - proc_macro::bridge::client::Client::expand2::{{closure}}::{{closure}}::h939fd429ff3286cb
  42:     0x7ff3eca817da - proc_macro::bridge::client::run_client::{{closure}}::{{closure}}::{{closure}}::hd4e8941be918b5db
  43:     0x7ff3ecac33f5 - proc_macro::bridge::scoped_cell::ScopedCell::set::{{closure}}::hf03972e6461bce0f
  44:     0x7ff3ecac902e - proc_macro::bridge::scoped_cell::ScopedCell::replace::hce4c1096696e01bb
  45:     0x7ff3eca7f4a9 - proc_macro::bridge::client::run_client::{{closure}}::{{closure}}::h043cd408ee94a581
  46:     0x7ff3ecb03d7f - std::thread::local::LocalKey::try_with::h543e6d9cce3dc718
  47:     0x7ff3eca7e287 - proc_macro::bridge::client::run_client::{{closure}}::hced0a0af3245c14b
  48:     0x7ff3ecad50a0 - <:panic::unwind_safe::assertunwindsafe> as core::ops::function::FnOnce>::call_once::h0bbe229a4e3be272
  49:     0x7ff3ecb0751c - std::panicking::try::do_call::hdeb2794ce764b7fd
  50:     0x7ff3ecb0fb9b - __rust_try
  51:     0x7ff3ecb069f2 - std::panicking::try::h52b9394acec22072
  52:     0x7ff3eca788da - proc_macro::bridge::client::run_client::h8d2ee80dfdd540c0
  53:     0x7ff3eca86396 - proc_macro::bridge::client::Client::expand2::{{closure}}::h6a7d2511[574](https://github.com/rwf2/Rocket/actions/runs/7985532655/job/21804162579#step:11:575)dcc92
  54:     0x7ff3ecb01304 - proc_macro::bridge::selfless_reify::reify_to_extern_c_fn_hrt_bridge::wrapper::h917564c63114f6bb
  55:     0x7ff4142f976b - > as proc_macro[478832a3ff351ddb]::bridge::server::ExecutionStrategy>::run_bridge_and_client::>>
  56:     0x7ff4128a3970 - ::expand
  57:     0x7ff4144df997 - ::fully_expand_fragment
  58:     0x7ff4144d9bb7 - ::expand_crate
  59:     0x7ff4149b0d92 - rustc_interface[d43ea88de449c898]::passes::resolver_for_lowering
  60:     0x7ff4149b0267 - rustc_query_impl[72e671e77ccdc0fd]::plumbing::__rust_begin_short_backtrace::>
  61:     0x7ff4147176ce - rustc_query_system[eb6d0acd22a0ff82]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[72e671e77ccdc0fd]::plumbing::QueryCtxt, false>
  62:     0x7ff414716e4b - rustc_query_impl[72e671e77ccdc0fd]::query_impl::resolver_for_lowering::get_query_non_incr::__rust_end_short_backtrace
  63:     0x7ff414764697 - rustc_interface[d43ea88de449c898]::interface::run_compiler::, rustc_driver_impl[98bdfcf9c8fb7ba2]::run_compiler::{closure#0}>::{closure#0}
  64:     0x7ff4149c1c05 - std[38a2ac7f7aa65357]::sys_common::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[98bdfcf9c8fb7ba2]::run_compiler::{closure#0}>::{closure#0}, core[9082f35584c4c405]::result::Result>::{closure#0}, core[9082f35584c4c405]::result::Result>::{closure#0}::{closure#0}, core[9082f35584c4c405]::result::Result>
  65:     0x7ff4149c1a32 - ::spawn_unchecked_, rustc_driver_impl[98bdfcf9c8fb7ba2]::run_compiler::{closure#0}>::{closure#0}, core[9082f35584c4c405]::result::Result>::{closure#0}, core[9082f35584c4c405]::result::Result>::{closure#0}::{closure#0}, core[9082f35584c4c405]::result::Result>::{closure#1} as core[9082f35584c4c405]::ops::function::FnOnce>::call_once::{shim:vtable#0}
  66:     0x7ff40f999725 - <:boxed::box> as core::ops::function::FnOnce>::call_once::h8e2928e2096a726d
                               at /rustc/bb[594](https://github.com/rwf2/Rocket/actions/runs/7985532655/job/21804162579#step:11:595)538fc6e84213a6b8d5e165442570aa48923/library/alloc/src/boxed.rs:2016:9
  67:     0x7ff40f999725 - <:boxed::box> as core::ops::function::FnOnce>::call_once::h4f25e5317edfd[617](https://github.com/rwf2/Rocket/actions/runs/7985532655/job/21804162579#step:11:618)
                               at /rustc/bb594538fc6e84213a6b8d5e1[654](https://github.com/rwf2/Rocket/actions/runs/7985532655/job/21804162579#step:11:655)42570aa48923/library/alloc/src/boxed.rs:2016:9
  68:     0x7ff40f999725 - std::sys::pal::unix::thread::Thread::new::thread_start::hc7193b55f6b48c9a
                               at /rustc/bb594538fc6e84213a6b8d5e165442570aa48923/library/std/src/sys/pal/unix/thread.rs:108:17
  69:     0x7ff40f694ac3 - 
  70:     0x7ff40f726850 - 
  71:                0x0 - 

error: the compiler unexpectedly panicked. this is a bug.

note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md

note: please attach the file at /home/runner/work/Rocket/Rocket/rustc-ice-2024-02-21T07_39_46-10723.txt to your bug report

note: compiler flags: -C embed-bitcode=no -C debuginfo=2

note: some of the compiler flags provided by cargo are hidden

query stack during panic: #0 [resolver_for_lowering] getting the resolver for lowering end of query stack error: custom attribute panicked --> core/codegen/tests/route-format.rs:82:1 | 82 | #[put("/", format = "bar/baz")] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: message: invalid diagnostic level (Warning)

SergioBenitez avatar Feb 21 '24 17:02 SergioBenitez

I believe this has broken Rocket on nightly.

Thanks for the report, #121427 should fix it.

nnethercote avatar Feb 22 '24 03:02 nnethercote

Sure did! Thank you!

SergioBenitez avatar Feb 23 '24 18:02 SergioBenitez