I'm staring at a crash, my eyes are glazing over, and I need sleep. So
I was wondering if anyone would be interested in taking a look at a
.imc file that is giving me a seg fault while marking a hash in a gc
run triggered by a hash PMC allocation. Or at least tell me whether
it's seg faulting on your machine too.

I'll attach the 5KB compressed .imc file (25KB uncompressed; PIR code
is redundant!) It's generated from the following Perl6 code, but you'd
need my local changes in order to regenerate it:

  rule thing() {
      <[a-z]>+
  }

  rule parens() {
      { print "entering parens\n"; }
      \( [ <thing> | <parens> | \s ]* \)
      { print "leaving parens\n"; }
  }

  sub main() {
      my $t = "()()(((blah blah () blah))(blah))";
      my $t2 = $t _ ")";
      print "ok 8\n" if $t2 !~ /^ <parens> $/;
  }

(the "entering/leaving parens" printouts have no effect on the bug;
they're just remnants of my flailing.)

If you run with --gc-debug, it dies a little earlier, but in what
appears to be the same op.

Hopefully,
Steve

Attachment: hash_bug.imc.gz
Description: GNU Zip compressed data

Reply via email to