about summary refs log tree commit diff
path: root/compiler/rustc_parse/src/parser
diff options
context:
space:
mode:
authorMichael Goulet <michael@errs.io>2024-06-20 14:14:36 -0400
committerMichael Goulet <michael@errs.io>2024-06-20 14:14:49 -0400
commit108b3f214a7e160ecb7ac2ec05bbb41aedd05a95 (patch)
tree7160e5e4eabea4d06bba7118dd8560f88ad85b99 /compiler/rustc_parse/src/parser
parent1aaab8b9f8dc488cadc4f083b3a11fb11b45cb77 (diff)
downloadrust-108b3f214a7e160ecb7ac2ec05bbb41aedd05a95.tar.gz
rust-108b3f214a7e160ecb7ac2ec05bbb41aedd05a95.zip
Properly gate `safe` keyword in pre-expansion
Diffstat (limited to 'compiler/rustc_parse/src/parser')
-rw-r--r--compiler/rustc_parse/src/parser/mod.rs3
1 files changed, 3 insertions, 0 deletions
diff --git a/compiler/rustc_parse/src/parser/mod.rs b/compiler/rustc_parse/src/parser/mod.rs
index 2f12459da57..cfd0a72c056 100644
--- a/compiler/rustc_parse/src/parser/mod.rs
+++ b/compiler/rustc_parse/src/parser/mod.rs
@@ -1214,6 +1214,9 @@ impl<'a> Parser<'a> {
         if self.eat_keyword_case(kw::Unsafe, case) {
             Safety::Unsafe(self.prev_token.uninterpolated_span())
         } else if self.eat_keyword_case(kw::Safe, case) {
+            self.psess
+                .gated_spans
+                .gate(sym::unsafe_extern_blocks, self.prev_token.uninterpolated_span());
             Safety::Safe(self.prev_token.uninterpolated_span())
         } else {
             Safety::Default