mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-30 18:53:39 +00:00
20 lines
307 B
Rust
20 lines
307 B
Rust
// check-pass
|
|
#![feature(const_trait_impl)]
|
|
|
|
#[const_trait]
|
|
trait Tr {
|
|
fn a(self) -> i32;
|
|
}
|
|
|
|
impl const Tr for () {
|
|
fn a(self) -> i32 { 42 }
|
|
}
|
|
|
|
const fn need_const_closure<T: ~const FnOnce(()) -> i32>(x: T) -> i32 {
|
|
x(())
|
|
}
|
|
|
|
const _: () = assert!(need_const_closure(Tr::a) == 42);
|
|
|
|
fn main() {}
|