mirror of
				https://github.com/rust-lang/rust.git
				synced 2025-11-04 06:56:14 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			63 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			63 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
error: `Self` is not valid in the self type of an impl block
 | 
						|
  --> $DIR/resolve-self-in-impl.rs:16:6
 | 
						|
   |
 | 
						|
LL | impl Self {}
 | 
						|
   |      ^^^^
 | 
						|
   |
 | 
						|
   = note: replace `Self` with a different type
 | 
						|
 | 
						|
error: `Self` is not valid in the self type of an impl block
 | 
						|
  --> $DIR/resolve-self-in-impl.rs:17:8
 | 
						|
   |
 | 
						|
LL | impl S<Self> {}
 | 
						|
   |        ^^^^
 | 
						|
   |
 | 
						|
   = note: replace `Self` with a different type
 | 
						|
 | 
						|
error: `Self` is not valid in the self type of an impl block
 | 
						|
  --> $DIR/resolve-self-in-impl.rs:18:7
 | 
						|
   |
 | 
						|
LL | impl (Self, Self) {}
 | 
						|
   |       ^^^^  ^^^^
 | 
						|
   |
 | 
						|
   = note: replace `Self` with a different type
 | 
						|
 | 
						|
error: `Self` is not valid in the self type of an impl block
 | 
						|
  --> $DIR/resolve-self-in-impl.rs:14:13
 | 
						|
   |
 | 
						|
LL | impl Tr for Self {}
 | 
						|
   |             ^^^^
 | 
						|
   |
 | 
						|
   = note: replace `Self` with a different type
 | 
						|
 | 
						|
error: `Self` is not valid in the self type of an impl block
 | 
						|
  --> $DIR/resolve-self-in-impl.rs:15:15
 | 
						|
   |
 | 
						|
LL | impl Tr for S<Self> {}
 | 
						|
   |               ^^^^
 | 
						|
   |
 | 
						|
   = note: replace `Self` with a different type
 | 
						|
 | 
						|
error[E0391]: cycle detected when computing trait implemented by `<impl at $DIR/resolve-self-in-impl.rs:19:1: 19:23>`
 | 
						|
  --> $DIR/resolve-self-in-impl.rs:19:1
 | 
						|
   |
 | 
						|
LL | impl Tr<Self::A> for S {}
 | 
						|
   | ^^^^^^^^^^^^^^^^^^^^^^
 | 
						|
   |
 | 
						|
   = note: ...which immediately requires computing trait implemented by `<impl at $DIR/resolve-self-in-impl.rs:19:1: 19:23>` again
 | 
						|
note: cycle used when collecting item types in top-level module
 | 
						|
  --> $DIR/resolve-self-in-impl.rs:1:1
 | 
						|
   |
 | 
						|
LL | / #![feature(associated_type_defaults)]
 | 
						|
LL | |
 | 
						|
LL | | struct S<T = u8>(T);
 | 
						|
LL | | trait Tr<T = u8> {
 | 
						|
...  |
 | 
						|
LL | |
 | 
						|
LL | | fn main() {}
 | 
						|
   | |____________^
 | 
						|
 | 
						|
error: aborting due to 6 previous errors
 | 
						|
 | 
						|
For more information about this error, try `rustc --explain E0391`.
 |