Skip to content

Rollup of 14 pull requests#152571

Closed
JonathanBrouwer wants to merge 34 commits intorust-lang:mainfrom
JonathanBrouwer:rollup-Z7HIFXL
Closed

Rollup of 14 pull requests#152571
JonathanBrouwer wants to merge 34 commits intorust-lang:mainfrom
JonathanBrouwer:rollup-Z7HIFXL

Conversation

@JonathanBrouwer
Copy link
Contributor

Successful merges:

Failed merges:

r? @ghost

Create a similar rollup

JonathanBrouwer and others added 30 commits February 9, 2026 19:12
Unit struct constructors used as the RHS of a `type const` associated
const used to ICE during normalization because they were lowered as
`Const::new_unevaluated` with a Ctor def_id. The compiler now properly
constructs a concrete ValTree value for const constructors.
- compiler/rustc_codegen_llvm/src/debuginfo/doc.md: fix 5 issues
  (adaption → adaptation, "allow to" → "allow V-ing" x3, later → latter + plural)
- compiler/rustc_thread_pool/src/sleep/README.md: fix 2 issues
  (idle → active per context, then → than)
- src/bootstrap/README.md: fix 2 issues (rust → Rust, add missing article "the")
- src/ci/docker/README.md: fix 2 issues ("come form" → "come from", grammar)
Fix ICE in borrowck when recovering `fn_sig` for `-> _`

(Should be) a proper fix for rust-lang#135845, replaces a dummy binder with a concrete one not to ICE, as mentioned in rust-lang#147631 (comment).
Fixes rust-lang#135845
r? @lcnr @jackh726
…atures, r=nadrieril,jdonszelmann

Remove unused features

Detected by rust-lang#152164.

~~Only allow `unused_features` if there are complex platform-specific features enabled.~~
…ercote

Extract `DepKindVTable` constructors to their own module

This is a fairly substantial chunk of code in `rustc_query_impl::plumbing` that mostly doesn't need to be inside a macro at all.

The part that does need to be in a macro is the declaration of a named vtable constructor function for each query. I have extracted that into its own separate call to `rustc_middle::rustc_with_all_queries!` in the new module, so that dep-kind vtable construction is almost entirely confined to `rustc_query_impl::dep_kind_vtables`.

There should be no change to compiler behaviour.

r? nnethercote (or compiler)
…em, r=jdonszelmann

Port `#[rustc_diagnostic_item]` to the new attribute parsers

r? @jdonszelmann
…-handling-keep-all-errors, r=lcnr

Report unconstrained region in hidden types lazily

Fixes rust-lang/trait-system-refactor-initiative#264

I didn't copy the mechanism of HIR typeck as I found that we just need to be lax in the unconstrained region case.
It already ignores non-defining uses and invalid params.

About tests, I'm having trouble coming up with more complex ones. 🙁

This fixes `ukanren` and `codecrafters-redis-rust` but not rust-lang#151322 and rust-lang#151323.
I believe they are a [different problem](rust-lang#151322 (comment)).

r? @lcnr
…onszelmann

Improve the `inline_fluent!` macro

For rust-lang#151366

This PR turns `inline_fluent!` into a proc macro, so we can run validation on the messages in this macro :)
I started a thread here because I don't like the name of the macro, but that's for a future PR: [#t-compiler > Bikeshed the new &rust-lang#96;inline_fluent!&rust-lang#96; macro](https://rust-lang.zulipchat.com/#narrow/channel/131828-t-compiler/topic/Bikeshed.20the.20new.20.60inline_fluent!.60.20macro/with/572646242)
…nst-ctor, r=Kivooeo

Add regression test for type_const with unit struct ctor under mGCA

- Add a regression test for rust-lang#148953

Closes rust-lang#148953
…ooeo,Kobzol

Fix typos and grammar in compiler and build documentation

Fix contextual typos and grammar issues in compiler and build docs that automated spellcheckers miss:

- `compiler/rustc_codegen_llvm/src/debuginfo/doc.md`: fix 5 issues (adaption → adaptation, "allow to" → "allow V-ing" x3, later → latter + plural)
- `compiler/rustc_thread_pool/src/sleep/README.md`: fix 2 issues (idle → active per context, then → than)
- `src/bootstrap/README.md`: fix 2 issues (rust → Rust, add missing article "the")
- `src/ci/docker/README.md`: fix 2 issues ("come form" → "come from", grammar)

No functional changes.
…-open-encoding, r=jieyouxu

bootstrap: add explicit UTF-8 encoding to text-mode open() calls

Make text-mode `open()` calls in `bootstrap.py`
explicitly use `encoding="utf-8"`.

This avoids relying on platform-dependent default encodings
when running Python < 3.15.

Binary-mode opens remain unchanged.
…safe, r=jdonszelmann

Remove `deprecated_safe` and its corresponding feature gate

This unimplements the feature gate for tracking issue rust-lang#94978
The author of that tracking issue and the MCP seem to no longer exist
Afaik we can just do this, but let me know if I'm wrong

Because this feature has been idle for 3+ years, and it is in the way to finish the attribute refactoring (rust-lang#131229 (comment))
When someone wants to do work on it the feature gate can be re-added

r? @jdonszelmann
…er2, r=jieyouxu

doc: move riscv64a23-unknown-linux-gnu to tier 2

This updates the platform support documentation to reflect that "riscv64a23-unknown-linux-gnu" is now Tier 2.

 -Docs-only change (no compiler/runtime behavior change).

Fixes rust-lang#152539
… r=jieyouxu

Replace "bug" with "issue" in triagebot ping messages

Pinging a group might not be for a bug, but for discussion. For example rust-lang#152532 (comment)
fix missleading error for tuple ctor

r? BoxyUwU

fixes rust-lang#151414
…uwer

Port #[rustc_test_marker] to the attribute parser

Tracking issue: rust-lang#131229

Targets:
Const is for normal tests (const test::TestDescAndFn is inserted before the test fn)
Const/Static/Fn is for custom_test_framework's #[test_case] e.g. tests/ui/custom_test_frameworks/full.rs

r? @JonathanBrouwer

Again I left the use-sites as is since they are early uses.
@rust-bors rust-bors bot added the rollup A PR which is a rollup label Feb 13, 2026
@rustbot rustbot added A-attributes Area: Attributes (`#[…]`, `#![…]`) A-CI Area: Our Github Actions CI A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. A-meta Area: Issues & PRs about the rust-lang/rust repository itself A-query-system Area: The rustc query system (https://rustc-dev-guide.rust-lang.org/query.html) A-testsuite Area: The testsuite used to check the correctness of rustc A-translation Area: Translation infrastructure, and migrating existing diagnostics to SessionDiagnostic S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver) labels Feb 13, 2026
@JonathanBrouwer
Copy link
Contributor Author

Trying commonly failed jobs because this is a large rollup
@bors try jobs=x86_64-msvc-1,i686-msvc-1,x86_64-mingw-1,test-various,armhf-gnu,aarch64-apple,x86_64-gnu-llvm-20-3,dist-various-2

@rust-bors
Copy link
Contributor

rust-bors bot commented Feb 13, 2026

⌛ Trying commit ec211c5 with merge 351af79

To cancel the try build, run the command @bors try cancel.

Workflow: https://github.com/rust-lang/rust/actions/runs/21985790152

rust-bors bot pushed a commit that referenced this pull request Feb 13, 2026
Rollup of 14 pull requests


try-job: x86_64-msvc-1
try-job: i686-msvc-1
try-job: x86_64-mingw-1
try-job: test-various
try-job: armhf-gnu
try-job: aarch64-apple
try-job: x86_64-gnu-llvm-20-3
try-job: dist-various-2
@rust-bors
Copy link
Contributor

rust-bors bot commented Feb 13, 2026

☔ The latest upstream changes (presumably #152562) made this pull request unmergeable. Please resolve the merge conflicts.

@rust-log-analyzer
Copy link
Collaborator

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

Click to see the possible cause of the failure (guessed by this bot)

=> Removing the following docker images:
WARNING: This output is designed for human readability. For machine-readable output, please use --format.
IMAGE                                               ID             DISK USAGE   CONTENT SIZE   EXTRA
ghcr.io/dependabot/dependabot-updater-core:latest   9a6a20114926       1.18GB          310MB        
=> Removing docker images...
Deleted Images:
untagged: ghcr.io/dependabot/dependabot-updater-core:latest
deleted: sha256:9a6a20114926442eeadab0732ddd7264ecafc907389c47974b1825d779571319

Total reclaimed space: 309.7MB

********************************************************************************
---
tests/ui/duplicate_underscore_argument.rs ... ok
tests/ui/drop_non_drop.rs ... ok
tests/ui/drain_collect.fixed ... ok
tests/ui/duplicated_attributes.rs ... ok
tests/ui/duration_suboptimal_units_days_weeks.rs ... ok
tests/ui/duration_suboptimal_units.rs ... ok
tests/ui/double_parens.fixed ... ok
tests/ui/duration_subsec.rs ... ok
tests/ui/duration_suboptimal_units_days_weeks.fixed ... ok
tests/ui/duration_suboptimal_units.fixed ... ok
tests/ui/duration_subsec.fixed ... ok
tests/ui/elidable_lifetime_names.rs ... ok
tests/ui/else_if_without_else.rs ... ok
tests/ui/eager_transmute.rs ... ok
tests/ui/empty_docs.rs ... ok
---
tests/ui/size_of_in_element_count/functions.rs ... ok
tests/ui/crashes/third-party/conf_allowlisted.rs ... ok

FAILED TEST: tests/ui/disallowed_names.rs
command: CLIPPY_CONF_DIR="tests" RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/release/clippy-driver" "--error-format=json" "--emit=metadata" "-Aunused" "-Ainternal_features" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Dwarnings" "-Ldependency=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/release/deps" "--sysroot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--test" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/ui_test/0/tests/ui" "tests/ui/disallowed_names.rs" "--extern" "proc_macros=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/ui_test/0/tests/ui/auxiliary/libproc_macros.so" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/ui_test/0/tests/ui/auxiliary" "--extern" "futures=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libfutures-1c57be01ce678fe1.rlib" "--extern" "futures=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libfutures-1c57be01ce678fe1.rmeta" "--extern" "itertools=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libitertools-dbbaea4865d325a0.rlib" "--extern" "itertools=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libitertools-dbbaea4865d325a0.rmeta" "--extern" "libc=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/liblibc-c786fec7f822d813.rlib" "--extern" "libc=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/liblibc-c786fec7f822d813.rmeta" "--extern" "parking_lot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libparking_lot-0afcbbb9c8641b0e.rlib" "--extern" "parking_lot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libparking_lot-0afcbbb9c8641b0e.rmeta" "--extern" "quote=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libquote-dbc89400fd6938d7.rlib" "--extern" "quote=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libquote-dbc89400fd6938d7.rmeta" "--extern" "regex=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libregex-c563189a4fec18cb.rlib" "--extern" "regex=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libregex-c563189a4fec18cb.rmeta" "--extern" "serde=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libserde-61ad6261d0a71916.rlib" "--extern" "serde=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libserde-61ad6261d0a71916.rmeta" "--extern" "syn=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libsyn-f69412628c69f4c9.rlib" "--extern" "syn=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libsyn-f69412628c69f4c9.rmeta" "--extern" "tokio=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libtokio-6b8938c971e2085f.rlib" "--extern" "tokio=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libtokio-6b8938c971e2085f.rmeta" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/debug/deps" "--edition" "2024"

error: actual output differed from expected
Execute `./x test src/tools/clippy --bless` to update `tests/ui/disallowed_names.stderr` to the actual output
--- tests/ui/disallowed_names.stderr
+++ <stderr output>
---

error: use of a disallowed/placeholder name `quux`
##[error]  --> tests/ui/disallowed_names.rs:26:9
   |
LL |     let quux = 42;
   |         ^^^^

error: use of a disallowed/placeholder name `foo`
##[error]  --> tests/ui/disallowed_names.rs:39:10
   |
LL |         (foo, Some(baz), quux @ Some(_)) => (),
   |          ^^^

error: use of a disallowed/placeholder name `baz`
##[error]  --> tests/ui/disallowed_names.rs:39:20
   |
LL |         (foo, Some(baz), quux @ Some(_)) => (),
   |                    ^^^

error: use of a disallowed/placeholder name `quux`
##[error]  --> tests/ui/disallowed_names.rs:39:26
   |
LL |         (foo, Some(baz), quux @ Some(_)) => (),
   |                          ^^^^

error: use of a disallowed/placeholder name `foo`
##[error]  --> tests/ui/disallowed_names.rs:47:19
   |
---

error: use of a disallowed/placeholder name `quux`
##[error]  --> tests/ui/disallowed_names.rs:53:21
   |
LL |     if let Some(mut quux) = Some(42) {}
   |                     ^^^^

error: use of a disallowed/placeholder name `baz`
##[error]  --> tests/ui/disallowed_names.rs:58:13
   |
LL |     let ref baz = 0;
   |             ^^^

error: use of a disallowed/placeholder name `quux`
##[error]  --> tests/ui/disallowed_names.rs:61:21
   |
LL |     if let Some(ref quux) = Some(42) {}
   |                     ^^^^

error: use of a disallowed/placeholder name `baz`
##[error]  --> tests/ui/disallowed_names.rs:66:17
   |
LL |     let ref mut baz = 0;
   |                 ^^^

error: use of a disallowed/placeholder name `quux`
##[error]  --> tests/ui/disallowed_names.rs:69:25
   |
LL |     if let Some(ref mut quux) = Some(42) {}
   |                         ^^^^

error: use of a disallowed/placeholder name `foo`
##[error]  --> tests/ui/disallowed_names.rs:99:9
   |
---
error: there was 1 unmatched diagnostic
##[error]  --> tests/ui/disallowed_names.rs:99:9
   |
99 |     let foo = 0;
   |         ^^^ Error[clippy::disallowed_names]: use of a disallowed/placeholder name `foo`
   |

full stderr:
error: use of a disallowed/placeholder name `foo`
##[error]  --> tests/ui/disallowed_names.rs:16:9
---

error: use of a disallowed/placeholder name `quux`
##[error]  --> tests/ui/disallowed_names.rs:26:9
   |
LL |     let quux = 42;
   |         ^^^^

error: use of a disallowed/placeholder name `foo`
##[error]  --> tests/ui/disallowed_names.rs:39:10
   |
LL |         (foo, Some(baz), quux @ Some(_)) => (),
   |          ^^^

error: use of a disallowed/placeholder name `baz`
##[error]  --> tests/ui/disallowed_names.rs:39:20
   |
LL |         (foo, Some(baz), quux @ Some(_)) => (),
   |                    ^^^

error: use of a disallowed/placeholder name `quux`
##[error]  --> tests/ui/disallowed_names.rs:39:26
   |
LL |         (foo, Some(baz), quux @ Some(_)) => (),
   |                          ^^^^

error: use of a disallowed/placeholder name `foo`
##[error]  --> tests/ui/disallowed_names.rs:47:19
   |
---

error: use of a disallowed/placeholder name `quux`
##[error]  --> tests/ui/disallowed_names.rs:53:21
   |
LL |     if let Some(mut quux) = Some(42) {}
   |                     ^^^^

error: use of a disallowed/placeholder name `baz`
##[error]  --> tests/ui/disallowed_names.rs:58:13
   |
LL |     let ref baz = 0;
   |             ^^^

error: use of a disallowed/placeholder name `quux`
##[error]  --> tests/ui/disallowed_names.rs:61:21
   |
LL |     if let Some(ref quux) = Some(42) {}
   |                     ^^^^

error: use of a disallowed/placeholder name `baz`
##[error]  --> tests/ui/disallowed_names.rs:66:17
   |
LL |     let ref mut baz = 0;
   |                 ^^^

error: use of a disallowed/placeholder name `quux`
##[error]  --> tests/ui/disallowed_names.rs:69:25
   |
LL |     if let Some(ref mut quux) = Some(42) {}
   |                         ^^^^

error: use of a disallowed/placeholder name `foo`
##[error]  --> tests/ui/disallowed_names.rs:99:9
   |
---



FAILED TEST: tests/ui/eq_op.rs
command: CLIPPY_CONF_DIR="tests" RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/release/clippy-driver" "--error-format=json" "--emit=metadata" "-Aunused" "-Ainternal_features" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Dwarnings" "-Ldependency=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/release/deps" "--sysroot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--test" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/ui_test/0/tests/ui" "tests/ui/eq_op.rs" "--extern" "futures=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libfutures-1c57be01ce678fe1.rlib" "--extern" "futures=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libfutures-1c57be01ce678fe1.rmeta" "--extern" "itertools=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libitertools-dbbaea4865d325a0.rlib" "--extern" "itertools=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libitertools-dbbaea4865d325a0.rmeta" "--extern" "libc=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/liblibc-c786fec7f822d813.rlib" "--extern" "libc=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/liblibc-c786fec7f822d813.rmeta" "--extern" "parking_lot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libparking_lot-0afcbbb9c8641b0e.rlib" "--extern" "parking_lot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libparking_lot-0afcbbb9c8641b0e.rmeta" "--extern" "quote=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libquote-dbc89400fd6938d7.rlib" "--extern" "quote=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libquote-dbc89400fd6938d7.rmeta" "--extern" "regex=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libregex-c563189a4fec18cb.rlib" "--extern" "regex=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libregex-c563189a4fec18cb.rmeta" "--extern" "serde=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libserde-61ad6261d0a71916.rlib" "--extern" "serde=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libserde-61ad6261d0a71916.rmeta" "--extern" "syn=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libsyn-f69412628c69f4c9.rlib" "--extern" "syn=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libsyn-f69412628c69f4c9.rmeta" "--extern" "tokio=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libtokio-6b8938c971e2085f.rlib" "--extern" "tokio=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libtokio-6b8938c971e2085f.rmeta" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/debug/deps" "--edition" "2024"

error: actual output differed from expected
Execute `./x test src/tools/clippy --bless` to update `tests/ui/eq_op.stderr` to the actual output
--- tests/ui/eq_op.stderr
+++ <stderr output>
---
-error: aborting due to 29 previous errors
+error: equal expressions as operands to `==`
+  --> tests/ui/eq_op.rs:146:18
+   |
+LL |     let result = a + 1 == 1 + a;
+   |                  ^^^^^^^^^^^^^^
 
+error: identical args used in this `assert_eq!` macro call
+  --> tests/ui/eq_op.rs:154:16
+   |
+LL |     assert_eq!(a, a);
+   |                ^^^^
+
+error: identical args used in this `assert_eq!` macro call
+  --> tests/ui/eq_op.rs:155:16
+   |
+LL |     assert_eq!(a + b, b + a);
+   |                ^^^^^^^^^^^^
+
+error: aborting due to 32 previous errors
+

Full unnormalized output:
error: equal expressions as operands to `==`
##[error]  --> tests/ui/eq_op.rs:7:13
   |
LL |     let _ = 1 == 1;
   |             ^^^^^^
   |
   = note: `-D clippy::eq-op` implied by `-D warnings`
   = help: to override `-D warnings` add `#[allow(clippy::eq_op)]`

error: equal expressions as operands to `==`
##[error]  --> tests/ui/eq_op.rs:10:13
   |
LL |     let _ = "no" == "no";
---

error: equal expressions as operands to `<`
##[error]  --> tests/ui/eq_op.rs:17:13
   |
LL |     let _ = 1.5 < 1.5;
   |             ^^^^^^^^^

error: equal expressions as operands to `>=`
##[error]  --> tests/ui/eq_op.rs:20:13
   |
LL |     let _ = 1u64 >= 1u64;
   |             ^^^^^^^^^^^^

error: equal expressions as operands to `!=`
##[error]  --> tests/ui/eq_op.rs:24:13
   |
LL |     let _ = x != x;
   |             ^^^^^^
   |
   = note: if you intended to check if the operand is NaN, use `.is_nan()` instead

error: equal expressions as operands to `&`
##[error]  --> tests/ui/eq_op.rs:28:13
   |
LL |     let _ = (1u32 as u64) & (1u32 as u64);
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: equal expressions as operands to `^`
##[error]  --> tests/ui/eq_op.rs:33:17
   |
LL |         let _ = 1 ^ ((((((1))))));
   |                 ^^^^^^^^^^^^^^^^^

error: equal expressions as operands to `<`
##[error]  --> tests/ui/eq_op.rs:39:13
   |
LL |     let _ = (-(2) < -(2));
   |             ^^^^^^^^^^^^^

error: equal expressions as operands to `==`
##[error]  --> tests/ui/eq_op.rs:42:13
   |
LL |     let _ = ((1 + 1) & (1 + 1) == (1 + 1) & (1 + 1));
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: equal expressions as operands to `&`
##[error]  --> tests/ui/eq_op.rs:42:14
   |
LL |     let _ = ((1 + 1) & (1 + 1) == (1 + 1) & (1 + 1));
   |              ^^^^^^^^^^^^^^^^^

error: equal expressions as operands to `&`
##[error]  --> tests/ui/eq_op.rs:42:35
   |
LL |     let _ = ((1 + 1) & (1 + 1) == (1 + 1) & (1 + 1));
   |                                   ^^^^^^^^^^^^^^^^^

error: equal expressions as operands to `==`
##[error]  --> tests/ui/eq_op.rs:47:13
   |
LL |     let _ = (1 * 2) + (3 * 4) == 1 * 2 + 3 * 4;
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: equal expressions as operands to `!=`
##[error]  --> tests/ui/eq_op.rs:51:13
   |
LL |     let _ = ([1] != [1]);
   |             ^^^^^^^^^^^^

error: equal expressions as operands to `!=`
##[error]  --> tests/ui/eq_op.rs:54:13
   |
LL |     let _ = ((1, 2) != (1, 2));
   |             ^^^^^^^^^^^^^^^^^^

error: equal expressions as operands to `==`
##[error]  --> tests/ui/eq_op.rs:60:13
   |
---

error: equal expressions as operands to `&&`
##[error]  --> tests/ui/eq_op.rs:82:13
   |
LL |     let _ = a == b && b == a;
   |             ^^^^^^^^^^^^^^^^

error: equal expressions as operands to `&&`
##[error]  --> tests/ui/eq_op.rs:85:13
   |
LL |     let _ = a != b && b != a;
   |             ^^^^^^^^^^^^^^^^

error: equal expressions as operands to `&&`
##[error]  --> tests/ui/eq_op.rs:88:13
   |
LL |     let _ = a < b && b > a;
   |             ^^^^^^^^^^^^^^

error: equal expressions as operands to `&&`
##[error]  --> tests/ui/eq_op.rs:91:13
   |
LL |     let _ = a <= b && b >= a;
   |             ^^^^^^^^^^^^^^^^

error: equal expressions as operands to `==`
##[error]  --> tests/ui/eq_op.rs:95:13
   |
LL |     let _ = a == a;
   |             ^^^^^^

error: equal expressions as operands to `/`
##[error]  --> tests/ui/eq_op.rs:107:20
   |
LL |     const D: u32 = A / A;
   |                    ^^^^^

error: equal expressions as operands to `==`
##[error]  --> tests/ui/eq_op.rs:139:5
   |
LL |     (n1.inner.0).0 == (n1.inner.0).0 && (n1.inner.1).0 == (n2.inner.1).0 && (n1.inner.2).0 == (n2.inner.2).0
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: equal expressions as operands to `==`
##[error]  --> tests/ui/eq_op.rs:146:18
   |
LL |     let result = a + 1 == 1 + a;
   |                  ^^^^^^^^^^^^^^

error: identical args used in this `assert_eq!` macro call
##[error]  --> tests/ui/eq_op.rs:154:16
   |
LL |     assert_eq!(a, a);
   |                ^^^^

error: identical args used in this `assert_eq!` macro call
##[error]  --> tests/ui/eq_op.rs:155:16
   |
LL |     assert_eq!(a + b, b + a);
   |                ^^^^^^^^^^^^

error: aborting due to 32 previous errors



error: there was 1 unmatched diagnostic
##[error]   --> tests/ui/eq_op.rs:146:18
    |
146 |     let result = a + 1 == 1 + a;
    |                  ^^^^^^^^^^^^^^ Error[clippy::eq_op]: equal expressions as operands to `==`
    |

error: there was 1 unmatched diagnostic
##[error]   --> tests/ui/eq_op.rs:154:16
    |
154 |     assert_eq!(a, a);
    |                ^^^^ Error[clippy::eq_op]: identical args used in this `assert_eq!` macro call
    |

error: there was 1 unmatched diagnostic
##[error]   --> tests/ui/eq_op.rs:155:16
    |
155 |     assert_eq!(a + b, b + a);
    |                ^^^^^^^^^^^^ Error[clippy::eq_op]: identical args used in this `assert_eq!` macro call
    |

full stderr:
error: equal expressions as operands to `==`
##[error]  --> tests/ui/eq_op.rs:7:13
   |
LL |     let _ = 1 == 1;
   |             ^^^^^^
   |
   = note: `-D clippy::eq-op` implied by `-D warnings`
   = help: to override `-D warnings` add `#[allow(clippy::eq_op)]`

error: equal expressions as operands to `==`
##[error]  --> tests/ui/eq_op.rs:10:13
   |
LL |     let _ = "no" == "no";
---

error: equal expressions as operands to `<`
##[error]  --> tests/ui/eq_op.rs:17:13
   |
LL |     let _ = 1.5 < 1.5;
   |             ^^^^^^^^^

error: equal expressions as operands to `>=`
##[error]  --> tests/ui/eq_op.rs:20:13
   |
LL |     let _ = 1u64 >= 1u64;
   |             ^^^^^^^^^^^^

error: equal expressions as operands to `!=`
##[error]  --> tests/ui/eq_op.rs:24:13
   |
LL |     let _ = x != x;
   |             ^^^^^^
   |
   = note: if you intended to check if the operand is NaN, use `.is_nan()` instead

error: equal expressions as operands to `&`
##[error]  --> tests/ui/eq_op.rs:28:13
   |
LL |     let _ = (1u32 as u64) & (1u32 as u64);
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: equal expressions as operands to `^`
##[error]  --> tests/ui/eq_op.rs:33:17
   |
LL |         let _ = 1 ^ ((((((1))))));
   |                 ^^^^^^^^^^^^^^^^^

error: equal expressions as operands to `<`
##[error]  --> tests/ui/eq_op.rs:39:13
   |
LL |     let _ = (-(2) < -(2));
   |             ^^^^^^^^^^^^^

error: equal expressions as operands to `==`
##[error]  --> tests/ui/eq_op.rs:42:13
   |
LL |     let _ = ((1 + 1) & (1 + 1) == (1 + 1) & (1 + 1));
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: equal expressions as operands to `&`
##[error]  --> tests/ui/eq_op.rs:42:14
   |
LL |     let _ = ((1 + 1) & (1 + 1) == (1 + 1) & (1 + 1));
   |              ^^^^^^^^^^^^^^^^^

error: equal expressions as operands to `&`
##[error]  --> tests/ui/eq_op.rs:42:35
   |
LL |     let _ = ((1 + 1) & (1 + 1) == (1 + 1) & (1 + 1));
   |                                   ^^^^^^^^^^^^^^^^^

error: equal expressions as operands to `==`
##[error]  --> tests/ui/eq_op.rs:47:13
   |
LL |     let _ = (1 * 2) + (3 * 4) == 1 * 2 + 3 * 4;
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: equal expressions as operands to `!=`
##[error]  --> tests/ui/eq_op.rs:51:13
   |
LL |     let _ = ([1] != [1]);
   |             ^^^^^^^^^^^^

error: equal expressions as operands to `!=`
##[error]  --> tests/ui/eq_op.rs:54:13
   |
LL |     let _ = ((1, 2) != (1, 2));
   |             ^^^^^^^^^^^^^^^^^^

error: equal expressions as operands to `==`
##[error]  --> tests/ui/eq_op.rs:60:13
   |
---

error: equal expressions as operands to `&&`
##[error]  --> tests/ui/eq_op.rs:82:13
   |
LL |     let _ = a == b && b == a;
   |             ^^^^^^^^^^^^^^^^

error: equal expressions as operands to `&&`
##[error]  --> tests/ui/eq_op.rs:85:13
   |
LL |     let _ = a != b && b != a;
   |             ^^^^^^^^^^^^^^^^

error: equal expressions as operands to `&&`
##[error]  --> tests/ui/eq_op.rs:88:13
   |
LL |     let _ = a < b && b > a;
   |             ^^^^^^^^^^^^^^

error: equal expressions as operands to `&&`
##[error]  --> tests/ui/eq_op.rs:91:13
   |
LL |     let _ = a <= b && b >= a;
   |             ^^^^^^^^^^^^^^^^

error: equal expressions as operands to `==`
##[error]  --> tests/ui/eq_op.rs:95:13
   |
LL |     let _ = a == a;
   |             ^^^^^^

error: equal expressions as operands to `/`
##[error]  --> tests/ui/eq_op.rs:107:20
   |
LL |     const D: u32 = A / A;
   |                    ^^^^^

error: equal expressions as operands to `==`
##[error]  --> tests/ui/eq_op.rs:139:5
   |
LL |     (n1.inner.0).0 == (n1.inner.0).0 && (n1.inner.1).0 == (n2.inner.1).0 && (n1.inner.2).0 == (n2.inner.2).0
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: equal expressions as operands to `==`
##[error]  --> tests/ui/eq_op.rs:146:18
   |
LL |     let result = a + 1 == 1 + a;
   |                  ^^^^^^^^^^^^^^

error: identical args used in this `assert_eq!` macro call
##[error]  --> tests/ui/eq_op.rs:154:16
   |
LL |     assert_eq!(a, a);
   |                ^^^^

error: identical args used in this `assert_eq!` macro call
##[error]  --> tests/ui/eq_op.rs:155:16
   |
LL |     assert_eq!(a + b, b + a);
   |                ^^^^^^^^^^^^

error: aborting due to 32 previous errors


full stdout:



FAILED TEST: tests/ui/explicit_write_in_test.rs
command: CLIPPY_CONF_DIR="tests" RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/release/clippy-driver" "--error-format=json" "--emit=metadata" "-Aunused" "-Ainternal_features" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Dwarnings" "-Ldependency=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/release/deps" "--sysroot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--test" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/ui_test/0/tests/ui" "tests/ui/explicit_write_in_test.rs" "--extern" "futures=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libfutures-1c57be01ce678fe1.rlib" "--extern" "futures=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libfutures-1c57be01ce678fe1.rmeta" "--extern" "itertools=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libitertools-dbbaea4865d325a0.rlib" "--extern" "itertools=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libitertools-dbbaea4865d325a0.rmeta" "--extern" "libc=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/liblibc-c786fec7f822d813.rlib" "--extern" "libc=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/liblibc-c786fec7f822d813.rmeta" "--extern" "parking_lot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libparking_lot-0afcbbb9c8641b0e.rlib" "--extern" "parking_lot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libparking_lot-0afcbbb9c8641b0e.rmeta" "--extern" "quote=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libquote-dbc89400fd6938d7.rlib" "--extern" "quote=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libquote-dbc89400fd6938d7.rmeta" "--extern" "regex=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libregex-c563189a4fec18cb.rlib" "--extern" "regex=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libregex-c563189a4fec18cb.rmeta" "--extern" "serde=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libserde-61ad6261d0a71916.rlib" "--extern" "serde=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libserde-61ad6261d0a71916.rmeta" "--extern" "syn=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libsyn-f69412628c69f4c9.rlib" "--extern" "syn=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libsyn-f69412628c69f4c9.rmeta" "--extern" "tokio=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libtokio-6b8938c971e2085f.rlib" "--extern" "tokio=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libtokio-6b8938c971e2085f.rmeta" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/debug/deps" "--edition" "2024"

error: test got exit status: 1, but expected 0
##[error] --> tests/ui/explicit_write_in_test.rs:1:5
  |
1 | //@ check-pass
  |     ^^^^^^^^^^ compilation failed, but was expected to succeed
  |

error: no output was expected
Execute `./x test src/tools/clippy --bless` to update `tests/ui/explicit_write_in_test.stderr` to the actual output
+++ <stderr output>
error: use of `writeln!(stderr(), ...).unwrap()`
##[error]  --> tests/ui/explicit_write_in_test.rs:7:5
   |
LL |     writeln!(std::io::stderr(), "I am an explicit write.").unwrap();
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `eprintln!("I am an explicit write.")`
   |
   = note: `-D clippy::explicit-write` implied by `-D warnings`
   = help: to override `-D warnings` add `#[allow(clippy::explicit_write)]`

error: aborting due to 1 previous error



full stderr:
error: use of `writeln!(stderr(), ...).unwrap()`
##[error]  --> tests/ui/explicit_write_in_test.rs:7:5
   |
LL |     writeln!(std::io::stderr(), "I am an explicit write.").unwrap();
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `eprintln!("I am an explicit write.")`
   |
   = note: `-D clippy::explicit-write` implied by `-D warnings`
   = help: to override `-D warnings` add `#[allow(clippy::explicit_write)]`

error: aborting due to 1 previous error


full stdout:



FAILED TEST: tests/ui/incompatible_msrv.rs
command: CLIPPY_CONF_DIR="tests" RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/release/clippy-driver" "--error-format=json" "--emit=metadata" "-Aunused" "-Ainternal_features" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Dwarnings" "-Ldependency=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/release/deps" "--sysroot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--test" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/ui_test/0/tests/ui" "tests/ui/incompatible_msrv.rs" "--extern" "futures=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libfutures-1c57be01ce678fe1.rlib" "--extern" "futures=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libfutures-1c57be01ce678fe1.rmeta" "--extern" "itertools=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libitertools-dbbaea4865d325a0.rlib" "--extern" "itertools=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libitertools-dbbaea4865d325a0.rmeta" "--extern" "libc=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/liblibc-c786fec7f822d813.rlib" "--extern" "libc=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/liblibc-c786fec7f822d813.rmeta" "--extern" "parking_lot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libparking_lot-0afcbbb9c8641b0e.rlib" "--extern" "parking_lot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libparking_lot-0afcbbb9c8641b0e.rmeta" "--extern" "quote=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libquote-dbc89400fd6938d7.rlib" "--extern" "quote=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libquote-dbc89400fd6938d7.rmeta" "--extern" "regex=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libregex-c563189a4fec18cb.rlib" "--extern" "regex=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libregex-c563189a4fec18cb.rmeta" "--extern" "serde=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libserde-61ad6261d0a71916.rlib" "--extern" "serde=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libserde-61ad6261d0a71916.rmeta" "--extern" "syn=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libsyn-f69412628c69f4c9.rlib" "--extern" "syn=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libsyn-f69412628c69f4c9.rmeta" "--extern" "tokio=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libtokio-6b8938c971e2085f.rlib" "--extern" "tokio=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libtokio-6b8938c971e2085f.rmeta" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/debug/deps" "--edition" "2024"

error: actual output differed from expected
Execute `./x test src/tools/clippy --bless` to update `tests/ui/incompatible_msrv.stderr` to the actual output
--- tests/ui/incompatible_msrv.stderr
+++ <stderr output>
 error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.10.0`
   --> tests/ui/incompatible_msrv.rs:16:39
... 29 lines skipped ...
    |                   ^^^^^^^^
 
+error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.4.0`
+  --> tests/ui/incompatible_msrv.rs:44:5
+   |
+LL |     sleep(Duration::new(1, 0));
+   |     ^^^^^
+
 error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.43.0`
   --> tests/ui/incompatible_msrv.rs:62:17
... 87 lines skipped ...
    |                ^^^^^
 
-error: aborting due to 19 previous errors
+error: aborting due to 20 previous errors
 

Full unnormalized output:
error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.10.0`
##[error]  --> tests/ui/incompatible_msrv.rs:16:39
   |
LL |     assert_eq!(map.entry("poneyland").key(), &"poneyland");
   |                                       ^^^^^
   |
   = note: `-D clippy::incompatible-msrv` implied by `-D warnings`
   = help: to override `-D warnings` add `#[allow(clippy::incompatible_msrv)]`

error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.12.0`
##[error]  --> tests/ui/incompatible_msrv.rs:22:11
   |
LL |         v.into_key();
   |           ^^^^^^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.4.0`
##[error]  --> tests/ui/incompatible_msrv.rs:26:5
   |
LL |     sleep(Duration::new(1, 0));
   |     ^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.2.0` but this item is stable since `1.3.0`
##[error]  --> tests/ui/incompatible_msrv.rs:31:33
   |
LL | static NO_BODY_BAD_MSRV: Option<Duration> = None;
   |                                 ^^^^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.2.0` but this item is stable since `1.3.0`
##[error]  --> tests/ui/incompatible_msrv.rs:38:19
   |
LL |     let _: Option<Duration> = None;
   |                   ^^^^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.4.0`
##[error]  --> tests/ui/incompatible_msrv.rs:44:5
   |
LL |     sleep(Duration::new(1, 0));
   |     ^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.43.0`
##[error]  --> tests/ui/incompatible_msrv.rs:62:17
   |
LL |         let _ = core::iter::once_with(|| 0);
   |                 ^^^^^^^^^^^^^^^^^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.43.0`
##[error]  --> tests/ui/incompatible_msrv.rs:69:21
   |
LL |             let _ = core::iter::once_with(|| $msg);
   |                     ^^^^^^^^^^^^^^^^^^^^^
...
LL |     my_panic!("foo");
   |     ---------------- in this macro invocation
   |
   = note: this error originates in the macro `my_panic` (in Nightly builds, run with -Z macro-backtrace for more info)

error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.43.0`
##[error]  --> tests/ui/incompatible_msrv.rs:76:13
   |
LL |     assert!(core::iter::once_with(|| 0).next().is_some());
   |             ^^^^^^^^^^^^^^^^^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.80.0` but this item is stable since `1.82.0`
##[error]  --> tests/ui/incompatible_msrv.rs:89:13
   |
LL |     let _ = std::iter::repeat_n((), 5);
   |             ^^^^^^^^^^^^^^^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.82.0`
##[error]  --> tests/ui/incompatible_msrv.rs:100:13
   |
LL |     let _ = std::iter::repeat_n((), 5);
   |             ^^^^^^^^^^^^^^^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.82.0`
##[error]  --> tests/ui/incompatible_msrv.rs:105:17
   |
LL |         let _ = std::iter::repeat_n((), 5);
   |                 ^^^^^^^^^^^^^^^^^^^
   |
   = note: you may want to conditionally increase the MSRV considered by Clippy using the `clippy::msrv` attribute

error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.82.0`
##[error]  --> tests/ui/incompatible_msrv.rs:110:17
   |
LL |         let _ = std::iter::repeat_n((), 5);
   |                 ^^^^^^^^^^^^^^^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.78.0` but this item is stable since `1.84.0`
##[error]  --> tests/ui/incompatible_msrv.rs:123:7
   |
LL |     r.isqrt()
   |       ^^^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.85.0`
##[error]  --> tests/ui/incompatible_msrv.rs:128:13
   |
LL |     let _ = std::io::ErrorKind::CrossesDevices;
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.87.0` but this item is stable in a `const` context since `1.88.0`
##[error]  --> tests/ui/incompatible_msrv.rs:140:15
   |
LL |         _ = c.get();
   |               ^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.86.0` but this item is stable since `1.87.0`
##[error]  --> tests/ui/incompatible_msrv.rs:159:13
   |
LL |     let _ = std::io::ErrorKind::InvalidFilename;
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.86.0` but this item is stable since `1.87.0`
##[error]  --> tests/ui/incompatible_msrv.rs:161:21
   |
LL |     let _ = const { std::io::ErrorKind::InvalidFilename };
   |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.38.0` but this item is stable in a `const` context since `1.39.0`
##[error]  --> tests/ui/incompatible_msrv.rs:175:13
   |
LL |     let _ = x("");
   |             ^

error: current MSRV (Minimum Supported Rust Version) is `1.38.0` but this item is stable in a `const` context since `1.39.0`
##[error]  --> tests/ui/incompatible_msrv.rs:177:16
   |
LL |     let _ = "".len();
   |                ^^^^^

error: aborting due to 20 previous errors



error: there was 1 unmatched diagnostic
##[error]  --> tests/ui/incompatible_msrv.rs:44:5
   |
44 |     sleep(Duration::new(1, 0));
   |     ^^^^^ Error[clippy::incompatible_msrv]: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.4.0`
   |

full stderr:
error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.10.0`
##[error]  --> tests/ui/incompatible_msrv.rs:16:39
   |
LL |     assert_eq!(map.entry("poneyland").key(), &"poneyland");
   |                                       ^^^^^
   |
   = note: `-D clippy::incompatible-msrv` implied by `-D warnings`
   = help: to override `-D warnings` add `#[allow(clippy::incompatible_msrv)]`

error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.12.0`
##[error]  --> tests/ui/incompatible_msrv.rs:22:11
   |
LL |         v.into_key();
   |           ^^^^^^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.4.0`
##[error]  --> tests/ui/incompatible_msrv.rs:26:5
   |
LL |     sleep(Duration::new(1, 0));
   |     ^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.2.0` but this item is stable since `1.3.0`
##[error]  --> tests/ui/incompatible_msrv.rs:31:33
   |
LL | static NO_BODY_BAD_MSRV: Option<Duration> = None;
   |                                 ^^^^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.2.0` but this item is stable since `1.3.0`
##[error]  --> tests/ui/incompatible_msrv.rs:38:19
   |
LL |     let _: Option<Duration> = None;
   |                   ^^^^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.4.0`
##[error]  --> tests/ui/incompatible_msrv.rs:44:5
   |
LL |     sleep(Duration::new(1, 0));
   |     ^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.43.0`
##[error]  --> tests/ui/incompatible_msrv.rs:62:17
   |
LL |         let _ = core::iter::once_with(|| 0);
   |                 ^^^^^^^^^^^^^^^^^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.43.0`
##[error]  --> tests/ui/incompatible_msrv.rs:69:21
   |
LL |             let _ = core::iter::once_with(|| $msg);
   |                     ^^^^^^^^^^^^^^^^^^^^^
...
LL |     my_panic!("foo");
   |     ---------------- in this macro invocation
   |
   = note: this error originates in the macro `my_panic` (in Nightly builds, run with -Z macro-backtrace for more info)

error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.43.0`
##[error]  --> tests/ui/incompatible_msrv.rs:76:13
   |
LL |     assert!(core::iter::once_with(|| 0).next().is_some());
   |             ^^^^^^^^^^^^^^^^^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.80.0` but this item is stable since `1.82.0`
##[error]  --> tests/ui/incompatible_msrv.rs:89:13
   |
LL |     let _ = std::iter::repeat_n((), 5);
   |             ^^^^^^^^^^^^^^^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.82.0`
##[error]  --> tests/ui/incompatible_msrv.rs:100:13
   |
LL |     let _ = std::iter::repeat_n((), 5);
   |             ^^^^^^^^^^^^^^^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.82.0`
##[error]  --> tests/ui/incompatible_msrv.rs:105:17
   |
LL |         let _ = std::iter::repeat_n((), 5);
   |                 ^^^^^^^^^^^^^^^^^^^
   |
   = note: you may want to conditionally increase the MSRV considered by Clippy using the `clippy::msrv` attribute

error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.82.0`
##[error]  --> tests/ui/incompatible_msrv.rs:110:17
   |
LL |         let _ = std::iter::repeat_n((), 5);
   |                 ^^^^^^^^^^^^^^^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.78.0` but this item is stable since `1.84.0`
##[error]  --> tests/ui/incompatible_msrv.rs:123:7
   |
LL |     r.isqrt()
   |       ^^^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.3.0` but this item is stable since `1.85.0`
##[error]  --> tests/ui/incompatible_msrv.rs:128:13
   |
LL |     let _ = std::io::ErrorKind::CrossesDevices;
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.87.0` but this item is stable in a `const` context since `1.88.0`
##[error]  --> tests/ui/incompatible_msrv.rs:140:15
   |
LL |         _ = c.get();
   |               ^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.86.0` but this item is stable since `1.87.0`
##[error]  --> tests/ui/incompatible_msrv.rs:159:13
   |
LL |     let _ = std::io::ErrorKind::InvalidFilename;
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.86.0` but this item is stable since `1.87.0`
##[error]  --> tests/ui/incompatible_msrv.rs:161:21
   |
LL |     let _ = const { std::io::ErrorKind::InvalidFilename };
   |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: current MSRV (Minimum Supported Rust Version) is `1.38.0` but this item is stable in a `const` context since `1.39.0`
##[error]  --> tests/ui/incompatible_msrv.rs:175:13
   |
LL |     let _ = x("");
   |             ^

error: current MSRV (Minimum Supported Rust Version) is `1.38.0` but this item is stable in a `const` context since `1.39.0`
##[error]  --> tests/ui/incompatible_msrv.rs:177:16
   |
LL |     let _ = "".len();
   |                ^^^^^

---



FAILED TEST: tests/ui/missing_assert_message.rs
command: CLIPPY_CONF_DIR="tests" RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/release/clippy-driver" "--error-format=json" "--emit=metadata" "-Aunused" "-Ainternal_features" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Dwarnings" "-Ldependency=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/release/deps" "--sysroot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--test" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/ui_test/0/tests/ui" "tests/ui/missing_assert_message.rs" "--extern" "futures=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libfutures-1c57be01ce678fe1.rlib" "--extern" "futures=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libfutures-1c57be01ce678fe1.rmeta" "--extern" "itertools=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libitertools-dbbaea4865d325a0.rlib" "--extern" "itertools=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libitertools-dbbaea4865d325a0.rmeta" "--extern" "libc=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/liblibc-c786fec7f822d813.rlib" "--extern" "libc=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/liblibc-c786fec7f822d813.rmeta" "--extern" "parking_lot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libparking_lot-0afcbbb9c8641b0e.rlib" "--extern" "parking_lot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libparking_lot-0afcbbb9c8641b0e.rmeta" "--extern" "quote=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libquote-dbc89400fd6938d7.rlib" "--extern" "quote=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libquote-dbc89400fd6938d7.rmeta" "--extern" "regex=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libregex-c563189a4fec18cb.rlib" "--extern" "regex=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libregex-c563189a4fec18cb.rmeta" "--extern" "serde=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libserde-61ad6261d0a71916.rlib" "--extern" "serde=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libserde-61ad6261d0a71916.rmeta" "--extern" "syn=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libsyn-f69412628c69f4c9.rlib" "--extern" "syn=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libsyn-f69412628c69f4c9.rmeta" "--extern" "tokio=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libtokio-6b8938c971e2085f.rlib" "--extern" "tokio=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libtokio-6b8938c971e2085f.rmeta" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/debug/deps" "--edition" "2024"

error: actual output differed from expected
Execute `./x test src/tools/clippy --bless` to update `tests/ui/missing_assert_message.stderr` to the actual output
--- tests/ui/missing_assert_message.stderr
+++ <stderr output>
---
+
+error: assert without any message
+  --> tests/ui/missing_assert_message.rs:77:5
+   |
+LL |     assert_ne!(foo(), foo());
+   |     ^^^^^^^^^^^^^^^^^^^^^^^^
+   |
+   = help: consider describing why the failing assert is problematic
+
+error: assert without any message
---
+
+error: assert without any message
+  --> tests/ui/missing_assert_message.rs:80:5
+   |
+LL |     debug_assert_ne!(foo(), foo());
+   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+   |
+   = help: consider describing why the failing assert is problematic
+
+error: aborting due to 22 previous errors
---

error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:16:5
   |
LL |     assert_ne!(foo(), foo());
   |     ^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: consider describing why the failing assert is problematic

error: assert without any message
---

error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:22:5
   |
LL |     debug_assert_ne!(foo(), foo());
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: consider describing why the failing assert is problematic

error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:28:5
   |
LL |     assert!(bar!(true));
   |     ^^^^^^^^^^^^^^^^^^^
   |
   = help: consider describing why the failing assert is problematic

error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:30:5
   |
LL |     assert!(bar!(true, false));
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: consider describing why the failing assert is problematic

error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:32:5
   |
LL |     assert_eq!(bar!(true), foo());
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: consider describing why the failing assert is problematic

error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:34:5
   |
LL |     assert_ne!(bar!(true, true), bar!(true));
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: consider describing why the failing assert is problematic

error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:40:5
   |
LL |     assert!(foo(),);
   |     ^^^^^^^^^^^^^^^
   |
   = help: consider describing why the failing assert is problematic

error: assert without any message
---

error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:44:5
   |
LL |     assert_ne!(foo(), foo(),);
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: consider describing why the failing assert is problematic

error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:46:5
   |
LL |     debug_assert!(foo(),);
   |     ^^^^^^^^^^^^^^^^^^^^^
   |
   = help: consider describing why the failing assert is problematic

error: assert without any message
---

error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:50:5
   |
LL |     debug_assert_ne!(foo(), foo(),);
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: consider describing why the failing assert is problematic

error: assert without any message
---

error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:77:5
   |
LL |     assert_ne!(foo(), foo());
   |     ^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: consider describing why the failing assert is problematic

error: assert without any message
---

error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:80:5
   |
LL |     debug_assert_ne!(foo(), foo());
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: consider describing why the failing assert is problematic

error: aborting due to 22 previous errors



error: there was 1 unmatched diagnostic
##[error]  --> tests/ui/missing_assert_message.rs:75:5
   |
75 |     assert!(foo());
   |     ^^^^^^^^^^^^^^ Error[clippy::missing_assert_message]: assert without any message
   |

error: there was 1 unmatched diagnostic
##[error]  --> tests/ui/missing_assert_message.rs:76:5
   |
76 |     assert_eq!(foo(), foo());
   |     ^^^^^^^^^^^^^^^^^^^^^^^^ Error[clippy::missing_assert_message]: assert without any message
   |

error: there was 1 unmatched diagnostic
##[error]  --> tests/ui/missing_assert_message.rs:77:5
   |
77 |     assert_ne!(foo(), foo());
   |     ^^^^^^^^^^^^^^^^^^^^^^^^ Error[clippy::missing_assert_message]: assert without any message
   |

error: there was 1 unmatched diagnostic
##[error]  --> tests/ui/missing_assert_message.rs:78:5
   |
78 |     debug_assert!(foo());
   |     ^^^^^^^^^^^^^^^^^^^^ Error[clippy::missing_assert_message]: assert without any message
   |

error: there was 1 unmatched diagnostic
##[error]  --> tests/ui/missing_assert_message.rs:79:5
   |
79 |     debug_assert_eq!(foo(), foo());
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error[clippy::missing_assert_message]: assert without any message
   |

error: there was 1 unmatched diagnostic
##[error]  --> tests/ui/missing_assert_message.rs:80:5
   |
80 |     debug_assert_ne!(foo(), foo());
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error[clippy::missing_assert_message]: assert without any message
   |

full stderr:
error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:12:5
---

error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:16:5
   |
LL |     assert_ne!(foo(), foo());
   |     ^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: consider describing why the failing assert is problematic

error: assert without any message
---

error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:22:5
   |
LL |     debug_assert_ne!(foo(), foo());
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: consider describing why the failing assert is problematic

error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:28:5
   |
LL |     assert!(bar!(true));
   |     ^^^^^^^^^^^^^^^^^^^
   |
   = help: consider describing why the failing assert is problematic

error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:30:5
   |
LL |     assert!(bar!(true, false));
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: consider describing why the failing assert is problematic

error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:32:5
   |
LL |     assert_eq!(bar!(true), foo());
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: consider describing why the failing assert is problematic

error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:34:5
   |
LL |     assert_ne!(bar!(true, true), bar!(true));
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: consider describing why the failing assert is problematic

error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:40:5
   |
LL |     assert!(foo(),);
   |     ^^^^^^^^^^^^^^^
   |
   = help: consider describing why the failing assert is problematic

error: assert without any message
---

error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:44:5
   |
LL |     assert_ne!(foo(), foo(),);
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: consider describing why the failing assert is problematic

error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:46:5
   |
LL |     debug_assert!(foo(),);
   |     ^^^^^^^^^^^^^^^^^^^^^
   |
   = help: consider describing why the failing assert is problematic

error: assert without any message
---

error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:50:5
   |
LL |     debug_assert_ne!(foo(), foo(),);
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: consider describing why the failing assert is problematic

error: assert without any message
---

error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:77:5
   |
LL |     assert_ne!(foo(), foo());
   |     ^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: consider describing why the failing assert is problematic

error: assert without any message
---

error: assert without any message
##[error]  --> tests/ui/missing_assert_message.rs:80:5
   |
LL |     debug_assert_ne!(foo(), foo());
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: consider describing why the failing assert is problematic

error: aborting due to 22 previous errors


full stdout:



FAILED TEST: tests/ui/redundant_test_prefix.rs
command: CLIPPY_CONF_DIR="tests" RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/release/clippy-driver" "--error-format=json" "--emit=metadata" "-Aunused" "-Ainternal_features" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Dwarnings" "-Ldependency=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/release/deps" "--sysroot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--test" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/ui_test/0/tests/ui" "tests/ui/redundant_test_prefix.rs" "--extern" "futures=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libfutures-1c57be01ce678fe1.rlib" "--extern" "futures=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libfutures-1c57be01ce678fe1.rmeta" "--extern" "itertools=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libitertools-dbbaea4865d325a0.rlib" "--extern" "itertools=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libitertools-dbbaea4865d325a0.rmeta" "--extern" "libc=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/liblibc-c786fec7f822d813.rlib" "--extern" "libc=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/liblibc-c786fec7f822d813.rmeta" "--extern" "parking_lot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libparking_lot-0afcbbb9c8641b0e.rlib" "--extern" "parking_lot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libparking_lot-0afcbbb9c8641b0e.rmeta" "--extern" "quote=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libquote-dbc89400fd6938d7.rlib" "--extern" "quote=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libquote-dbc89400fd6938d7.rmeta" "--extern" "regex=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libregex-c563189a4fec18cb.rlib" "--extern" "regex=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libregex-c563189a4fec18cb.rmeta" "--extern" "serde=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libserde-61ad6261d0a71916.rlib" "--extern" "serde=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libserde-61ad6261d0a71916.rmeta" "--extern" "syn=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libsyn-f69412628c69f4c9.rlib" "--extern" "syn=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libsyn-f69412628c69f4c9.rmeta" "--extern" "tokio=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libtokio-6b8938c971e2085f.rlib" "--extern" "tokio=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libtokio-6b8938c971e2085f.rmeta" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/debug/deps" "--edition" "2024"

error: actual output differed from expected
Execute `./x test src/tools/clippy --bless` to update `tests/ui/redundant_test_prefix.stderr` to the actual output
--- tests/ui/redundant_test_prefix.stderr
+++ <stderr output>
---
-
-error: redundant `test_` prefix in test function name
-  --> tests/ui/redundant_test_prefix.rs:59:8
-   |
-LL |     fn test_foo_with_call() {
-   |        ^^^^^^^^^^^^^^^^^^ help: consider removing the `test_` prefix: `foo_with_call`
-
-error: redundant `test_` prefix in test function name
-  --> tests/ui/redundant_test_prefix.rs:66:8
-   |
-LL |     fn test_f1() {
---
-
-error: redundant `test_` prefix in test function name
-  --> tests/ui/redundant_test_prefix.rs:105:8
-   |
-LL |     fn test_foo_with_call() {
-   |        ^^^^^^^^^^^^^^^^^^ help: consider removing the `test_` prefix: `foo_with_call`
-
-error: redundant `test_` prefix in test function name
-  --> tests/ui/redundant_test_prefix.rs:112:8
-   |
-LL |     fn test_f1() {
---

error: there was 1 unmatched diagnostic
##[error]   --> tests/ui/redundant_test_prefix.rs:151:17
    |
151 |     fn test_not(foo: bool) {
    |                 ^^^ Error[clippy::disallowed_names]: use of a disallowed/placeholder name `foo`
    |

full stderr:
error: use of a disallowed/placeholder name `foo`
##[error]  --> tests/ui/redundant_test_prefix.rs:151:17
---



FAILED TEST: tests/ui/redundant_test_prefix_noautofix.rs
command: CLIPPY_CONF_DIR="tests" RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/release/clippy-driver" "--error-format=json" "--emit=metadata" "-Aunused" "-Ainternal_features" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Dwarnings" "-Ldependency=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/release/deps" "--sysroot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--test" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/ui_test/0/tests/ui" "tests/ui/redundant_test_prefix_noautofix.rs" "--extern" "futures=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libfutures-1c57be01ce678fe1.rlib" "--extern" "futures=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libfutures-1c57be01ce678fe1.rmeta" "--extern" "itertools=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libitertools-dbbaea4865d325a0.rlib" "--extern" "itertools=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libitertools-dbbaea4865d325a0.rmeta" "--extern" "libc=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/liblibc-c786fec7f822d813.rlib" "--extern" "libc=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/liblibc-c786fec7f822d813.rmeta" "--extern" "parking_lot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libparking_lot-0afcbbb9c8641b0e.rlib" "--extern" "parking_lot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libparking_lot-0afcbbb9c8641b0e.rmeta" "--extern" "quote=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libquote-dbc89400fd6938d7.rlib" "--extern" "quote=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libquote-dbc89400fd6938d7.rmeta" "--extern" "regex=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libregex-c563189a4fec18cb.rlib" "--extern" "regex=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libregex-c563189a4fec18cb.rmeta" "--extern" "serde=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libserde-61ad6261d0a71916.rlib" "--extern" "serde=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libserde-61ad6261d0a71916.rmeta" "--extern" "syn=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libsyn-f69412628c69f4c9.rlib" "--extern" "syn=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libsyn-f69412628c69f4c9.rmeta" "--extern" "tokio=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libtokio-6b8938c971e2085f.rlib" "--extern" "tokio=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libtokio-6b8938c971e2085f.rmeta" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/debug/deps" "--edition" "2024"

error: actual output differed from expected
Execute `./x test src/tools/clippy --bless` to update `tests/ui/redundant_test_prefix_noautofix.stderr` to the actual output
--- tests/ui/redundant_test_prefix_noautofix.stderr
+++ <stderr output>
---
-   |
-LL | fn test_f5() {
-   |    ^^^^^^^
-   |
-help: consider function renaming (just removing `test_` prefix will cause a name conflict)
-   |
-LL - fn test_f5() {
-LL + fn f5_works() {
-   |
-
-error: redundant `test_` prefix in test function name
-  --> tests/ui/redundant_test_prefix_noautofix.rs:53:4
-   |
-LL | fn test_f6() {
-   |    ^^^^^^^
-   |
-help: consider function renaming (just removing `test_` prefix will cause a name conflict)
-   |
-LL - fn test_f6() {
-LL + fn f6_works() {
-   |
-
-error: redundant `test_` prefix in test function name
-  --> tests/ui/redundant_test_prefix_noautofix.rs:65:4
-   |
---
-   |
-LL |     fn test_f() {
-   |        ^^^^^^
-   |
-help: consider function renaming (just removing `test_` prefix will cause a name conflict)
-   |
-LL -     fn test_f() {
-LL +     fn f_works() {
-   |
-
-error: redundant `test_` prefix in test function name
-  --> tests/ui/redundant_test_prefix_noautofix.rs:101:8
-   |
-LL |     fn test_m3_2() {
-   |        ^^^^^^^^^ help: consider removing the `test_` prefix: `m3_2`
-
-error: redundant `test_` prefix in test function name
-  --> tests/ui/redundant_test_prefix_noautofix.rs:114:8
-   |
-LL |     fn test_foo() {
-   |        ^^^^^^^^ help: consider removing the `test_` prefix: `foo`
-
-error: redundant `test_` prefix in test function name
-  --> tests/ui/redundant_test_prefix_noautofix.rs:119:8
-   |
-LL |     fn test_foo_with_call() {
-   |        ^^^^^^^^^^^^^^^^^^ help: consider removing the `test_` prefix: `foo_with_call`
-
-error: redundant `test_` prefix in test function name
-  --> tests/ui/redundant_test_prefix_noautofix.rs:126:8
-   |
-LL |     fn test_f1() {
---
-   |
-LL |     fn test_1() {
-   |        ^^^^^^
-   |
-   = help: consider function renaming (just removing `test_` prefix will produce invalid function name)
-
-error: redundant `test_` prefix in test function name
-  --> tests/ui/redundant_test_prefix_noautofix.rs:163:8
-   |
-LL |     fn test_const() {
-   |        ^^^^^^^^^^
-   |
-   = help: consider function renaming (just removing `test_` prefix will produce invalid function name)
-
-error: redundant `test_` prefix in test function name
-  --> tests/ui/redundant_test_prefix_noautofix.rs:170:8
-   |
-LL |     fn test_async() {
-   |        ^^^^^^^^^^
-   |
-   = help: consider function renaming (just removing `test_` prefix will produce invalid function name)
-
-error: redundant `test_` prefix in test function name
-  --> tests/ui/redundant_test_prefix_noautofix.rs:177:8
-   |
-LL |     fn test_yield() {
-   |        ^^^^^^^^^^
-   |
-   = help: consider function renaming (just removing `test_` prefix will produce invalid function name)
-
-error: redundant `test_` prefix in test function name
-  --> tests/ui/redundant_test_prefix_noautofix.rs:184:8
-   |
-LL |     fn test_() {
-   |        ^^^^^
-   |
-   = help: consider function renaming (just removing `test_` prefix will produce invalid function name)
-
-error: redundant `test_` prefix in test function name
-  --> tests/ui/redundant_test_prefix_noautofix.rs:195:8
-   |
-LL |     fn test_foo() {
-   |        ^^^^^^^^ help: consider removing the `test_` prefix: `foo`
-
-error: redundant `test_` prefix in test function name
-  --> tests/ui/redundant_test_prefix_noautofix.rs:200:8
-   |
-LL |     fn test_foo_with_call() {
-   |        ^^^^^^^^^^^^^^^^^^ help: consider removing the `test_` prefix: `foo_with_call`
-
-error: redundant `test_` prefix in test function name
-  --> tests/ui/redundant_test_prefix_noautofix.rs:207:8
-   |
-LL |     fn test_f1() {
---
-   |
-LL |     fn test_1() {
-   |        ^^^^^^
-   |
-   = help: consider function renaming (just removing `test_` prefix will produce invalid function name)
-
-error: redundant `test_` prefix in test function name
-  --> tests/ui/redundant_test_prefix_noautofix.rs:244:8
-   |
-LL |     fn test_const() {
-   |        ^^^^^^^^^^
-   |
-   = help: consider function renaming (just removing `test_` prefix will produce invalid function name)
-
-error: redundant `test_` prefix in test function name
-  --> tests/ui/redundant_test_prefix_noautofix.rs:251:8
-   |
-LL |     fn test_async() {
-   |        ^^^^^^^^^^
-   |
-   = help: consider function renaming (just removing `test_` prefix will produce invalid function name)
-
-error: redundant `test_` prefix in test function name
-  --> tests/ui/redundant_test_prefix_noautofix.rs:258:8
-   |
-LL |     fn test_yield() {
-   |        ^^^^^^^^^^
-   |
-   = help: consider function renaming (just removing `test_` prefix will produce invalid function name)
-
-error: redundant `test_` prefix in test function name
-  --> tests/ui/redundant_test_prefix_noautofix.rs:265:8
-   |
-LL |     fn test_() {
-   |        ^^^^^
-   |
-   = help: consider function renaming (just removing `test_` prefix will produce invalid function name)
-
-error: aborting due to 33 previous errors
-

Full unnormalized output:
---

error: there was 1 unmatched diagnostic
##[error]   --> tests/ui/redundant_test_prefix_noautofix.rs:281:17
    |
281 |     fn test_not(foo: bool) {
    |                 ^^^ Error[clippy::disallowed_names]: use of a disallowed/placeholder name `foo`
    |

full stderr:
error: use of a disallowed/placeholder name `foo`
##[error]  --> tests/ui/redundant_test_prefix_noautofix.rs:281:17
---



FAILED TEST: tests/ui/single_call_fn.rs
command: CLIPPY_CONF_DIR="tests" RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/release/clippy-driver" "--error-format=json" "--emit=metadata" "-Aunused" "-Ainternal_features" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Dwarnings" "-Ldependency=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/release/deps" "--sysroot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--test" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/ui_test/0/tests/ui" "tests/ui/single_call_fn.rs" "--extern" "proc_macros=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/ui_test/0/tests/ui/auxiliary/libproc_macros.so" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/ui_test/0/tests/ui/auxiliary" "--extern" "futures=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libfutures-1c57be01ce678fe1.rlib" "--extern" "futures=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libfutures-1c57be01ce678fe1.rmeta" "--extern" "itertools=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libitertools-dbbaea4865d325a0.rlib" "--extern" "itertools=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libitertools-dbbaea4865d325a0.rmeta" "--extern" "libc=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/liblibc-c786fec7f822d813.rlib" "--extern" "libc=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/liblibc-c786fec7f822d813.rmeta" "--extern" "parking_lot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libparking_lot-0afcbbb9c8641b0e.rlib" "--extern" "parking_lot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libparking_lot-0afcbbb9c8641b0e.rmeta" "--extern" "quote=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libquote-dbc89400fd6938d7.rlib" "--extern" "quote=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libquote-dbc89400fd6938d7.rmeta" "--extern" "regex=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libregex-c563189a4fec18cb.rlib" "--extern" "regex=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libregex-c563189a4fec18cb.rmeta" "--extern" "serde=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libserde-61ad6261d0a71916.rlib" "--extern" "serde=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libserde-61ad6261d0a71916.rmeta" "--extern" "syn=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libsyn-f69412628c69f4c9.rlib" "--extern" "syn=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libsyn-f69412628c69f4c9.rmeta" "--extern" "tokio=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libtokio-6b8938c971e2085f.rlib" "--extern" "tokio=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libtokio-6b8938c971e2085f.rmeta" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/debug/deps" "--edition" "2024"

error: actual output differed from expected
Execute `./x test src/tools/clippy --bless` to update `tests/ui/single_call_fn.stderr` to the actual output
--- tests/ui/single_call_fn.stderr
+++ <stderr output>
---

error: this function is only used once
##[error]  --> tests/ui/single_call_fn.rs:15:1
   |
LL | fn j() {}
   | ^^^^^^^^^
   |
note: used here
  --> tests/ui/single_call_fn.rs:27:9
   |
---
   |
88 | / fn l() {
89 | |     k();
90 | | }
   | |_^ Error[clippy::single_call_fn]: this function is only used once
   |

full stderr:
error: this function is only used once
##[error]  --> tests/ui/single_call_fn.rs:13:1
---

error: this function is only used once
##[error]  --> tests/ui/single_call_fn.rs:15:1
   |
LL | fn j() {}
   | ^^^^^^^^^
   |
note: used here
  --> tests/ui/single_call_fn.rs:27:9
   |
---



FAILED TEST: tests/ui/tests_outside_test_module.rs
command: CLIPPY_CONF_DIR="tests" RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/release/clippy-driver" "--error-format=json" "--emit=metadata" "-Aunused" "-Ainternal_features" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Dwarnings" "-Ldependency=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/release/deps" "--sysroot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--test" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/ui_test/0/tests/ui" "tests/ui/tests_outside_test_module.rs" "--extern" "futures=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libfutures-1c57be01ce678fe1.rlib" "--extern" "futures=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libfutures-1c57be01ce678fe1.rmeta" "--extern" "itertools=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libitertools-dbbaea4865d325a0.rlib" "--extern" "itertools=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libitertools-dbbaea4865d325a0.rmeta" "--extern" "libc=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/liblibc-c786fec7f822d813.rlib" "--extern" "libc=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/liblibc-c786fec7f822d813.rmeta" "--extern" "parking_lot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libparking_lot-0afcbbb9c8641b0e.rlib" "--extern" "parking_lot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libparking_lot-0afcbbb9c8641b0e.rmeta" "--extern" "quote=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libquote-dbc89400fd6938d7.rlib" "--extern" "quote=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libquote-dbc89400fd6938d7.rmeta" "--extern" "regex=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libregex-c563189a4fec18cb.rlib" "--extern" "regex=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libregex-c563189a4fec18cb.rmeta" "--extern" "serde=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libserde-61ad6261d0a71916.rlib" "--extern" "serde=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libserde-61ad6261d0a71916.rmeta" "--extern" "syn=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libsyn-f69412628c69f4c9.rlib" "--extern" "syn=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libsyn-f69412628c69f4c9.rmeta" "--extern" "tokio=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libtokio-6b8938c971e2085f.rlib" "--extern" "tokio=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libtokio-6b8938c971e2085f.rmeta" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/debug/deps" "--edition" "2024"

error: no output was emitted
Execute `./x test src/tools/clippy --bless` to remove `tests/ui/tests_outside_test_module.stderr`


thread 'main' (51312) panicked at src/tools/clippy/tests/compile-test.rs:250:6:
called `Result::unwrap()` on an `Err` value: tests failed

Location:
    /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/ui_test-0.30.3/src/lib.rs:365:13
stack backtrace:
error: `this function marked with #[test] is outside a #[cfg(test)] module` not found in diagnostics on line 11
##[error]  --> tests/ui/tests_outside_test_module.rs:12:13
   |
12 | //~^ ERROR: this function marked with #[test] is outside a #[cfg(test)] module
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected because of this pattern
   |

error: `move it to a testing module marked with #[cfg(test)]` not found in diagnostics on line 11
##[error]  --> tests/ui/tests_outside_test_module.rs:13:12
   |
13 | //~| NOTE: move it to a testing module marked with #[cfg(test)]
   |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected because of this pattern
   |

full stderr:

full stdout:



FAILED TEST: tests/ui/unnecessary_path_debug_formatting.rs
command: CLIPPY_CONF_DIR="tests" RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/release/clippy-driver" "--error-format=json" "--emit=metadata" "-Aunused" "-Ainternal_features" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Dwarnings" "-Ldependency=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/release/deps" "--sysroot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--test" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/ui_test/0/tests/ui" "tests/ui/unnecessary_path_debug_formatting.rs" "--extern" "futures=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libfutures-1c57be01ce678fe1.rlib" "--extern" "futures=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libfutures-1c57be01ce678fe1.rmeta" "--extern" "itertools=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libitertools-dbbaea4865d325a0.rlib" "--extern" "itertools=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libitertools-dbbaea4865d325a0.rmeta" "--extern" "libc=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/liblibc-c786fec7f822d813.rlib" "--extern" "libc=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/liblibc-c786fec7f822d813.rmeta" "--extern" "parking_lot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libparking_lot-0afcbbb9c8641b0e.rlib" "--extern" "parking_lot=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libparking_lot-0afcbbb9c8641b0e.rmeta" "--extern" "quote=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libquote-dbc89400fd6938d7.rlib" "--extern" "quote=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libquote-dbc89400fd6938d7.rmeta" "--extern" "regex=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libregex-c563189a4fec18cb.rlib" "--extern" "regex=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libregex-c563189a4fec18cb.rmeta" "--extern" "serde=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libserde-61ad6261d0a71916.rlib" "--extern" "serde=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libserde-61ad6261d0a71916.rmeta" "--extern" "syn=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libsyn-f69412628c69f4c9.rlib" "--extern" "syn=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libsyn-f69412628c69f4c9.rmeta" "--extern" "tokio=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libtokio-6b8938c971e2085f.rlib" "--extern" "tokio=/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps/libtokio-6b8938c971e2085f.rmeta" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/x86_64-unknown-linux-gnu/debug/deps" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2-tools/debug/deps" "--edition" "2024"

error: actual output differed from expected
Execute `./x test src/tools/clippy --bless` to update `tests/ui/unnecessary_path_debug_formatting.stderr` to the actual output
--- tests/ui/unnecessary_path_debug_formatting.stderr
+++ <stderr output>
 error: unnecessary `Debug` formatting in `println!` args
   --> tests/ui/unnecessary_path_debug_formatting.rs:30:22
... 79 lines skipped ...
    = note: switching to `Display` formatting will change how the value is shown; escaped characters will no longer be escaped and surrounding quotes will be removed
 
-error: aborting due to 9 previous errors
+error: unnecessary `Debug` formatting in `assert!` args
+  --> tests/ui/unnecessary_path_debug_formatting.rs:49:39
+   |
+LL |     assert!(input.ends_with("baz"), "{input:?}");
+   |                                       ^^^^^
+   |
+   = help: use `Display` formatting and change this to `input.display()`
+   = note: switching to `Display` formatting will change how the value is shown; escaped characters will no longer be escaped and surrounding quotes will be removed
 
+error: aborting due to 10 previous errors
+

Full unnormalized output:
error: unnecessary `Debug` formatting in `println!` args
##[error]  --> tests/ui/unnecessary_path_debug_formatting.rs:30:22
   |
LL |     println!("{:?}", os_str);
   |                      ^^^^^^
   |
   = help: use `Display` formatting and change this to `os_str.display()`
   = note: switching to `Display` formatting will change how the value is shown; escaped characters will no longer be escaped and surrounding quotes will be removed
   = note: `-D clippy::unnecessary-debug-formatting` implied by `-D warnings`
   = help: to override `-D warnings` add `#[allow(clippy::unnecessary_debug_formatting)]`

error: unnecessary `Debug` formatting in `println!` args
##[error]  --> tests/ui/unnecessary_path_debug_formatting.rs:31:22
   |
LL |     println!("{:?}", os_string);
   |                      ^^^^^^^^^
   |
   = help: use `Display` formatting and change this to `os_string.display()`
   = note: switching to `Display` formatting will change how the value is shown; escaped characters will no longer be escaped and surrounding quotes will be removed

error: unnecessary `Debug` formatting in `println!` args
##[error]  --> tests/ui/unnecessary_path_debug_formatting.rs:33:22
   |
LL |     println!("{:?}", path);
   |                      ^^^^
   |
   = help: use `Display` formatting and change this to `path.display()`
   = note: switching to `Display` formatting will change how the value is shown; escaped characters will no longer be escaped and surrounding quotes will be removed

error: unnecessary `Debug` formatting in `println!` args
##[error]  --> tests/ui/unnecessary_path_debug_formatting.rs:34:22
   |
LL |     println!("{:?}", path_buf);
   |                      ^^^^^^^^
   |
   = help: use `Display` formatting and change this to `path_buf.display()`
   = note: switching to `Display` formatting will change how the value is shown; escaped characters will no longer be escaped and surrounding quotes will be removed

error: unnecessary `Debug` formatting in `println!` args
##[error]  --> tests/ui/unnecessary_path_debug_formatting.rs:36:16
   |
LL |     println!("{path:?}");
   |                ^^^^
   |
   = help: use `Display` formatting and change this to `path.display()`
   = note: switching to `Display` formatting will change how the value is shown; escaped characters will no longer be escaped and surrounding quotes will be removed

error: unnecessary `Debug` formatting in `println!` args
##[error]  --> tests/ui/unnecessary_path_debug_formatting.rs:37:16
   |
LL |     println!("{path_buf:?}");
   |                ^^^^^^^^
   |
   = help: use `Display` formatting and change this to `path_buf.display()`
   = note: switching to `Display` formatting will change how the value is shown; escaped characters will no longer be escaped and surrounding quotes will be removed

error: unnecessary `Debug` formatting in `format!` args
##[error]  --> tests/ui/unnecessary_path_debug_formatting.rs:39:37
   |
LL |     let _: String = format!("{:?}", path);
   |                                     ^^^^
   |
   = help: use `Display` formatting and change this to `path.display()`
   = note: switching to `Display` formatting will change how the value is shown; escaped characters will no longer be escaped and surrounding quotes will be removed

error: unnecessary `Debug` formatting in `format!` args
##[error]  --> tests/ui/unnecessary_path_debug_formatting.rs:40:37
   |
LL |     let _: String = format!("{:?}", path_buf);
   |                                     ^^^^^^^^
   |
   = help: use `Display` formatting and change this to `path_buf.display()`
   = note: switching to `Display` formatting will change how the value is shown; escaped characters will no longer be escaped and surrounding quotes will be removed

error: unnecessary `Debug` formatting in `println!` args
##[error]  --> tests/ui/unnecessary_path_debug_formatting.rs:43:22
   |
LL |     println!("{:?}", &*deref_path);
   |                      ^^^^^^^^^^^^
   |
   = help: use `Display` formatting and change this to `&*deref_path.display()`
   = note: switching to `Display` formatting will change how the value is shown; escaped characters will no longer be escaped and surrounding quotes will be removed

error: unnecessary `Debug` formatting in `assert!` args
##[error]  --> tests/ui/unnecessary_path_debug_formatting.rs:49:39
   |
LL |     assert!(input.ends_with("baz"), "{input:?}");
   |                                       ^^^^^
   |
   = help: use `Display` formatting and change this to `input.display()`
   = note: switching to `Display` formatting will change how the value is shown; escaped characters will no longer be escaped and surrounding quotes will be removed

error: aborting due to 10 previous errors



error: there was 1 unmatched diagnostic
##[error]  --> tests/ui/unnecessary_path_debug_formatting.rs:49:39
   |
49 |     assert!(input.ends_with("baz"), "{input:?}");
   |                                       ^^^^^ Error[clippy::unnecessary_debug_formatting]: unnecessary `Debug` formatting in `assert!` args
   |

full stderr:
error: unnecessary `Debug` formatting in `println!` args
##[error]  --> tests/ui/unnecessary_path_debug_formatting.rs:30:22
   |
LL |     println!("{:?}", os_str);
   |                      ^^^^^^
   |
   = help: use `Display` formatting and change this to `os_str.display()`
   = note: switching to `Display` formatting will change how the value is shown; escaped characters will no longer be escaped and surrounding quotes will be removed
   = note: `-D clippy::unnecessary-debug-formatting` implied by `-D warnings`
   = help: to override `-D warnings` add `#[allow(clippy::unnecessary_debug_formatting)]`

error: unnecessary `Debug` formatting in `println!` args
##[error]  --> tests/ui/unnecessary_path_debug_formatting.rs:31:22
   |
LL |     println!("{:?}", os_string);
   |                      ^^^^^^^^^
   |
   = help: use `Display` formatting and change this to `os_string.display()`
   = note: switching to `Display` formatting will change how the value is shown; escaped characters will no longer be escaped and surrounding quotes will be removed

error: unnecessary `Debug` formatting in `println!` args
##[error]  --> tests/ui/unnecessary_path_debug_formatting.rs:33:22
   |
LL |     println!("{:?}", path);
   |                      ^^^^
   |
   = help: use `Display` formatting and change this to `path.display()`
   = note: switching to `Display` formatting will change how the value is shown; escaped characters will no longer be escaped and surrounding quotes will be removed

error: unnecessary `Debug` formatting in `println!` args
##[error]  --> tests/ui/unnecessary_path_debug_formatting.rs:34:22
   |
LL |     println!("{:?}", path_buf);
   |                      ^^^^^^^^
   |
   = help: use `Display` formatting and change this to `path_buf.display()`
   = note: switching to `Display` formatting will change how the value is shown; escaped characters will no longer be escaped and surrounding quotes will be removed

error: unnecessary `Debug` formatting in `println!` args
##[error]  --> tests/ui/unnecessary_path_debug_formatting.rs:36:16
   |
LL |     println!("{path:?}");
   |                ^^^^
   |
   = help: use `Display` formatting and change this to `path.display()`
   = note: switching to `Display` formatting will change how the value is shown; escaped characters will no longer be escaped and surrounding quotes will be removed

error: unnecessary `Debug` formatting in `println!` args
##[error]  --> tests/ui/unnecessary_path_debug_formatting.rs:37:16
   |
LL |     println!("{path_buf:?}");
   |                ^^^^^^^^
   |
   = help: use `Display` formatting and change this to `path_buf.display()`
   = note: switching to `Display` formatting will change how the value is shown; escaped characters will no longer be escaped and surrounding quotes will be removed

error: unnecessary `Debug` formatting in `format!` args
##[error]  --> tests/ui/unnecessary_path_debug_formatting.rs:39:37
   |
LL |     let _: String = format!("{:?}", path);
   |                                     ^^^^
   |
   = help: use `Display` formatting and change this to `path.display()`
   = note: switching to `Display` formatting will change how the value is shown; escaped characters will no longer be escaped and surrounding quotes will be removed

error: unnecessary `Debug` formatting in `format!` args
##[error]  --> tests/ui/unnecessary_path_debug_formatting.rs:40:37
   |
LL |     let _: String = format!("{:?}", path_buf);
   |                                     ^^^^^^^^
   |
   = help: use `Display` formatting and change this to `path_buf.display()`
   = note: switching to `Display` formatting will change how the value is shown; escaped characters will no longer be escaped and surrounding quotes will be removed

error: unnecessary `Debug` formatting in `println!` args
##[error]  --> tests/ui/unnecessary_path_debug_formatting.rs:43:22
   |
LL |     println!("{:?}", &*deref_path);
   |                      ^^^^^^^^^^^^
   |
   = help: use `Display` formatting and change this to `&*deref_path.display()`
   = note: switching to `Display` formatting will change how the value is shown; escaped characters will no longer be escaped and surrounding quotes will be removed

error: unnecessary `Debug` formatting in `assert!` args
##[error]  --> tests/ui/unnecessary_path_debug_formatting.rs:49:39
   |
LL |     assert!(input.ends_with("baz"), "{input:?}");
   |                                       ^^^^^
   |
   = help: use `Display` formatting and change this to `input.display()`
   = note: switching to `Display` formatting will change how the value is shown; escaped characters will no longer be escaped and surrounding quotes will be removed

error: aborting due to 10 previous errors


full stdout:

@rustbot rustbot removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Feb 13, 2026
@JonathanBrouwer
Copy link
Contributor Author

@bors try cancel

@rust-bors
Copy link
Contributor

rust-bors bot commented Feb 13, 2026

Try build cancelled. Cancelled workflows:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-attributes Area: Attributes (`#[…]`, `#![…]`) A-CI Area: Our Github Actions CI A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. A-meta Area: Issues & PRs about the rust-lang/rust repository itself A-query-system Area: The rustc query system (https://rustc-dev-guide.rust-lang.org/query.html) A-testsuite Area: The testsuite used to check the correctness of rustc A-translation Area: Translation infrastructure, and migrating existing diagnostics to SessionDiagnostic rollup A PR which is a rollup T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver)

Projects

None yet

Development

Successfully merging this pull request may close these issues.