diff --git a/compiler/rustc_lint_defs/src/builtin.rs b/compiler/rustc_lint_defs/src/builtin.rs index a276cb14acb..52bdb4f3e41 100644 --- a/compiler/rustc_lint_defs/src/builtin.rs +++ b/compiler/rustc_lint_defs/src/builtin.rs @@ -2973,7 +2973,7 @@ declare_lint_pass! { RUST_2021_INCOMPATIBLE_OR_PATTERNS, LARGE_ASSIGNMENTS, FUTURE_PRELUDE_COLLISIONS, - RESERVED_PREFIX, + RESERVED_PREFIXES, UNSUPPORTED_CALLING_CONVENTIONS, ] } @@ -3270,13 +3270,13 @@ declare_lint! { } declare_lint! { - /// The `reserved_prefix` lint detects identifiers that will be parsed as a + /// The `reserved_prefixes` lint detects identifiers that will be parsed as a /// prefix instead in Rust 2021. /// /// ### Example /// /// ```rust,compile_fail - /// #![deny(reserved_prefix)] + /// #![deny(reserved_prefixes)] /// /// macro_rules! m { /// (z $x:expr) => (); @@ -3295,7 +3295,7 @@ declare_lint! { /// /// This lint suggests to add whitespace between the `z` and `"hey"` tokens /// to keep them separated in Rust 2021. - pub RESERVED_PREFIX, + pub RESERVED_PREFIXES, Allow, "identifiers that will be parsed as a prefix in Rust 2021", @future_incompatible = FutureIncompatibleInfo { diff --git a/compiler/rustc_parse/src/lexer/mod.rs b/compiler/rustc_parse/src/lexer/mod.rs index 87e60a48e44..3f58476296b 100644 --- a/compiler/rustc_parse/src/lexer/mod.rs +++ b/compiler/rustc_parse/src/lexer/mod.rs @@ -4,7 +4,7 @@ use rustc_ast::tokenstream::{Spacing, TokenStream}; use rustc_errors::{error_code, Applicability, DiagnosticBuilder, FatalError, PResult}; use rustc_lexer::unescape::{self, Mode}; use rustc_lexer::{Base, DocStyle, RawStrError}; -use rustc_session::lint::builtin::RESERVED_PREFIX; +use rustc_session::lint::builtin::RESERVED_PREFIXES; use rustc_session::lint::BuiltinLintDiagnostics; use rustc_session::parse::ParseSess; use rustc_span::symbol::{sym, Symbol}; @@ -526,7 +526,7 @@ impl<'a> StringReader<'a> { } else { // Before Rust 2021, only emit a lint for migration. self.sess.buffer_lint_with_diagnostic( - &RESERVED_PREFIX, + &RESERVED_PREFIXES, prefix_span, ast::CRATE_NODE_ID, &msg, diff --git a/src/test/ui/rust-2021/reserved-prefixes-migration.fixed b/src/test/ui/rust-2021/reserved-prefixes-migration.fixed index dbc2ec6d42e..f6b6f7405a6 100644 --- a/src/test/ui/rust-2021/reserved-prefixes-migration.fixed +++ b/src/test/ui/rust-2021/reserved-prefixes-migration.fixed @@ -2,7 +2,7 @@ // run-rustfix // compile-flags: -Z unstable-options --edition 2018 -#![warn(reserved_prefix)] +#![warn(reserved_prefixes)] macro_rules! m2 { ($a:tt $b:tt) => {}; @@ -14,16 +14,16 @@ macro_rules! m3 { fn main() { m2!(z "hey"); - //~^ WARNING prefix `z` is unknown [reserved_prefix] + //~^ WARNING prefix `z` is unknown [reserved_prefixes] //~| WARNING hard error in Rust 2021 m2!(prefix "hey"); - //~^ WARNING prefix `prefix` is unknown [reserved_prefix] + //~^ WARNING prefix `prefix` is unknown [reserved_prefixes] //~| WARNING hard error in Rust 2021 m3!(hey #123); - //~^ WARNING prefix `hey` is unknown [reserved_prefix] + //~^ WARNING prefix `hey` is unknown [reserved_prefixes] //~| WARNING hard error in Rust 2021 m3!(hey #hey); - //~^ WARNING prefix `hey` is unknown [reserved_prefix] + //~^ WARNING prefix `hey` is unknown [reserved_prefixes] //~| WARNING hard error in Rust 2021 } @@ -33,6 +33,6 @@ macro_rules! quote { quote! { #name = #kind #value - //~^ WARNING prefix `kind` is unknown [reserved_prefix] + //~^ WARNING prefix `kind` is unknown [reserved_prefixes] //~| WARNING hard error in Rust 2021 } diff --git a/src/test/ui/rust-2021/reserved-prefixes-migration.rs b/src/test/ui/rust-2021/reserved-prefixes-migration.rs index 6f7e3eb7a43..2b056245a99 100644 --- a/src/test/ui/rust-2021/reserved-prefixes-migration.rs +++ b/src/test/ui/rust-2021/reserved-prefixes-migration.rs @@ -2,7 +2,7 @@ // run-rustfix // compile-flags: -Z unstable-options --edition 2018 -#![warn(reserved_prefix)] +#![warn(reserved_prefixes)] macro_rules! m2 { ($a:tt $b:tt) => {}; @@ -14,16 +14,16 @@ macro_rules! m3 { fn main() { m2!(z"hey"); - //~^ WARNING prefix `z` is unknown [reserved_prefix] + //~^ WARNING prefix `z` is unknown [reserved_prefixes] //~| WARNING hard error in Rust 2021 m2!(prefix"hey"); - //~^ WARNING prefix `prefix` is unknown [reserved_prefix] + //~^ WARNING prefix `prefix` is unknown [reserved_prefixes] //~| WARNING hard error in Rust 2021 m3!(hey#123); - //~^ WARNING prefix `hey` is unknown [reserved_prefix] + //~^ WARNING prefix `hey` is unknown [reserved_prefixes] //~| WARNING hard error in Rust 2021 m3!(hey#hey); - //~^ WARNING prefix `hey` is unknown [reserved_prefix] + //~^ WARNING prefix `hey` is unknown [reserved_prefixes] //~| WARNING hard error in Rust 2021 } @@ -33,6 +33,6 @@ macro_rules! quote { quote! { #name = #kind#value - //~^ WARNING prefix `kind` is unknown [reserved_prefix] + //~^ WARNING prefix `kind` is unknown [reserved_prefixes] //~| WARNING hard error in Rust 2021 } diff --git a/src/test/ui/rust-2021/reserved-prefixes-migration.stderr b/src/test/ui/rust-2021/reserved-prefixes-migration.stderr index 28ac1966a1b..ec27b68e2df 100644 --- a/src/test/ui/rust-2021/reserved-prefixes-migration.stderr +++ b/src/test/ui/rust-2021/reserved-prefixes-migration.stderr @@ -7,8 +7,8 @@ LL | m2!(z"hey"); note: the lint level is defined here --> $DIR/reserved-prefixes-migration.rs:5:9 | -LL | #![warn(reserved_prefix)] - | ^^^^^^^^^^^^^^^ +LL | #![warn(reserved_prefixes)] + | ^^^^^^^^^^^^^^^^^ = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! = note: for more information, see issue #84978 help: insert whitespace here to avoid this being parsed as a prefix in Rust 2021