1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
#![feature(const_trait_impl, effects)]
const fn foo() {}
#[const_trait]
trait Bar {
fn bar();
}
impl Bar for () {
fn bar() {}
}
fn main() {
foo::<true>();
//~^ ERROR: function takes 0 generic arguments but 1 generic argument was supplied
<() as Bar<true>>::bar();
//~^ ERROR: trait takes 0 generic arguments but 1 generic argument was supplied
}
const FOO: () = {
foo::<false>();
//~^ ERROR: function takes 0 generic arguments but 1 generic argument was supplied
<() as Bar<false>>::bar();
//~^ ERROR: trait takes 0 generic arguments but 1 generic argument was supplied
//~| ERROR: mismatched types
};
|