Skip to content

Commit 9728178

Browse files
authored
Add missing unsafe on extern blocks (#3728)
1 parent d733288 commit 9728178

15 files changed

Lines changed: 17 additions & 16 deletions

File tree

Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ opt-level = 2
2222

2323
[workspace.lints.rust]
2424
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(windows_raw_dylib, windows_slim_errors)'] }
25+
missing_unsafe_on_extern = "warn"
2526

2627
[workspace.dependencies]
2728
helpers = { path = "crates/tools/helpers" }

crates/libs/strings/src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,6 @@ pub use pstr::*;
4141
mod pwstr;
4242
pub use pwstr::*;
4343

44-
extern "C" {
44+
unsafe extern "C" {
4545
fn strlen(s: PCSTR) -> usize;
4646
}

crates/libs/strings/src/pcwstr.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ impl PCWSTR {
3232
///
3333
/// The `PCWSTR`'s pointer needs to be valid for reads up until and including the next `\0`.
3434
pub unsafe fn len(&self) -> usize {
35-
extern "C" {
35+
unsafe extern "C" {
3636
fn wcslen(s: *const u16) -> usize;
3737
}
3838
unsafe { wcslen(self.0) }

crates/samples/components/json_validator_client/src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
#[test]
44
fn test() {
5-
extern "system" {
5+
unsafe extern "system" {
66
fn client();
77
}
88
unsafe {

crates/samples/windows/bits/src/main.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,6 @@ impl IBackgroundCopyCallback_Impl for Callback_Impl {
6565
}
6666
}
6767

68-
extern "C" {
68+
unsafe extern "C" {
6969
pub fn getchar() -> i32;
7070
}

crates/tests/libs/strings/tests/bstr.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,6 @@ fn deref_as_slice() {
8686
}
8787
}
8888

89-
extern "C" {
89+
unsafe extern "C" {
9090
pub fn wcslen(s: *const u16) -> usize;
9191
}

crates/tests/libs/strings/tests/hstring.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -318,7 +318,7 @@ fn deref_as_slice() {
318318
}
319319
}
320320

321-
extern "C" {
321+
unsafe extern "C" {
322322
pub fn wcslen(s: *const u16) -> usize;
323323
}
324324

crates/tests/misc/const_params/tests/sys.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
use windows_sys::{core::*, Win32::Foundation::*, Win32::UI::Shell::*};
22

3-
extern "C" {
3+
unsafe extern "C" {
44
fn wcslen(s: PCWSTR) -> usize;
55
}
66

crates/tests/misc/literals/tests/sys.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ fn assert_utf16(left: PCWSTR, right: &[u16]) {
3939
assert_eq!(left, right);
4040
}
4141

42-
extern "C" {
42+
unsafe extern "C" {
4343
pub fn strlen(s: PCSTR) -> usize;
4444
pub fn wcslen(s: PCWSTR) -> usize;
4545
}

crates/tests/misc/literals/tests/win.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ fn assert_hstring(left: &HSTRING, right: &[u16]) {
8282
assert_eq!(left, right);
8383
}
8484

85-
extern "C" {
85+
unsafe extern "C" {
8686
pub fn strlen(s: PCSTR) -> usize;
8787
pub fn wcslen(s: PCWSTR) -> usize;
8888
}

0 commit comments

Comments
 (0)