From d90ad442b412448f66e7f4401f1d26d9f2e66454 Mon Sep 17 00:00:00 2001 From: Patrick Walton Date: Thu, 16 Jun 2011 15:07:21 -0700 Subject: [PATCH] rustc: Work around leak when translating interior vectors. Un-XFAIL interior-vec.rs. --- src/comp/middle/trans.rs | 8 ++++++-- src/test/run-pass/interior-vec.rs | 5 ----- 2 files changed, 6 insertions(+), 7 deletions(-) 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;