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

Add new solver / old solver opaque type tests #118717

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

traviscross
Copy link
Contributor

When considering an opaque type within a body that is permitted to define the hidden type for that opaque, we're expecting the new trait solver to sometimes produce different results.

Sometimes this is due to the fact that the new trait solver considers more cases to be defining, such as when defining the hidden type allows an impl for some wrapper type to be matched.

In other cases, this is due to lazy normalization, which e.g. allows the new trait solver to more consistently handle as a concrete type the return value of...

id2<T>(_: T, x: T ) -> T { x }

...when it is called with a value of the opaque type and a value of the corresponding hidden type.

However, the new trait solver is not yet done, and it does not consistently produce the results we expect that it will once complete.

As we work toward stabilizing type alias impl Trait (TAIT), we need to plan for what the behavior of the new trait solver will be. Similarly, since return position impl Trait (RPIT) is already stable but will see inference differences with the new trait solver, we need to begin to plan for that also.

To help enable this planning, let's add test cases that define what the correct inference behavior should be when handling opaue types. The goal of this commit is to prompt discussion and ensure there is a consensus on this behavior, then to document that behavior in these tests.

Where the correct behavior does not match the behavior of either the new or the old trait solver, we've chosen to mark that as a known bug. For the new solver, we've done this since it is still a work in progress and is expected to eventually model the correct behavior. For the old solver, we've done this since the behavior is inconsistent and often surprising, and since we may need to add future-incompat lints or take other steps to prepare the ecosystem for the transition to the new solver.

When considering an opaque type within a body that is permitted to
define the hidden type for that opaque, we're expecting the new trait
solver to sometimes produce different results.

Sometimes this is due to the fact that the new trait solver considers
more cases to be defining, such as when defining the hidden type
allows an impl for some wrapper type to be matched.

In other cases, this is due to lazy normalization, which e.g. allows
the new trait solver to more consistently handle as a concrete type
the return value of...

```rust
id2<T>(_: T, x: T ) -> T { x }
```

...when it is called with a value of the opaque type and a value of
the corresponding hidden type.

However, the new trait solver is not yet done, and it does not
consistently produce the results we expect that it will once
complete.

As we work toward stabilizing type alias impl Trait (TAIT), we need to
plan for what the behavior of the new trait solver will be.
Similarly, since return position impl Trait (RPIT) is already stable
but will see inference differences with the new trait solver, we need
to begin to plan for that also.

To help enable this planning, let's add test cases that define what
the correct inference behavior should be when handling opaue types.
The goal of this commit is to prompt discussion and ensure there is a
consensus on this behavior, then to document that behavior in these
tests.

Where the correct behavior does not match the behavior of either the
new or the old trait solver, we've chosen to mark that as a known
bug.  For the new solver, we've done this since it is still a work in
progress and is expected to eventually model the correct behavior.
For the old solver, we've done this since the behavior is inconsistent
and often surprising, and since we may need to add future-incompat
lints or take other steps to prepare the ecosystem for the transition
to the new solver.
@rustbot
Copy link
Collaborator

rustbot commented Dec 7, 2023

r? @petrochenkov

(rustbot has picked a reviewer for you, use r? to override)

@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. labels Dec 7, 2023
@traviscross
Copy link
Contributor Author

r? @compiler-errors

@traviscross traviscross added the T-types Relevant to the types team, which will review and decide on the PR/issue. label Dec 7, 2023
@rust-log-analyzer
Copy link
Collaborator

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

Click to see the possible cause of the failure (guessed by this bot)
GITHUB_ACTION=__run_7
GITHUB_ACTIONS=true
GITHUB_ACTION_REF=
GITHUB_ACTION_REPOSITORY=
GITHUB_ACTOR=traviscross
GITHUB_API_URL=https://api.github.com
GITHUB_BASE_REF=master
GITHUB_ENV=/home/runner/work/_temp/_runner_file_commands/set_env_fb084739-a22b-4ecf-91f9-fa8289487610
GITHUB_EVENT_NAME=pull_request
GITHUB_EVENT_NAME=pull_request
GITHUB_EVENT_PATH=/home/runner/work/_temp/_github_workflow/event.json
GITHUB_GRAPHQL_URL=https://api.github.com/graphql
GITHUB_HEAD_REF=TC/add-new-solver-opaque-tests
GITHUB_JOB=pr
GITHUB_PATH=/home/runner/work/_temp/_runner_file_commands/add_path_fb084739-a22b-4ecf-91f9-fa8289487610
GITHUB_REF=refs/pull/118717/merge
GITHUB_REF_NAME=118717/merge
GITHUB_REF_PROTECTED=false
---
GITHUB_SERVER_URL=https://github.com
GITHUB_SHA=361107b11f7c0cde6688f077cd3b5686ce81332a
GITHUB_STATE=/home/runner/work/_temp/_runner_file_commands/save_state_fb084739-a22b-4ecf-91f9-fa8289487610
GITHUB_STEP_SUMMARY=/home/runner/work/_temp/_runner_file_commands/step_summary_fb084739-a22b-4ecf-91f9-fa8289487610
GITHUB_TRIGGERING_ACTOR=traviscross
GITHUB_WORKFLOW_REF=rust-lang/rust/.github/workflows/ci.yml@refs/pull/118717/merge
GITHUB_WORKFLOW_SHA=361107b11f7c0cde6688f077cd3b5686ce81332a
GITHUB_WORKSPACE=/home/runner/work/rust/rust
GOROOT_1_19_X64=/opt/hostedtoolcache/go/1.19.13/x64
---
Built container sha256:9c3c93a371e5aed5c18185b24f130d95d5140dbd72a9b325e7b6b49e521a4faa
Looks like docker image is the same as before, not uploading
https://ci-caches.rust-lang.org/docker/7ebc15c01a233894034d277c8cce4e949f4e7791f66b4727c8fb6e058a0b8171d6152e1441d677cef0653843ceeee469c097b8699b2bb74249e674f6aa1a8813
sha256:9c3c93a371e5aed5c18185b24f130d95d5140dbd72a9b325e7b6b49e521a4faa
Setting extra environment values for docker:  --env ENABLE_GCC_CODEGEN=1 --env GCC_EXEC_PREFIX=/usr/lib/gcc/
[CI_JOB_NAME=x86_64-gnu-llvm-16]
##[group]Clock drift check
  local time: Thu Dec  7 18:47:40 UTC 2023
  network time: Thu, 07 Dec 2023 18:47:40 GMT
  network time: Thu, 07 Dec 2023 18:47:40 GMT
##[endgroup]
sccache: Starting the server...
##[group]Configure the build
configure: processing command line
configure: 
configure: build.configure-args := ['--build=x86_64-unknown-linux-gnu', '--llvm-root=/usr/lib/llvm-16', '--enable-llvm-link-shared', '--set', 'rust.thin-lto-import-instr-limit=10', '--enable-verbose-configure', '--enable-sccache', '--disable-manage-submodules', '--enable-locked-deps', '--enable-cargo-native-static', '--set', 'rust.codegen-units-std=1', '--set', 'dist.compression-profile=balanced', '--dist-compression-formats=xz', '--disable-dist-src', '--release-channel=nightly', '--enable-debug-assertions', '--enable-overflow-checks', '--enable-llvm-assertions', '--set', 'rust.verify-llvm-ir', '--set', 'rust.codegen-backends=llvm,cranelift,gcc', '--set', 'llvm.static-libstdcpp', '--enable-missing-tools', '--enable-new-symbol-mangling']
configure: target.x86_64-unknown-linux-gnu.llvm-config := /usr/lib/llvm-16/bin/llvm-config
configure: llvm.link-shared     := True
configure: rust.thin-lto-import-instr-limit := 10
configure: rust.codegen-units-std := 1
---
........................................................................................  5544/16018
........................................................................................  5632/16018
........................................................................................  5720/16018
........................................................................................  5808/16018
..........................................F..F.F.......F.F...FF....FF....FF..F.FFFFFF.F.  5896/16018
...................F.FFF..F.F..F..FFF.FF.FF........F........FF...F.F....................  5984/16018
........................................................................................  6160/16018
........................................................................................  6248/16018
........................................................................................  6336/16018
........................................................................................  6424/16018
---
..

failures:

---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend-outer-id-left.rs#old stdout ----

18    |                     ^^^^^^^^^^
18    |                     ^^^^^^^^^^
19    = 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 1 previous error
22 
23 For more information about this error, try `rustc --explain E0391`.
23 For more information about this error, try `rustc --explain E0391`.
24 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend-outer-id-left.old/reveal-auto-trait-notsend-outer-id-left.old.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-auto-trait-notsend-outer-id-left.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/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend-outer-id-left.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend-outer-id-left.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend-outer-id-left.old/auxiliary" "--edition=2021" "-Ztrait-solver=classic"
--- stderr -------------------------------
--- stderr -------------------------------
error[E0391]: cycle detected when computing type of opaque `test::{opaque#0}`
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend-outer-id-left.rs:31:21
   |
LL | fn test(n: bool) -> impl Sized {
   |
   |
note: ...which requires type-checking `test`...
  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend-outer-id-left.rs:33:64
   |
LL |     let _: OnWShow = id2(&&W(test(!n)), &&W(&() as *const ())).show();
   |                                                                ^^^^
   = note: ...which requires evaluating trait selection obligation `&'a W<test::{opaque#0}>: OnWSend`...
   = note: ...which again requires computing type of opaque `test::{opaque#0}`, completing the cycle
note: cycle used when computing type of `test::{opaque#0}`
  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend-outer-id-left.rs:31:21
   |
LL | fn test(n: bool) -> impl Sized {
   |                     ^^^^^^^^^^
   = 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 1 previous error

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


---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend-inner-id-left.rs#old stdout ----

18    |                     ^^^^^^^^^^
18    |                     ^^^^^^^^^^
19    = 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 1 previous error
22 
23 For more information about this error, try `rustc --explain E0391`.
23 For more information about this error, try `rustc --explain E0391`.
24 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend-inner-id-left.old/reveal-auto-trait-notsend-inner-id-left.old.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-auto-trait-notsend-inner-id-left.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/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend-inner-id-left.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend-inner-id-left.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend-inner-id-left.old/auxiliary" "--edition=2021" "-Ztrait-solver=classic"
--- stderr -------------------------------
--- stderr -------------------------------
error[E0391]: cycle detected when computing type of opaque `test::{opaque#0}`
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend-inner-id-left.rs:31:21
   |
LL | fn test(n: bool) -> impl Sized {
   |
   |
note: ...which requires type-checking `test`...
  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend-inner-id-left.rs:33:61
   |
LL |     let _: OnWShow = (&&W(id2(test(!n), &() as *const ()))).show();
   |                                                             ^^^^
   = note: ...which requires evaluating trait selection obligation `&'a W<test::{opaque#0}>: OnWSend`...
   = note: ...which again requires computing type of opaque `test::{opaque#0}`, completing the cycle
note: cycle used when computing type of `test::{opaque#0}`
  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend-inner-id-left.rs:31:21
   |
LL | fn test(n: bool) -> impl Sized {
   |                     ^^^^^^^^^^
   = 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 1 previous error

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


---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend.rs#old stdout ----
diff of stderr:

18    |                     ^^^^^^^^^^
19    = 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 1 previous error
22 
23 For more information about this error, try `rustc --explain E0391`.
23 For more information about this error, try `rustc --explain E0391`.
24 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend.old/reveal-auto-trait-notsend.old.stderr
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-auto-trait-notsend.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/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend.old/auxiliary" "--edition=2021" "-Ztrait-solver=classic"
--- stderr -------------------------------
--- stderr -------------------------------
error[E0391]: cycle detected when computing type of opaque `test::{opaque#0}`
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend.rs:27:21
   |
LL | fn test(n: bool) -> impl Sized {
   |
   |
note: ...which requires type-checking `test`...
  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend.rs:29:38
   |
LL |     let _: OnWShow = (&&W(test(!n))).show();
   |                                      ^^^^
   = note: ...which requires evaluating trait selection obligation `&'a W<test::{opaque#0}>: OnWSend`...
   = note: ...which again requires computing type of opaque `test::{opaque#0}`, completing the cycle
note: cycle used when computing type of `test::{opaque#0}`
  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend.rs:27:21
   |
LL | fn test(n: bool) -> impl Sized {
   |                     ^^^^^^^^^^
   = 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 1 previous error

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


---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access-id-left.rs#new stdout ----


4 LL |     let _: () = id2(test(!n), I).field;
6 
- error: aborting due to previous error
+ error: aborting due to 1 previous error
8 
8 
9 For more information about this error, try `rustc --explain E0609`.
10 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access-id-left.new/reveal-hidden-via-field-access-id-left.new.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-hidden-via-field-access-id-left.rs`

error in revision `new`: 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/inference/in-defining-item/reveal-hidden-via-field-access-id-left.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "new" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access-id-left.new" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access-id-left.new/auxiliary" "--edition=2021" "-Ztrait-solver=next"
--- stderr -------------------------------
error[E0609]: no field `field` on type `impl Sized`
error[E0609]: no field `field` on type `impl Sized`
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access-id-left.rs:18:34
   |
LL |     let _: () = id2(test(!n), I).field;

error: aborting due to 1 previous error

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


---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access-id-left.rs#old stdout ----


4 LL |     let _: () = id2(test(!n), I).field;
6 
- error: aborting due to previous error
+ error: aborting due to 1 previous error
8 
8 
9 For more information about this error, try `rustc --explain E0609`.
10 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access-id-left.old/reveal-hidden-via-field-access-id-left.old.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-hidden-via-field-access-id-left.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/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access-id-left.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access-id-left.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access-id-left.old/auxiliary" "--edition=2021" "-Ztrait-solver=classic"
--- stderr -------------------------------
error[E0609]: no field `field` on type `impl Sized`
error[E0609]: no field `field` on type `impl Sized`
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access-id-left.rs:18:34
   |
LL |     let _: () = id2(test(!n), I).field;

error: aborting due to 1 previous error

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


---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access.rs#old stdout ----


4 LL |     let _: () = test(!n).field;
6 
- error: aborting due to previous error
+ error: aborting due to 1 previous error
8 
8 
9 For more information about this error, try `rustc --explain E0609`.
10 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access.old/reveal-hidden-via-field-access.old.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-hidden-via-field-access.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/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access.old/auxiliary" "--edition=2021" "-Ztrait-solver=classic"
--- stderr -------------------------------
error[E0609]: no field `field` on type `impl Sized`
error[E0609]: no field `field` on type `impl Sized`
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access.rs:14:26
   |
LL |     let _: () = test(!n).field;

error: aborting due to 1 previous error

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


---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access.rs#new stdout ----


4 LL |     let _: () = test(!n).field;
6 
- error: aborting due to previous error
+ error: aborting due to 1 previous error
8 
8 
9 For more information about this error, try `rustc --explain E0609`.
10 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access.new/reveal-hidden-via-field-access.new.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-hidden-via-field-access.rs`

error in revision `new`: 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/inference/in-defining-item/reveal-hidden-via-field-access.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "new" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access.new" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access.new/auxiliary" "--edition=2021" "-Ztrait-solver=next"
--- stderr -------------------------------
error[E0609]: no field `field` on type `impl Sized`
error[E0609]: no field `field` on type `impl Sized`
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access.rs:14:26
   |
LL |     let _: () = test(!n).field;

error: aborting due to 1 previous error

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


---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped-id-left.rs#new stdout ----


4 LL |         x @ I => x.show(),
5    |                  ^^^^^^^^ expected `IShow`, found `OnIShow`
- error: aborting due to previous error
+ error: aborting due to 1 previous error
8 
9 For more information about this error, try `rustc --explain E0308`.
9 For more information about this error, try `rustc --explain E0308`.
10 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped-id-left.new/reveal-hidden-via-match-at-binding-unwrapped-id-left.new.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped-id-left.rs`

error in revision `new`: 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/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped-id-left.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "new" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped-id-left.new" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped-id-left.new/auxiliary" "--edition=2021" "-Ztrait-solver=next"
--- stderr -------------------------------
error[E0308]: mismatched types
error[E0308]: mismatched types
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped-id-left.rs:32:18
   |
LL |         x @ I => x.show(),
   |                  ^^^^^^^^ expected `IShow`, found `OnIShow`
error: aborting due to 1 previous error

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


---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped-id-left.rs#old stdout ----


4 LL |         x @ I => x.show(),
5    |                  ^^^^^^^^ expected `IShow`, found `OnIShow`
- error: aborting due to previous error
+ error: aborting due to 1 previous error
8 
9 For more information about this error, try `rustc --explain E0308`.
9 For more information about this error, try `rustc --explain E0308`.
10 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped-id-left.old/reveal-hidden-via-match-at-binding-unwrapped-id-left.old.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped-id-left.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/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped-id-left.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped-id-left.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped-id-left.old/auxiliary" "--edition=2021" "-Ztrait-solver=classic"
--- stderr -------------------------------
error[E0308]: mismatched types
error[E0308]: mismatched types
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped-id-left.rs:32:18
   |
LL |         x @ I => x.show(),
   |                  ^^^^^^^^ expected `IShow`, found `OnIShow`
error: aborting due to 1 previous error

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


---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped.rs#new stdout ----


4 LL |         x @ I => x.show(),
5    |                  ^^^^^^^^ expected `IShow`, found `OnIShow`
- error: aborting due to previous error
+ error: aborting due to 1 previous error
8 
9 For more information about this error, try `rustc --explain E0308`.
9 For more information about this error, try `rustc --explain E0308`.
10 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped.new/reveal-hidden-via-match-at-binding-unwrapped.new.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped.rs`

error in revision `new`: 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/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "new" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped.new" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped.new/auxiliary" "--edition=2021" "-Ztrait-solver=next"
--- stderr -------------------------------
error[E0308]: mismatched types
error[E0308]: mismatched types
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped.rs:28:18
   |
LL |         x @ I => x.show(),
   |                  ^^^^^^^^ expected `IShow`, found `OnIShow`
error: aborting due to 1 previous error

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


---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped.rs#old stdout ----


4 LL |         x @ I => x.show(),
5    |                  ^^^^^^^^ expected `IShow`, found `OnIShow`
- error: aborting due to previous error
+ error: aborting due to 1 previous error
8 
9 For more information about this error, try `rustc --explain E0308`.
9 For more information about this error, try `rustc --explain E0308`.
10 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped.old/reveal-hidden-via-match-at-binding-unwrapped.old.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped.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/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped.old/auxiliary" "--edition=2021" "-Ztrait-solver=classic"
--- stderr -------------------------------
error[E0308]: mismatched types
error[E0308]: mismatched types
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped.rs:28:18
   |
LL |         x @ I => x.show(),
   |                  ^^^^^^^^ expected `IShow`, found `OnIShow`
error: aborting due to 1 previous error

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


---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-wrapped-onw-id-left.rs#old stdout ----


4 LL |         x @ W(I) => x.show(),
5    |                     ^^^^^^^^ expected `WIShow`, found `OnWShow`
- error: aborting due to previous error
+ error: aborting due to 1 previous error
8 
9 For more information about this error, try `rustc --explain E0308`.
9 For more information about this error, try `rustc --explain E0308`.
10 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-wrapped-onw-id-left.old/reveal-hidden-via-match-at-binding-wrapped-onw-id-left.old.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-wrapped-onw-id-left.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/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-wrapped-onw-id-left.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-wrapped-onw-id-left.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-wrapped-onw-id-left.old/auxiliary" "--edition=2021" "-Ztrait-solver=classic"
--- stderr -------------------------------
error[E0308]: mismatched types
error[E0308]: mismatched types
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-wrapped-onw-id-left.rs:33:21
   |
LL |         x @ W(I) => x.show(),
   |                     ^^^^^^^^ expected `WIShow`, found `OnWShow`
error: aborting due to 1 previous error

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


---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-left.rs#new stdout ----

12 LL +     }
13    |
14 
---
18 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-left.new/reveal-hidden-via-match-exhaustiveness-empty-id-left.new.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-left.rs`

error in revision `new`: 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/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-left.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "new" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-left.new" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-left.new/auxiliary" "--edition=2021" "-Ztrait-solver=next"
--- stderr -------------------------------
error[E0004]: non-exhaustive patterns: type `impl Sized` is non-empty
error[E0004]: non-exhaustive patterns: type `impl Sized` is non-empty
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-left.rs:15:11
   |
LL |     match id2(test(!n, e), panic!()) {}
   |
   = note: the matched value is of type `impl Sized`
   = note: the matched value is of type `impl Sized`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern as shown
   |
LL ~     match id2(test(!n, e), panic!()) {
LL +         _ => todo!(),
LL +     }

error: aborting due to 1 previous error

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


---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-right.rs#old stdout ----

12 LL +     }
13    |
14 
---
18 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-right.old/reveal-hidden-via-match-exhaustiveness-empty-id-right.old.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-right.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/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-right.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-right.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-right.old/auxiliary" "--edition=2021" "-Ztrait-solver=classic"
--- stderr -------------------------------
error[E0004]: non-exhaustive patterns: type `impl Sized` is non-empty
error[E0004]: non-exhaustive patterns: type `impl Sized` is non-empty
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-right.rs:15:11
   |
LL |     match id2(panic!(), test(!n, e)) {}
   |
   = note: the matched value is of type `impl Sized`
   = note: the matched value is of type `impl Sized`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern as shown
   |
LL ~     match id2(panic!(), test(!n, e)) {
LL +         _ => todo!(),
LL +     }

error: aborting due to 1 previous error

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


---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-left.rs#old stdout ----

12 LL +     }
13    |
14 
---
18 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-left.old/reveal-hidden-via-match-exhaustiveness-empty-id-left.old.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-left.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/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-left.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-left.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-left.old/auxiliary" "--edition=2021" "-Ztrait-solver=classic"
--- stderr -------------------------------
error[E0004]: non-exhaustive patterns: type `impl Sized` is non-empty
error[E0004]: non-exhaustive patterns: type `impl Sized` is non-empty
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-left.rs:15:11
   |
LL |     match id2(test(!n, e), panic!()) {}
   |
   = note: the matched value is of type `impl Sized`
   = note: the matched value is of type `impl Sized`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern as shown
   |
LL ~     match id2(test(!n, e), panic!()) {
LL +         _ => todo!(),
LL +     }

error: aborting due to 1 previous error

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


---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-wrapped-onw.rs#old stdout ----


4 LL |         x @ W(I) => x.show(),
5    |                     ^^^^^^^^ expected `WIShow`, found `OnWShow`
- error: aborting due to previous error
+ error: aborting due to 1 previous error
8 
9 For more information about this error, try `rustc --explain E0308`.
9 For more information about this error, try `rustc --explain E0308`.
10 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-wrapped-onw.old/reveal-hidden-via-match-at-binding-wrapped-onw.old.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-wrapped-onw.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/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-wrapped-onw.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-wrapped-onw.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-wrapped-onw.old/auxiliary" "--edition=2021" "-Ztrait-solver=classic"
--- stderr -------------------------------
error[E0308]: mismatched types
error[E0308]: mismatched types
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-wrapped-onw.rs:29:21
   |
LL |         x @ W(I) => x.show(),
   |                     ^^^^^^^^ expected `WIShow`, found `OnWShow`
error: aborting due to 1 previous error

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


---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty.rs#new stdout ----

12 LL +     }
13    |
14 
---
18 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty.new/reveal-hidden-via-match-exhaustiveness-empty.new.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty.rs`

error in revision `new`: 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/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "new" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty.new" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty.new/auxiliary" "--edition=2021" "-Ztrait-solver=next"
--- stderr -------------------------------
error[E0004]: non-exhaustive patterns: type `impl Sized` is non-empty
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty.rs:15:11
   |
   |
LL |     match test(!n, e) {}
   |
   = note: the matched value is of type `impl Sized`
   = note: the matched value is of type `impl Sized`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern as shown
   |
LL ~     match test(!n, e) {
LL +         _ => todo!(),
LL +     }

error: aborting due to 1 previous error

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


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty.old/reveal-hidden-via-match-exhaustiveness-empty.old.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty.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/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty.old/auxiliary" "--edition=2021" "-Ztrait-solver=classic"
--- stderr -------------------------------
error[E0004]: non-exhaustive patterns: type `impl Sized` is non-empty
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty.rs:15:11
   |
   |
LL |     match test(!n, e) {}
   |
   = note: the matched value is of type `impl Sized`
   = note: the matched value is of type `impl Sized`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern as shown
   |
LL ~     match test(!n, e) {
LL +         _ => todo!(),
LL +     }

error: aborting due to 1 previous error

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


---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-right.rs#new stdout ----

12 LL +     }
13    |
14 
---
18 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-right.new/reveal-hidden-via-match-exhaustiveness-empty-id-right.new.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-right.rs`

error in revision `new`: 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/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-right.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "new" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-right.new" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-right.new/auxiliary" "--edition=2021" "-Ztrait-solver=next"
--- stderr -------------------------------
error[E0004]: non-exhaustive patterns: type `impl Sized` is non-empty
error[E0004]: non-exhaustive patterns: type `impl Sized` is non-empty
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-right.rs:15:11
   |
LL |     match id2(panic!(), test(!n, e)) {}
   |
   = note: the matched value is of type `impl Sized`
   = note: the matched value is of type `impl Sized`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern as shown
   |
LL ~     match id2(panic!(), test(!n, e)) {
LL +         _ => todo!(),
LL +     }

error: aborting due to 1 previous error

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


---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver-id-left.rs#new stdout ----

6    |            |
7    |            expected due to this
8 
---
12 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver-id-left.new/reveal-hidden-via-unwrapped-receiver-id-left.new.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver-id-left.rs`

error in revision `new`: 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/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver-id-left.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "new" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver-id-left.new" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver-id-left.new/auxiliary" "--edition=2021" "-Ztrait-solver=next"
--- stderr -------------------------------
error[E0308]: mismatched types
error[E0308]: mismatched types
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver-id-left.rs:30:20
   |
LL |     let _: IShow = id2(test(!n), I).show();
   |            -----   ^^^^^^^^^^^^^^^^^^^^^^^ expected `IShow`, found `OnIShow`
   |            expected due to this

error: aborting due to 1 previous error


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


---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver-id-left.rs#old stdout ----

6    |            |
7    |            expected due to this
8 
---
12 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver-id-left.old/reveal-hidden-via-unwrapped-receiver-id-left.old.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver-id-left.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/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver-id-left.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver-id-left.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver-id-left.old/auxiliary" "--edition=2021" "-Ztrait-solver=classic"
--- stderr -------------------------------
error[E0308]: mismatched types
error[E0308]: mismatched types
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver-id-left.rs:30:20
   |
LL |     let _: IShow = id2(test(!n), I).show();
   |            -----   ^^^^^^^^^^^^^^^^^^^^^^^ expected `IShow`, found `OnIShow`
   |            expected due to this

error: aborting due to 1 previous error


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


---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver.rs#new stdout ----

6    |            |
7    |            expected due to this
8 
---
12 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver.new/reveal-hidden-via-unwrapped-receiver.new.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver.rs`

error in revision `new`: 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/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "new" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver.new" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver.new/auxiliary" "--edition=2021" "-Ztrait-solver=next"
--- stderr -------------------------------
error[E0308]: mismatched types
error[E0308]: mismatched types
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver.rs:26:20
   |
LL |     let _: IShow = test(!n).show();
   |            -----   ^^^^^^^^^^^^^^^ expected `IShow`, found `OnIShow`
   |            expected due to this

error: aborting due to 1 previous error


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


---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-wrapped-receiver-inner-id-left.rs#old stdout ----

6    |            |
7    |            expected due to this
8 
---
12 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-wrapped-receiver-inner-id-left.old/reveal-hidden-via-wrapped-receiver-inner-id-left.old.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-hidden-via-wrapped-receiver-inner-id-left.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/impl-trait/inference/in-defining-item/reveal-hidden-via-wrapped-receiver-inner-id-left.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-wrapped-receiver-inner-id-left.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-wrapped-receiver-inner-id-left.old/auxiliary" "--edition=2021" "-Ztrait-solver=classic"
--- stderr -------------------------------
error[E0308]: mismatched types
error[E0308]: mismatched types
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-wrapped-receiver-inner-id-left.rs:30:20
   |
LL |     let _: WShow = W(id2(test(!n), ())).show();
   |            -----   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `WShow`, found `OnWShow`
   |            expected due to this

error: aborting due to 1 previous error


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


---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver.rs#old stdout ----

6    |            |
7    |            expected due to this
8 
---
12 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver.old/reveal-hidden-via-unwrapped-receiver.old.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver.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/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver.old/auxiliary" "--edition=2021" "-Ztrait-solver=classic"
--- stderr -------------------------------
error[E0308]: mismatched types
error[E0308]: mismatched types
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver.rs:26:20
   |
LL |     let _: IShow = test(!n).show();
   |            -----   ^^^^^^^^^^^^^^^ expected `IShow`, found `OnIShow`
   |            expected due to this

error: aborting due to 1 previous error


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


---- [ui] tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend-inner-id-left.rs#old stdout ----

18    |             ^^^^^^^^^^
18    |             ^^^^^^^^^^
19    = 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 1 previous error
22 
23 For more information about this error, try `rustc --explain E0391`.
23 For more information about this error, try `rustc --explain E0391`.
24 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend-inner-id-left.old/reveal-auto-trait-notsend-inner-id-left.old.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend-inner-id-left.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/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend-inner-id-left.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend-inner-id-left.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend-inner-id-left.old/auxiliary" "--edition=2021" "-Ztrait-solver=classic"
--- stderr -------------------------------
--- stderr -------------------------------
error[E0391]: cycle detected when computing type of opaque `Test::{opaque#0}`
##[error]  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend-inner-id-left.rs:33:13
LL | type Test = impl Sized;
   |             ^^^^^^^^^^
   |
   |
note: ...which requires type-checking `test`...
  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend-inner-id-left.rs:38:54
   |
LL |     let _: OnWShow = (&&W(id2(x, &() as *const ()))).show();
   |                                                      ^^^^
   = note: ...which requires evaluating trait selection obligation `&'a W<Test>: OnWSend`...
   = note: ...which again requires computing type of opaque `Test::{opaque#0}`, completing the cycle
note: cycle used when computing type of `Test::{opaque#0}`
  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend-inner-id-left.rs:33:13
LL | type Test = impl Sized;
   |             ^^^^^^^^^^
   |             ^^^^^^^^^^
   = 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 1 previous error

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


---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-wrapped-receiver-outer-id-left.rs#old stdout ----

6    |            |
7    |            expected due to this
8 
---
12 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-wrapped-receiver-outer-id-left.old/reveal-hidden-via-wrapped-receiver-outer-id-left.old.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-hidden-via-wrapped-receiver-outer-id-left.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/impl-trait/inference/in-defining-item/reveal-hidden-via-wrapped-receiver-outer-id-left.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-wrapped-receiver-outer-id-left.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-wrapped-receiver-outer-id-left.old/auxiliary" "--edition=2021" "-Ztrait-solver=classic"
--- stderr -------------------------------
error[E0308]: mismatched types
error[E0308]: mismatched types
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-wrapped-receiver-outer-id-left.rs:30:20
   |
LL |     let _: WShow = id2(W(test(!n)), W(())).show();
   |            -----   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `WShow`, found `OnWShow`
   |            expected due to this

error: aborting due to 1 previous error


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


---- [ui] tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend-outer-id-left.rs#old stdout ----

18    |             ^^^^^^^^^^
18    |             ^^^^^^^^^^
19    = 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 1 previous error
22 
23 For more information about this error, try `rustc --explain E0391`.
23 For more information about this error, try `rustc --explain E0391`.
24 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend-outer-id-left.old/reveal-auto-trait-notsend-outer-id-left.old.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend-outer-id-left.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/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend-outer-id-left.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend-outer-id-left.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend-outer-id-left.old/auxiliary" "--edition=2021" "-Ztrait-solver=classic"
--- stderr -------------------------------
--- stderr -------------------------------
error[E0391]: cycle detected when computing type of opaque `Test::{opaque#0}`
##[error]  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend-outer-id-left.rs:33:13
LL | type Test = impl Sized;
   |             ^^^^^^^^^^
   |
   |
note: ...which requires type-checking `test`...
  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend-outer-id-left.rs:38:57
   |
LL |     let _: OnWShow = id2(&&W(x), &&W(&() as *const ())).show();
   |                                                         ^^^^
   = note: ...which requires evaluating trait selection obligation `&'a W<Test>: OnWSend`...
   = note: ...which again requires computing type of opaque `Test::{opaque#0}`, completing the cycle
note: cycle used when computing type of `Test::{opaque#0}`
  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend-outer-id-left.rs:33:13
LL | type Test = impl Sized;
   |             ^^^^^^^^^^
   |             ^^^^^^^^^^
   = 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 1 previous error

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


---- [ui] tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend.rs#old stdout ----
diff of stderr:

18    |             ^^^^^^^^^^
19    = 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 1 previous error
22 
23 For more information about this error, try `rustc --explain E0391`.
23 For more information about this error, try `rustc --explain E0391`.
24 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend.old/reveal-auto-trait-notsend.old.stderr
To only update this specific test, also pass `--test-args impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend.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/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend.old/auxiliary" "--edition=2021" "-Ztrait-solver=classic"
--- stderr -------------------------------
--- stderr -------------------------------
error[E0391]: cycle detected when computing type of opaque `Test::{opaque#0}`
##[error]  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend.rs:32:13
LL | type Test = impl Sized;
   |             ^^^^^^^^^^
   |
   |
note: ...which requires type-checking `test`...
  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend.rs:37:31
   |
LL |     let _: OnWShow = (&&W(x)).show();
   |                               ^^^^
   = note: ...which requires evaluating trait selection obligation `&'a W<Test>: OnWSend`...
   = note: ...which again requires computing type of opaque `Test::{opaque#0}`, completing the cycle
note: cycle used when computing type of `Test::{opaque#0}`
  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend.rs:32:13
LL | type Test = impl Sized;
   |             ^^^^^^^^^^
   |             ^^^^^^^^^^
   = 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 1 previous error

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


---- [ui] tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-inner-id-left.rs#new stdout ----

58    | |____________^
58    | |____________^
59    = 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 1 previous error
62 
63 For more information about this error, try `rustc --explain E0391`.
63 For more information about this error, try `rustc --explain E0391`.
64 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-inner-id-left.new/reveal-auto-trait-send-inner-id-left.new.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-inner-id-left.rs`

error in revision `new`: 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/inference/may-define-without-must-define/reveal-auto-trait-send-inner-id-left.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "new" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-inner-id-left.new" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-inner-id-left.new/auxiliary" "--edition=2021" "-Ztrait-solver=next"
--- stderr -------------------------------
--- stderr -------------------------------
error[E0391]: cycle detected when computing type of `Test::{opaque#0}`
##[error]  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-inner-id-left.rs:32:13
LL | type Test = impl Sized;
   |             ^^^^^^^^^^
   |
   |
note: ...which requires computing type of opaque `Test::{opaque#0}`...
  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-inner-id-left.rs:32:13
LL | type Test = impl Sized;
   |             ^^^^^^^^^^
   |             ^^^^^^^^^^
note: ...which requires borrow-checking `test`...
  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-inner-id-left.rs:36:1
   |
LL | fn test(x: Test) {
   | ^^^^^^^^^^^^^^^^
note: ...which requires promoting constants in MIR for `test`...
  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-inner-id-left.rs:36:1
   |
LL | fn test(x: Test) {
   | ^^^^^^^^^^^^^^^^
note: ...which requires preparing `test` for borrow checking...
  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-inner-id-left.rs:36:1
   |
LL | fn test(x: Test) {
   | ^^^^^^^^^^^^^^^^
note: ...which requires unsafety-checking `test`...
  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-inner-id-left.rs:36:1
   |
LL | fn test(x: Test) {
   | ^^^^^^^^^^^^^^^^
note: ...which requires building MIR for `test`...
  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-inner-id-left.rs:36:1
   |
LL | fn test(x: Test) {
   | ^^^^^^^^^^^^^^^^
note: ...which requires resolving instance `<&W<Test> as OnWSend>::show`...
  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-inner-id-left.rs:20:5
   |
LL |     fn show(&self) -> OnWSendShow {
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: ...which requires computing candidate for `<&W<Test> as OnWSend>`...
  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-inner-id-left.rs:19:1
LL | trait OnWSend {
   | ^^^^^^^^^^^^^
   | ^^^^^^^^^^^^^
   = note: ...which again requires computing type of `Test::{opaque#0}`, completing the cycle
note: cycle used when checking item types in top-level module
  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-inner-id-left.rs:7:1
LL | / #![feature(type_alias_impl_trait)]
LL | |
LL | |
LL | | struct W<T>(T);
...  |
LL | |
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: aborting due to 1 previous error

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


---- [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-wrapped-receiver.rs#old stdout ----

6    |            |
7    |            expected due to this
8 
---
12 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-wrapped-receiver.old/reveal-hidden-via-wrapped-receiver.old.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/in-defining-item/reveal-hidden-via-wrapped-receiver.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/impl-trait/inference/in-defining-item/reveal-hidden-via-wrapped-receiver.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-wrapped-receiver.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-wrapped-receiver.old/auxiliary" "--edition=2021" "-Ztrait-solver=classic"
--- stderr -------------------------------
error[E0308]: mismatched types
error[E0308]: mismatched types
##[error]  --> /checkout/tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-wrapped-receiver.rs:26:20
   |
LL |     let _: WShow = W(test(!n)).show();
   |            -----   ^^^^^^^^^^^^^^^^^^ expected `WShow`, found `OnWShow`
   |            expected due to this

error: aborting due to 1 previous error


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


---- [ui] tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-outer-id-left.rs#new stdout ----

58    | |____________^
58    | |____________^
59    = 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 1 previous error
62 
63 For more information about this error, try `rustc --explain E0391`.
63 For more information about this error, try `rustc --explain E0391`.
64 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-outer-id-left.new/reveal-auto-trait-send-outer-id-left.new.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-outer-id-left.rs`

error in revision `new`: 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/inference/may-define-without-must-define/reveal-auto-trait-send-outer-id-left.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "new" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-outer-id-left.new" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-outer-id-left.new/auxiliary" "--edition=2021" "-Ztrait-solver=next"
--- stderr -------------------------------
--- stderr -------------------------------
error[E0391]: cycle detected when computing type of `Test::{opaque#0}`
##[error]  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-outer-id-left.rs:32:13
LL | type Test = impl Sized;
   |             ^^^^^^^^^^
   |
   |
note: ...which requires computing type of opaque `Test::{opaque#0}`...
  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-outer-id-left.rs:32:13
LL | type Test = impl Sized;
   |             ^^^^^^^^^^
   |             ^^^^^^^^^^
note: ...which requires borrow-checking `test`...
  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-outer-id-left.rs:36:1
   |
LL | fn test(x: Test) {
   | ^^^^^^^^^^^^^^^^
note: ...which requires promoting constants in MIR for `test`...
  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-outer-id-left.rs:36:1
   |
LL | fn test(x: Test) {
   | ^^^^^^^^^^^^^^^^
note: ...which requires preparing `test` for borrow checking...
  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-outer-id-left.rs:36:1
   |
   |
LL | fn test(x: Test) {
   | ^^^^^^^^^^^^^^^^
note: ...which requires unsafety-checking `test`...
  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-outer-id-left.rs:36:1
   |
LL | fn test(x: Test) {
   | ^^^^^^^^^^^^^^^^
note: ...which requires building MIR for `test`...
  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-outer-id-left.rs:36:1
   |
LL | fn test(x: Test) {
   | ^^^^^^^^^^^^^^^^
note: ...which requires resolving instance `<&W<Test> as OnWSend>::show`...
  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-outer-id-left.rs:20:5
   |
LL |     fn show(&self) -> OnWSendShow {
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: ...which requires computing candidate for `<&W<Test> as OnWSend>`...
  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-outer-id-left.rs:19:1
LL | trait OnWSend {
   | ^^^^^^^^^^^^^
   | ^^^^^^^^^^^^^
   = note: ...which again requires computing type of `Test::{opaque#0}`, completing the cycle
note: cycle used when checking item types in top-level module
  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-outer-id-left.rs:7:1
LL | / #![feature(type_alias_impl_trait)]
LL | |
LL | |
LL | | struct W<T>(T);
...  |
LL | |
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: aborting due to 1 previous error

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


---- [ui] tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send.rs#new stdout ----
diff of stderr:

7    = note: cannot satisfy `&W<Test>: OnWSend`
8    = help: the trait `OnWSend` is implemented for `&W<Test>`
- error: aborting due to previous error
+ error: aborting due to 1 previous error
11 
12 For more information about this error, try `rustc --explain E0283`.
12 For more information about this error, try `rustc --explain E0283`.
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/inference/may-define-without-must-define/reveal-auto-trait-send.new/reveal-auto-trait-send.new.stderr
To only update this specific test, also pass `--test-args impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send.rs`


error in revision `new`: 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/inference/may-define-without-must-define/reveal-auto-trait-send.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "new" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send.new" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send.new/auxiliary" "--edition=2021" "-Ztrait-solver=next"
--- stderr -------------------------------
--- stderr -------------------------------
error[E0283]: type annotations needed: cannot satisfy `&W<Test>: OnWSend`
##[error]  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send.rs:37:35
   |
LL |     let _: OnWSendShow = (&&W(x)).show();
   |
   |
   = note: cannot satisfy `&W<Test>: OnWSend`
   = help: the trait `OnWSend` is implemented for `&W<Test>`
error: aborting due to 1 previous error

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


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend.new/reveal-auto-trait-notsend.new.stderr
To only update this specific test, also pass `--test-args impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend.rs`


error in revision `new`: 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/inference/may-define-without-must-define/reveal-auto-trait-notsend.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "new" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend.new" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend.new/auxiliary" "--edition=2021" "-Ztrait-solver=next"
--- stderr -------------------------------
error[E0308]: mismatched types
##[error]  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend.rs:37:22
   |
   |
LL |     let _: OnWShow = (&&W(x)).show();
   |            -------   ^^^^^^^^^^^^^^^ expected `OnWShow`, found `OnWSendShow`
   |            expected due to this

error: aborting due to 1 previous error


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


---- [ui] tests/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-unwrapped-receiver-id-left.rs#new stdout ----

6    |            |
7    |            expected due to this
8 
---
12 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-unwrapped-receiver-id-left.new/reveal-hidden-via-unwrapped-receiver-id-left.new.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/may-define-without-must-define/reveal-hidden-via-unwrapped-receiver-id-left.rs`

error in revision `new`: 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/inference/may-define-without-must-define/reveal-hidden-via-unwrapped-receiver-id-left.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "new" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-unwrapped-receiver-id-left.new" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-unwrapped-receiver-id-left.new/auxiliary" "--edition=2021" "-Ztrait-solver=next"
--- stderr -------------------------------
error[E0308]: mismatched types
error[E0308]: mismatched types
##[error]  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-unwrapped-receiver-id-left.rs:37:20
   |
LL |     let _: IShow = id2(x, I).show();
   |            -----   ^^^^^^^^^^^^^^^^ expected `IShow`, found `OnIShow`
   |            expected due to this

error: aborting due to 1 previous error


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


---- [ui] tests/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-unwrapped-receiver.rs#new stdout ----

6    |            |
7    |            expected due to this
8 
---
12 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-unwrapped-receiver.new/reveal-hidden-via-unwrapped-receiver.new.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/may-define-without-must-define/reveal-hidden-via-unwrapped-receiver.rs`

error in revision `new`: 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/inference/may-define-without-must-define/reveal-hidden-via-unwrapped-receiver.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "new" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-unwrapped-receiver.new" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-unwrapped-receiver.new/auxiliary" "--edition=2021" "-Ztrait-solver=next"
--- stderr -------------------------------
error[E0308]: mismatched types
error[E0308]: mismatched types
##[error]  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-unwrapped-receiver.rs:33:20
   |
LL |     let _: IShow = x.show();
   |            -----   ^^^^^^^^ expected `IShow`, found `OnIShow`
   |            expected due to this

error: aborting due to 1 previous error


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


---- [ui] tests/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-wrapped-receiver-outer-id-left.rs#old stdout ----

6    |            |
7    |            expected due to this
8 
---
12 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-wrapped-receiver-outer-id-left.old/reveal-hidden-via-wrapped-receiver-outer-id-left.old.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/may-define-without-must-define/reveal-hidden-via-wrapped-receiver-outer-id-left.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/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-wrapped-receiver-outer-id-left.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-wrapped-receiver-outer-id-left.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-wrapped-receiver-outer-id-left.old/auxiliary" "--edition=2021" "-Ztrait-solver=classic"
--- stderr -------------------------------
error[E0308]: mismatched types
error[E0308]: mismatched types
##[error]  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-wrapped-receiver-outer-id-left.rs:35:20
   |
LL |     let _: WShow = id2(W(x), W(())).show();
   |            -----   ^^^^^^^^^^^^^^^^^^^^^^^ expected `WShow`, found `OnWShow`
   |            expected due to this

error: aborting due to 1 previous error


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


---- [ui] tests/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-wrapped-receiver-inner-id-left.rs#old stdout ----

6    |            |
7    |            expected due to this
8 
---
12 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-wrapped-receiver-inner-id-left.old/reveal-hidden-via-wrapped-receiver-inner-id-left.old.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/may-define-without-must-define/reveal-hidden-via-wrapped-receiver-inner-id-left.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/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-wrapped-receiver-inner-id-left.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-wrapped-receiver-inner-id-left.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-wrapped-receiver-inner-id-left.old/auxiliary" "--edition=2021" "-Ztrait-solver=classic"
--- stderr -------------------------------
error[E0308]: mismatched types
error[E0308]: mismatched types
##[error]  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-wrapped-receiver-inner-id-left.rs:35:20
   |
LL |     let _: WShow = W(id2(x, ())).show();
   |            -----   ^^^^^^^^^^^^^^^^^^^^ expected `WShow`, found `OnWShow`
   |            expected due to this

error: aborting due to 1 previous error


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


---- [ui] tests/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-wrapped-receiver.rs#old stdout ----

6    |            |
7    |            expected due to this
8 
---
12 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-wrapped-receiver.old/reveal-hidden-via-wrapped-receiver.old.stderr
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args impl-trait/inference/may-define-without-must-define/reveal-hidden-via-wrapped-receiver.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/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-wrapped-receiver.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "old" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-wrapped-receiver.old" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-wrapped-receiver.old/auxiliary" "--edition=2021" "-Ztrait-solver=classic"
--- stderr -------------------------------
error[E0308]: mismatched types
error[E0308]: mismatched types
##[error]  --> /checkout/tests/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-wrapped-receiver.rs:31:20
   |
LL |     let _: WShow = W(x).show();
   |            -----   ^^^^^^^^^^^ expected `WShow`, found `OnWShow`
   |            expected due to this

error: aborting due to 1 previous error


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



failures:
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend-outer-id-left.rs#old
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend-inner-id-left.rs#old
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-auto-trait-notsend.rs#old
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access-id-left.rs#new
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access-id-left.rs#old
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access.rs#old
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-field-access.rs#new
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped-id-left.rs#new
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped-id-left.rs#old
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped.rs#new
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-unwrapped.rs#old
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-wrapped-onw-id-left.rs#old
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-left.rs#new
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-right.rs#old
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-left.rs#old
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-at-binding-wrapped-onw.rs#old
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty.rs#new
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty.rs#old
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-match-exhaustiveness-empty-id-right.rs#new
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver-id-left.rs#new
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver-id-left.rs#old
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver.rs#new
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-wrapped-receiver-inner-id-left.rs#old
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-unwrapped-receiver.rs#old
    [ui] tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend-inner-id-left.rs#old
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-wrapped-receiver-outer-id-left.rs#old
    [ui] tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend-outer-id-left.rs#old
    [ui] tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend.rs#old
    [ui] tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-inner-id-left.rs#new
    [ui] tests/ui/impl-trait/inference/in-defining-item/reveal-hidden-via-wrapped-receiver.rs#old
    [ui] tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send-outer-id-left.rs#new
    [ui] tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-send.rs#new
    [ui] tests/ui/impl-trait/inference/may-define-without-must-define/reveal-auto-trait-notsend.rs#new
    [ui] tests/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-unwrapped-receiver-id-left.rs#new
    [ui] tests/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-unwrapped-receiver.rs#new
    [ui] tests/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-wrapped-receiver-outer-id-left.rs#old
    [ui] tests/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-wrapped-receiver-inner-id-left.rs#old
    [ui] tests/ui/impl-trait/inference/may-define-without-must-define/reveal-hidden-via-wrapped-receiver.rs#old
test result: FAILED. 15841 passed; 38 failed; 139 ignored; 0 measured; 0 filtered out; finished in 138.50s

Some tests failed in compiletest suite=ui mode=ui host=x86_64-unknown-linux-gnu target=x86_64-unknown-linux-gnu
  local time: Thu Dec  7 19:01:42 UTC 2023

@compiler-errors
Copy link
Member

Tests need blessing due to #118138

struct I;
struct IShow;
impl I {
#[allow(dead_code)]
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ui tests already allow dead code

@compiler-errors
Copy link
Member

@rustbot author

@rustbot rustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Dec 8, 2023
@Dylan-DPC
Copy link
Member

@traviscross any updates on this?

@traviscross
Copy link
Contributor Author

No. There probably still is value here. Should still clean it up and get it merged sometime.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-types Relevant to the types team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants