about summary refs log tree commit diff
path: root/compiler/rustc_lint/src/builtin.rs
diff options
context:
space:
mode:
authorSantiago Pastorino <spastorino@gmail.com>2024-07-09 17:35:51 -0300
committerSantiago Pastorino <spastorino@gmail.com>2024-07-09 17:35:51 -0300
commita3ef94e80e0ec7bacd42a70bd8a2203c5cc3fab8 (patch)
tree521677f779398a1967d1b842f56f8379a8f9a82d /compiler/rustc_lint/src/builtin.rs
parentc3774be7411722d3695de2ab1da9a358d0d5c82c (diff)
downloadrust-a3ef94e80e0ec7bacd42a70bd8a2203c5cc3fab8.tar.gz
rust-a3ef94e80e0ec7bacd42a70bd8a2203c5cc3fab8.zip
Fire unsafe_code lint on unsafe extern blocks
Diffstat (limited to 'compiler/rustc_lint/src/builtin.rs')
-rw-r--r--compiler/rustc_lint/src/builtin.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/compiler/rustc_lint/src/builtin.rs b/compiler/rustc_lint/src/builtin.rs
index 79c8046f9b7..2d596564d52 100644
--- a/compiler/rustc_lint/src/builtin.rs
+++ b/compiler/rustc_lint/src/builtin.rs
@@ -326,6 +326,12 @@ impl EarlyLintPass for UnsafeCode {
                 self.report_unsafe(cx, it.span, BuiltinUnsafe::GlobalAsm);
             }
 
+            ast::ItemKind::ForeignMod(ForeignMod { safety, .. }) => {
+                if let Safety::Unsafe(_) = safety {
+                    self.report_unsafe(cx, it.span, BuiltinUnsafe::UnsafeExternBlock);
+                }
+            }
+
             _ => {}
         }
     }