From 031529e3fe34267168a43cf74dbdd9e41f12ac43 Mon Sep 17 00:00:00 2001 From: Patrick Walton Date: Thu, 18 Aug 2011 18:13:36 -0700 Subject: [PATCH] rustc: Only emit gc root intrinsic calls if the GC flag is on, to work around #836 --- src/comp/middle/trans.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/comp/middle/trans.rs b/src/comp/middle/trans.rs index 122d666cc2f..1302e6d0744 100644 --- a/src/comp/middle/trans.rs +++ b/src/comp/middle/trans.rs @@ -5626,7 +5626,9 @@ fn alloc_ty(cx: &@block_ctxt, t: &ty::t) -> result { // past caller conventions and may well make sense again, // so we leave it as-is. - bcx = gc::add_gc_root(bcx, val, t); + if (bcx_tcx(cx).sess.get_opts().do_gc) { + bcx = gc::add_gc_root(bcx, val, t); + } ret rslt(cx, val); }