]> git.lizzy.rs Git - rust.git/commitdiff
UPDATE - LibDefWriteFailure to accept type instead of formatted string
authorJhonny Bill Mena <jhonnybillm@gmail.com>
Sat, 27 Aug 2022 00:21:55 +0000 (20:21 -0400)
committerJhonny Bill Mena <jhonnybillm@gmail.com>
Fri, 7 Oct 2022 14:00:32 +0000 (10:00 -0400)
This follows team’s suggestions in this thread https://rust-lang.zulipchat.com/#narrow/stream/336883-i18n/topic/.23100717.20diag.20translation/near/295305249

compiler/rustc_codegen_ssa/src/back/linker.rs
compiler/rustc_codegen_ssa/src/errors.rs
compiler/rustc_error_messages/locales/en-US/codegen_ssa.ftl

index 60547acc956613d3fbae0499447139acd2ce3bc0..e9335e53125f34136fc18604db5400770c156709 100644 (file)
@@ -666,8 +666,8 @@ fn export_symbols(&mut self, tmpdir: &Path, crate_type: CrateType, symbols: &[St
                     writeln!(f, "_{}", sym)?;
                 }
             };
-            if let Err(e) = res {
-                self.sess.emit_fatal(LibDefWriteFailure { error_description: format!("{e}") });
+            if let Err(error) = res {
+                self.sess.emit_fatal(LibDefWriteFailure { error });
             }
         } else if is_windows {
             let res: io::Result<()> = try {
@@ -681,8 +681,8 @@ fn export_symbols(&mut self, tmpdir: &Path, crate_type: CrateType, symbols: &[St
                     writeln!(f, "  {}", symbol)?;
                 }
             };
-            if let Err(e) = res {
-                self.sess.emit_fatal(LibDefWriteFailure { error_description: format!("{e}") });
+            if let Err(error) = res {
+                self.sess.emit_fatal(LibDefWriteFailure { error });
             }
         } else {
             // Write an LD version script
@@ -972,8 +972,8 @@ fn export_symbols(&mut self, tmpdir: &Path, crate_type: CrateType, symbols: &[St
                 writeln!(f, "  {}", symbol)?;
             }
         };
-        if let Err(e) = res {
-            self.sess.emit_fatal(LibDefWriteFailure { error_description: format!("{e}") });
+        if let Err(error) = res {
+            self.sess.emit_fatal(LibDefWriteFailure { error });
         }
         let mut arg = OsString::from("/DEF:");
         arg.push(path);
index 718ad5c7bf5666e69ba821de362ceb845ab0fd00..13d9c1a7b6b8d7b4fe702722a18df08ab7811fba 100644 (file)
@@ -1,6 +1,7 @@
 //! Errors emitted by codegen_ssa
 
 use rustc_macros::SessionDiagnostic;
+use std::io::Error;
 
 #[derive(SessionDiagnostic)]
 #[diag(codegen_ssa::missing_native_static_library)]
@@ -11,5 +12,5 @@ pub struct MissingNativeStaticLibrary<'a> {
 #[derive(SessionDiagnostic)]
 #[diag(codegen_ssa::lib_def_write_failure)]
 pub struct LibDefWriteFailure {
-    pub error_description: String,
+    pub error: Error,
 }
index 597f3488fc1be640aed6c7001867ddc7d0bd29fc..d84a774710ac18143fbf576ebcde5071d31acb4f 100644 (file)
@@ -1,3 +1,3 @@
 codegen_ssa_missing_native_static_library = could not find native static library `{$library_name}`, perhaps an -L flag is missing?
 
-codegen_ssa_lib_def_write_failure = failed to write lib.def file: {$error_description}
+codegen_ssa_lib_def_write_failure = failed to write lib.def file: {$error}