about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorDaniel Micay <danielmicay@gmail.com>2014-09-04 23:58:39 -0400
committerDaniel Micay <danielmicay@gmail.com>2014-09-06 13:50:58 -0400
commit395e453c06cce045d2e0613a1c6edab2dcfdeceb (patch)
treea7e6beb81bcfb9ff352d3fa3d25d9109231b1ff0 /src
parent6eabd85265e18b47942dac7cf3f258e38d9d9f2e (diff)
downloadrust-395e453c06cce045d2e0613a1c6edab2dcfdeceb.tar.gz
rust-395e453c06cce045d2e0613a1c6edab2dcfdeceb.zip
fix a sized deallocation issue in the glue code
Diffstat (limited to 'src')
-rw-r--r--src/librustc/middle/trans/glue.rs5
1 files changed, 1 insertions, 4 deletions
diff --git a/src/librustc/middle/trans/glue.rs b/src/librustc/middle/trans/glue.rs
index c8a47532a92..624fbc5c46c 100644
--- a/src/librustc/middle/trans/glue.rs
+++ b/src/librustc/middle/trans/glue.rs
@@ -111,9 +111,6 @@ pub fn get_drop_glue_type(ccx: &CrateContext, t: ty::t) -> ty::t {
         return ty::mk_i8();
     }
     match ty::get(t).sty {
-        ty::ty_box(typ) if !ty::type_needs_drop(tcx, typ) =>
-            ty::mk_box(tcx, ty::mk_i8()),
-
         ty::ty_uniq(typ) if !ty::type_needs_drop(tcx, typ)
                          && ty::type_is_sized(tcx, typ) => {
             let llty = sizing_type_of(ccx, typ);
@@ -121,7 +118,7 @@ pub fn get_drop_glue_type(ccx: &CrateContext, t: ty::t) -> ty::t {
             if llsize_of_alloc(ccx, llty) == 0 {
                 ty::mk_i8()
             } else {
-                ty::mk_uniq(tcx, ty::mk_i8())
+                t
             }
         }
         _ => t