Skip to content

Conversation

relaxcn
Copy link
Contributor

@relaxcn relaxcn commented Oct 16, 2025

@rustbot rustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Oct 16, 2025
@rust-log-analyzer
Copy link
Collaborator

The job aarch64-gnu-llvm-20-1 failed! Check out the build log: (web) (plain enhanced) (plain)

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

20    |              ---- unsatisfied trait bound introduced here
21 help: associated type for the current `impl` cannot be restricted in `where` clauses, remove this bound
22    |
+ LL - impl<T: Grault> Grault for (T,)
+ LL -
23 LL - where
24 LL -     Self::A: Copy,
25    |

Note: some mismatched output was normalized before being compared
- LL - //~^ ERROR overflow evaluating the requirement `<(T,) as Grault>::A == _`
+ LL - impl<T: Grault> Grault for (T,)
+ LL -


The actual stderr differed from the expected stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args associated-types/impl-wf-cycle-2.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/associated-types/impl-wf-cycle-2.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/associated-types/impl-wf-cycle-2" "-A" "unused" "-A" "internal_features" "-A" "unused_parens" "-A" "unused_braces" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers"
stdout: none
--- stderr -------------------------------
error[E0275]: overflow evaluating the requirement `<(T,) as Grault>::A == _`
##[error]  --> /checkout/tests/ui/associated-types/impl-wf-cycle-2.rs:7:1
   |
LL | / impl<T: Grault> Grault for (T,)
LL | | //~^ ERROR overflow evaluating the requirement `<(T,) as Grault>::A == _`
LL | | where
LL | |     Self::A: Copy,
   | |__________________^
LL |   {
LL |       type A = ();
   |       ------ associated type `<(T,) as Grault>::A` is specified here
   |
note: required for `(T,)` to implement `Grault`
  --> /checkout/tests/ui/associated-types/impl-wf-cycle-2.rs:7:17
   |
LL | impl<T: Grault> Grault for (T,)
   |                 ^^^^^^     ^^^^
...
LL |     Self::A: Copy,
   |              ---- unsatisfied trait bound introduced here
help: associated type for the current `impl` cannot be restricted in `where` clauses, remove this bound
   |
LL - impl<T: Grault> Grault for (T,)
LL - //~^ ERROR overflow evaluating the requirement `<(T,) as Grault>::A == _`
LL - where
LL -     Self::A: Copy,
   |

error: aborting due to 1 previous error

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

20    |              --- unsatisfied trait bound introduced here
21 help: associated type for the current `impl` cannot be restricted in `where` clauses, remove this bound
22    |
+ LL - impl<T: Grault> Grault for (T,)
+ LL -
23 LL - where
24 LL -     Self::A: Baz,
25    |

Note: some mismatched output was normalized before being compared
- LL - //~^ ERROR overflow evaluating the requirement `<(T,) as Grault>::A == _`
+ LL - impl<T: Grault> Grault for (T,)
+ LL -


The actual stderr differed from the expected stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args associated-types/impl-wf-cycle-6.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/associated-types/impl-wf-cycle-6.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/associated-types/impl-wf-cycle-6" "-A" "unused" "-A" "internal_features" "-A" "unused_parens" "-A" "unused_braces" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers"
stdout: none
--- stderr -------------------------------
error[E0275]: overflow evaluating the requirement `<(T,) as Grault>::A == _`
##[error]  --> /checkout/tests/ui/associated-types/impl-wf-cycle-6.rs:22:1
   |
LL | / impl<T: Grault> Grault for (T,)
LL | | //~^ ERROR overflow evaluating the requirement `<(T,) as Grault>::A == _`
LL | | where
LL | |     Self::A: Baz,
   | |_________________^
LL |   {
LL |       type A = ();
   |       ------ associated type `<(T,) as Grault>::A` is specified here
   |
note: required for `(T,)` to implement `Grault`
  --> /checkout/tests/ui/associated-types/impl-wf-cycle-6.rs:22:17
   |
LL | impl<T: Grault> Grault for (T,)
   |                 ^^^^^^     ^^^^
...
LL |     Self::A: Baz,
   |              --- unsatisfied trait bound introduced here
help: associated type for the current `impl` cannot be restricted in `where` clauses, remove this bound
   |
LL - impl<T: Grault> Grault for (T,)
LL - //~^ ERROR overflow evaluating the requirement `<(T,) as Grault>::A == _`
LL - where
LL -     Self::A: Baz,
   |

error: aborting due to 1 previous error

For more information about this error, try `rustc --explain E0275`.
---
To only update this specific test, also pass `--test-args modules/issue-107649.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/modules/issue-107649.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/modules/issue-107649" "-A" "unused" "-A" "internal_features" "-A" "unused_parens" "-A" "unused_braces" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers" "-Z" "ui-testing=no"
stdout: none
--- stderr -------------------------------
error[E0277]: `Dummy` doesn't implement `Debug`
##[error]   --> /checkout/tests/ui/modules/issue-107649.rs:105:5
    |
105 |     dbg!(lib::Dummy); //~ ERROR `Dummy` doesn't implement `Debug`
    |     ^^^^^^^^^^^^^^^^ the trait `Debug` is not implemented for `Dummy`
    |
    = note: add `#[derive(Debug)]` to `Dummy` or manually `impl Debug for Dummy`
    = note: this error originates in the macro `dbg` (in Nightly builds, run with -Z macro-backtrace for more info)
help: consider annotating `Dummy` with `#[derive(Debug)]`
   --> /checkout/tests/ui/modules/auxiliary/dummy_lib.rs:2:1
    |
105 + #[derive(Debug)]
  3 | pub struct Dummy;
    |

---

12    = note: `#[deny(unused_extern_crates)]` implied by `#[deny(rust_2018_idioms)]`
13 help: remove the unused `extern crate`
14    |
- LL - #[cfg(not(FALSE))]
16 LL - extern crate edition_lint_paths;
17    |
18 


The actual stderr differed from the expected stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args rust-2018/issue-54400-unused-extern-crate-attr-span.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/rust-2018/issue-54400-unused-extern-crate-attr-span.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/rust-2018/issue-54400-unused-extern-crate-attr-span" "-A" "unused" "-A" "internal_features" "-A" "unused_parens" "-A" "unused_braces" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/rust-2018/issue-54400-unused-extern-crate-attr-span/auxiliary" "--edition=2018" "--extern" "edition_lint_paths"
stdout: none
--- stderr -------------------------------
error: unused extern crate
##[error]  --> /checkout/tests/ui/rust-2018/issue-54400-unused-extern-crate-attr-span.rs:12:1
   |
---
To only update this specific test, also pass `--test-args span/issue-71363.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/span/issue-71363.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/span/issue-71363" "-A" "unused" "-A" "internal_features" "-A" "unused_parens" "-A" "unused_braces" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers" "-Z" "ui-testing=no"
stdout: none
--- stderr -------------------------------
error[E0277]: `MyError` doesn't implement `std::fmt::Display`
##[error] --> /checkout/tests/ui/span/issue-71363.rs:4:28
  |
---
  |
4 | impl std::error::Error for MyError {}
  |                            ^^^^^^^ the trait `Debug` is not implemented for `MyError`
  |
  = note: add `#[derive(Debug)]` to `MyError` or manually `impl Debug for MyError`
note: required by a bound in `std::error::Error`
 --> /rustc/FAKE_PREFIX/library/core/src/error.rs:59:1
help: consider annotating `MyError` with `#[derive(Debug)]`
  |
4 + #[derive(Debug)]
---

20    |                this could be changed to `T: ?Sized`...
21 help: consider removing the `?Sized` bound to make the type parameter `Sized`
22    |
+ LL - fn foo<T>(foo: Wrapper<T>)
+ LL -
23 LL - where
24 LL -     T
25 LL -     :

49    |                this could be changed to `T: ?Sized`...
50 help: consider removing the `?Sized` bound to make the type parameter `Sized`
51    |
+ LL - fn bar<T>(foo: Wrapper<T>)
+ LL -
52 LL - where T: ?Sized
53    |
54 

74    |                this could be changed to `T: ?Sized`...
75 help: consider removing the `?Sized` bound to make the type parameter `Sized`
76    |
+ LL - fn qux<T>(foo: Wrapper<T>)
+ LL -
77 LL - where
78 LL -     T: ?Sized
79    |

Note: some mismatched output was normalized before being compared
- LL - //~^ ERROR the size for values of type `T` cannot be known at compilation time
- LL - //~^ ERROR the size for values of type `T` cannot be known at compilation time
- LL - //~^ ERROR the size for values of type `T` cannot be known at compilation time
+ LL - fn foo<T>(foo: Wrapper<T>)
+ LL -
+ LL - fn bar<T>(foo: Wrapper<T>)
+ LL -
+ LL - fn qux<T>(foo: Wrapper<T>)
+ LL -


The actual stderr differed from the expected stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args suggestions/removal-of-multiline-trait-bound-in-where-clause.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/suggestions/removal-of-multiline-trait-bound-in-where-clause.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/suggestions/removal-of-multiline-trait-bound-in-where-clause" "-A" "unused" "-A" "internal_features" "-A" "unused_parens" "-A" "unused_braces" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers"
stdout: none
--- stderr -------------------------------
error[E0277]: the size for values of type `T` cannot be known at compilation time
##[error]  --> /checkout/tests/ui/suggestions/removal-of-multiline-trait-bound-in-where-clause.rs:3:16
   |
---
   |
note: required by an implicit `Sized` bound in `Wrapper`
  --> /checkout/tests/ui/suggestions/removal-of-multiline-trait-bound-in-where-clause.rs:1:16
   |
LL | struct Wrapper<T>(T);
   |                ^ required by the implicit `Sized` requirement on this type parameter in `Wrapper`
help: you could relax the implicit `Sized` bound on `T` if it were used through indirection like `&T` or `Box<T>`
  --> /checkout/tests/ui/suggestions/removal-of-multiline-trait-bound-in-where-clause.rs:1:16
   |
LL | struct Wrapper<T>(T);
   |                ^  - ...if indirection were used here: `Box<T>`
   |                |
   |                this could be changed to `T: ?Sized`...
help: consider removing the `?Sized` bound to make the type parameter `Sized`
   |
LL - fn foo<T>(foo: Wrapper<T>)
---

error[E0277]: the size for values of type `T` cannot be known at compilation time
##[error]  --> /checkout/tests/ui/suggestions/removal-of-multiline-trait-bound-in-where-clause.rs:14:16
   |
LL | fn bar<T>(foo: Wrapper<T>)
   |        -       ^^^^^^^^^^ doesn't have a size known at compile-time
   |        |
   |        this type parameter needs to be `Sized`
   |
note: required by an implicit `Sized` bound in `Wrapper`
  --> /checkout/tests/ui/suggestions/removal-of-multiline-trait-bound-in-where-clause.rs:1:16
   |
LL | struct Wrapper<T>(T);
   |                ^ required by the implicit `Sized` requirement on this type parameter in `Wrapper`
help: you could relax the implicit `Sized` bound on `T` if it were used through indirection like `&T` or `Box<T>`
  --> /checkout/tests/ui/suggestions/removal-of-multiline-trait-bound-in-where-clause.rs:1:16
   |
LL | struct Wrapper<T>(T);
   |                ^  - ...if indirection were used here: `Box<T>`
   |                |
   |                this could be changed to `T: ?Sized`...
help: consider removing the `?Sized` bound to make the type parameter `Sized`
   |
LL - fn bar<T>(foo: Wrapper<T>)
LL - //~^ ERROR the size for values of type `T` cannot be known at compilation time
LL - where T: ?Sized
   |

error[E0277]: the size for values of type `T` cannot be known at compilation time
##[error]  --> /checkout/tests/ui/suggestions/removal-of-multiline-trait-bound-in-where-clause.rs:21:16
   |
LL | fn qux<T>(foo: Wrapper<T>)
   |        -       ^^^^^^^^^^ doesn't have a size known at compile-time
   |        |
   |        this type parameter needs to be `Sized`
   |
note: required by an implicit `Sized` bound in `Wrapper`
  --> /checkout/tests/ui/suggestions/removal-of-multiline-trait-bound-in-where-clause.rs:1:16
   |
LL | struct Wrapper<T>(T);
   |                ^ required by the implicit `Sized` requirement on this type parameter in `Wrapper`
help: you could relax the implicit `Sized` bound on `T` if it were used through indirection like `&T` or `Box<T>`
  --> /checkout/tests/ui/suggestions/removal-of-multiline-trait-bound-in-where-clause.rs:1:16
   |
LL | struct Wrapper<T>(T);
   |                ^  - ...if indirection were used here: `Box<T>`
   |                |
   |                this could be changed to `T: ?Sized`...
help: consider removing the `?Sized` bound to make the type parameter `Sized`
   |
LL - fn qux<T>(foo: Wrapper<T>)
LL - //~^ ERROR the size for values of type `T` cannot be known at compilation time
LL - where
LL -     T: ?Sized
   |

error: aborting due to 3 previous errors

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

@Kivooeo
Copy link
Member

Kivooeo commented Oct 16, 2025

You have to update tests with ./x test ui --bless

Also, I'm not sure if this a rustc problem, because issue you reffering is from clippy, which is slightly different project, so would be nice if you could give a small explanation of what exactly you trying to fix, maybe example of current incorrect behavior or something

@relaxcn
Copy link
Contributor Author

relaxcn commented Oct 16, 2025

You have to update tests with ./x test ui --bless

Also, I'm not sure if this a rustc problem, because issue you reffering is from clippy, which is slightly different project, so would be nice if you could give a small explanation of what exactly you trying to fix, maybe example of current incorrect behavior or something

Thank you, I forgot it.

I'm sure the issue is from rustc. But this PR has some problems I will continue to solve it tomorrow.

clippy uses the API from rustc_errors, I researched the issue and found the bug point.

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

Labels

S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants