diff --git a/src/comp/middle/trans.rs b/src/comp/middle/trans.rs index e0305d91b4fb..4719001db608 100644 --- a/src/comp/middle/trans.rs +++ b/src/comp/middle/trans.rs @@ -3456,12 +3456,16 @@ mod ivec { cx.fcx.lcx.ccx.tcx.sess.bug("non-istr/ivec in trans_append"); } } + // Gather the various type descriptors we'll need. - auto rslt = get_tydesc(cx, t, false, none); + // FIXME (issue #511): This is needed to prevent a leak. + auto no_tydesc_info = none; + + auto rslt = get_tydesc(cx, t, false, no_tydesc_info); auto vec_tydesc = rslt.val; auto bcx = rslt.bcx; - rslt = get_tydesc(bcx, unit_ty, false, none); + rslt = get_tydesc(bcx, unit_ty, false, no_tydesc_info); auto unit_tydesc = rslt.val; bcx = rslt.bcx; diff --git a/src/test/run-pass/interior-vec.rs b/src/test/run-pass/interior-vec.rs index be1927a1d3d6..7788b7aa6ed5 100644 --- a/src/test/run-pass/interior-vec.rs +++ b/src/test/run-pass/interior-vec.rs @@ -1,9 +1,4 @@ // xfail-stage0 -// xfail-stage1 -// xfail-stage2 -// xfail-stage3 - -// works, but leaks in the compiler :( import rusti::ivec_len;