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<ReStatic, ReStatic, u8>>::bar::<ReStatic, 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<ReStatic, ReStatic, u8>>::bar::<ReStatic, char>}`
14 help: use parentheses to call this 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<ReStatic, ReStatic>>::bar::<ReStatic, 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<ReStatic, ReStatic>>::bar::<ReStatic, char>}`
32 help: use parentheses to call this 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<ReStatic, ReStatic, 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<ReStatic, ReStatic, u8>>::baz}`
50 help: use parentheses to call this 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::<ReStatic>} 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::<ReStatic>}`
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 because of the requirements on the impl of `Foo<'_#0r, '_#1r, u8>` for `str`
81 --> $DIR/substs-ppaux.rs:11:17
83 LL | impl<'a,'b,T,S> Foo<'a, 'b, S> for T {}
85 note: required by a bound in `Foo::bar`
86 --> $DIR/substs-ppaux.rs:7:30
88 LL | fn bar<'a, T>() where T: 'a {}
89 | ^^ required by this bound in `Foo::bar`
91 error: aborting due to 5 previous errors
93 Some errors have detailed explanations: E0277, E0308.
94 For more information about an error, try `rustc --explain E0277`.