diff options
| author | Trevor Gross <tmgross@umich.edu> | 2024-07-01 18:18:10 -0400 |
|---|---|---|
| committer | Trevor Gross <tmgross@umich.edu> | 2024-07-01 18:18:10 -0400 |
| commit | bb4c427ce4f67d8a5b866eb3f40502c47cb2b671 (patch) | |
| tree | 30fa7987a1ac08cbdb8e010830e13e1263170638 | |
| parent | cf2df68d1f5e56803c97d91e2b1a9f1c9923c533 (diff) | |
| download | rust-bb4c427ce4f67d8a5b866eb3f40502c47cb2b671.tar.gz rust-bb4c427ce4f67d8a5b866eb3f40502c47cb2b671.zip | |
Make `FloatTy` checks exhaustive in pretty print
This should prevent the default fallback if we add more float types in the future.
| -rw-r--r-- | compiler/rustc_middle/src/ty/print/pretty.rs | 34 |
1 files changed, 18 insertions, 16 deletions
diff --git a/compiler/rustc_middle/src/ty/print/pretty.rs b/compiler/rustc_middle/src/ty/print/pretty.rs index 19700353f59..d2f32cafb9d 100644 --- a/compiler/rustc_middle/src/ty/print/pretty.rs +++ b/compiler/rustc_middle/src/ty/print/pretty.rs @@ -1710,22 +1710,24 @@ pub trait PrettyPrinter<'tcx>: Printer<'tcx> + fmt::Write { ty::Bool if int == ScalarInt::FALSE => p!("false"), ty::Bool if int == ScalarInt::TRUE => p!("true"), // Float - ty::Float(ty::FloatTy::F16) => { - let val = Half::try_from(int).unwrap(); - p!(write("{}{}f16", val, if val.is_finite() { "" } else { "_" })) - } - ty::Float(ty::FloatTy::F32) => { - let val = Single::try_from(int).unwrap(); - p!(write("{}{}f32", val, if val.is_finite() { "" } else { "_" })) - } - ty::Float(ty::FloatTy::F64) => { - let val = Double::try_from(int).unwrap(); - p!(write("{}{}f64", val, if val.is_finite() { "" } else { "_" })) - } - ty::Float(ty::FloatTy::F128) => { - let val = Quad::try_from(int).unwrap(); - p!(write("{}{}f128", val, if val.is_finite() { "" } else { "_" })) - } + ty::Float(fty) => match fty { + ty::FloatTy::F16 => { + let val = Half::try_from(int).unwrap(); + p!(write("{}{}f16", val, if val.is_finite() { "" } else { "_" })) + } + ty::FloatTy::F32 => { + let val = Single::try_from(int).unwrap(); + p!(write("{}{}f32", val, if val.is_finite() { "" } else { "_" })) + } + ty::FloatTy::F64 => { + let val = Double::try_from(int).unwrap(); + p!(write("{}{}f64", val, if val.is_finite() { "" } else { "_" })) + } + ty::FloatTy::F128 => { + let val = Quad::try_from(int).unwrap(); + p!(write("{}{}f128", val, if val.is_finite() { "" } else { "_" })) + } + }, // Int ty::Uint(_) | ty::Int(_) => { let int = |
