mirror of
				https://github.com/rust-lang/rust.git
				synced 2025-11-04 06:56:14 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			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() {}
 |