1 error[E0308]: mismatched types
2 --> $DIR/substs-ppaux.rs:16:17
4 LL | let x: () = <i8 as Foo<'static, 'static, u8>>::bar::<'static, char>;
5 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected (), found fn item
7 = note: expected type `()`
8 found type `fn() {<i8 as Foo<'static, 'static, u8>>::bar::<'static, char>}`
10 error[E0308]: mismatched types
11 --> $DIR/substs-ppaux.rs:25:17
13 LL | let x: () = <i8 as Foo<'static, 'static, u32>>::bar::<'static, char>;
14 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected (), found fn item
16 = note: expected type `()`
17 found type `fn() {<i8 as Foo<'static, 'static>>::bar::<'static, char>}`
19 error[E0308]: mismatched types
20 --> $DIR/substs-ppaux.rs:33:17
22 LL | let x: () = <i8 as Foo<'static, 'static, u8>>::baz;
23 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected (), found fn item
25 = note: expected type `()`
26 found type `fn() {<i8 as Foo<'static, 'static, u8>>::baz}`
28 error[E0308]: mismatched types
29 --> $DIR/substs-ppaux.rs:41:17
31 LL | let x: () = foo::<'static>;
32 | ^^^^^^^^^^^^^^ expected (), found fn item
34 = note: expected type `()`
35 found type `fn() {foo::<'static>}`
37 error[E0277]: the size for values of type `str` cannot be known at compilation time
38 --> $DIR/substs-ppaux.rs:49:5
40 LL | <str as Foo<u8>>::bar;
41 | ^^^^^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time
43 = help: the trait `std::marker::Sized` is not implemented for `str`
44 = note: to learn more, visit <https://doc.rust-lang.org/book/second-edition/ch19-04-advanced-types.html#dynamically-sized-types-and-the-sized-trait>
45 = note: required because of the requirements on the impl of `Foo<'_, '_, u8>` for `str`
46 note: required by `Foo::bar`
47 --> $DIR/substs-ppaux.rs:7:5
49 LL | fn bar<'a, T>() where T: 'a {}
50 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
52 error: aborting due to 5 previous errors
54 Some errors occurred: E0277, E0308.
55 For more information about an error, try `rustc --explain E0277`.