Hello,

In the latest SVN pugs version (r854 on http://svn.perl.org/perl6/pugs),
the following sub returns 24, not 42:
sub foo {
  while (1) {
    return 42;
  }
  return 24;
}

It seems the return statement jumps to the end of the while, instead of
returning from the sub.

Here is a test for this behaviour:

is(eval('sub foo { while (1) { return 24; } return 42; } foo()'), 24,
'return in while');

Reply via email to