Zoffix++ lead to the discovery of a similar bug which can be golfed to: 00:16 < llfourn> m: my $*A = 42; do { start { $*A++ } }; sleep 2; say $*A 00:16 <+camelia> rakudo-moar fbe0a6: OUTPUT«42»
if you put the block outside the start {} you don't get an error but you don't get the side affects. On Sun, Dec 27, 2015 at 7:06 AM Elizabeth Mattijsen via RT < perl6-bugs-follo...@perl.org> wrote: > > > On 26 Dec 2015, at 13:12, Lloyd Fournier (via RT) < > perl6-bugs-follo...@perl.org> wrote: > > > > # New Ticket Created by Lloyd Fournier > > # Please include the string: [perl #127033] > > # in the subject line of all future correspondence about this issue. > > # <URL: https://rt.perl.org/Ticket/Display.html?id=127033 > > > > > > > perl6 -e 'sub t { say $*d }; my $*d = 1; await do { start { t() } }' > > #!>Dynamic variable $*d not found > > Tested on mac and deb. > > Confirmed. > > > But is there a reason you want to use the do { } block? Without it, it > just works! > > $ 6 'sub t { say $*d }; my $*d = 1; await start { t() }’ > 1 > > Looks like any extra scope breaks it: > > $ 6 'sub t { say $*d }; my $*d = 1; await do for 1 { start { t() } }' > Dynamic variable $*d not found > > $ 6 'sub t { say $*d }; my $*d = 1; await 1.map: { start { t() } }' > Dynamic variable $*d not found > > > > Liz > >