mirror of
				https://github.com/rust-lang/rust.git
				synced 2025-11-04 06:56:14 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			20 lines
		
	
	
		
			497 B
		
	
	
	
		
			Rust
		
	
	
	
	
	
			
		
		
	
	
			20 lines
		
	
	
		
			497 B
		
	
	
	
		
			Rust
		
	
	
	
	
	
// Issue 62307 pointed out a case where the structural-match checking
 | 
						|
// was too shallow.
 | 
						|
//
 | 
						|
// Here we check similar behavior for non-empty arrays of types that
 | 
						|
// do not derive `Eq`.
 | 
						|
//
 | 
						|
// (Current behavior for empty arrays differs and thus is not tested
 | 
						|
// here; see rust-lang/rust#62336.)
 | 
						|
 | 
						|
#[derive(PartialEq, Debug)]
 | 
						|
struct B(i32);
 | 
						|
 | 
						|
fn main() {
 | 
						|
    const FOO: [B; 1] = [B(0)];
 | 
						|
    match [B(1)] {
 | 
						|
        FOO => { }
 | 
						|
        //~^ ERROR must be annotated with `#[derive(PartialEq, Eq)]`
 | 
						|
    }
 | 
						|
}
 |