error[E0308]: mismatched types --> $DIR/substs-ppaux.rs:25:17 | LL | let x: () = >::bar::<'static, char>; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected (), found fn item | = note: expected type `()` found type `fn() {>::bar::}` error[E0308]: mismatched types --> $DIR/substs-ppaux.rs:34:17 | LL | let x: () = >::bar::<'static, char>; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected (), found fn item | = note: expected type `()` found type `fn() {>::bar::}` error[E0308]: mismatched types --> $DIR/substs-ppaux.rs:42:17 | LL | let x: () = >::baz; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected (), found fn item | = note: expected type `()` found type `fn() {>::baz}` error[E0308]: mismatched types --> $DIR/substs-ppaux.rs:50:17 | LL | let x: () = foo::<'static>; | ^^^^^^^^^^^^^^ expected (), found fn item | = note: expected type `()` found type `fn() {foo::}` error[E0277]: the size for values of type `str` cannot be known at compilation time --> $DIR/substs-ppaux.rs:58:5 | LL | >::bar; | ^^^^^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time | = help: the trait `std::marker::Sized` is not implemented for `str` = note: to learn more, visit = note: required because of the requirements on the impl of `Foo<'_#0r, '_#1r, u8>` for `str` note: required by `Foo::bar` --> $DIR/substs-ppaux.rs:16:5 | LL | fn bar<'a, T>() where T: 'a {} | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ error: aborting due to 5 previous errors Some errors occurred: E0277, E0308. For more information about an error, try `rustc --explain E0277`.