Join GitHub today
GitHub is home to over 20 million developers working together to host and review code, manage projects, and build software together.
Rakudo cannot read lines from stdin #860
GDB session showing the issue:
The problem occurs when invoking the PIR directly from Rakudo as well
but not when using NQP
While STDIN gets initialized correctly, somehow the
It is not clear if the problem lies with the Rakudo or Parrot codebase as downgrading to Parrot 4.4.0 fixes (or at least hides) the issue.
Could we get a few more details about the environment in which the above tests are being run? When I do the above on my system (Kubuntu 12.04.1, 64-bit) I don't see the record separator changing.
Also, would it be possible to set a GDB watchpoint on
Thanks for the excellent debugging!
This comment has been minimized.
This comment has been minimized.Show comment Hide comment
I'm on Cygwin, which I did not mention before as I (apparently incorrectly?) believed that this bug (
Playing around some more with the debugger, this appears to be a GC bug: The string header gets recycled while still referenced from the attribute structure.
Perhaps you've got better luck reproducing the bug by running something more involved - I first stumbled upon it when I ran
is not the expected output.
On Sun, Oct 14, 2012 at 11:00:42AM -0700, Gerhard R. wrote:
It's a well-known bug, yes, but it's only manifesting on some systems.
How much memory on that system? That would indicate how often GC is occurring.
AFAICT, in looking at handle.pmc I can't find where the 'record_separator'
referenced this issue
Oct 16, 2012
Here's some PIR which triggers the bug on my system: