Add XFAIL'ed test for return-in-iter, call unimpl when we find it. Closes #100.

This commit is contained in:
Graydon Hoare 2010-07-22 12:24:55 -07:00
parent c96634af4b
commit eaa35611dc
3 changed files with 17 additions and 0 deletions

View File

@ -370,6 +370,7 @@ TEST_XFAILS_X86 := $(MUT_BOX_XFAILS) \
test/run-pass/fn-lval.rs \
test/run-pass/generic-fn-infer.rs \
test/run-pass/generic-recursive-tag.rs \
test/run-pass/iter-ret.rs \
test/run-pass/mlist-cycle.rs \
test/run-pass/mutable-vec-drop.rs \
test/run-pass/obj-as.rs \
@ -430,6 +431,7 @@ TEST_XFAILS_LLVM := $(addprefix test/run-pass/, \
import.rs \
inner-module.rs \
iter-range.rs \
iter-ret.rs \
large-records.rs \
lazy-and-or.rs \
lazy-init.rs \

View File

@ -4532,6 +4532,8 @@ let trans_visitor
calls
| Ast.STMT_ret atom_opt ->
if get_stmt_depth cx stmt.id > 0
then unimpl (Some stmt.id) "ret within iterator-block";
begin
match atom_opt with
None -> ()

View File

@ -0,0 +1,13 @@
iter x() -> int {
}
fn f() -> bool {
for each (int i in x()) {
ret true;
}
ret false;
}
fn main(vec[str] args) -> () {
f();
}