From c06ea8f9445dbb5eda99ac8730d7fb2177df6816 Mon Sep 17 00:00:00 2001 From: Graydon Hoare Date: Fri, 25 Jun 2010 12:15:40 -0700 Subject: Add test of recursive object types (ha, work by default) and fix effect-walker bug revealed by it. --- src/test/run-pass/obj-recursion.rs | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 src/test/run-pass/obj-recursion.rs (limited to 'src/test') diff --git a/src/test/run-pass/obj-recursion.rs b/src/test/run-pass/obj-recursion.rs new file mode 100644 index 00000000..3e562e36 --- /dev/null +++ b/src/test/run-pass/obj-recursion.rs @@ -0,0 +1,25 @@ +type adder = + obj { + fn add(); + }; + +obj leaf_adder(int x) { + fn add() { + log "leaf"; + log x; + } +} +obj delegate_adder(adder a) { + fn add() { + a.add(); + } +} + +fn main() { + auto x = + delegate_adder + (delegate_adder + (delegate_adder + (leaf_adder(10)))); + x.add(); +} \ No newline at end of file -- cgit v1.2.3