about summary refs log tree commit diff
path: root/compiler/rustc_errors/src
diff options
context:
space:
mode:
authorMichael Goulet <michael@errs.io>2022-06-22 21:43:01 -0700
committerMichael Goulet <michael@errs.io>2022-06-28 22:41:56 +0000
commit98af1bfeccf1ec1f9e896ecc912b5cc808408378 (patch)
treedc12944b99ac5f1365c7eb058224c971c36afffb /compiler/rustc_errors/src
parent830880640304ba8699c5f9a0c4665c38a3271963 (diff)
downloadrust-98af1bfeccf1ec1f9e896ecc912b5cc808408378.tar.gz
rust-98af1bfeccf1ec1f9e896ecc912b5cc808408378.zip
Migrate some rustc_borrowck diagnostics to SessionDiagnostic
Diffstat (limited to 'compiler/rustc_errors/src')
-rw-r--r--compiler/rustc_errors/src/emitter.rs14
1 files changed, 12 insertions, 2 deletions
diff --git a/compiler/rustc_errors/src/emitter.rs b/compiler/rustc_errors/src/emitter.rs
index 8b2a995f1c5..6d74e9a9f2b 100644
--- a/compiler/rustc_errors/src/emitter.rs
+++ b/compiler/rustc_errors/src/emitter.rs
@@ -281,9 +281,19 @@ pub trait Emitter {
         let message = bundle.get_message(&identifier).expect("missing diagnostic in fluent bundle");
         let value = match attr {
             Some(attr) => {
-                message.get_attribute(attr).expect("missing attribute in fluent message").value()
+                if let Some(attr) = message.get_attribute(attr) {
+                    attr.value()
+                } else {
+                    panic!("missing attribute `{attr}` in fluent message `{identifier}`")
+                }
+            }
+            None => {
+                if let Some(value) = message.value() {
+                    value
+                } else {
+                    panic!("missing value in fluent message `{identifier}`")
+                }
             }
-            None => message.value().expect("missing value in fluent message"),
         };
 
         let mut err = vec![];