1 error[E0308]: mismatched types
2 --> $DIR/substs-ppaux.rs:16:17
4 LL | fn bar<'a, T>() where T: 'a {}
5 | --------------------------- fn() {<i8 as Foo<'static, 'static, u8>>::bar::<'static, char>} defined here
7 LL | let x: () = <i8 as Foo<'static, 'static, u8>>::bar::<'static, char>;
8 | -- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `()`, found fn item
10 | expected due to this
12 = note: expected unit type `()`
13 found fn item `fn() {<i8 as Foo<'static, 'static, u8>>::bar::<'static, char>}`
14 help: use parentheses to call this associated function
16 LL | let x: () = <i8 as Foo<'static, 'static, u8>>::bar::<'static, char>();
19 error[E0308]: mismatched types
20 --> $DIR/substs-ppaux.rs:25:17
22 LL | fn bar<'a, T>() where T: 'a {}
23 | --------------------------- fn() {<i8 as Foo<'static, 'static>>::bar::<'static, char>} defined here
25 LL | let x: () = <i8 as Foo<'static, 'static, u32>>::bar::<'static, char>;
26 | -- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `()`, found fn item
28 | expected due to this
30 = note: expected unit type `()`
31 found fn item `fn() {<i8 as Foo<'static, 'static>>::bar::<'static, char>}`
32 help: use parentheses to call this associated function
34 LL | let x: () = <i8 as Foo<'static, 'static, u32>>::bar::<'static, char>();
37 error[E0308]: mismatched types
38 --> $DIR/substs-ppaux.rs:33:17
41 | -------- fn() {<i8 as Foo<'static, 'static, u8>>::baz} defined here
43 LL | let x: () = <i8 as Foo<'static, 'static, u8>>::baz;
44 | -- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `()`, found fn item
46 | expected due to this
48 = note: expected unit type `()`
49 found fn item `fn() {<i8 as Foo<'static, 'static, u8>>::baz}`
50 help: use parentheses to call this associated function
52 LL | let x: () = <i8 as Foo<'static, 'static, u8>>::baz();
55 error[E0308]: mismatched types
56 --> $DIR/substs-ppaux.rs:41:17
58 LL | fn foo<'z>() where &'z (): Sized {
59 | -------------------------------- fn() {foo::<'static>} defined here
61 LL | let x: () = foo::<'static>;
62 | -- ^^^^^^^^^^^^^^ expected `()`, found fn item
64 | expected due to this
66 = note: expected unit type `()`
67 found fn item `fn() {foo::<'static>}`
68 help: use parentheses to call this function
70 LL | let x: () = foo::<'static>();
73 error[E0277]: the size for values of type `str` cannot be known at compilation time
74 --> $DIR/substs-ppaux.rs:49:5
76 LL | <str as Foo<u8>>::bar;
77 | ^^^^^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time
79 = help: the trait `Sized` is not implemented for `str`
80 note: required for `str` to implement `Foo<'_, '_, u8>`
81 --> $DIR/substs-ppaux.rs:11:17
83 LL | impl<'a,'b,T,S> Foo<'a, 'b, S> for T {}
86 error: aborting due to 5 previous errors
88 Some errors have detailed explanations: E0277, E0308.
89 For more information about an error, try `rustc --explain E0277`.