Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(gather foo()).rotor($n, :partial) broken by fd8df7f2ad #6060

Closed
p6rt opened this issue Feb 6, 2017 · 4 comments
Closed

(gather foo()).rotor($n, :partial) broken by fd8df7f2ad #6060

p6rt opened this issue Feb 6, 2017 · 4 comments
Labels
regression Issue did not exist previously

Comments

@p6rt
Copy link

p6rt commented Feb 6, 2017

Migrated from rt.perl.org#130725 (status was 'resolved')

Searchable as RT130725$

@p6rt
Copy link
Author

p6rt commented Feb 6, 2017

From @jnthn

Discovered this after some $dayjob code got busted by updating Rakudo.
After bisecting, I got it down to this commit​:

rakudo/rakudo@fd8df7f

And from that thankfully could reduced the bug from the couple of thousand
line app to the following code​:

11​:50 < jnthn> m​: sub foo() { for ^20 { take 'x' } }; for (gather
  foo()).rotor(3, :partial) { .say }
11​:50 <+camelia> rakudo-moar c0a907​: OUTPUT«(x x x)␤(x x x)␤(x x x)␤(x x
x)␤(x
  x x)␤(x x x)␤(x x)␤Cannot invoke this object (REPR​:
  Uninstantiable; Callable)␤ in block <unit> at <tmp> line
1␤␤»

Note that putting a .list back in fixes it​:

11​:50 < jnthn> m​: sub foo() { for ^20 { take 'x' } }; for (gather
  foo()).list.rotor(3, :partial) { .say }
11​:50 <+camelia> rakudo-moar c0a907​: OUTPUT«(x x x)␤(x x x)␤(x x x)␤(x x
x)␤(x
  x x)␤(x x x)␤(x x)␤»

Bisectable also pointed to the same commit for this code, so it seems
that's the culprit.

@p6rt
Copy link
Author

p6rt commented Feb 10, 2017

From @zoffixznet

On Mon, 06 Feb 2017 04​:04​:16 -0800, consulting@​jnthn.net wrote​:

Discovered this after some $dayjob code got busted by updating Rakudo.
After bisecting, I got it down to this commit​:

rakudo/rakudo@fd8df7f

And from that thankfully could reduced the bug from the couple of
thousand
line app to the following code​:

11​:50 < jnthn> m​: sub foo() { for ^20 { take 'x' } }; for (gather
foo()).rotor(3, :partial) { .say }
11​:50 <+camelia> rakudo-moar c0a907​: OUTPUT«(x x x)␤(x x x)␤(x x x)␤(x
x
x)␤(x
x x)␤(x x x)␤(x x)␤Cannot invoke this object (REPR​:
Uninstantiable; Callable)␤ in block <unit> at <tmp>
line
1␤␤»

Note that putting a .list back in fixes it​:

11​:50 < jnthn> m​: sub foo() { for ^20 { take 'x' } }; for (gather
foo()).list.rotor(3, :partial) { .say }
11​:50 <+camelia> rakudo-moar c0a907​: OUTPUT«(x x x)␤(x x x)␤(x x x)␤(x
x
x)␤(x
x x)␤(x x x)␤(x x)␤»

Bisectable also pointed to the same commit for this code, so it seems
that's the culprit.

Thank you for the report. This is now fixed.

Fix​: rakudo/rakudo@bcd902a43e
Test​: Raku/roast@52668af6c5

@p6rt
Copy link
Author

p6rt commented Feb 10, 2017

The RT System itself - Status changed from 'new' to 'open'

@p6rt
Copy link
Author

p6rt commented Feb 10, 2017

@zoffixznet - Status changed from 'open' to 'resolved'

@p6rt p6rt closed this as completed Feb 10, 2017
@p6rt p6rt added the regression Issue did not exist previously label Jan 5, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
regression Issue did not exist previously
Projects
None yet
Development

No branches or pull requests

1 participant