Author: pmichaud
Date: Sun Nov 9 10:51:05 2008
New Revision: 32471
Modified:
trunk/languages/perl6/src/parser/actions.pm
trunk/languages/perl6/src/parser/grammar.pg
Log:
[rakudo]: Add pointy blocks to while/until statements (RT #58008).
Modified: trunk/languages/perl6/src/parser/actions.pm
==============================================================================
--- trunk/languages/perl6/src/parser/actions.pm (original)
+++ trunk/languages/perl6/src/parser/actions.pm Sun Nov 9 10:51:05 2008
@@ -187,11 +187,9 @@
}
method while_statement($/) {
- my $cond := $( $<EXPR> );
- my $block := $( $<block> );
- declare_implicit_immediate_vars($block);
- $block.blocktype('immediate');
- make PAST::Op.new( $cond, $block, :pasttype(~$<sym>), :node($/) );
+ my $past := $( $<xblock> );
+ $past.pasttype(~$<sym>);
+ make $past;
}
method repeat_statement($/) {
Modified: trunk/languages/perl6/src/parser/grammar.pg
==============================================================================
--- trunk/languages/perl6/src/parser/grammar.pg (original)
+++ trunk/languages/perl6/src/parser/grammar.pg Sun Nov 9 10:51:05 2008
@@ -266,7 +266,7 @@
rule while_statement {
$<sym>=[while|until]
- <EXPR> <block>
+ <xblock>
{*}
}