about summary refs log tree commit diff
diff options
context:
space:
mode:
authorLingMan <LingMan@users.noreply.github.com>2021-06-07 01:27:40 +0200
committerLingMan <LingMan@users.noreply.github.com>2021-06-07 01:27:40 +0200
commit07dbd4d39826b1c4a4e0bcd7501dae9236be8bbe (patch)
treea530013bb28b4a781601ecb8b8002f374538d988
parentf57d5ba3c9ffef4cd2402e3e7d8934bd1a6e9cc1 (diff)
downloadrust-07dbd4d39826b1c4a4e0bcd7501dae9236be8bbe.tar.gz
rust-07dbd4d39826b1c4a4e0bcd7501dae9236be8bbe.zip
Use `try_into` instead of asserting manually
-rw-r--r--compiler/rustc_target/src/abi/mod.rs12
1 files changed, 2 insertions, 10 deletions
diff --git a/compiler/rustc_target/src/abi/mod.rs b/compiler/rustc_target/src/abi/mod.rs
index 1679d029374..8e71ded3d1d 100644
--- a/compiler/rustc_target/src/abi/mod.rs
+++ b/compiler/rustc_target/src/abi/mod.rs
@@ -753,11 +753,7 @@ impl FieldsShape {
         match *self {
             FieldsShape::Primitive => 0,
             FieldsShape::Union(count) => count.get(),
-            FieldsShape::Array { count, .. } => {
-                let usize_count = count as usize;
-                assert_eq!(usize_count as u64, count);
-                usize_count
-            }
+            FieldsShape::Array { count, .. } => count.try_into().unwrap(),
             FieldsShape::Arbitrary { ref offsets, .. } => offsets.len(),
         }
     }
@@ -791,11 +787,7 @@ impl FieldsShape {
                 unreachable!("FieldsShape::memory_index: `Primitive`s have no fields")
             }
             FieldsShape::Union(_) | FieldsShape::Array { .. } => i,
-            FieldsShape::Arbitrary { ref memory_index, .. } => {
-                let r = memory_index[i];
-                assert_eq!(r as usize as u32, r);
-                r as usize
-            }
+            FieldsShape::Arbitrary { ref memory_index, .. } => memory_index[i].try_into().unwrap(),
         }
     }