rust/tests/ui/traits/issue-33140.stderr

66 lines
2.3 KiB
Plaintext

error[E0119]: conflicting implementations of trait `Trait` for type `(dyn Send + Sync + 'static)`
--> $DIR/issue-33140.rs:9:1
|
LL | impl Trait for dyn Send + Sync {
| ------------------------------ first implementation here
...
LL | impl Trait for dyn Sync + Send {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `(dyn Send + Sync + 'static)`
error[E0119]: conflicting implementations of trait `Trait2` for type `(dyn Send + Sync + 'static)`
--> $DIR/issue-33140.rs:22:1
|
LL | impl Trait2 for dyn Send + Sync {
| ------------------------------- first implementation here
...
LL | impl Trait2 for dyn Sync + Send + Sync {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `(dyn Send + Sync + 'static)`
error[E0592]: duplicate definitions with name `abc`
--> $DIR/issue-33140.rs:29:5
|
LL | fn abc() -> bool {
| ^^^^^^^^^^^^^^^^ duplicate definitions for `abc`
...
LL | fn abc() -> bool {
| ---------------- other definition for `abc`
error[E0034]: multiple applicable items in scope
--> $DIR/issue-33140.rs:45:40
|
LL | assert_eq!(<Foo<dyn Send + Sync>>::abc(), false);
| ^^^ multiple `abc` found
|
note: candidate #1 is defined in an impl for the type `Foo<(dyn Send + Sync + 'static)>`
--> $DIR/issue-33140.rs:29:5
|
LL | fn abc() -> bool {
| ^^^^^^^^^^^^^^^^
note: candidate #2 is defined in an impl for the type `Foo<(dyn Send + Sync + 'static)>`
--> $DIR/issue-33140.rs:35:5
|
LL | fn abc() -> bool {
| ^^^^^^^^^^^^^^^^
error[E0034]: multiple applicable items in scope
--> $DIR/issue-33140.rs:47:40
|
LL | assert_eq!(<Foo<dyn Sync + Send>>::abc(), true);
| ^^^ multiple `abc` found
|
note: candidate #1 is defined in an impl for the type `Foo<(dyn Send + Sync + 'static)>`
--> $DIR/issue-33140.rs:29:5
|
LL | fn abc() -> bool {
| ^^^^^^^^^^^^^^^^
note: candidate #2 is defined in an impl for the type `Foo<(dyn Send + Sync + 'static)>`
--> $DIR/issue-33140.rs:35:5
|
LL | fn abc() -> bool {
| ^^^^^^^^^^^^^^^^
error: aborting due to 5 previous errors
Some errors have detailed explanations: E0034, E0119, E0592.
For more information about an error, try `rustc --explain E0034`.