diff --git a/src/test/run-pass/monomorphize-iface-in-fn-at.rs b/src/test/run-pass/monomorphize-iface-in-fn-at.rs new file mode 100644 index 000000000000..3530426de70b --- /dev/null +++ b/src/test/run-pass/monomorphize-iface-in-fn-at.rs @@ -0,0 +1,22 @@ +// test that invoking functions which require +// dictionaries from inside an fn@ works +// (at one point, it didn't) + +fn mk_nil(cx: C) -> uint { + cx.mk() +} + +iface ty_ops { + fn mk() -> uint; +} + +impl of ty_ops for () { + fn mk() -> uint { 22u } +} + +fn main() { + let fn_env = fn@() -> uint { + mk_nil(()) + }; + assert fn_env() == 22u; +} \ No newline at end of file