diff options
| author | Matthias Krüger <matthias.krueger@famsik.de> | 2022-09-02 18:22:00 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-09-02 18:22:00 +0200 |
| commit | c8749f045350ef6c729ff22d4069c2ff53ad7111 (patch) | |
| tree | 3d28574c85d01c3e94d4c870763d222d82960e89 /compiler/rustc_middle | |
| parent | ed3711120500157d7ad93613266e665b0d41b69a (diff) | |
| parent | 8e8220027711874f8bf176b14cb8e87b01342081 (diff) | |
| download | rust-c8749f045350ef6c729ff22d4069c2ff53ad7111.tar.gz rust-c8749f045350ef6c729ff22d4069c2ff53ad7111.zip | |
Rollup merge of #100814 - gabrielBusta:port_trait_selection_diagnostics, r=davidtwco
Porting 'compiler/rustc_trait_selection' to translatable diagnostics - Part 1 ``@rustbot`` label +A-translation r? rust-lang/diagnostics cc #100717
Diffstat (limited to 'compiler/rustc_middle')
| -rw-r--r-- | compiler/rustc_middle/src/ty/consts/kind.rs | 6 | ||||
| -rw-r--r-- | compiler/rustc_middle/src/ty/sty.rs | 6 |
2 files changed, 12 insertions, 0 deletions
diff --git a/compiler/rustc_middle/src/ty/consts/kind.rs b/compiler/rustc_middle/src/ty/consts/kind.rs index cb0137d2e5e..3840e79cebd 100644 --- a/compiler/rustc_middle/src/ty/consts/kind.rs +++ b/compiler/rustc_middle/src/ty/consts/kind.rs @@ -20,6 +20,12 @@ pub struct Unevaluated<'tcx, P = Option<Promoted>> { pub promoted: P, } +impl rustc_errors::IntoDiagnosticArg for Unevaluated<'_> { + fn into_diagnostic_arg(self) -> rustc_errors::DiagnosticArgValue<'static> { + format!("{:?}", self).into_diagnostic_arg() + } +} + impl<'tcx> Unevaluated<'tcx> { #[inline] pub fn shrink(self) -> Unevaluated<'tcx, ()> { diff --git a/compiler/rustc_middle/src/ty/sty.rs b/compiler/rustc_middle/src/ty/sty.rs index 80354a3f8a2..9fb91b5fe87 100644 --- a/compiler/rustc_middle/src/ty/sty.rs +++ b/compiler/rustc_middle/src/ty/sty.rs @@ -849,6 +849,12 @@ impl<'tcx> PolyTraitRef<'tcx> { } } +impl rustc_errors::IntoDiagnosticArg for PolyTraitRef<'_> { + fn into_diagnostic_arg(self) -> rustc_errors::DiagnosticArgValue<'static> { + self.to_string().into_diagnostic_arg() + } +} + /// An existential reference to a trait, where `Self` is erased. /// For example, the trait object `Trait<'a, 'b, X, Y>` is: /// ```ignore (illustrative) |
