about summary refs log tree commit diff
diff options
context:
space:
mode:
authorDaan de Graaf <daandegraaf9@gmail.com>2018-12-28 12:52:31 +0100
committerSaleem Jaffer <ssaleem1992@gmail.com>2019-05-04 15:17:26 +0530
commited716d4c8960bb5e5127375ac023c698613b27bd (patch)
treeb5e8c8cd9d294e1a6df2da024d252512e175a454
parente395026aba4d0739ec06264dabb97a614ec8d0dc (diff)
downloadrust-ed716d4c8960bb5e5127375ac023c698613b27bd.tar.gz
rust-ed716d4c8960bb5e5127375ac023c698613b27bd.zip
Return instead of collecting to mut result.
-rw-r--r--src/librustc/ty/layout.rs20
1 files changed, 12 insertions, 8 deletions
diff --git a/src/librustc/ty/layout.rs b/src/librustc/ty/layout.rs
index c05e0aaf3ba..472747a7170 100644
--- a/src/librustc/ty/layout.rs
+++ b/src/librustc/ty/layout.rs
@@ -1833,17 +1833,19 @@ impl<'a, 'tcx, C> TyLayoutMethods<'tcx, C> for Ty<'tcx>
         })
     }
 
-    fn pointee_info_at(this: TyLayout<'tcx>, cx: &C, offset: Size
+    fn pointee_info_at(
+        this: TyLayout<'tcx>,
+        cx: &C,
+        offset: Size,
     ) -> Option<PointeeInfo> {
-        let mut result = None;
         match this.ty.sty {
             ty::RawPtr(mt) if offset.bytes() == 0 => {
-                result = cx.layout_of(mt.ty).ok()
+                cx.layout_of(mt.ty).ok()
                     .map(|layout| PointeeInfo {
                         size: layout.size,
                         align: layout.align.abi,
                         safe: None,
-                    });
+                    })
             }
 
             ty::Ref(_, ty, mt) if offset.bytes() == 0 => {
@@ -1877,12 +1879,12 @@ impl<'a, 'tcx, C> TyLayoutMethods<'tcx, C> for Ty<'tcx>
                     }
                 };
 
-                result = cx.layout_of(ty).ok()
+                cx.layout_of(ty).ok()
                     .map(|layout| PointeeInfo {
                         size: layout.size,
                         align: layout.align.abi,
                         safe: Some(kind),
-                    });
+                    })
             }
 
             _ => {
@@ -1915,6 +1917,8 @@ impl<'a, 'tcx, C> TyLayoutMethods<'tcx, C> for Ty<'tcx>
                     }
                 }
 
+                let mut result = None;
+
                 if let Some(variant) = data_variant {
                     let ptr_end = offset + Pointer.size(cx);
                     for i in 0..variant.fields.count() {
@@ -1945,10 +1949,10 @@ impl<'a, 'tcx, C> TyLayoutMethods<'tcx, C> for Ty<'tcx>
                         }
                     }
                 }
+
+                result
             }
         }
-
-        result
     }
 
 }