diff --git a/src/Perl6/Actions.pm b/src/Perl6/Actions.pm index c2c29ee1027..9c7f936b7e7 100644 --- a/src/Perl6/Actions.pm +++ b/src/Perl6/Actions.pm @@ -2510,7 +2510,7 @@ method quote_EXPR($/) { $past := PAST::Stmts.new($past); } else { - $past := PAST::Val.new(:value(~@words[0]), :returns); + $past := PAST::Val.new(:value(~@words[0]), :returns); } } } @@ -2531,7 +2531,7 @@ method quote_delimited($/) { else { if $lastlit gt '' { @parts.push( - PAST::Val.new( :value($lastlit), :returns('Perl6Str') ) + PAST::Val.new( :value($lastlit), :returns('Str') ) ); } @parts.push($ast); @@ -2540,7 +2540,7 @@ method quote_delimited($/) { } if $lastlit gt '' || !@parts { @parts.push( - PAST::Val.new( :value($lastlit), :returns('Perl6Str') ) + PAST::Val.new( :value($lastlit), :returns('Str') ) ); } my $past := @parts ?? @parts.shift !! ''; diff --git a/src/Perl6/Grammar.pm b/src/Perl6/Grammar.pm index 04aa4b70889..799e1971362 100644 --- a/src/Perl6/Grammar.pm +++ b/src/Perl6/Grammar.pm @@ -1410,6 +1410,7 @@ INIT { Perl6::Grammar.O(':prec, :assoc', '%list_prefix'); Perl6::Grammar.O(':prec, :assoc', '%loose_and'); Perl6::Grammar.O(':prec, :assoc', '%loose_or'); + Perl6::Grammar.O(':prec, :assoc', '%sequencer'); } token termish { @@ -1780,6 +1781,11 @@ token infix:sym { ')> } token infix:sym { ')> } token infix:sym { ')> } +token infix:sym«<==» { } +token infix:sym«==>» { } +token infix:sym«<<==» { } +token infix:sym«==>>» { } + token infix:sym<..> { } token infix:sym<^..> { } token infix:sym<..^> { } diff --git a/src/core/operators.pm b/src/core/operators.pm index d3251f5de87..e1ed2678b04 100644 --- a/src/core/operators.pm +++ b/src/core/operators.pm @@ -575,3 +575,19 @@ our multi sub infix:<+>(Whatever, Whatever) { our multi sub infix:<->(Whatever, $rhs) { -> $a { $a - $rhs; }; } + +our multi sub infix:«<==»($a, $b) { + die "Sorry, feed operators not yet implemented"; +} + +our multi sub infix:«==>»($a, $b) { + die "Sorry, feed operators not yet implemented"; +} + +our multi sub infix:«<<==»($a, $b) { + die "Sorry, feed operators not yet implemented"; +} + +our multi sub infix:«==>>»($a, $b) { + die "Sorry, feed operators not yet implemented"; +} diff --git a/tools/update_passing_test_data.pl b/tools/update_passing_test_data.pl index 7e8d499354b..93c5731669b 100644 --- a/tools/update_passing_test_data.pl +++ b/tools/update_passing_test_data.pl @@ -108,7 +108,7 @@ sub go { $all_passed = 'A' if ! $agg->has_errors; printf "[%s%s%s] (% 3d/%-3d) %s\n", $some_passed, $plan_ok, $all_passed, $actually_passed, $planned, $orig - if $actually_passed; + if $actually_passed || ($plan_ok && $planned > 0); } sub read_specfile {