blob: 85a943c26e2d5219dd504f40b1722283b356f67a [file] [log] [blame]
error[E0308]: mismatched types
--> $DIR/issue-77179.rs:9:5
|
LL | type Pointer<T> = impl std::ops::Deref<Target = T>;
| -------------------------------- the expected opaque type
LL |
LL | fn test() -> Pointer<_> {
| ---------- expected `Pointer<_>` because of return type
LL |
LL | Box::new(1)
| ^^^^^^^^^^^ expected opaque type, found `Box<{integer}>`
|
= note: expected opaque type `Pointer<_>`
found struct `Box<{integer}>`
note: this item must have the opaque type in its signature in order to be able to register hidden types
--> $DIR/issue-77179.rs:7:4
|
LL | fn test() -> Pointer<_> {
| ^^^^
error[E0121]: the placeholder `_` is not allowed within types on item signatures for return types
--> $DIR/issue-77179.rs:7:22
|
LL | fn test() -> Pointer<_> {
| ^ not allowed in type signatures
error[E0121]: the placeholder `_` is not allowed within types on item signatures for functions
--> $DIR/issue-77179.rs:18:25
|
LL | fn bar() -> Pointer<_>;
| ^
| |
| not allowed in type signatures
| help: use type parameters instead: `T`
error: aborting due to 3 previous errors
Some errors have detailed explanations: E0121, E0308.
For more information about an error, try `rustc --explain E0121`.