diff --git a/src/Regex/P6Regex/Actions.pm b/src/Regex/P6Regex/Actions.pm index 960bc2e..7e1ac6b 100644 --- a/src/Regex/P6Regex/Actions.pm +++ b/src/Regex/P6Regex/Actions.pm @@ -199,7 +199,11 @@ method metachar:sym($/) { my $name := $ ?? +$ !! ~$; if $ { $past := $[0].ast; - if $past.pasttype eq 'subrule' { + if $past.pasttype eq 'quant' && $past[0].pasttype eq 'subrule' { + $past[0].subtype('capture'); + $past[0].name($name); + } + elsif $past.pasttype eq 'subrule' { $past.subtype('capture'); $past.name($name); }