mirror of
				https://github.com/rust-lang/rust.git
				synced 2025-11-04 06:56:14 +00:00 
			
		
		
		
	This has now been approved as a language feature and no longer needs a `rustc_` prefix. Also change the `contracts` feature to be marked as incomplete and `contracts_internals` as internal.
		
			
				
	
	
		
			54 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
error: contract annotations can only be used on functions
 | 
						|
  --> $DIR/disallow-contract-annotation-on-non-fn.rs:7:1
 | 
						|
   |
 | 
						|
LL | #[core::contracts::requires(true)]
 | 
						|
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 | 
						|
 | 
						|
error: contract annotations can only be used on functions
 | 
						|
  --> $DIR/disallow-contract-annotation-on-non-fn.rs:11:1
 | 
						|
   |
 | 
						|
LL | #[core::contracts::ensures(|v| v == 100)]
 | 
						|
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 | 
						|
 | 
						|
error: contract annotations is only supported in functions with bodies
 | 
						|
  --> $DIR/disallow-contract-annotation-on-non-fn.rs:16:1
 | 
						|
   |
 | 
						|
LL | #[core::contracts::ensures(|v| v == 100)]
 | 
						|
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 | 
						|
 | 
						|
error: contract annotations is only supported in functions with bodies
 | 
						|
  --> $DIR/disallow-contract-annotation-on-non-fn.rs:20:1
 | 
						|
   |
 | 
						|
LL | #[core::contracts::ensures(|v| v == 100)]
 | 
						|
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 | 
						|
 | 
						|
error: contract annotations can only be used on functions
 | 
						|
  --> $DIR/disallow-contract-annotation-on-non-fn.rs:24:1
 | 
						|
   |
 | 
						|
LL | #[core::contracts::requires(true)]
 | 
						|
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 | 
						|
 | 
						|
error: contract annotations can only be used on functions
 | 
						|
  --> $DIR/disallow-contract-annotation-on-non-fn.rs:35:1
 | 
						|
   |
 | 
						|
LL | #[core::contracts::ensures(|dummy| dummy.0 > 0)]
 | 
						|
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 | 
						|
 | 
						|
error: contract annotations can only be used on functions
 | 
						|
  --> $DIR/disallow-contract-annotation-on-non-fn.rs:46:1
 | 
						|
   |
 | 
						|
LL | #[core::contracts::requires(true)]
 | 
						|
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 | 
						|
 | 
						|
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
 | 
						|
  --> $DIR/disallow-contract-annotation-on-non-fn.rs:3:12
 | 
						|
   |
 | 
						|
LL | #![feature(contracts)]
 | 
						|
   |            ^^^^^^^^^
 | 
						|
   |
 | 
						|
   = note: see issue #128044 <https://github.com/rust-lang/rust/issues/128044> for more information
 | 
						|
   = note: `#[warn(incomplete_features)]` on by default
 | 
						|
 | 
						|
error: aborting due to 7 previous errors; 1 warning emitted
 | 
						|
 |