BEGIN { $| = 1; print "1..9\n"; } END {print "not ok 1\n" unless $loaded;} use Coro::State; $loaded = 1; print "ok 1\n"; my $main = new Coro::State; my $proca = new Coro::State \&a; my $procb = new Coro::State \&b; sub a { print $/ eq "\n" ? "" : "not ", "ok 3\n"; $/ = 77; print "ok 4\n"; $proca->transfer ($main); print $/ == 77 ? "" : "not ", "ok 6\n"; $proca->transfer ($main); print "not ok 7\n"; die; } sub b { print $/ ne "\n" ? "not " : "", "ok 8\n"; $procb->transfer ($main); print "not ok 9\n"; die; } $/ = 55; print "ok 2\n"; $main->transfer ($proca); print $/ != 55 ? "not " : "ok 5\n"; $main->transfer ($proca); print $/ != 55 ? "not " : "ok 7\n"; $main->transfer ($procb); print $/ != 55 ? "not " : "ok 9\n";