1 error[E0284]: type annotations needed
2 --> $DIR/issue-69683.rs:30:10
7 = note: cannot satisfy `<u8 as Element<_>>::Array == [u8; 3]`
8 help: try using a fully qualified path to specify the expected types
10 LL | <u16 as Foo<I>>::foo(0u16, b);
11 | +++++++++++++++++++++ ~
13 error[E0283]: type annotations needed
14 --> $DIR/issue-69683.rs:30:10
19 note: multiple `impl`s satisfying `u8: Element<_>` found
20 --> $DIR/issue-69683.rs:5:1
22 LL | impl<T> Element<()> for T {
23 | ^^^^^^^^^^^^^^^^^^^^^^^^^
25 LL | impl<T: Element<S>, S> Element<[S; 3]> for T {
26 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
27 note: required by a bound in `Foo::foo`
28 --> $DIR/issue-69683.rs:15:9
31 | ^^^^^^^^^^ required by this bound in `Foo::foo`
33 LL | fn foo(self, x: <u8 as Element<I>>::Array);
34 | --- required by a bound in this
35 help: try using a fully qualified path to specify the expected types
37 LL | <u16 as Foo<I>>::foo(0u16, b);
38 | +++++++++++++++++++++ ~
40 error: aborting due to 2 previous errors
42 Some errors have detailed explanations: E0283, E0284.
43 For more information about an error, try `rustc --explain E0283`.