263 lines
12 KiB
Plaintext
263 lines
12 KiB
Plaintext
warning: `extern` block uses type `Option<TransparentNoNiche>`, which is not FFI-safe
|
|
--> $DIR/clashing-extern-fn.rs:482:55
|
|
|
|
|
LL | fn hidden_niche_transparent_no_niche() -> Option<TransparentNoNiche>;
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
|
|
|
|
|
= help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
|
|
= note: enum has no representation hint
|
|
= note: `#[warn(improper_ctypes)]` on by default
|
|
|
|
warning: `extern` block uses type `Option<UnsafeCell<NonZero<usize>>>`, which is not FFI-safe
|
|
--> $DIR/clashing-extern-fn.rs:486:46
|
|
|
|
|
LL | fn hidden_niche_unsafe_cell() -> Option<UnsafeCell<NonZero<usize>>>;
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
|
|
|
|
|
= help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
|
|
= note: enum has no representation hint
|
|
|
|
warning: `clash` redeclared with a different signature
|
|
--> $DIR/clashing-extern-fn.rs:13:13
|
|
|
|
|
LL | fn clash(x: u8);
|
|
| ---------------- `clash` previously declared here
|
|
...
|
|
LL | fn clash(x: u64);
|
|
| ^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
|
|
|
|
|
= note: expected `unsafe extern "C" fn(u8)`
|
|
found `unsafe extern "C" fn(u64)`
|
|
= note: `#[warn(clashing_extern_declarations)]` on by default
|
|
|
|
warning: `extern_link_name` redeclared with a different signature
|
|
--> $DIR/clashing-extern-fn.rs:51:9
|
|
|
|
|
LL | #[link_name = "extern_link_name"]
|
|
| --------------------------------- `extern_link_name` previously declared here
|
|
...
|
|
LL | fn extern_link_name(x: u32);
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
|
|
|
|
|
= note: expected `unsafe extern "C" fn(i16)`
|
|
found `unsafe extern "C" fn(u32)`
|
|
|
|
warning: `some_other_extern_link_name` redeclares `some_other_new_name` with a different signature
|
|
--> $DIR/clashing-extern-fn.rs:54:9
|
|
|
|
|
LL | fn some_other_new_name(x: i16);
|
|
| ------------------------------- `some_other_new_name` previously declared here
|
|
...
|
|
LL | #[link_name = "some_other_new_name"]
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
|
|
|
|
|
= note: expected `unsafe extern "C" fn(i16)`
|
|
found `unsafe extern "C" fn(u32)`
|
|
|
|
warning: `other_both_names_different` redeclares `link_name_same` with a different signature
|
|
--> $DIR/clashing-extern-fn.rs:58:9
|
|
|
|
|
LL | #[link_name = "link_name_same"]
|
|
| ------------------------------- `link_name_same` previously declared here
|
|
...
|
|
LL | #[link_name = "link_name_same"]
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
|
|
|
|
|
= note: expected `unsafe extern "C" fn(i16)`
|
|
found `unsafe extern "C" fn(u32)`
|
|
|
|
warning: `different_mod` redeclared with a different signature
|
|
--> $DIR/clashing-extern-fn.rs:71:9
|
|
|
|
|
LL | fn different_mod(x: u8);
|
|
| ------------------------ `different_mod` previously declared here
|
|
...
|
|
LL | fn different_mod(x: u64);
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
|
|
|
|
|
= note: expected `unsafe extern "C" fn(u8)`
|
|
found `unsafe extern "C" fn(u64)`
|
|
|
|
warning: `variadic_decl` redeclared with a different signature
|
|
--> $DIR/clashing-extern-fn.rs:81:9
|
|
|
|
|
LL | fn variadic_decl(x: u8, ...);
|
|
| ----------------------------- `variadic_decl` previously declared here
|
|
...
|
|
LL | fn variadic_decl(x: u8);
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
|
|
|
|
|
= note: expected `unsafe extern "C" fn(u8, ...)`
|
|
found `unsafe extern "C" fn(u8)`
|
|
|
|
warning: `weigh_banana` redeclared with a different signature
|
|
--> $DIR/clashing-extern-fn.rs:141:13
|
|
|
|
|
LL | fn weigh_banana(count: *const Banana) -> u64;
|
|
| --------------------------------------------- `weigh_banana` previously declared here
|
|
...
|
|
LL | fn weigh_banana(count: *const Banana) -> u64;
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
|
|
|
|
|
= note: expected `unsafe extern "C" fn(*const banana::one::Banana) -> u64`
|
|
found `unsafe extern "C" fn(*const banana::three::Banana) -> u64`
|
|
|
|
warning: `weigh_banana` redeclared with a different signature
|
|
--> $DIR/clashing-extern-fn.rs:154:13
|
|
|
|
|
LL | fn weigh_banana(count: *const Banana) -> u64;
|
|
| --------------------------------------------- `weigh_banana` previously declared here
|
|
...
|
|
LL | fn weigh_banana(count: *const Banana) -> u64;
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
|
|
|
|
|
= note: expected `unsafe extern "C" fn(*const banana::one::Banana) -> u64`
|
|
found `unsafe extern "C" fn(*const banana::four::Banana) -> u64`
|
|
|
|
warning: `weigh_banana3` redeclared with a different signature
|
|
--> $DIR/clashing-extern-fn.rs:200:13
|
|
|
|
|
LL | fn weigh_banana3(count: *const Banana) -> u64;
|
|
| ---------------------------------------------- `weigh_banana3` previously declared here
|
|
...
|
|
LL | fn weigh_banana3(count: *const Banana) -> u64;
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
|
|
|
|
|
= note: expected `unsafe extern "C" fn(*const banana3::one::Banana) -> u64`
|
|
found `unsafe extern "C" fn(*const banana3::three::Banana) -> u64`
|
|
|
|
warning: `weigh_banana3` redeclared with a different signature
|
|
--> $DIR/clashing-extern-fn.rs:214:13
|
|
|
|
|
LL | fn weigh_banana3(count: *const Banana) -> u64;
|
|
| ---------------------------------------------- `weigh_banana3` previously declared here
|
|
...
|
|
LL | fn weigh_banana3(count: *const Banana) -> u64;
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
|
|
|
|
|
= note: expected `unsafe extern "C" fn(*const banana3::one::Banana) -> u64`
|
|
found `unsafe extern "C" fn(*const banana3::four::Banana) -> u64`
|
|
|
|
warning: `draw_point` redeclared with a different signature
|
|
--> $DIR/clashing-extern-fn.rs:243:13
|
|
|
|
|
LL | fn draw_point(p: Point);
|
|
| ------------------------ `draw_point` previously declared here
|
|
...
|
|
LL | fn draw_point(p: Point);
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
|
|
|
|
|
= note: expected `unsafe extern "C" fn(sameish_members::a::Point)`
|
|
found `unsafe extern "C" fn(sameish_members::b::Point)`
|
|
|
|
warning: `origin` redeclared with a different signature
|
|
--> $DIR/clashing-extern-fn.rs:269:13
|
|
|
|
|
LL | fn origin() -> Point3;
|
|
| ---------------------- `origin` previously declared here
|
|
...
|
|
LL | fn origin() -> Point3;
|
|
| ^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
|
|
|
|
|
= note: expected `unsafe extern "C" fn() -> same_sized_members_clash::a::Point3`
|
|
found `unsafe extern "C" fn() -> same_sized_members_clash::b::Point3`
|
|
|
|
warning: `transparent_incorrect` redeclared with a different signature
|
|
--> $DIR/clashing-extern-fn.rs:292:13
|
|
|
|
|
LL | fn transparent_incorrect() -> T;
|
|
| -------------------------------- `transparent_incorrect` previously declared here
|
|
...
|
|
LL | fn transparent_incorrect() -> isize;
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
|
|
|
|
|
= note: expected `unsafe extern "C" fn() -> T`
|
|
found `unsafe extern "C" fn() -> isize`
|
|
|
|
warning: `missing_return_type` redeclared with a different signature
|
|
--> $DIR/clashing-extern-fn.rs:310:13
|
|
|
|
|
LL | fn missing_return_type() -> usize;
|
|
| ---------------------------------- `missing_return_type` previously declared here
|
|
...
|
|
LL | fn missing_return_type();
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
|
|
|
|
|
= note: expected `unsafe extern "C" fn() -> usize`
|
|
found `unsafe extern "C" fn()`
|
|
|
|
warning: `non_zero_usize` redeclared with a different signature
|
|
--> $DIR/clashing-extern-fn.rs:328:13
|
|
|
|
|
LL | fn non_zero_usize() -> core::num::NonZero<usize>;
|
|
| ------------------------------------------------- `non_zero_usize` previously declared here
|
|
...
|
|
LL | fn non_zero_usize() -> usize;
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
|
|
|
|
|
= note: expected `unsafe extern "C" fn() -> NonZero<usize>`
|
|
found `unsafe extern "C" fn() -> usize`
|
|
|
|
warning: `non_null_ptr` redeclared with a different signature
|
|
--> $DIR/clashing-extern-fn.rs:330:13
|
|
|
|
|
LL | fn non_null_ptr() -> core::ptr::NonNull<usize>;
|
|
| ----------------------------------------------- `non_null_ptr` previously declared here
|
|
...
|
|
LL | fn non_null_ptr() -> *const usize;
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
|
|
|
|
|
= note: expected `unsafe extern "C" fn() -> NonNull<usize>`
|
|
found `unsafe extern "C" fn() -> *const usize`
|
|
|
|
warning: `option_non_zero_usize_incorrect` redeclared with a different signature
|
|
--> $DIR/clashing-extern-fn.rs:424:13
|
|
|
|
|
LL | fn option_non_zero_usize_incorrect() -> usize;
|
|
| ---------------------------------------------- `option_non_zero_usize_incorrect` previously declared here
|
|
...
|
|
LL | fn option_non_zero_usize_incorrect() -> isize;
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
|
|
|
|
|
= note: expected `unsafe extern "C" fn() -> usize`
|
|
found `unsafe extern "C" fn() -> isize`
|
|
|
|
warning: `option_non_null_ptr_incorrect` redeclared with a different signature
|
|
--> $DIR/clashing-extern-fn.rs:426:13
|
|
|
|
|
LL | fn option_non_null_ptr_incorrect() -> *const usize;
|
|
| --------------------------------------------------- `option_non_null_ptr_incorrect` previously declared here
|
|
...
|
|
LL | fn option_non_null_ptr_incorrect() -> *const isize;
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
|
|
|
|
|
= note: expected `unsafe extern "C" fn() -> *const usize`
|
|
found `unsafe extern "C" fn() -> *const isize`
|
|
|
|
warning: `hidden_niche_transparent_no_niche` redeclared with a different signature
|
|
--> $DIR/clashing-extern-fn.rs:482:13
|
|
|
|
|
LL | fn hidden_niche_transparent_no_niche() -> usize;
|
|
| ------------------------------------------------ `hidden_niche_transparent_no_niche` previously declared here
|
|
...
|
|
LL | fn hidden_niche_transparent_no_niche() -> Option<TransparentNoNiche>;
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
|
|
|
|
|
= note: expected `unsafe extern "C" fn() -> usize`
|
|
found `unsafe extern "C" fn() -> Option<TransparentNoNiche>`
|
|
|
|
warning: `hidden_niche_unsafe_cell` redeclared with a different signature
|
|
--> $DIR/clashing-extern-fn.rs:486:13
|
|
|
|
|
LL | fn hidden_niche_unsafe_cell() -> usize;
|
|
| --------------------------------------- `hidden_niche_unsafe_cell` previously declared here
|
|
...
|
|
LL | fn hidden_niche_unsafe_cell() -> Option<UnsafeCell<NonZero<usize>>>;
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
|
|
|
|
|
= note: expected `unsafe extern "C" fn() -> usize`
|
|
found `unsafe extern "C" fn() -> Option<UnsafeCell<NonZero<usize>>>`
|
|
|
|
warning: 22 warnings emitted
|
|
|