mirror of
				https://github.com/rust-lang/rust.git
				synced 2025-10-31 13:04:42 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			231 lines
		
	
	
		
			8.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			231 lines
		
	
	
		
			8.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| error: only foreign, `unsafe extern "C"`, or `unsafe extern "C-unwind"` functions may have a C-variadic arg
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:6:19
 | |
|    |
 | |
| LL | fn f1_1(x: isize, ...) {}
 | |
|    |                   ^^^
 | |
| 
 | |
| error: only foreign, `unsafe extern "C"`, or `unsafe extern "C-unwind"` functions may have a C-variadic arg
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:9:9
 | |
|    |
 | |
| LL | fn f1_2(...) {}
 | |
|    |         ^^^
 | |
| 
 | |
| error: only foreign, `unsafe extern "C"`, or `unsafe extern "C-unwind"` functions may have a C-variadic arg
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:12:30
 | |
|    |
 | |
| LL | extern "C" fn f2_1(x: isize, ...) {}
 | |
|    |                              ^^^
 | |
| 
 | |
| error: only foreign, `unsafe extern "C"`, or `unsafe extern "C-unwind"` functions may have a C-variadic arg
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:15:20
 | |
|    |
 | |
| LL | extern "C" fn f2_2(...) {}
 | |
|    |                    ^^^
 | |
| 
 | |
| error: `...` must be the last argument of a C-variadic function
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:18:20
 | |
|    |
 | |
| LL | extern "C" fn f2_3(..., x: isize) {}
 | |
|    |                    ^^^
 | |
| 
 | |
| error: only foreign, `unsafe extern "C"`, or `unsafe extern "C-unwind"` functions may have a C-variadic arg
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:18:20
 | |
|    |
 | |
| LL | extern "C" fn f2_3(..., x: isize) {}
 | |
|    |                    ^^^
 | |
| 
 | |
| error: only foreign, `unsafe extern "C"`, or `unsafe extern "C-unwind"` functions may have a C-variadic arg
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:22:30
 | |
|    |
 | |
| LL | extern "C" fn f3_1(x: isize, ...) {}
 | |
|    |                              ^^^
 | |
| 
 | |
| error: only foreign, `unsafe extern "C"`, or `unsafe extern "C-unwind"` functions may have a C-variadic arg
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:25:20
 | |
|    |
 | |
| LL | extern "C" fn f3_2(...) {}
 | |
|    |                    ^^^
 | |
| 
 | |
| error: `...` must be the last argument of a C-variadic function
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:28:20
 | |
|    |
 | |
| LL | extern "C" fn f3_3(..., x: isize) {}
 | |
|    |                    ^^^
 | |
| 
 | |
| error: only foreign, `unsafe extern "C"`, or `unsafe extern "C-unwind"` functions may have a C-variadic arg
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:28:20
 | |
|    |
 | |
| LL | extern "C" fn f3_3(..., x: isize) {}
 | |
|    |                    ^^^
 | |
| 
 | |
| error: functions cannot be both `const` and C-variadic
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:32:1
 | |
|    |
 | |
| LL | const unsafe extern "C" fn f4_1(x: isize, ...) {}
 | |
|    | ^^^^^ `const` because of this             ^^^ C-variadic because of this
 | |
| 
 | |
| error: functions cannot be both `const` and C-variadic
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:36:1
 | |
|    |
 | |
| LL | const extern "C" fn f4_2(x: isize, ...) {}
 | |
|    | ^^^^^ `const` because of this      ^^^ C-variadic because of this
 | |
| 
 | |
| error: only foreign, `unsafe extern "C"`, or `unsafe extern "C-unwind"` functions may have a C-variadic arg
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:36:36
 | |
|    |
 | |
| LL | const extern "C" fn f4_2(x: isize, ...) {}
 | |
|    |                                    ^^^
 | |
| 
 | |
| error: `...` must be the last argument of a C-variadic function
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:41:26
 | |
|    |
 | |
| LL | const extern "C" fn f4_3(..., x: isize, ...) {}
 | |
|    |                          ^^^
 | |
| 
 | |
| error: functions cannot be both `const` and C-variadic
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:41:1
 | |
|    |
 | |
| LL | const extern "C" fn f4_3(..., x: isize, ...) {}
 | |
|    | ^^^^^                    ^^^            ^^^ C-variadic because of this
 | |
|    | |                        |
 | |
|    | |                        C-variadic because of this
 | |
|    | `const` because of this
 | |
| 
 | |
| error: only foreign, `unsafe extern "C"`, or `unsafe extern "C-unwind"` functions may have a C-variadic arg
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:41:26
 | |
|    |
 | |
| LL | const extern "C" fn f4_3(..., x: isize, ...) {}
 | |
|    |                          ^^^            ^^^
 | |
| 
 | |
| error: `...` must be the last argument of a C-variadic function
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:47:13
 | |
|    |
 | |
| LL |     fn e_f2(..., x: isize);
 | |
|    |             ^^^
 | |
| 
 | |
| error: only foreign, `unsafe extern "C"`, or `unsafe extern "C-unwind"` functions may have a C-variadic arg
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:54:23
 | |
|    |
 | |
| LL |     fn i_f1(x: isize, ...) {}
 | |
|    |                       ^^^
 | |
| 
 | |
| error: only foreign, `unsafe extern "C"`, or `unsafe extern "C-unwind"` functions may have a C-variadic arg
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:56:13
 | |
|    |
 | |
| LL |     fn i_f2(...) {}
 | |
|    |             ^^^
 | |
| 
 | |
| error: `...` must be the last argument of a C-variadic function
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:58:13
 | |
|    |
 | |
| LL |     fn i_f3(..., x: isize, ...) {}
 | |
|    |             ^^^
 | |
| 
 | |
| error: only foreign, `unsafe extern "C"`, or `unsafe extern "C-unwind"` functions may have a C-variadic arg
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:58:13
 | |
|    |
 | |
| LL |     fn i_f3(..., x: isize, ...) {}
 | |
|    |             ^^^            ^^^
 | |
| 
 | |
| error: `...` must be the last argument of a C-variadic function
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:61:13
 | |
|    |
 | |
| LL |     fn i_f4(..., x: isize, ...) {}
 | |
|    |             ^^^
 | |
| 
 | |
| error: only foreign, `unsafe extern "C"`, or `unsafe extern "C-unwind"` functions may have a C-variadic arg
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:61:13
 | |
|    |
 | |
| LL |     fn i_f4(..., x: isize, ...) {}
 | |
|    |             ^^^            ^^^
 | |
| 
 | |
| error: functions cannot be both `const` and C-variadic
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:64:5
 | |
|    |
 | |
| LL |     const fn i_f5(x: isize, ...) {}
 | |
|    |     ^^^^^                   ^^^ C-variadic because of this
 | |
|    |     |
 | |
|    |     `const` because of this
 | |
| 
 | |
| error: only foreign, `unsafe extern "C"`, or `unsafe extern "C-unwind"` functions may have a C-variadic arg
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:64:29
 | |
|    |
 | |
| LL |     const fn i_f5(x: isize, ...) {}
 | |
|    |                             ^^^
 | |
| 
 | |
| error: only foreign, `unsafe extern "C"`, or `unsafe extern "C-unwind"` functions may have a C-variadic arg
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:71:23
 | |
|    |
 | |
| LL |     fn t_f1(x: isize, ...) {}
 | |
|    |                       ^^^
 | |
| 
 | |
| error: only foreign, `unsafe extern "C"`, or `unsafe extern "C-unwind"` functions may have a C-variadic arg
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:73:23
 | |
|    |
 | |
| LL |     fn t_f2(x: isize, ...);
 | |
|    |                       ^^^
 | |
| 
 | |
| error: only foreign, `unsafe extern "C"`, or `unsafe extern "C-unwind"` functions may have a C-variadic arg
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:75:13
 | |
|    |
 | |
| LL |     fn t_f3(...) {}
 | |
|    |             ^^^
 | |
| 
 | |
| error: only foreign, `unsafe extern "C"`, or `unsafe extern "C-unwind"` functions may have a C-variadic arg
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:77:13
 | |
|    |
 | |
| LL |     fn t_f4(...);
 | |
|    |             ^^^
 | |
| 
 | |
| error: `...` must be the last argument of a C-variadic function
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:79:13
 | |
|    |
 | |
| LL |     fn t_f5(..., x: isize) {}
 | |
|    |             ^^^
 | |
| 
 | |
| error: only foreign, `unsafe extern "C"`, or `unsafe extern "C-unwind"` functions may have a C-variadic arg
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:79:13
 | |
|    |
 | |
| LL |     fn t_f5(..., x: isize) {}
 | |
|    |             ^^^
 | |
| 
 | |
| error: `...` must be the last argument of a C-variadic function
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:82:13
 | |
|    |
 | |
| LL |     fn t_f6(..., x: isize);
 | |
|    |             ^^^
 | |
| 
 | |
| error: only foreign, `unsafe extern "C"`, or `unsafe extern "C-unwind"` functions may have a C-variadic arg
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:82:13
 | |
|    |
 | |
| LL |     fn t_f6(..., x: isize);
 | |
|    |             ^^^
 | |
| 
 | |
| error[E0493]: destructor of `VaListImpl<'_>` cannot be evaluated at compile-time
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:32:43
 | |
|    |
 | |
| LL | const unsafe extern "C" fn f4_1(x: isize, ...) {}
 | |
|    |                                           ^^^   - value is dropped here
 | |
|    |                                           |
 | |
|    |                                           the destructor for this type cannot be evaluated in constant functions
 | |
| 
 | |
| error[E0493]: destructor of `VaListImpl<'_>` cannot be evaluated at compile-time
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:36:36
 | |
|    |
 | |
| LL | const extern "C" fn f4_2(x: isize, ...) {}
 | |
|    |                                    ^^^   - value is dropped here
 | |
|    |                                    |
 | |
|    |                                    the destructor for this type cannot be evaluated in constant functions
 | |
| 
 | |
| error[E0493]: destructor of `VaListImpl<'_>` cannot be evaluated at compile-time
 | |
|   --> $DIR/variadic-ffi-semantic-restrictions.rs:64:29
 | |
|    |
 | |
| LL |     const fn i_f5(x: isize, ...) {}
 | |
|    |                             ^^^   - value is dropped here
 | |
|    |                             |
 | |
|    |                             the destructor for this type cannot be evaluated in constant functions
 | |
| 
 | |
| error: aborting due to 36 previous errors
 | |
| 
 | |
| For more information about this error, try `rustc --explain E0493`.
 | 
