about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorOliver Schneider <git-spam-no-reply9815368754983@oli-obk.de>2018-03-06 14:07:52 +0100
committerOliver Schneider <git-spam-no-reply9815368754983@oli-obk.de>2018-03-08 08:35:39 +0100
commitc0fc6a8b6b5bba6eed003fdc08e3af1967ab349d (patch)
tree81258097b54e4395b08fea7c2d44bc39db40b7ae /src
parentb5ace9a906d0a445420a0ff16f77ce967722ddc6 (diff)
downloadrust-c0fc6a8b6b5bba6eed003fdc08e3af1967ab349d.tar.gz
rust-c0fc6a8b6b5bba6eed003fdc08e3af1967ab349d.zip
simplify constant value pair field access
Diffstat (limited to 'src')
-rw-r--r--src/librustc_mir/transform/const_prop.rs7
1 files changed, 1 insertions, 6 deletions
diff --git a/src/librustc_mir/transform/const_prop.rs b/src/librustc_mir/transform/const_prop.rs
index c8e1a93cdda..f133d6e9c6d 100644
--- a/src/librustc_mir/transform/const_prop.rs
+++ b/src/librustc_mir/transform/const_prop.rs
@@ -183,12 +183,7 @@ impl<'b, 'a, 'tcx:'b> ConstPropagator<'b, 'a, 'tcx> {
                             trace!("layout computed");
                             use rustc_data_structures::indexed_vec::Idx;
                             let field_index = field.index();
-                            let val = if field_index == 0 {
-                                a
-                            } else {
-                                assert_eq!(field_index, 1);
-                                b
-                            };
+                            let val = [a, b][field_index];
                             let field = base_layout.field(&*self, field_index).ok()?;
                             trace!("projection resulted in: {:?}", val);
                             Some((Value::ByVal(val), field.ty, span))