Open p6rt opened 9 years ago
In a grammar that uses a proto+parameterized multi, the "multi" is optional according to S05. However, the presence of the "multi" seems to prevent proper operation of this feature under certain circumstances:
# perl6 -e 'grammar f { proto token g {*}; token g:h\ { i* }; token g:h\
It seems to work fine in other circumstances. The same as above, but without the quantifiers yields:
# perl6 -e 'grammar f { proto token g {*}; token g:h\ { i }; token g:h\
Still reproducible (2017.11, HEAD(5929887)). It does print Nil instead of (Any), but same thing. On 2015-03-08 09:22:25, bri@abrij.org wrote:
In a grammar that uses a proto+parameterized multi, the "multi" is optional according to S05. However, the presence of the "multi" seems to prevent proper operation of this feature under certain circumstances:
# perl6 -e 'grammar f { proto token g {*}; token g:h\ { i* }; token g:h\
{ j* }; proto token l {*}; multi token l:m\ { n* }; multi token l:m\ { o* } }; f.parse("i", :rule\ ).say; f.parse("j", :rule\ ).say; f.parse("n", :rule\ ).say; f.parse("o", :rule\ ).say;' 「i」 「j」 「n」 (Any) It seems to work fine in other circumstances. The same as above, but without the quantifiers yields:
# perl6 -e 'grammar f { proto token g {*}; token g:h\ { i }; token g:h\
{ j }; proto token l {*}; multi token l:m\ { n }; multi token l:m\ { o } }; f.parse("i", :rule\ ).say; f.parse("j", :rule\ ).say; f.parse("n", :rule\ ).say; f.parse("o", :rule\ ).say;' 「i」 「j」 「n」 「o」
The RT System itself - Status changed from 'new' to 'open'
Migrated from rt.perl.org#124018 (status was 'open')
Searchable as RT124018$