mirror of
				https://github.com/rust-lang/rust.git
				synced 2025-10-30 20:44:34 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			26 lines
		
	
	
		
			773 B
		
	
	
	
		
			Rust
		
	
	
	
	
	
			
		
		
	
	
			26 lines
		
	
	
		
			773 B
		
	
	
	
		
			Rust
		
	
	
	
	
	
| #[derive(Copy, Clone, Debug, Hash, PartialEq, Eq)]
 | |
| enum E {
 | |
|     V { field: bool },
 | |
|     I { field1: bool, field2: usize },
 | |
|     J { field: isize },
 | |
|     K { field: &'static str},
 | |
| }
 | |
| fn test_E(x: E) {
 | |
|     let field = true;
 | |
|     if x == E::V { field } {}
 | |
|     //~^ ERROR expected value, found struct variant `E::V`
 | |
|     //~| ERROR mismatched types
 | |
|     if x == E::I { field1: true, field2: 42 } {}
 | |
|     //~^ ERROR struct literals are not allowed here
 | |
|     if x == E::V { field: false } {}
 | |
|     //~^ ERROR struct literals are not allowed here
 | |
|     if x == E::J { field: -42 } {}
 | |
|     //~^ ERROR struct literals are not allowed here
 | |
|     if x == E::K { field: "" } {}
 | |
|     //~^ ERROR struct literals are not allowed here
 | |
|     let y: usize = ();
 | |
|     //~^ ERROR mismatched types
 | |
| }
 | |
| 
 | |
| fn main() {}
 | 
