Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[experiment] -Ztrait-solver=next-coherence but hacks that make things not fail anymore #113991

Conversation

compiler-errors
Copy link
Member

@compiler-errors compiler-errors commented Jul 24, 2023

i am not endorsing this, just checking how many of these failures are due to inductive cycles being treated as "may not apply" 06409c806e58432eb6a4398792e924a693a4a6b0.

also skipping aliases in assemble_coherence_unknowable_candidates (let's just try the self type first, 57443cdd353eeb27dfb4d9955a0c63ae0f3cc63c)

r? @ghost

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver) labels Jul 24, 2023
@compiler-errors
Copy link
Member Author

@bors try

@bors
Copy link
Contributor

bors commented Jul 24, 2023

⌛ Trying commit e4ce0193dfe3bf8f8480df603e8e23a4ba1868ad with merge eba0caf10bb3b7a1920567f58003d191affe4aac...

@compiler-errors
Copy link
Member Author

for myself for later:

@ craterbot run mode=check-only crates=https://crater-reports.s3.amazonaws.com/pr-113895-1/retry-regressed-list.txt

@rust-log-analyzer

This comment has been minimized.

@bors
Copy link
Contributor

bors commented Jul 24, 2023

☀️ Try build successful - checks-actions
Build commit: eba0caf10bb3b7a1920567f58003d191affe4aac (eba0caf10bb3b7a1920567f58003d191affe4aac)

@compiler-errors
Copy link
Member Author

@craterbot
Copy link
Collaborator

👌 Experiment pr-113991 created and queued.
🤖 Automatically detected try build eba0caf10bb3b7a1920567f58003d191affe4aac
🔍 You can check out the queue and this experiment's details.

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot craterbot added S-waiting-on-crater Status: Waiting on a crater run to be completed. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jul 24, 2023
@craterbot
Copy link
Collaborator

🚧 Experiment pr-113991 is now running

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot
Copy link
Collaborator

🎉 Experiment pr-113991 is completed!
📊 104 regressed and 0 fixed (115 total)
📰 Open the full report.

⚠️ If you notice any spurious failure please add them to the blacklist!
ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot craterbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-crater Status: Waiting on a crater run to be completed. labels Jul 24, 2023
@compiler-errors compiler-errors changed the title [experiment] -Ztrait-solver=next-coherence but treating inductive cycles as error [experiment] -Ztrait-solver=next-coherence but hacks that make things not fail anymore Jul 24, 2023
@rust-cloud-vms rust-cloud-vms bot force-pushed the crater-next-coherence-cycle-err branch from e4ce019 to 57443cd Compare July 24, 2023 15:39
@compiler-errors
Copy link
Member Author

@bors try

@bors
Copy link
Contributor

bors commented Jul 24, 2023

⌛ Trying commit 57443cdd353eeb27dfb4d9955a0c63ae0f3cc63c with merge 92ba2ff79d7a80af24d063a439f8271726e607d7...

@rust-log-analyzer

This comment has been minimized.

@bors
Copy link
Contributor

bors commented Jul 24, 2023

☀️ Try build successful - checks-actions
Build commit: 92ba2ff79d7a80af24d063a439f8271726e607d7 (92ba2ff79d7a80af24d063a439f8271726e607d7)

@compiler-errors
Copy link
Member Author

@craterbot
Copy link
Collaborator

👌 Experiment pr-113991-1 created and queued.
🤖 Automatically detected try build 92ba2ff79d7a80af24d063a439f8271726e607d7
🔍 You can check out the queue and this experiment's details.

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot craterbot added S-waiting-on-crater Status: Waiting on a crater run to be completed. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jul 24, 2023
@craterbot
Copy link
Collaborator

🚧 Experiment pr-113991-1 is now running

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot
Copy link
Collaborator

🎉 Experiment pr-113991-1 is completed!
📊 10 regressed and 1 fixed (115 total)
📰 Open the full report.

⚠️ If you notice any spurious failure please add them to the blacklist!
ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot craterbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-crater Status: Waiting on a crater run to be completed. labels Jul 24, 2023
@rust-cloud-vms rust-cloud-vms bot force-pushed the crater-next-coherence-cycle-err branch from 57443cd to d667549 Compare July 24, 2023 19:53
@compiler-errors
Copy link
Member Author

@bors try

@bors
Copy link
Contributor

bors commented Jul 24, 2023

⌛ Trying commit d667549 with merge 93b7365ab3319a5c4a78362e458267d6348b7ef2...

@rust-log-analyzer
Copy link
Collaborator

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

Click to see the possible cause of the failure (guessed by this bot)
##[group]Run git config --global core.autocrlf false
git config --global core.autocrlf false
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: d667549f1bd7768c739513b649313bbaf114ec87
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
---
  lfs: false
  submodules: false
  set-safe-directory: true
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: d667549f1bd7768c739513b649313bbaf114ec87
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
---
##[group]Run src/ci/scripts/setup-environment.sh
src/ci/scripts/setup-environment.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: d667549f1bd7768c739513b649313bbaf114ec87
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
---
##[group]Run src/ci/scripts/should-skip-this.sh
src/ci/scripts/should-skip-this.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: d667549f1bd7768c739513b649313bbaf114ec87
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
---
##[group]Run src/ci/scripts/verify-channel.sh
src/ci/scripts/verify-channel.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: d667549f1bd7768c739513b649313bbaf114ec87
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  CACHE_DOMAIN: ci-caches.rust-lang.org
  IMAGE: x86_64-gnu-llvm-14
##[endgroup]
##[group]Run src/ci/scripts/collect-cpu-stats.sh
src/ci/scripts/collect-cpu-stats.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: d667549f1bd7768c739513b649313bbaf114ec87
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
---
##[group]Run src/ci/scripts/install-sccache.sh
src/ci/scripts/install-sccache.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: d667549f1bd7768c739513b649313bbaf114ec87
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  CACHE_DOMAIN: ci-caches.rust-lang.org
  IMAGE: x86_64-gnu-llvm-14
##[endgroup]
##[group]Run src/ci/scripts/select-xcode.sh
src/ci/scripts/select-xcode.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: d667549f1bd7768c739513b649313bbaf114ec87
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  CACHE_DOMAIN: ci-caches.rust-lang.org
  IMAGE: x86_64-gnu-llvm-14
##[endgroup]
##[group]Run src/ci/scripts/install-clang.sh
src/ci/scripts/install-clang.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: d667549f1bd7768c739513b649313bbaf114ec87
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  CACHE_DOMAIN: ci-caches.rust-lang.org
  IMAGE: x86_64-gnu-llvm-14
##[endgroup]
##[group]Run src/ci/scripts/install-wix.sh
src/ci/scripts/install-wix.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: d667549f1bd7768c739513b649313bbaf114ec87
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  CACHE_DOMAIN: ci-caches.rust-lang.org
  IMAGE: x86_64-gnu-llvm-14
##[endgroup]
##[group]Run src/ci/scripts/disable-git-crlf-conversion.sh
src/ci/scripts/disable-git-crlf-conversion.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: d667549f1bd7768c739513b649313bbaf114ec87
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
---
##[group]Run src/ci/scripts/install-msys2.sh
src/ci/scripts/install-msys2.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: d667549f1bd7768c739513b649313bbaf114ec87
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  CACHE_DOMAIN: ci-caches.rust-lang.org
  IMAGE: x86_64-gnu-llvm-14
##[endgroup]
##[group]Run src/ci/scripts/install-mingw.sh
src/ci/scripts/install-mingw.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: d667549f1bd7768c739513b649313bbaf114ec87
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  CACHE_DOMAIN: ci-caches.rust-lang.org
  IMAGE: x86_64-gnu-llvm-14
##[endgroup]
##[group]Run src/ci/scripts/install-ninja.sh
src/ci/scripts/install-ninja.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: d667549f1bd7768c739513b649313bbaf114ec87
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  CACHE_DOMAIN: ci-caches.rust-lang.org
  IMAGE: x86_64-gnu-llvm-14
##[endgroup]
##[group]Run src/ci/scripts/enable-docker-ipv6.sh
src/ci/scripts/enable-docker-ipv6.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: d667549f1bd7768c739513b649313bbaf114ec87
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
---
##[group]Run src/ci/scripts/disable-git-crlf-conversion.sh
src/ci/scripts/disable-git-crlf-conversion.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: d667549f1bd7768c739513b649313bbaf114ec87
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  CACHE_DOMAIN: ci-caches.rust-lang.org
  IMAGE: x86_64-gnu-llvm-14
##[endgroup]
##[group]Run src/ci/scripts/verify-line-endings.sh
src/ci/scripts/verify-line-endings.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: d667549f1bd7768c739513b649313bbaf114ec87
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
  CACHE_DOMAIN: ci-caches.rust-lang.org
  IMAGE: x86_64-gnu-llvm-14
##[endgroup]
##[group]Run src/ci/scripts/verify-backported-commits.sh
src/ci/scripts/verify-backported-commits.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: d667549f1bd7768c739513b649313bbaf114ec87
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
---
##[group]Run src/ci/scripts/verify-stable-version-number.sh
src/ci/scripts/verify-stable-version-number.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: d667549f1bd7768c739513b649313bbaf114ec87
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
---
##[group]Run src/ci/scripts/run-build-from-ci.sh
src/ci/scripts/run-build-from-ci.sh
shell: /usr/bin/bash --noprofile --norc -e -o pipefail {0}
env:
  PR_CI_JOB: 1
  CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
  HEAD_SHA: d667549f1bd7768c739513b649313bbaf114ec87
  SCCACHE_BUCKET: rust-lang-ci-sccache2
  TOOLSTATE_REPO: https://github.com/rust-lang-nursery/rust-toolstate
---
........................................................................................  1760/15248
...................i....................................................................  1848/15248
........................................................................................  1936/15248
........................................................................................  2024/15248
...................................................i.............i............i.F.......  2112/15248
..ii....................................................................................  2200/15248
......FF..F.F..............F............F..FF.......FFF.................................  2288/15248
.........F............................................................i.................  2376/15248
........................................................................................  2552/15248
........................................................................................  2640/15248
........................................................................................  2728/15248
........................................................................................  2816/15248
---
........................................................................................  6776/15248
........................................................................................  6864/15248
........................................................................................  6952/15248
........................................................................................  7040/15248
.......................................................F................................  7128/15248
................................................i...F...................................  7216/15248
................i.......................................................................  7392/15248
..........................................................i.............................  7480/15248
...........................ii.ii........i....i..........................................  7568/15248
....................................................i...................................  7656/15248
---
.....................................................................ii.ii.iiii.i...iiii 12232/15248
iiiiii..........i.i..................................................................... 12320/15248
........................................................................................ 12408/15248
........................................................................................ 12496/15248
...........................................................F..........................F. 12584/15248
..............................F...........F............................................. 12672/15248
........................................................................................ 12848/15248
........................................................................................ 12936/15248
........................................................................................ 13024/15248
........................................................................................ 13112/15248
........................................................................................ 13112/15248
........................................................................................ 13200/15248
........................................................................................ 13288/15248
..........i.........i........i.....i..........................i......................... 13376/15248
........................................................................................ 13464/15248
........................................................................................ 13552/15248
........................................................................................ 13640/15248
.....................F.................................................................. 13728/15248
..............................................F...................................F..... 13816/15248
........................................................................................ 13904/15248
......................F................F................................................ 13992/15248
........................................................................................ 14168/15248
......................................F................................................. 14256/15248
........................................................................................ 14344/15248
........................................................................................ 14432/15248
---

---- [ui] tests/ui/associated-types/associated-types-coherence-failure.rs stdout ----
diff of stderr:

- error[E0119]: conflicting implementations of trait `IntoCow<'_, _>` for type `Cow<'_, _>`
+ error[E0119]: conflicting implementations of trait `IntoCow<'_, _>` for type `<_ as ToOwned>::Owned`
3    |
3    |
4 LL | impl<'a, B: ?Sized> IntoCow<'a, B> for <B as ToOwned>::Owned where B: ToOwned {
5    | ------------------------------------------------------------ first implementation here
6 ...
6 ...
7 LL | impl<'a, B: ?Sized> IntoCow<'a, B> for Cow<'a, B> where B: ToOwned {
-    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `Cow<'_, _>`
+    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `<_ as ToOwned>::Owned`
9 
- error[E0119]: conflicting implementations of trait `IntoCow<'_, _>` for type `&_`
+ error[E0119]: conflicting implementations of trait `IntoCow<'_, _>` for type `<_ as ToOwned>::Owned`
12    |
12    |
13 LL | impl<'a, B: ?Sized> IntoCow<'a, B> for <B as ToOwned>::Owned where B: ToOwned {
14    | ------------------------------------------------------------ first implementation here
15 ...
15 ...
16 LL | impl<'a, B: ?Sized> IntoCow<'a, B> for &'a B where B: ToOwned {
-    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `&_`
+    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `<_ as ToOwned>::Owned`
19 error: aborting due to 2 previous errors
20 



The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/associated-types/associated-types-coherence-failure/associated-types-coherence-failure.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args associated-types/associated-types-coherence-failure.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/associated-types/associated-types-coherence-failure.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/associated-types/associated-types-coherence-failure" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/associated-types/associated-types-coherence-failure/auxiliary"
stdout: none
--- stderr -------------------------------
error[E0119]: conflicting implementations of trait `IntoCow<'_, _>` for type `<_ as ToOwned>::Owned`
##[error]  --> fake-test-src-base/associated-types/associated-types-coherence-failure.rs:21:1
   |
LL | impl<'a, B: ?Sized> IntoCow<'a, B> for <B as ToOwned>::Owned where B: ToOwned {
...
...
LL | impl<'a, B: ?Sized> IntoCow<'a, B> for Cow<'a, B> where B: ToOwned {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `<_ as ToOwned>::Owned`

error[E0119]: conflicting implementations of trait `IntoCow<'_, _>` for type `<_ as ToOwned>::Owned`
##[error]  --> fake-test-src-base/associated-types/associated-types-coherence-failure.rs:28:1
   |
LL | impl<'a, B: ?Sized> IntoCow<'a, B> for <B as ToOwned>::Owned where B: ToOwned {
...
...
LL | impl<'a, B: ?Sized> IntoCow<'a, B> for &'a B where B: ToOwned {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `<_ as ToOwned>::Owned`
error: aborting due to 2 previous errors

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


---- [ui] tests/ui/codemap_tests/overlapping_inherent_impls.rs stdout ----
diff of stderr:

24 ...
25 LL |     fn baz(&self) {}
26    |     ------------- other definition for `baz`
-    |
-    = note: upstream crates may add a new impl of trait `std::marker::Copy` for type `std::vec::Vec<_>` in future versions
30 error: aborting due to 3 previous errors
31 



The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/codemap_tests/overlapping_inherent_impls/overlapping_inherent_impls.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args codemap_tests/overlapping_inherent_impls.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/codemap_tests/overlapping_inherent_impls.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/codemap_tests/overlapping_inherent_impls" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/codemap_tests/overlapping_inherent_impls/auxiliary"
stdout: none
error[E0592]: duplicate definitions with name `id`
##[error]  --> fake-test-src-base/codemap_tests/overlapping_inherent_impls.rs:9:5
   |
   |
LL |     fn id() {} //~ ERROR duplicate definitions
   |     ^^^^^^^ duplicate definitions for `id`
LL |     fn id() {}
   |     ------- other definition for `id`

error[E0592]: duplicate definitions with name `bar`
error[E0592]: duplicate definitions with name `bar`
##[error]  --> fake-test-src-base/codemap_tests/overlapping_inherent_impls.rs:19:5
   |
LL |     fn bar(&self) {} //~ ERROR duplicate definitions
   |     ^^^^^^^^^^^^^ duplicate definitions for `bar`
LL |     fn bar(&self) {}
   |     ------------- other definition for `bar`

error[E0592]: duplicate definitions with name `baz`
error[E0592]: duplicate definitions with name `baz`
##[error]  --> fake-test-src-base/codemap_tests/overlapping_inherent_impls.rs:29:5
   |
LL |     fn baz(&self) {} //~ ERROR duplicate definitions
   |     ^^^^^^^^^^^^^ duplicate definitions for `baz`
...
LL |     fn baz(&self) {}
   |     ------------- other definition for `baz`
Build completed unsuccessfully in 0:11:07
error: aborting due to 3 previous errors

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


---- [ui] tests/ui/coherence/coherence-overlap-downstream-inherent.rs stdout ----
diff of stderr:

15 LL |
16 LL | impl<X> A<i32, X> { fn f(&self) {} }
17    |                     ----------- other definition for `f`
-    |
-    = note: downstream crates may implement trait `Bar<_>` for type `i32`
21 error: aborting due to 2 previous errors
22 



The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence-overlap-downstream-inherent/coherence-overlap-downstream-inherent.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args coherence/coherence-overlap-downstream-inherent.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coherence/coherence-overlap-downstream-inherent.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence-overlap-downstream-inherent" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence-overlap-downstream-inherent/auxiliary"
stdout: none
--- stderr -------------------------------
error[E0592]: duplicate definitions with name `dummy`
##[error]  --> fake-test-src-base/coherence/coherence-overlap-downstream-inherent.rs:7:26
   |
LL | impl<T:Sugar> Sweet<T> { fn dummy(&self) { } }
   |                          ^^^^^^^^^^^^^^^ duplicate definitions for `dummy`
LL | //~^ ERROR E0592
LL | impl<T:Fruit> Sweet<T> { fn dummy(&self) { } }
   |                          --------------- other definition for `dummy`
error[E0592]: duplicate definitions with name `f`
##[error]  --> fake-test-src-base/coherence/coherence-overlap-downstream-inherent.rs:13:38
   |
   |
LL | impl<X, T> A<T, X> where T: Bar<X> { fn f(&self) {} }
   |                                      ^^^^^^^^^^^ duplicate definitions for `f`
LL | //~^ ERROR E0592
LL | impl<X> A<i32, X> { fn f(&self) {} }
   |                     ----------- other definition for `f`
error: aborting due to 2 previous errors

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


---- [ui] tests/ui/coherence/coherence-overlap-issue-23516-inherent.rs stdout ----
diff of stderr:

6 LL |
7 LL | impl<U:Sugar> Cake<Box<U>> { fn dummy(&self) { } }
8    |                              --------------- other definition for `dummy`
-    |
-    = note: downstream crates may implement trait `Sugar` for type `std::boxed::Box<_>`
12 error: aborting due to previous error
13 



The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence-overlap-issue-23516-inherent/coherence-overlap-issue-23516-inherent.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args coherence/coherence-overlap-issue-23516-inherent.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coherence/coherence-overlap-issue-23516-inherent.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence-overlap-issue-23516-inherent" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence-overlap-issue-23516-inherent/auxiliary"
stdout: none
--- stderr -------------------------------
error[E0592]: duplicate definitions with name `dummy`
##[error]  --> fake-test-src-base/coherence/coherence-overlap-issue-23516-inherent.rs:9:25
   |
LL | impl<T:Sugar> Cake<T> { fn dummy(&self) { } }
   |                         ^^^^^^^^^^^^^^^ duplicate definitions for `dummy`
LL | //~^ ERROR E0592
LL | impl<U:Sugar> Cake<Box<U>> { fn dummy(&self) { } }
   |                              --------------- other definition for `dummy`
error: aborting due to previous error

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


---- [ui] tests/ui/coherence/coherence-overlap-downstream.rs stdout ----
diff of stderr:

13    | ----------------------- first implementation here
14 LL | impl<X> Foo<X> for i32 {}
-    |
-    |
-    = note: downstream crates may implement trait `Bar<_>` for type `i32`
19 error: aborting due to 2 previous errors
20 



The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence-overlap-downstream/coherence-overlap-downstream.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args coherence/coherence-overlap-downstream.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coherence/coherence-overlap-downstream.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence-overlap-downstream" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence-overlap-downstream/auxiliary"
stdout: none
--- stderr -------------------------------
error[E0119]: conflicting implementations of trait `Sweet`
##[error]  --> fake-test-src-base/coherence/coherence-overlap-downstream.rs:8:1
   |
LL | impl<T:Sugar> Sweet for T { }
   | ------------------------- first implementation here
LL | impl<T:Fruit> Sweet for T { }


error[E0119]: conflicting implementations of trait `Foo<_>` for type `i32`
##[error]  --> fake-test-src-base/coherence/coherence-overlap-downstream.rs:14:1
   |
LL | impl<X, T> Foo<X> for T where T: Bar<X> {}
   | ----------------------- first implementation here
LL | impl<X> Foo<X> for i32 {}

error: aborting due to 2 previous errors

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


---- [ui] tests/ui/coherence/coherence-overlap-issue-23516.rs stdout ----
diff of stderr:

5    | ------------------------- first implementation here
6 LL | impl<U:Sugar> Sweet for Box<U> { }
7    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `Box<_>`
-    |
-    = note: downstream crates may implement trait `Sugar` for type `std::boxed::Box<_>`
11 error: aborting due to previous error
12 



The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence-overlap-issue-23516/coherence-overlap-issue-23516.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args coherence/coherence-overlap-issue-23516.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coherence/coherence-overlap-issue-23516.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence-overlap-issue-23516" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence-overlap-issue-23516/auxiliary"
stdout: none
--- stderr -------------------------------
error[E0119]: conflicting implementations of trait `Sweet` for type `Box<_>`
##[error]  --> fake-test-src-base/coherence/coherence-overlap-issue-23516.rs:8:1
   |
LL | impl<T:Sugar> Sweet for T { }
   | ------------------------- first implementation here
LL | impl<U:Sugar> Sweet for Box<U> { }
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `Box<_>`
error: aborting due to previous error

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


---- [ui] tests/ui/coherence/coherence-projection-conflict-orphan.rs stdout ----
diff of stderr:

6 LL |
7 LL | impl<A:Iterator> Foo<A::Item> for A { }
-    |
-    |
-    = note: upstream crates may add a new impl of trait `std::iter::Iterator` for type `i32` in future versions
12 error: aborting due to previous error
13 



The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence-projection-conflict-orphan/coherence-projection-conflict-orphan.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args coherence/coherence-projection-conflict-orphan.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coherence/coherence-projection-conflict-orphan.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence-projection-conflict-orphan" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence-projection-conflict-orphan/auxiliary"
stdout: none
--- stderr -------------------------------
error[E0119]: conflicting implementations of trait `Foo<i32>` for type `i32`
##[error]  --> fake-test-src-base/coherence/coherence-projection-conflict-orphan.rs:16:1
   |
LL | impl Foo<i32> for i32 { }
LL |
LL |
LL | impl<A:Iterator> Foo<A::Item> for A { }

error: aborting due to previous error

For more information about this error, try `rustc --explain E0119`.
---
5    | ----------------- first implementation here
6 LL | impl Foo for i16 {}
7    | ^^^^^^^^^^^^^^^^ conflicting implementation for `i16`
-    |
-    = note: upstream crates may add a new impl of trait `coherence_lib::Remote` for type `i16` in future versions
11 error: aborting due to previous error
12 



The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence-overlap-upstream/coherence-overlap-upstream.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args coherence/coherence-overlap-upstream.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coherence/coherence-overlap-upstream.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence-overlap-upstream" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence-overlap-upstream/auxiliary"
stdout: none
error[E0119]: conflicting implementations of trait `Foo` for type `i16`
##[error]  --> fake-test-src-base/coherence/coherence-overlap-upstream.rs:13:1
   |
   |
LL | impl<T> Foo for T where T: Remote {}
LL | impl Foo for i16 {}
   | ^^^^^^^^^^^^^^^^ conflicting implementation for `i16`

error: aborting due to previous error
---

9    |
10    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
11    = note: for more information, see issue #56105 <https://github.com/rust-lang/rust/issues/56105>
-    = note: downstream crates may implement trait `FromWasmAbi` for type `&_`
13    = note: this behavior recently changed as a result of a bug fix; see rust-lang/rust#56105 for details
15   --> $DIR/coherence-wasm-bindgen.rs:10:9


The actual stderr differed from the expected stderr.
The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence-wasm-bindgen/coherence-wasm-bindgen.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args coherence/coherence-wasm-bindgen.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coherence/coherence-wasm-bindgen.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence-wasm-bindgen" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence-wasm-bindgen/auxiliary"
stdout: none
--- stderr -------------------------------
error: conflicting implementations of trait `IntoWasmAbi` for type `&dyn Fn(&_) -> _`
##[error]  --> fake-test-src-base/coherence/coherence-wasm-bindgen.rs:28:1
   |
LL | impl<'a, 'b, A, R> IntoWasmAbi for &'a (dyn Fn(A) -> R + 'b)
...
...
LL | impl<'a, 'b, A, R> IntoWasmAbi for &'a (dyn for<'x> Fn(&'x A) -> R + 'b)
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `&dyn Fn(&_) -> _`
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see issue #56105 <https://github.com/rust-lang/rust/issues/56105>
   = note: for more information, see issue #56105 <https://github.com/rust-lang/rust/issues/56105>
   = note: this behavior recently changed as a result of a bug fix; see rust-lang/rust#56105 for details
  --> fake-test-src-base/coherence/coherence-wasm-bindgen.rs:10:9
   |
LL | #![deny(coherence_leak_check)]
   |         ^^^^^^^^^^^^^^^^^^^^
---
---- [ui] tests/ui/coherence/coherence-overlap-upstream-inherent.rs stdout ----
diff of stderr:

6 LL |
7 LL | impl A<i16> { fn dummy(&self) { } }
8    |               --------------- other definition for `dummy`
-    |
-    = note: upstream crates may add a new impl of trait `coherence_lib::Remote` for type `i16` in future versions
12 error: aborting due to previous error
13 



The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence-overlap-upstream-inherent/coherence-overlap-upstream-inherent.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args coherence/coherence-overlap-upstream-inherent.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coherence/coherence-overlap-upstream-inherent.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence-overlap-upstream-inherent" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence-overlap-upstream-inherent/auxiliary"
stdout: none
--- stderr -------------------------------
error[E0592]: duplicate definitions with name `dummy`
##[error]  --> fake-test-src-base/coherence/coherence-overlap-upstream-inherent.rs:12:32
   |
LL | impl<T> A<T> where T: Remote { fn dummy(&self) { } }
   |                                ^^^^^^^^^^^^^^^ duplicate definitions for `dummy`
LL | //~^ ERROR E0592
LL | impl A<i16> { fn dummy(&self) { } }
   |               --------------- other definition for `dummy`
error: aborting due to previous error

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


---- [ui] tests/ui/coherence/coherence_copy_like_err_struct.rs stdout ----
diff of stderr:

6 ...
7 LL | impl MyTrait for lib::MyStruct<MyType> { }
8    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `MyStruct<MyType>`
-    |
-    = note: upstream crates may add a new impl of trait `lib::MyCopy` for type `lib::MyStruct<MyType>` in future versions
12 error: aborting due to previous error
13 



The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence_copy_like_err_struct/coherence_copy_like_err_struct.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args coherence/coherence_copy_like_err_struct.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coherence/coherence_copy_like_err_struct.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence_copy_like_err_struct" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence_copy_like_err_struct/auxiliary"
stdout: none
--- stderr -------------------------------
error[E0119]: conflicting implementations of trait `MyTrait` for type `MyStruct<MyType>`
##[error]  --> fake-test-src-base/coherence/coherence_copy_like_err_struct.rs:19:1
   |
LL | impl<T: lib::MyCopy> MyTrait for T { }
...
...
LL | impl MyTrait for lib::MyStruct<MyType> { }
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `MyStruct<MyType>`
error: aborting due to previous error

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


---- [ui] tests/ui/coherence/coherence_copy_like_err_tuple.rs stdout ----
diff of stderr:

6 ...
7 LL | impl MyTrait for (MyType,) { }
8    | ^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `(MyType,)`
-    |
-    = note: upstream crates may add a new impl of trait `lib::MyCopy` for type `(MyType,)` in future versions
12 error: aborting due to previous error
13 



The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence_copy_like_err_tuple/coherence_copy_like_err_tuple.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args coherence/coherence_copy_like_err_tuple.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coherence/coherence_copy_like_err_tuple.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence_copy_like_err_tuple" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence_copy_like_err_tuple/auxiliary"
stdout: none
--- stderr -------------------------------
error[E0119]: conflicting implementations of trait `MyTrait` for type `(MyType,)`
##[error]  --> fake-test-src-base/coherence/coherence_copy_like_err_tuple.rs:18:1
   |
LL | impl<T: lib::MyCopy> MyTrait for T { }
...
...
LL | impl MyTrait for (MyType,) { }
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `(MyType,)`
error: aborting due to previous error

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


---- [ui] tests/ui/coherence/coherence_copy_like_err_fundamental_struct_tuple.rs stdout ----
diff of stderr:

6 ...
7 LL | impl MyTrait for lib::MyFundamentalStruct<(MyType,)> { }
8    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `MyFundamentalStruct<(MyType,)>`
-    |
-    = note: upstream crates may add a new impl of trait `lib::MyCopy` for type `lib::MyFundamentalStruct<(MyType,)>` in future versions
12 error: aborting due to previous error
13 



The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence_copy_like_err_fundamental_struct_tuple/coherence_copy_like_err_fundamental_struct_tuple.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args coherence/coherence_copy_like_err_fundamental_struct_tuple.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coherence/coherence_copy_like_err_fundamental_struct_tuple.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence_copy_like_err_fundamental_struct_tuple" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/coherence_copy_like_err_fundamental_struct_tuple/auxiliary"
stdout: none
--- stderr -------------------------------
error[E0119]: conflicting implementations of trait `MyTrait` for type `MyFundamentalStruct<(MyType,)>`
##[error]  --> fake-test-src-base/coherence/coherence_copy_like_err_fundamental_struct_tuple.rs:16:1
   |
LL | impl<T: lib::MyCopy> MyTrait for T { }
...
...
LL | impl MyTrait for lib::MyFundamentalStruct<(MyType,)> { }
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `MyFundamentalStruct<(MyType,)>`
error: aborting due to previous error

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


---- [ui] tests/ui/coherence/inter-crate-ambiguity-causes-notes.rs stdout ----
diff of stderr:

6 ...
7 LL | impl<I> From<I> for S
8    | ^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `S`
-    |
-    = note: upstream crates may add a new impl of trait `std::iter::Iterator` for type `()` in future versions
12 error: aborting due to previous error
13 



The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/inter-crate-ambiguity-causes-notes/inter-crate-ambiguity-causes-notes.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args coherence/inter-crate-ambiguity-causes-notes.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coherence/inter-crate-ambiguity-causes-notes.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/inter-crate-ambiguity-causes-notes" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/inter-crate-ambiguity-causes-notes/auxiliary"
stdout: none
--- stderr -------------------------------
error[E0119]: conflicting implementations of trait `From<()>` for type `S`
##[error]  --> fake-test-src-base/coherence/inter-crate-ambiguity-causes-notes.rs:9:1
   |
LL | impl From<()> for S {
...
...
LL | impl<I> From<I> for S
   | ^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `S`
error: aborting due to previous error

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


---- [ui] tests/ui/dyn-star/param-env-region-infer.rs#next stdout ----
diff of stderr:

25    | |____________^
26    = note: see https://rustc-dev-guide.rust-lang.org/overview.html#queries and https://rustc-dev-guide.rust-lang.org/query.html for more information
- error: aborting due to previous error
- error: aborting due to previous error
+ error[E0275]: overflow evaluating the requirement `impl PointerLike + Debug + 'a <: impl PointerLike + Debug + 'a`
+    |
+ LL |     t as _
+    |     ^^^^^^
+    |
+    |
+    = help: consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`param_env_region_infer`)
- For more information about this error, try `rustc --explain E0391`.
+ error: aborting due to 2 previous errors
+ 
+ Some errors have detailed explanations: E0275, E0391.
+ Some errors have detailed explanations: E0275, E0391.
+ For more information about an error, try `rustc --explain E0275`.
31 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/dyn-star/param-env-region-infer.next/param-env-region-infer.next.stderr
To only update this specific test, also pass `--test-args dyn-star/param-env-region-infer.rs`

error in revision `next`: 1 errors occurred comparing output.
status: exit status: 1
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/dyn-star/param-env-region-infer.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "next" "-C" "incremental=/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/dyn-star/param-env-region-infer.next/param-env-region-infer.inc" "-Z" "incremental-verify-ich" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/dyn-star/param-env-region-infer.next" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/dyn-star/param-env-region-infer.next/auxiliary" "-Ztrait-solver=next" "-Zdeduplicate-diagnostics=yes"
stdout: none
--- stderr -------------------------------
error[E0391]: cycle detected when computing type of `make_dyn_star::{opaque#0}`
##[error]  --> fake-test-src-base/dyn-star/param-env-region-infer.rs:16:60
   |
LL | fn make_dyn_star<'a, T: PointerLike + Debug + 'a>(t: T) -> impl PointerLike + Debug + 'a {
   |
   |
note: ...which requires type-checking `make_dyn_star`...
  --> fake-test-src-base/dyn-star/param-env-region-infer.rs:16:1
   |
LL | fn make_dyn_star<'a, T: PointerLike + Debug + 'a>(t: T) -> impl PointerLike + Debug + 'a {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   = note: ...which requires computing layout of `make_dyn_star::{opaque#0}`...
   = note: ...which requires normalizing `make_dyn_star::{opaque#0}`...
   = note: ...which again requires computing type of `make_dyn_star::{opaque#0}`, completing the cycle
note: cycle used when checking item types in top-level module
  --> fake-test-src-base/dyn-star/param-env-region-infer.rs:10:1
   |
LL | / #![feature(dyn_star, pointer_like_trait)]
LL | | #![allow(incomplete_features)]
LL | | use std::fmt::Debug;
...  |
LL | |
LL | | fn main() {}
LL | | fn main() {}
   | |____________^
   = note: see https://rustc-dev-guide.rust-lang.org/overview.html#queries and https://rustc-dev-guide.rust-lang.org/query.html for more information

error[E0275]: overflow evaluating the requirement `impl PointerLike + Debug + 'a <: impl PointerLike + Debug + 'a`
##[error]  --> fake-test-src-base/dyn-star/param-env-region-infer.rs:18:5
LL |     t as _
   |     ^^^^^^
   |
   |
   = help: consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`param_env_region_infer`)
error: aborting due to 2 previous errors

Some errors have detailed explanations: E0275, E0391.
For more information about an error, try `rustc --explain E0275`.
For more information about an error, try `rustc --explain E0275`.
------------------------------------------


---- [ui] tests/ui/impl-trait/negative-reasoning.rs stdout ----
diff of stderr:

6 ...
7 LL | impl AnotherTrait for D<OpaqueType> {
8    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `D<OpaqueType>`
-    |
-    = note: upstream crates may add a new impl of trait `std::fmt::Debug` for type `OpaqueType` in future versions
12 error: aborting due to previous error
13 



The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/negative-reasoning/negative-reasoning.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/negative-reasoning.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/impl-trait/negative-reasoning.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/negative-reasoning" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/negative-reasoning/auxiliary"
stdout: none
--- stderr -------------------------------
error[E0119]: conflicting implementations of trait `AnotherTrait` for type `D<OpaqueType>`
##[error]  --> fake-test-src-base/impl-trait/negative-reasoning.rs:19:1
   |
LL | impl<T: std::fmt::Debug> AnotherTrait for T {}
...
...
LL | impl AnotherTrait for D<OpaqueType> {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `D<OpaqueType>`
error: aborting due to previous error

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


---- [ui] tests/ui/issues/issue-43355.rs stdout ----
diff of stderr:

6 ...
7 LL | impl<X> Trait1<Box<X>> for A {
8    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `A`
-    |
-    = note: downstream crates may implement trait `Trait2<std::boxed::Box<_>>` for type `A`
12 error: aborting due to previous error
13 



The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/issues/issue-43355/issue-43355.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args issues/issue-43355.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/issues/issue-43355.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/issues/issue-43355" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/issues/issue-43355/auxiliary"
stdout: none
--- stderr -------------------------------
error[E0119]: conflicting implementations of trait `Trait1<Box<_>>` for type `A`
##[error]  --> fake-test-src-base/issues/issue-43355.rs:13:1
   |
LL | impl<X, T> Trait1<X> for T where T: Trait2<X> {
...
...
LL | impl<X> Trait1<Box<X>> for A {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `A`
error: aborting due to previous error

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


---- [ui] tests/ui/issues/issue-48728.rs stdout ----
diff of stderr:

7 LL | impl<T: Clone + ?Sized> Clone for Node<[T]> {
9    |
9    |
-    = note: upstream crates may add a new impl of trait `std::clone::Clone` for type `[_]` in future versions
12 
13 error: aborting due to previous error



The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/issues/issue-48728/issue-48728.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args issues/issue-48728.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/issues/issue-48728.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/issues/issue-48728" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/issues/issue-48728/auxiliary"
stdout: none
--- stderr -------------------------------
error[E0119]: conflicting implementations of trait `Clone` for type `Node<[_]>`
##[error]  --> fake-test-src-base/issues/issue-48728.rs:4:10
   |
LL | #[derive(Clone)] //~ ERROR conflicting implementations of trait `Clone`
   |          ^^^^^ conflicting implementation for `Node<[_]>`
...
LL | impl<T: Clone + ?Sized> Clone for Node<[T]> {
   |
   = note: this error originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info)

error: aborting due to previous error
---

---- [ui] tests/ui/never_type/never-from-impl-is-reserved.rs stdout ----
diff of stderr:

6 LL | // This will conflict with the first impl if we impl `for<T> T: From<!>`.
7 LL | impl<T> MyTrait for T where T: From<!> {}
8    | ^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `MyFoo`
-    |
-    = note: permitting this impl would forbid us from adding `impl<T> From<!> for T` later; see rust-lang/rust#64715 for details
12 error: aborting due to previous error
13 



The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/never_type/never-from-impl-is-reserved/never-from-impl-is-reserved.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args never_type/never-from-impl-is-reserved.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/never_type/never-from-impl-is-reserved.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/never_type/never-from-impl-is-reserved" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/never_type/never-from-impl-is-reserved/auxiliary"
stdout: none
--- stderr -------------------------------
error[E0119]: conflicting implementations of trait `MyTrait` for type `MyFoo`
##[error]  --> fake-test-src-base/never_type/never-from-impl-is-reserved.rs:10:1
   |
LL | impl MyTrait for MyFoo {}
   | ---------------------- first implementation here
LL | // This will conflict with the first impl if we impl `for<T> T: From<!>`.
LL | impl<T> MyTrait for T where T: From<!> {} //~ ERROR conflicting implementation
   | ^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `MyFoo`
error: aborting due to previous error

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


---- [ui] tests/ui/specialization/defaultimpl/overlap-projection.rs stdout ----

error: test compilation failed although it shouldn't!
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/specialization/defaultimpl/overlap-projection.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/specialization/defaultimpl/overlap-projection/a" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/specialization/defaultimpl/overlap-projection/auxiliary"
stdout: none
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> fake-test-src-base/specialization/defaultimpl/overlap-projection.rs:7:12
   |
   |
LL | #![feature(specialization)] //~ WARN the feature `specialization` is incomplete
   |
   = note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
   = help: consider using `min_specialization` instead, which is more stable and complete
   = note: `#[warn(incomplete_features)]` on by default
   = note: `#[warn(incomplete_features)]` on by default

error[E0119]: conflicting implementations of trait `Foo` for type `u32`
##[error]  --> fake-test-src-base/specialization/defaultimpl/overlap-projection.rs:22:1
   |
LL | impl Foo for u32 {}
   | ---------------- first implementation here
LL | impl Foo for <u8 as Assoc>::Output {}
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `u32`
error[E0119]: conflicting implementations of trait `Foo` for type `u32`
##[error]  --> fake-test-src-base/specialization/defaultimpl/overlap-projection.rs:23:1
   |
LL | impl Foo for u32 {}
LL | impl Foo for u32 {}
   | ---------------- first implementation here
LL | impl Foo for <u8 as Assoc>::Output {}
LL | impl Foo for <u16 as Assoc>::Output {}
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `u32`
error: aborting due to 2 previous errors; 1 warning emitted

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


---- [ui] tests/ui/specialization/issue-52050.rs stdout ----
diff of stderr:

16 ...
17 LL | impl IntoPyDictPointer for ()
18    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `()`
-    |
-    = note: upstream crates may add a new impl of trait `std::iter::Iterator` for type `()` in future versions
22 error: aborting due to previous error; 1 warning emitted
23 



The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/specialization/issue-52050/issue-52050.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args specialization/issue-52050.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/specialization/issue-52050.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/specialization/issue-52050" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/specialization/issue-52050/auxiliary"
stdout: none
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> fake-test-src-base/specialization/issue-52050.rs:1:12
   |
   |
LL | #![feature(specialization)] //~ WARN the feature `specialization` is incomplete
   |
   = note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
   = help: consider using `min_specialization` instead, which is more stable and complete
   = note: `#[warn(incomplete_features)]` on by default
   = note: `#[warn(incomplete_features)]` on by default

error[E0119]: conflicting implementations of trait `IntoPyDictPointer` for type `()`
##[error]  --> fake-test-src-base/specialization/issue-52050.rs:28:1
   |
LL | impl<I> IntoPyDictPointer for I
...
...
LL | impl IntoPyDictPointer for () //~ ERROR conflicting implementations
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `()`
error: aborting due to previous error; 1 warning emitted

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


---- [ui] tests/ui/specialization/specialization-default-items-drop-coherence.rs#classic stdout ----

error in revision `classic`: test compilation failed although it shouldn't!
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/specialization/specialization-default-items-drop-coherence.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "classic" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/specialization/specialization-default-items-drop-coherence.classic" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/specialization/specialization-default-items-drop-coherence.classic/auxiliary"
stdout: none
error[E0119]: conflicting implementations of trait `Overlap` for type `u32`
##[error]  --> fake-test-src-base/specialization/specialization-default-items-drop-coherence.rs:29:1
   |
   |
LL | impl Overlap for u32 {
...
...
LL | impl Overlap for <u32 as Default>::Id {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `u32`
error: aborting due to previous error

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


---- [ui] tests/ui/specialization/specialization-overlap-projection.rs stdout ----

error: test compilation failed although it shouldn't!
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/specialization/specialization-overlap-projection.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/specialization/specialization-overlap-projection/a" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/specialization/specialization-overlap-projection/auxiliary"
stdout: none
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> fake-test-src-base/specialization/specialization-overlap-projection.rs:7:12
   |
   |
LL | #![feature(specialization)] //~ WARN the feature `specialization` is incomplete
   |
   = note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
   = help: consider using `min_specialization` instead, which is more stable and complete
   = note: `#[warn(incomplete_features)]` on by default
   = note: `#[warn(incomplete_features)]` on by default

error[E0119]: conflicting implementations of trait `Foo` for type `u32`
##[error]  --> fake-test-src-base/specialization/specialization-overlap-projection.rs:22:1
   |
LL | impl Foo for u32 {}
   | ---------------- first implementation here
LL | impl Foo for <u8 as Assoc>::Output {}
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `u32`
error[E0119]: conflicting implementations of trait `Foo` for type `u32`
##[error]  --> fake-test-src-base/specialization/specialization-overlap-projection.rs:23:1
   |
LL | impl Foo for u32 {}
LL | impl Foo for u32 {}
   | ---------------- first implementation here
LL | impl Foo for <u8 as Assoc>::Output {}
LL | impl Foo for <u16 as Assoc>::Output {}
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `u32`
error: aborting due to 2 previous errors; 1 warning emitted

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


---- [ui] tests/ui/traits/issue-105231.rs stdout ----
diff of stderr:

14 LL ~ struct B<T>(Box<A<A<T>>>);
16 
16 
- error[E0275]: overflow evaluating the requirement `A<A<A<A<A<A<A<...>>>>>>>: Send`
+ error[E0119]: conflicting implementations of trait `Foo` for type `B<u8>`
18    |
18    |
-    = help: consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`issue_105231`)
- note: required because it appears within the type `B<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<A<u8>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>`
-   --> $DIR/issue-105231.rs:4:8
-    |
- LL | struct B<T>(A<A<T>>);
-    |        ^
+ LL | impl<T> Foo for T where T: Send {}
+    | ----------------- first implementation here
+ LL | impl Foo for B<u8> {}
+    | ^^^^^^^^^^^^^^^^^^ conflicting implementation for `B<u8>`
26 error: aborting due to 2 previous errors
27 

- Some errors have detailed explanations: E0072, E0275.
---
To only update this specific test, also pass `--test-args traits/issue-105231.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/traits/issue-105231.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/traits/issue-105231" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/traits/issue-105231/auxiliary"
stdout: none
--- stderr -------------------------------
error[E0072]: recursive types `A` and `B` have infinite size
##[error]  --> fake-test-src-base/traits/issue-105231.rs:2:1
   |
LL | struct A<T>(B<T>);
   | ^^^^^^^^^^^ ---- recursive without indirection
LL | //~^ ERROR recursive types `A` and `B` have infinite size
LL | struct B<T>(A<A<T>>);
   | ^^^^^^^^^^^ ------- recursive without indirection
   |
help: insert some indirection (e.g., a `Box`, `Rc`, or `&`) to break the cycle
   |
LL ~ struct A<T>(Box<B<T>>);
LL | //~^ ERROR recursive types `A` and `B` have infinite size
LL ~ struct B<T>(Box<A<A<T>>>);


error[E0119]: conflicting implementations of trait `Foo` for type `B<u8>`
##[error]  --> fake-test-src-base/traits/issue-105231.rs:7:1
   |
LL | impl<T> Foo for T where T: Send {}
   | ----------------- first implementation here
LL | impl Foo for B<u8> {}
   | ^^^^^^^^^^^^^^^^^^ conflicting implementation for `B<u8>`
error: aborting due to 2 previous errors

Some errors have detailed explanations: E0072, E0119.
For more information about an error, try `rustc --explain E0072`.
For more information about an error, try `rustc --explain E0072`.
------------------------------------------


---- [ui] tests/ui/traits/new-solver/alias-bound-unsound.rs stdout ----
diff of stderr:

- error[E0275]: overflow evaluating the requirement `<() as Foo>::Item: Copy`
+ error[E0277]: the trait bound `<() as Foo>::Item: Copy` is not satisfied
3    |
4 LL |     type Item = String where String: Copy;

-    |                 ^^^^^^
-    |                 ^^^^^^
+    |                 ^^^^^^ the trait `Copy` is not implemented for `<() as Foo>::Item`
6    |
-    = help: consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`alias_bound_unsound`)
8 note: required by a bound in `Foo::Item`
10    |

11 LL |     type Item: Copy
12    |                ^^^^ required by this bound in `Foo::Item`
12    |                ^^^^ required by this bound in `Foo::Item`
13 
- error[E0282]: type annotations needed
-   --> $DIR/alias-bound-unsound.rs:24:5
-    |
- LL |     drop(<() as Foo>::copy_me(&x));
-    |     ^^^^ cannot infer type of the type parameter `T` declared on the function `drop`
- help: consider specifying the generic argument
-    |
-    |
- LL |     drop::<T>(<() as Foo>::copy_me(&x));
- 
- 
- error[E0275]: overflow evaluating the requirement `&<() as Foo>::Item well-formed`
+ error: the type `&<() as Foo>::Item` is not well-formed
27    |
27    |
28 LL |     drop(<() as Foo>::copy_me(&x));
29    |                               ^^
-    |
-    |
-    = help: consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`alias_bound_unsound`)
32 
- error[E0275]: overflow evaluating the requirement `String <: <() as Foo>::Item`
+ error[E0308]: mismatched types
35    |
35    |
36 LL |     drop(<() as Foo>::copy_me(&x));
-    |                               ^^
+    |          -------------------- ^^ types differ
+    |          |
+    |          arguments to this function are incorrect
+    |          arguments to this function are incorrect
38    |
-    = help: consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`alias_bound_unsound`)
+    = note: expected reference `&<() as Foo>::Item`
+ note: associated function defined here
+   --> $DIR/alias-bound-unsound.rs:12:8
+    |
+    |
+ LL |     fn copy_me(x: &Self::Item) -> Self::Item {
40 
40 
- error[E0275]: overflow evaluating the requirement `<() as Foo>::Item well-formed`
+ error: the type `<() as Foo>::Item` is not well-formed
43    |
43    |
44 LL |     drop(<() as Foo>::copy_me(&x));
45    |          ^^^^^^^^^^^^^^^^^^^^^^^^
+ 
+ 
+ error[E0277]: the size for values of type `<() as Foo>::Item` cannot be known at compilation time
46    |
46    |
-    = help: consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`alias_bound_unsound`)
+ LL |     drop(<() as Foo>::copy_me(&x));
+    |     |
+    |     required by a bound introduced by this call
+    |
+    |
+    = help: the trait `Sized` is not implemented for `<() as Foo>::Item`
+ note: required by a bound in `std::mem::drop`
+   --> $SRC_DIR/core/src/mem/mod.rs:LL:COL
48 
- error[E0275]: overflow evaluating the requirement `<() as Foo>::Item == _`
+ error: the type `<() as Foo>::Item` is not well-formed
+    |
+    |
+ LL |     drop(<() as Foo>::copy_me(&x));
+ 
+ 
+ error: the type `<() as Foo>::Item` is not well-formed
51    |
51    |
52 LL |     drop(<() as Foo>::copy_me(&x));
53    |          ^^^^^^^^^^^^^^^^^^^^^^^^
-    |
-    |
-    = help: consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`alias_bound_unsound`)
56 
- error[E0275]: overflow evaluating the requirement `<() as Foo>::Item: Sized`
+ error[E0277]: the size for values of type `<() as Foo>::Item` cannot be known at compilation time
59    |
59    |
60 LL |     drop(<() as Foo>::copy_me(&x));
-    |          ^^^^^^^^^^^^^^^^^^^^
+    |          ^^^^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time
62    |
62    |
-    = help: consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`alias_bound_unsound`)
+    = help: the trait `Sized` is not implemented for `<() as Foo>::Item`
65 
- error: aborting due to 7 previous errors
+ error: aborting due to 8 previous errors
67 
---
To only update this specific test, also pass `--test-args traits/new-solver/alias-bound-unsound.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/traits/new-solver/alias-bound-unsound.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/traits/new-solver/alias-bound-unsound" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/traits/new-solver/alias-bound-unsound/auxiliary" "-Ztrait-solver=next"
stdout: none
--- stderr -------------------------------
error[E0277]: the trait bound `<() as Foo>::Item: Copy` is not satisfied
##[error]  --> fake-test-src-base/traits/new-solver/alias-bound-unsound.rs:18:17
LL |     type Item = String where String: Copy;
LL |     type Item = String where String: Copy;
   |                 ^^^^^^ the trait `Copy` is not implemented for `<() as Foo>::Item`
note: required by a bound in `Foo::Item`
  --> fake-test-src-base/traits/new-solver/alias-bound-unsound.rs:8:16
   |
LL |     type Item: Copy
LL |     type Item: Copy
   |                ^^^^ required by this bound in `Foo::Item`

error: the type `&<() as Foo>::Item` is not well-formed
##[error]  --> fake-test-src-base/traits/new-solver/alias-bound-unsound.rs:24:31
   |
LL |     drop(<() as Foo>::copy_me(&x));

error[E0308]: mismatched types
##[error]  --> fake-test-src-base/traits/new-solver/alias-bound-unsound.rs:24:31
   |
   |
LL |     drop(<() as Foo>::copy_me(&x));
   |          -------------------- ^^ types differ
   |          arguments to this function are incorrect
   |
   |
   = note: expected reference `&<() as Foo>::Item`
note: associated function defined here
  --> fake-test-src-base/traits/new-solver/alias-bound-unsound.rs:12:8
   |
   |
LL |     fn copy_me(x: &Self::Item) -> Self::Item {


error: the type `<() as Foo>::Item` is not well-formed
##[error]  --> fake-test-src-base/traits/new-solver/alias-bound-unsound.rs:24:10
   |
LL |     drop(<() as Foo>::copy_me(&x));


error[E0277]: the size for values of type `<() as Foo>::Item` cannot be known at compilation time
##[error]  --> fake-test-src-base/traits/new-solver/alias-bound-unsound.rs:24:10
   |
LL |     drop(<() as Foo>::copy_me(&x));
   |     |
   |     required by a bound introduced by this call
   |
   |
   = help: the trait `Sized` is not implemented for `<() as Foo>::Item`
  --> /rustc/FAKE_PREFIX/library/core/src/mem/mod.rs:987:1


error: the type `<() as Foo>::Item` is not well-formed
##[error]  --> fake-test-src-base/traits/new-solver/alias-bound-unsound.rs:24:5
   |
LL |     drop(<() as Foo>::copy_me(&x));


error: the type `<() as Foo>::Item` is not well-formed
##[error]  --> fake-test-src-base/traits/new-solver/alias-bound-unsound.rs:24:10
   |
LL |     drop(<() as Foo>::copy_me(&x));


error[E0277]: the size for values of type `<() as Foo>::Item` cannot be known at compilation time
##[error]  --> fake-test-src-base/traits/new-solver/alias-bound-unsound.rs:24:10
   |
LL |     drop(<() as Foo>::copy_me(&x));
   |
   |
   = help: the trait `Sized` is not implemented for `<() as Foo>::Item`

error: aborting due to 8 previous errors

Some errors have detailed explanations: E0277, E0308.
---
---- [ui] tests/ui/traits/new-solver/exponential-trait-goals.rs stdout ----
diff of stderr:

- error[E0282]: type annotations needed
-   --> $DIR/exponential-trait-goals.rs:17:5
+ error[E0277]: the trait bound `W<_>: Trait` is not satisfied
3    |
3    |
4 LL |     impls::<W<_>>();
-    |     ^^^^^^^^^^^^^ cannot infer type of the type parameter `T` declared on the function `impls`
- 
- error[E0275]: overflow evaluating the requirement `W<_>: Trait`
-   --> $DIR/exponential-trait-goals.rs:17:5
+    |             ^^^^ the trait `Trait` is not implemented for `W<_>`
9    |
- LL |     impls::<W<_>>();
-    |
-    |
-    = help: consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`exponential_trait_goals`)
+    = help: the trait `Trait` is implemented for `W<(W<T>, W<U>)>`
14 note: required by a bound in `impls`
16    |


17 LL | fn impls<T: Trait>() {}
18    |             ^^^^^ required by this bound in `impls`
- error: aborting due to 2 previous errors
+ error: aborting due to previous error
21 
- Some errors have detailed explanations: E0275, E0282.
---
To only update this specific test, also pass `--test-args traits/new-solver/exponential-trait-goals.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/traits/new-solver/exponential-trait-goals.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/traits/new-solver/exponential-trait-goals" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/traits/new-solver/exponential-trait-goals/auxiliary" "-Ztrait-solver=next"
stdout: none
--- stderr -------------------------------
error[E0277]: the trait bound `W<_>: Trait` is not satisfied
##[error]  --> fake-test-src-base/traits/new-solver/exponential-trait-goals.rs:17:13
   |
LL |     impls::<W<_>>();
   |             ^^^^ the trait `Trait` is not implemented for `W<_>`
   |
   = help: the trait `Trait` is implemented for `W<(W<T>, W<U>)>`
note: required by a bound in `impls`
  --> fake-test-src-base/traits/new-solver/exponential-trait-goals.rs:14:13
   |
LL | fn impls<T: Trait>() {}
   |             ^^^^^ required by this bound in `impls`
error: aborting due to previous error

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


---- [ui] tests/ui/traits/reservation-impl/coherence-conflict.rs#old stdout ----
diff of stderr:

5    | ---------------------- first implementation here
6 LL | impl<T: MyTrait> OtherTrait for T {}
7    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `()`
-    = note: this impl is reserved
10 
11 error: aborting due to previous error
12 
12 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/traits/reservation-impl/coherence-conflict.old/coherence-conflict.old.stderr
To only update this specific test, also pass `--test-args traits/reservation-impl/coherence-conflict.rs`


error in revision `old`: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/traits/reservation-impl/coherence-conflict.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/traits/reservation-impl/coherence-conflict.old" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/traits/reservation-impl/coherence-conflict.old/auxiliary"
stdout: none
--- stderr -------------------------------
error[E0119]: conflicting implementations of trait `OtherTrait` for type `()`
##[error]  --> fake-test-src-base/traits/reservation-impl/coherence-conflict.rs:12:1
   |
LL | impl OtherTrait for () {}
   | ---------------------- first implementation here
LL | impl<T: MyTrait> OtherTrait for T {}
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `()`
error: aborting due to previous error

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


---- [ui] tests/ui/traits/solver-cycles/cycle-via-builtin-auto-trait-impl.rs stdout ----
diff of stderr:

- error[E0275]: overflow evaluating the requirement `Runtime<RootDatabase>: RefUnwindSafe`
+ error[E0119]: conflicting implementations of trait `Database` for type `RootDatabase`
2    |
2    |
-    = help: consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`cycle_via_builtin_auto_trait_impl`)
- note: required because it appears within the type `RootDatabase`
-   --> $DIR/cycle-via-builtin-auto-trait-impl.rs:13:8
-    |
- LL | struct RootDatabase {
-    |        ^^^^^^^^^^^^
- note: required for `RootDatabase` to implement `Database`
-   --> $DIR/cycle-via-builtin-auto-trait-impl.rs:17:24
-    |
12 LL | impl<T: RefUnwindSafe> Database for T {
-    |         -------------  ^^^^^^^^     ^
-    |         unsatisfied trait bound introduced here
-    |         unsatisfied trait bound introduced here
- note: required because it appears within the type `Runtime<RootDatabase>`
-   --> $DIR/cycle-via-builtin-auto-trait-impl.rs:24:8
-    |
- LL | struct Runtime<DB: Database> {
+    | ------------------------------------- first implementation here
+ ...
+ ...
+ LL | impl Database for RootDatabase {
+    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `RootDatabase`
22 error: aborting due to previous error
23 

- For more information about this error, try `rustc --explain E0275`.
---
To only update this specific test, also pass `--test-args traits/solver-cycles/cycle-via-builtin-auto-trait-impl.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/traits/solver-cycles/cycle-via-builtin-auto-trait-impl.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/traits/solver-cycles/cycle-via-builtin-auto-trait-impl" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/traits/solver-cycles/cycle-via-builtin-auto-trait-impl/auxiliary"
stdout: none
--- stderr -------------------------------
error[E0119]: conflicting implementations of trait `Database` for type `RootDatabase`
##[error]  --> fake-test-src-base/traits/solver-cycles/cycle-via-builtin-auto-trait-impl.rs:20:1
   |
LL | impl<T: RefUnwindSafe> Database for T {
...
...
LL | impl Database for RootDatabase {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `RootDatabase`
error: aborting due to previous error

For more information about this error, try `rustc --explain E0119`.
------------------------------------------
---
5    | ------------------------- first implementation here
6 LL | impl OtherTrait for i32 {}
7    | ^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `Alias`
-    |
-    = note: upstream crates may add a new impl of trait `coherence_cross_crate_trait_decl::SomeTrait` for type `i32` in future versions
11 error: aborting due to previous error
12 



The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/type-alias-impl-trait/coherence_cross_crate/coherence_cross_crate.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args type-alias-impl-trait/coherence_cross_crate.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/type-alias-impl-trait/coherence_cross_crate.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Cstrip=debuginfo" "--remap-path-prefix=/checkout/tests/ui=fake-test-src-base" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/type-alias-impl-trait/coherence_cross_crate" "-A" "unused" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/type-alias-impl-trait/coherence_cross_crate/auxiliary"
stdout: none
--- stderr -------------------------------
error[E0119]: conflicting implementations of trait `OtherTrait` for type `Alias`
##[error]  --> fake-test-src-base/type-alias-impl-trait/coherence_cross_crate.rs:21:1
LL | impl OtherTrait for Alias {}
   | ------------------------- first implementation here
LL | impl OtherTrait for i32 {}
   | ^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `Alias`

@bors
Copy link
Contributor

bors commented Jul 24, 2023

☀️ Try build successful - checks-actions
Build commit: 93b7365ab3319a5c4a78362e458267d6348b7ef2 (93b7365ab3319a5c4a78362e458267d6348b7ef2)

@compiler-errors
Copy link
Member Author

@craterbot
Copy link
Collaborator

👌 Experiment pr-113991-2 created and queued.
🤖 Automatically detected try build 93b7365ab3319a5c4a78362e458267d6348b7ef2
🔍 You can check out the queue and this experiment's details.

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot craterbot added S-waiting-on-crater Status: Waiting on a crater run to be completed. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jul 24, 2023
@craterbot
Copy link
Collaborator

🚧 Experiment pr-113991-2 is now running

ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot
Copy link
Collaborator

🎉 Experiment pr-113991-2 is completed!
📊 10 regressed and 0 fixed (10 total)
📰 Open the full report.

⚠️ If you notice any spurious failure please add them to the blacklist!
ℹ️ Crater is a tool to run experiments across parts of the Rust ecosystem. Learn more

@craterbot craterbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-crater Status: Waiting on a crater run to be completed. labels Jul 24, 2023
@compiler-errors
Copy link
Member Author

I think the remainder of the failures are due to rust-lang/trait-system-refactor-initiative#52

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler 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.

5 participants