diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:19:13 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:19:13 +0000 |
commit | 218caa410aa38c29984be31a5229b9fa717560ee (patch) | |
tree | c54bd55eeb6e4c508940a30e94c0032fbd45d677 /src/test/ui/lint/lint-unsafe-code.rs | |
parent | Releasing progress-linux version 1.67.1+dfsg1-1~progress7.99u1. (diff) | |
download | rustc-218caa410aa38c29984be31a5229b9fa717560ee.tar.xz rustc-218caa410aa38c29984be31a5229b9fa717560ee.zip |
Merging upstream version 1.68.2+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/test/ui/lint/lint-unsafe-code.rs')
-rw-r--r-- | src/test/ui/lint/lint-unsafe-code.rs | 130 |
1 files changed, 0 insertions, 130 deletions
diff --git a/src/test/ui/lint/lint-unsafe-code.rs b/src/test/ui/lint/lint-unsafe-code.rs deleted file mode 100644 index b72e4c3a9..000000000 --- a/src/test/ui/lint/lint-unsafe-code.rs +++ /dev/null @@ -1,130 +0,0 @@ -#![allow(unused_unsafe)] -#![allow(dead_code)] -#![deny(unsafe_code)] - -struct Bar; -struct Bar2; -struct Bar3; - -#[allow(unsafe_code)] -mod allowed_unsafe { - fn allowed() { unsafe {} } - unsafe fn also_allowed() {} - unsafe trait AllowedUnsafe { } - unsafe impl AllowedUnsafe for super::Bar {} - #[no_mangle] fn allowed2() {} - #[export_name = "foo"] fn allowed3() {} -} - -macro_rules! unsafe_in_macro { - () => {{ - #[no_mangle] fn foo() {} //~ ERROR: declaration of a `no_mangle` function - #[no_mangle] static FOO: u32 = 5; //~ ERROR: declaration of a `no_mangle` static - #[export_name = "bar"] fn bar() {} - //~^ ERROR: declaration of a function with `export_name` - #[export_name = "BAR"] static BAR: u32 = 5; - //~^ ERROR: declaration of a static with `export_name` - unsafe {} //~ ERROR: usage of an `unsafe` block - }} -} - -#[no_mangle] fn foo() {} //~ ERROR: declaration of a `no_mangle` function -#[no_mangle] static FOO: u32 = 5; //~ ERROR: declaration of a `no_mangle` static - -trait AssocFnTrait { - fn foo(); -} - -struct AssocFnFoo; - -impl AssocFnFoo { - #[no_mangle] fn foo() {} //~ ERROR: declaration of a `no_mangle` method -} - -impl AssocFnTrait for AssocFnFoo { - #[no_mangle] fn foo() {} //~ ERROR: declaration of a `no_mangle` method -} - -#[export_name = "bar"] fn bar() {} //~ ERROR: declaration of a function with `export_name` -#[export_name = "BAR"] static BAR: u32 = 5; //~ ERROR: declaration of a static with `export_name` - -#[link_section = ".example_section"] fn uwu() {} //~ ERROR: declaration of a function with `link_section` -#[link_section = ".example_section"] static UWU: u32 = 5; //~ ERROR: declaration of a static with `link_section` - -struct AssocFnBar; - -impl AssocFnBar { - #[export_name = "bar"] fn bar() {} //~ ERROR: declaration of a method with `export_name` -} - -impl AssocFnTrait for AssocFnBar { - #[export_name = "bar"] fn foo() {} //~ ERROR: declaration of a method with `export_name` -} - -unsafe fn baz() {} //~ ERROR: declaration of an `unsafe` function -unsafe trait Foo {} //~ ERROR: declaration of an `unsafe` trait -unsafe impl Foo for Bar {} //~ ERROR: implementation of an `unsafe` trait - -trait Baz { - unsafe fn baz(&self); //~ ERROR: declaration of an `unsafe` method - unsafe fn provided(&self) {} //~ ERROR: implementation of an `unsafe` method - unsafe fn provided_override(&self) {} //~ ERROR: implementation of an `unsafe` method -} - -impl Baz for Bar { - unsafe fn baz(&self) {} //~ ERROR: implementation of an `unsafe` method - unsafe fn provided_override(&self) {} //~ ERROR: implementation of an `unsafe` method -} - - -#[allow(unsafe_code)] -trait A { - unsafe fn allowed_unsafe(&self); - unsafe fn allowed_unsafe_provided(&self) {} -} - -#[allow(unsafe_code)] -impl Baz for Bar2 { - unsafe fn baz(&self) {} - unsafe fn provided_override(&self) {} -} - -impl Baz for Bar3 { - #[allow(unsafe_code)] - unsafe fn baz(&self) {} - unsafe fn provided_override(&self) {} //~ ERROR: implementation of an `unsafe` method -} - -#[allow(unsafe_code)] -unsafe trait B { - fn dummy(&self) {} -} - -trait C { - #[allow(unsafe_code)] - unsafe fn baz(&self); - unsafe fn provided(&self) {} //~ ERROR: implementation of an `unsafe` method -} - -impl C for Bar { - #[allow(unsafe_code)] - unsafe fn baz(&self) {} - unsafe fn provided(&self) {} //~ ERROR: implementation of an `unsafe` method -} - -impl C for Bar2 { - unsafe fn baz(&self) {} //~ ERROR: implementation of an `unsafe` method -} - -trait D { - #[allow(unsafe_code)] - unsafe fn unsafe_provided(&self) {} -} - -impl D for Bar {} - -fn main() { - unsafe {} //~ ERROR: usage of an `unsafe` block - - unsafe_in_macro!() -} |