Perl6:为什么substr-rw表现得这样?

sid*_*com 2 substr perl6

为什么在这里substr-rw切断尾随6

#!/usr/bin/env perl6
use v6;

my $str = '123';
$str ~= '.' x 30;
$str ~= '456';

say $str;       #   123..............................456
$str.substr-rw( 0, 10 ) = '';
say $str;       #   ........................45
Run Code Online (Sandbox Code Playgroud)
perl6 --version
This is Rakudo version 2016.03-38-g8df1a69 built on MoarVM version 2016.03-46-g50c7f6a implementing Perl 6.c.
Run Code Online (Sandbox Code Playgroud)

Chr*_*oph 5

更新: 2016-07-21之后构建的Rakudo/MoarVM应该正常运行.

对我来说看起来像个错误.请注意,字符串的构造方式很重要:

my $a = '.' x 3 ~ 'x';
my $b = sprintf('%s', $a); # or just '...x', but not "$a"

say $a; #=> ..x
say $b; #=> ..x

$a.substr-rw( 0, 2 ) = '';
$b.substr-rw( 0, 2 ) = '';

say $a; #=> ..
say $b; #=> .x
Run Code Online (Sandbox Code Playgroud)

更新:已报告错误:RT#127782