about summary refs log tree commit diff
path: root/compiler/rustc_lint/src/context.rs
diff options
context:
space:
mode:
authorXiretza <xiretza@xiretza.xyz>2024-04-14 17:59:54 +0000
committerXiretza <xiretza@xiretza.xyz>2024-05-21 20:16:39 +0000
commitc227f35a9cd7ef894abfb623a16ad28abf8b6e3f (patch)
treefe7288d38b63650035965c61d2767e7453e7d882 /compiler/rustc_lint/src/context.rs
parent2482f3c17cd1fd4c4988b1f4fbf07270cd93c771 (diff)
downloadrust-c227f35a9cd7ef894abfb623a16ad28abf8b6e3f.tar.gz
rust-c227f35a9cd7ef894abfb623a16ad28abf8b6e3f.zip
Generate lint diagnostic message from BuiltinLintDiag
Translation of the lint message happens when the actual diagnostic is
created, not when the lint is buffered. Generating the message from
BuiltinLintDiag ensures that all required data to construct the message
is preserved in the LintBuffer, eventually allowing the messages to be
moved to fluent.

Remove the `msg` field from BufferedEarlyLint, it is either generated
from the data in the BuiltinLintDiag or stored inside
BuiltinLintDiag::Normal.
Diffstat (limited to 'compiler/rustc_lint/src/context.rs')
-rw-r--r--compiler/rustc_lint/src/context.rs3
1 files changed, 1 insertions, 2 deletions
diff --git a/compiler/rustc_lint/src/context.rs b/compiler/rustc_lint/src/context.rs
index 62ba9ef5c11..563d96d9519 100644
--- a/compiler/rustc_lint/src/context.rs
+++ b/compiler/rustc_lint/src/context.rs
@@ -539,12 +539,11 @@ pub trait LintContext {
         &self,
         lint: &'static Lint,
         span: Option<impl Into<MultiSpan>>,
-        msg: impl Into<DiagMessage>,
         decorate: impl for<'a, 'b> FnOnce(&'b mut Diag<'a, ()>),
         diagnostic: BuiltinLintDiag,
     ) {
         // We first generate a blank diagnostic.
-        self.opt_span_lint(lint, span, msg, |db| {
+        self.opt_span_lint(lint, span, diagnostics::builtin_message(&diagnostic), |db| {
             // Now, set up surrounding context.
             diagnostics::builtin(self.sess(), diagnostic, db);
             // Rewrap `db`, and pass control to the user.