about summary refs log tree commit diff
path: root/tests
diff options
context:
space:
mode:
authorSantiago Pastorino <spastorino@gmail.com>2024-05-21 12:27:21 -0300
committerSantiago Pastorino <spastorino@gmail.com>2024-06-04 14:19:42 -0300
commit3ba8de0b601ee1eaae710510ee8b0b8a9dbd78d8 (patch)
tree0d54ec1a2a419e718a44e79e51699ca84479f287 /tests
parent46cd80b691f0e127076b6dcd1bf9285c3e608d4a (diff)
Make extern blocks without unsafe warn in edition 2024
Diffstat (limited to 'tests')
-rw-r--r--tests/ui/rust-2024/unsafe-extern-blocks/extern-items.edition2024.stderr14
-rw-r--r--tests/ui/rust-2024/unsafe-extern-blocks/extern-items.rs7
-rw-r--r--tests/ui/unpretty/expanded-exhaustive.rs4
-rw-r--r--tests/ui/unpretty/expanded-exhaustive.stdout4
4 files changed, 24 insertions, 5 deletions
diff --git a/tests/ui/rust-2024/unsafe-extern-blocks/extern-items.edition2024.stderr b/tests/ui/rust-2024/unsafe-extern-blocks/extern-items.edition2024.stderr
new file mode 100644
index 00000000000..b19369c0a55
--- /dev/null
+++ b/tests/ui/rust-2024/unsafe-extern-blocks/extern-items.edition2024.stderr
@@ -0,0 +1,14 @@
+warning: extern blocks should be unsafe
+  --> $DIR/extern-items.rs:7:1
+   |
+LL | / extern "C" {
+LL | |
+LL | |     static TEST1: i32;
+LL | |     fn test1(i: i32);
+LL | | }
+   | |_^
+   |
+   = note: `#[warn(missing_unsafe_on_extern)]` on by default
+
+warning: 1 warning emitted
+
diff --git a/tests/ui/rust-2024/unsafe-extern-blocks/extern-items.rs b/tests/ui/rust-2024/unsafe-extern-blocks/extern-items.rs
index fd2cd29fd74..dfb851e276d 100644
--- a/tests/ui/rust-2024/unsafe-extern-blocks/extern-items.rs
+++ b/tests/ui/rust-2024/unsafe-extern-blocks/extern-items.rs
@@ -1,6 +1,11 @@
-//@ build-pass
+//@ revisions: edition2021 edition2024
+//@[edition2021] edition:2021
+//@[edition2024] edition:2024
+//@[edition2024] compile-flags: -Zunstable-options
+//@ check-pass
 
 extern "C" {
+    //[edition2024]~^ WARN extern blocks should be unsafe [missing_unsafe_on_extern]
     static TEST1: i32;
     fn test1(i: i32);
 }
diff --git a/tests/ui/unpretty/expanded-exhaustive.rs b/tests/ui/unpretty/expanded-exhaustive.rs
index 6aa032d7ed8..29472df897a 100644
--- a/tests/ui/unpretty/expanded-exhaustive.rs
+++ b/tests/ui/unpretty/expanded-exhaustive.rs
@@ -473,8 +473,8 @@ mod items {
 
     /// ItemKind::ForeignMod
     mod item_foreign_mod {
-        extern "C++" {}
-        extern {}
+        unsafe extern "C++" {}
+        unsafe extern {}
     }
 
     /// ItemKind::GlobalAsm
diff --git a/tests/ui/unpretty/expanded-exhaustive.stdout b/tests/ui/unpretty/expanded-exhaustive.stdout
index 8737063bf3c..0a09a3f6a42 100644
--- a/tests/ui/unpretty/expanded-exhaustive.stdout
+++ b/tests/ui/unpretty/expanded-exhaustive.stdout
@@ -451,8 +451,8 @@ mod items {
     mod item_mod { }
     /// ItemKind::ForeignMod
     mod item_foreign_mod {
-        extern "C++" {}
-        extern {}
+        unsafe extern "C++" {}
+        unsafe extern {}
     }
     /// ItemKind::GlobalAsm
     mod item_global_asm {