mirror of https://github.com/rust-lang/rust
29 lines
686 B
Rust
29 lines
686 B
Rust
// Test successful and unsuccessful parsing of the `default` contextual keyword
|
|
|
|
#![feature(specialization)]
|
|
//~^ WARN the feature `specialization` is incomplete
|
|
|
|
trait Foo {
|
|
fn foo<T: Default>() -> T;
|
|
}
|
|
|
|
impl Foo for u8 {
|
|
default fn foo<T: Default>() -> T {
|
|
T::default()
|
|
}
|
|
}
|
|
|
|
impl Foo for u16 {
|
|
pub default fn foo<T: Default>() -> T { //~ ERROR visibility qualifiers are not permitted here
|
|
T::default()
|
|
}
|
|
}
|
|
|
|
impl Foo for u32 { //~ ERROR not all trait items implemented, missing: `foo`
|
|
default pub fn foo<T: Default>() -> T { T::default() }
|
|
//~^ ERROR `default` is not followed by an item
|
|
//~| ERROR non-item in item list
|
|
}
|
|
|
|
fn main() {}
|