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

Rollup of 7 pull requests #120654

Closed
wants to merge 19 commits into from

Conversation

matthiaskrgr
Copy link
Member

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

romanows and others added 19 commits December 31, 2023 15:09
Makes the trait implementation documentation for arrays and slices appear more consistent.
…le, r=Mark-Simulacrum

Clarify ambiguity in select_nth_unstable docs

Original docs for `select_nth_unstable` family of functions were ambiguous as to whether "the element at `index`" was the element at `index` before the function reordered the elements or after the function reordered the elements.

The most helpful change in this PR is to change the given examples to make this absolutely clear.  Before, "the element at `index`" was the same value before and after the reordering, so it didn't help disambiguate the meaning.  I've changed the example for `select_nth_unstable` and `select_nth_unstable_by` so that "the element at `index`" is different before and after the reordering, which clears up the ambiguity.  The function `select_nth_unstable_by_key` already had an example that was unambiguous.

In an attempt to clear up the ambiguity from the get-go, I've added a bit of redundancy to the text.  Now the docs refer to "the element at `index` *after the reordering*".
…r=Mark-Simulacrum

Use `<T, U>` for array/slice equality `impl`s

Makes the trait implementation documentation for arrays and slices appear more consistent.

[Example](https://doc.rust-lang.org/1.75.0/std/primitive.array.html): mixed `A`, `B`, and `U`.
![List of PartialEq implementations for arrays](https://github.com/wackbyte/rust/assets/29505620/823c010e-ee57-4de1-885b-a1cd6dcaf85f)

This change makes them all `U`.
…, r=petrochenkov

update indirect structural match lints to match RFC and to show up for dependencies

This is a large step towards implementing rust-lang/rfcs#3535.
We currently have five lints related to "the structural match situation":
- nontrivial_structural_match
- indirect_structural_match
- pointer_structural_match
- const_patterns_without_partial_eq
- illegal_floating_point_literal_pattern

This PR concerns the first 3 of them. (The 4th already is set up to show for dependencies, and the 5th is removed by rust-lang#116284.) nontrivial_structural_match is being removed as per the RFC; the other two are enabled to show up in dependencies.

Fixes rust-lang#73448 by removing the affected analysis.
…-Simulacrum

Document `&CStr` to `CString` conversion

Related to rust-lang#51430
…stebank

Stop bailing out from compilation just because there were incoherent traits

fixes rust-lang#120343

but also has a lot of "type annotations needed" fallout. Some are fixed in the second commit.
Update libc to 0.2.153

Bumps libc dependency to 0.2.153, which includes this fix, required for building std for the vita: rust-lang/libc#3552
rustdoc: trait.impl, type.impl: sort impls to make it not depend on serialization order

Can be tested by running `cargo doc` with different rust versions on some crate and comparing `doc` folders: files in `trait.impl` and `type.impl` will sometimes have different order of impls.
@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. T-libs Relevant to the library team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. rollup A PR which is a rollup labels Feb 4, 2024
@matthiaskrgr
Copy link
Member Author

@bors r+ rollup=never p=7

@bors
Copy link
Contributor

bors commented Feb 4, 2024

📌 Commit 9252b87 has been approved by matthiaskrgr

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Feb 4, 2024
@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_ENV=/home/runner/work/_temp/_runner_file_commands/set_env_bc082e81-db88-428b-9217-dea910a431b2
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=rollup-ywlixr5
GITHUB_JOB=pr
GITHUB_PATH=/home/runner/work/_temp/_runner_file_commands/add_path_bc082e81-db88-428b-9217-dea910a431b2
GITHUB_REF=refs/pull/120654/merge
GITHUB_REF_NAME=120654/merge
GITHUB_REF_PROTECTED=false
---
#12 writing image sha256:59361763dd2ecd9ef1a87ef68d390238d8a88dd19d07dabd525ac0b7a465ef64 done
#12 naming to docker.io/library/rust-ci done
#12 DONE 10.1s
##[endgroup]
Setting extra environment values for docker:  --env ENABLE_GCC_CODEGEN=1 --env GCC_EXEC_PREFIX=/usr/lib/gcc/
[CI_JOB_NAME=x86_64-gnu-llvm-16]
##[group]Clock drift check
  local time: Mon Feb  5 00:01:46 UTC 2024
  network time: Mon, 05 Feb 2024 00:01:47 GMT
  network time: Mon, 05 Feb 2024 00:01:47 GMT
##[endgroup]
sccache: Starting the server...
##[group]Configure the build
configure: processing command line
configure: 
configure: build.configure-args := ['--build=x86_64-unknown-linux-gnu', '--llvm-root=/usr/lib/llvm-16', '--enable-llvm-link-shared', '--set', 'rust.thin-lto-import-instr-limit=10', '--set', 'change-id=99999999', '--enable-verbose-configure', '--enable-sccache', '--disable-manage-submodules', '--enable-locked-deps', '--enable-cargo-native-static', '--set', 'rust.codegen-units-std=1', '--set', 'dist.compression-profile=balanced', '--dist-compression-formats=xz', '--set', 'build.optimized-compiler-builtins', '--disable-dist-src', '--release-channel=nightly', '--enable-debug-assertions', '--enable-overflow-checks', '--enable-llvm-assertions', '--set', 'rust.verify-llvm-ir', '--set', 'rust.codegen-backends=llvm,cranelift,gcc', '--set', 'llvm.static-libstdcpp', '--enable-new-symbol-mangling']
configure: target.x86_64-unknown-linux-gnu.llvm-config := /usr/lib/llvm-16/bin/llvm-config
configure: llvm.link-shared     := True
configure: rust.thin-lto-import-instr-limit := 10
configure: change-id            := 99999999
---
- error: aborting due to 1 previous error
+ error[E0282]: type annotations needed
+   --> $DIR/issue-67651.rs:17:18
+    |
+ LL |     async move { From::from() }
11 
- For more information about this error, try `rustc --explain E0119`.
+ error: aborting due to 2 previous errors
+ 
---
To only update this specific test, also pass `--test-args async-await/issue-67651.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/async-await/issue-67651.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/async-await/issue-67651" "-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/async-await/issue-67651/auxiliary" "--edition=2018"
--- stderr -------------------------------
error[E0119]: conflicting implementations of trait `From` for type `()`
##[error]  --> /checkout/tests/ui/async-await/issue-67651.rs:11:1
   |
---

error[E0282]: type annotations needed
##[error]  --> /checkout/tests/ui/async-await/issue-67651.rs:17:18
   |
LL |     async move { From::from() }

error: aborting due to 2 previous errors

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


---- [ui] tests/ui/specialization/specialization-default-items-drop-coherence.rs#next stdout ----
diff of stderr:

7 LL | impl Overlap for <u32 as Default>::Id {
8    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `u32`
9 
+ error[E0284]: type annotations needed: cannot satisfy `<u32 as Default>::Id == _`
+    |
+    |
+ LL | impl Overlap for <u32 as Default>::Id {
+    |                  ^^^^^^^^^^^^^^^^^^^^ cannot satisfy `<u32 as Default>::Id == _`
10 error[E0282]: type annotations needed
11   --> $DIR/specialization-default-items-drop-coherence.rs:18:23
12    |


13 LL |     default type Id = T;
14    |                       ^ cannot infer type for associated type `<T as Default>::Id`
- error: aborting due to 2 previous errors
+ error: aborting due to 3 previous errors
17 
- Some errors have detailed explanations: E0119, E0282.
- Some errors have detailed explanations: E0119, E0282.
+ Some errors have detailed explanations: E0119, E0282, E0284.
19 For more information about an error, try `rustc --explain E0119`.
20 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/specialization/specialization-default-items-drop-coherence.next/specialization-default-items-drop-coherence.next.stderr
To only update this specific test, also pass `--test-args specialization/specialization-default-items-drop-coherence.rs`

error in revision `next`: 1 errors occurred comparing output.
status: exit status: 1
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/specialization/specialization-default-items-drop-coherence.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" "next" "--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/specialization/specialization-default-items-drop-coherence.next" "-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/specialization/specialization-default-items-drop-coherence.next/auxiliary" "-Znext-solver"
--- stderr -------------------------------
error[E0119]: conflicting implementations of trait `Overlap` for type `u32`
##[error]  --> /checkout/tests/ui/specialization/specialization-default-items-drop-coherence.rs:29:1
   |
   |
LL | impl Overlap for u32 {
   | -------------------- first implementation here
...
LL | impl Overlap for <u32 as Default>::Id {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `u32`

error[E0284]: type annotations needed: cannot satisfy `<u32 as Default>::Id == _`
   |
   |
LL | impl Overlap for <u32 as Default>::Id {
   |                  ^^^^^^^^^^^^^^^^^^^^ cannot satisfy `<u32 as Default>::Id == _`
error[E0282]: type annotations needed
##[error]  --> /checkout/tests/ui/specialization/specialization-default-items-drop-coherence.rs:18:23
   |
   |
LL |     default type Id = T; //[next]~ ERROR type annotations needed
   |                       ^ cannot infer type for associated type `<T as Default>::Id`
error: aborting due to 3 previous errors

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

@bors
Copy link
Contributor

bors commented Feb 5, 2024

⌛ Testing commit 9252b87 with merge 80fd996...

bors added a commit to rust-lang-ci/rust that referenced this pull request Feb 5, 2024
…iaskrgr

Rollup of 7 pull requests

Successful merges:

 - rust-lang#119481 (Clarify ambiguity in select_nth_unstable docs)
 - rust-lang#120384 (Use `<T, U>` for array/slice equality `impl`s)
 - rust-lang#120423 (update indirect structural match lints to match RFC and to show up for dependencies)
 - rust-lang#120458 (Document `&CStr` to `CString` conversion)
 - rust-lang#120558 (Stop bailing out from compilation just because there were incoherent traits)
 - rust-lang#120572 (Update libc to 0.2.153)
 - rust-lang#120641 (rustdoc: trait.impl, type.impl: sort impls to make it not depend on serialization order)

r? `@ghost`
`@rustbot` modify labels: rollup
@rust-log-analyzer
Copy link
Collaborator

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

Click to see the possible cause of the failure (guessed by this bot)
- error: aborting due to 1 previous error
+ error[E0282]: type annotations needed
+   --> $DIR/issue-67651.rs:17:18
+    |
+ LL |     async move { From::from() }
11 
- For more information about this error, try `rustc --explain E0119`.
+ error: aborting due to 2 previous errors
+ 
---
To only update this specific test, also pass `--test-args async-await/issue-67651.rs`

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage1/bin/rustc" "/checkout/tests/ui/async-await/issue-67651.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/stage1" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/async-await/issue-67651" "-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/async-await/issue-67651/auxiliary" "--edition=2018"
--- stderr -------------------------------
error[E0119]: conflicting implementations of trait `From` for type `()`
##[error]  --> /checkout/tests/ui/async-await/issue-67651.rs:11:1
   |
---

error[E0282]: type annotations needed
##[error]  --> /checkout/tests/ui/async-await/issue-67651.rs:17:18
   |
LL |     async move { From::from() }

error: aborting due to 2 previous errors

Some errors have detailed explanations: E0119, E0282.
---

25    |
26 LL | pub struct ListS<T> {
27    |            ^^^^^
- note: required by a bound in `Interned`
+ note: required by an implicit `Sized` bound in `Interned`
30    |
30    |
31 LL | pub struct Interned<'a, T>(&'a T);
-    |                         ^ required by this bound in `Interned`
+    |                         ^ required by the implicit `Sized` requirement on this type parameter in `Interned`
+    |                         ^ required by the implicit `Sized` requirement on this type parameter in `Interned`
33 help: consider relaxing the implicit `Sized` restriction
34    |
35 LL | pub struct Interned<'a, T: ?Sized>(&'a T);

The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/coherence/deep-bad-copy-reason/deep-bad-copy-reason.stderr
To update references, rerun the tests and pass the `--bless` flag
---
--- stderr -------------------------------
error[E0204]: the trait `Copy` cannot be implemented for this type
##[error]  --> /checkout/tests/ui/coherence/deep-bad-copy-reason.rs:38:24
   |
LL | pub struct List<'tcx, T>(Interned<'tcx, ListS<T>>);
...
...
LL | impl<'tcx, T> Copy for List<'tcx, T> {}
   |
   |
note: the `Copy` impl for `Interned<'tcx, ListS<T>>` requires that `OpaqueListContents: Sized`
   |
   |
LL | pub struct List<'tcx, T>(Interned<'tcx, ListS<T>>);

error[E0277]: the size for values of type `OpaqueListContents` cannot be known at compilation time
##[error]  --> /checkout/tests/ui/coherence/deep-bad-copy-reason.rs:26:26
   |
   |
LL | pub struct List<'tcx, T>(Interned<'tcx, ListS<T>>);
   |
   |
   = help: within `ListS<T>`, the trait `Sized` is not implemented for `OpaqueListContents`, which is required by `ListS<T>: Sized`
note: required because it appears within the type `ListS<T>`
   |
LL | pub struct ListS<T> {
   |            ^^^^^
note: required by an implicit `Sized` bound in `Interned`
note: required by an implicit `Sized` bound in `Interned`
  --> /checkout/tests/ui/coherence/deep-bad-copy-reason.rs:14:25
   |
LL | pub struct Interned<'a, T>(&'a T);
   |                         ^ required by the implicit `Sized` requirement on this type parameter in `Interned`
help: consider relaxing the implicit `Sized` restriction
   |
LL | pub struct Interned<'a, T: ?Sized>(&'a T);

error: aborting due to 2 previous errors

Some errors have detailed explanations: E0204, E0277.
---
- error[E0392]: parameter `T` is never used
+ error[E0392]: type parameter `T` is never used
11   --> $DIR/E0374.rs:4:12
12    |
13 LL | struct Foo<T: ?Sized> {
-    |            ^ unused parameter
+    |            ^ unused type parameter
15    |
15    |
16    = help: consider removing `T`, referring to it in a field, or using a marker such as `PhantomData`


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

error: 1 errors occurred comparing output.
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage1/bin/rustc" "/checkout/tests/ui/error-codes/E0374.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/stage1" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/error-codes/E0374" "-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/error-codes/E0374/auxiliary"
--- stderr -------------------------------
--- stderr -------------------------------
error[E0374]: the trait `CoerceUnsized` may only be implemented for a coercion between structures
   |
   |
LL | / impl<T, U> CoerceUnsized<Foo<U>> for Foo<T> //~ ERROR E0374
LL | |     where T: CoerceUnsized<U> {}
   |
   = note: expected a single field to be coerced, none found

error[E0392]: type parameter `T` is never used
error[E0392]: type parameter `T` is never used
##[error]  --> /checkout/tests/ui/error-codes/E0374.rs:4:12
   |
LL | struct Foo<T: ?Sized> { //~ ERROR `T` is never used
   |            ^ unused type parameter
   |
   = help: consider removing `T`, referring to it in a field, or using a marker such as `PhantomData`
error: aborting due to 2 previous errors

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


---- [ui] tests/ui/specialization/specialization-default-items-drop-coherence.rs#next stdout ----
diff of stderr:

7 LL | impl Overlap for <u32 as Default>::Id {
8    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `u32`
9 
+ error[E0284]: type annotations needed: cannot satisfy `<u32 as Default>::Id == _`
+    |
+    |
+ LL | impl Overlap for <u32 as Default>::Id {
+    |                  ^^^^^^^^^^^^^^^^^^^^ cannot satisfy `<u32 as Default>::Id == _`
10 error[E0282]: type annotations needed
11   --> $DIR/specialization-default-items-drop-coherence.rs:18:23
12    |


13 LL |     default type Id = T;
14    |                       ^ cannot infer type for associated type `<T as Default>::Id`
- error: aborting due to 2 previous errors
+ error: aborting due to 3 previous errors
17 
- Some errors have detailed explanations: E0119, E0282.
- Some errors have detailed explanations: E0119, E0282.
+ Some errors have detailed explanations: E0119, E0282, E0284.
19 For more information about an error, try `rustc --explain E0119`.
Build completed unsuccessfully in 0:10:48
20 


The actual stderr differed from the expected stderr.
Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/specialization/specialization-default-items-drop-coherence.next/specialization-default-items-drop-coherence.next.stderr
To only update this specific test, also pass `--test-args specialization/specialization-default-items-drop-coherence.rs`

error in revision `next`: 1 errors occurred comparing output.
status: exit status: 1
status: exit status: 1
command: RUSTC_ICE="0" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage1/bin/rustc" "/checkout/tests/ui/specialization/specialization-default-items-drop-coherence.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage1" "--target=x86_64-unknown-linux-gnu" "--cfg" "next" "--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/specialization/specialization-default-items-drop-coherence.next" "-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/specialization/specialization-default-items-drop-coherence.next/auxiliary" "-Znext-solver"
--- stderr -------------------------------
error[E0119]: conflicting implementations of trait `Overlap` for type `u32`
##[error]  --> /checkout/tests/ui/specialization/specialization-default-items-drop-coherence.rs:29:1
   |
   |
LL | impl Overlap for u32 {
   | -------------------- first implementation here
...
LL | impl Overlap for <u32 as Default>::Id {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `u32`

error[E0284]: type annotations needed: cannot satisfy `<u32 as Default>::Id == _`
   |
   |
LL | impl Overlap for <u32 as Default>::Id {
   |                  ^^^^^^^^^^^^^^^^^^^^ cannot satisfy `<u32 as Default>::Id == _`
error[E0282]: type annotations needed
##[error]  --> /checkout/tests/ui/specialization/specialization-default-items-drop-coherence.rs:18:23
   |
   |
LL |     default type Id = T; //[next]~ ERROR type annotations needed
   |                       ^ cannot infer type for associated type `<T as Default>::Id`
error: aborting due to 3 previous errors

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

@bors
Copy link
Contributor

bors commented Feb 5, 2024

💔 Test failed - checks-actions

@bors bors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Feb 5, 2024
@matthiaskrgr
Copy link
Member Author

#120558

@matthiaskrgr matthiaskrgr deleted the rollup-ywlixr5 branch March 16, 2024 18:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
rollup A PR which is a rollup 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. T-libs Relevant to the library team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.