blob: 4470e287cc36ddfcaf43cd0d89008360afa8a790 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
error[E0277]: the trait bound `(): ~const Tr` is not satisfied in `fn(()) -> i32 {<() as Tr>::a}`
--> $DIR/const-closure-trait-method-fail.rs:16:42
|
LL | const _: () = assert!(need_const_closure(Tr::a) == 42);
| ------------------ ^^^^^ within `fn(()) -> i32 {<() as Tr>::a}`, the trait `~const Tr` is not implemented for `()`
| |
| required by a bound introduced by this call
|
note: the trait `Tr` is implemented for `()`, but that implementation is not `const`
--> $DIR/const-closure-trait-method-fail.rs:16:42
|
LL | const _: () = assert!(need_const_closure(Tr::a) == 42);
| ^^^^^
= note: required because it appears within the type `fn(()) -> i32 {<() as Tr>::a}`
note: required by a bound in `need_const_closure`
--> $DIR/const-closure-trait-method-fail.rs:12:32
|
LL | const fn need_const_closure<T: ~const FnOnce(()) -> i32>(x: T) -> i32 {
| ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `need_const_closure`
error: aborting due to previous error
For more information about this error, try `rustc --explain E0277`.
|