aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/comp/middle/trans.rs4
-rw-r--r--src/test/run-pass/artificial-block.rs4
2 files changed, 2 insertions, 6 deletions
diff --git a/src/comp/middle/trans.rs b/src/comp/middle/trans.rs
index b479efef..0790cf19 100644
--- a/src/comp/middle/trans.rs
+++ b/src/comp/middle/trans.rs
@@ -5488,7 +5488,7 @@ fn trans_break_cont(@block_ctxt cx, bool to_end) -> result {
}
}
}
- ret res(bcx, C_nil());
+ ret res(new_sub_block_ctxt(bcx, "unreachable"), C_nil());
}
case (_) {
alt (cleanup_cx.parent) {
@@ -5544,7 +5544,7 @@ fn trans_ret(@block_ctxt cx, &option.t[@ast.expr] e) -> result {
}
bcx.build.RetVoid();
- ret res(bcx, C_nil());
+ ret res(new_sub_block_ctxt(bcx, "unreachable"), C_nil());
}
fn trans_be(@block_ctxt cx, @ast.expr e) -> result {
diff --git a/src/test/run-pass/artificial-block.rs b/src/test/run-pass/artificial-block.rs
index 30344c4c..e09dbcc1 100644
--- a/src/test/run-pass/artificial-block.rs
+++ b/src/test/run-pass/artificial-block.rs
@@ -1,8 +1,4 @@
// xfail-stage0
-// xfail-stage1
-// xfail-stage2
-// xfail-stage1
-// xfail-stage2
fn f() -> int {
{ ret 3; }
}