about summary refs log tree commit diff
path: root/src/comp
diff options
context:
space:
mode:
authorMarijn Haverbeke <marijnh@gmail.com>2012-02-28 10:38:02 +0100
committerMarijn Haverbeke <marijnh@gmail.com>2012-02-28 16:37:24 +0100
commit2115cba4ee52099a5fe5611364a69c8b2df99765 (patch)
treeee70154d0ce10528a2436926841ed61cebe62bdc /src/comp
parent1fd9abaa4765e579cc5829530018ee5386e89f47 (diff)
Bail out of calling tydesc glue in an unreachable context
Closes #1901
Diffstat (limited to 'src/comp')
-rw-r--r--src/comp/middle/trans/base.rs1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/comp/middle/trans/base.rs b/src/comp/middle/trans/base.rs
index 0d259d1392e..ded3d737bc5 100644
--- a/src/comp/middle/trans/base.rs
+++ b/src/comp/middle/trans/base.rs
@@ -1286,6 +1286,7 @@ fn lazily_emit_tydesc_glue(ccx: crate_ctxt, field: int,
 fn call_tydesc_glue_full(cx: block, v: ValueRef, tydesc: ValueRef,
                          field: int, static_ti: option<@tydesc_info>) {
     lazily_emit_tydesc_glue(cx.ccx(), field, static_ti);
+    if cx.unreachable { ret; }
 
     let static_glue_fn = none;
     alt static_ti {