On Mon Jan 04 11:53:44 2016, coke wrote:
> On Thu Dec 31 05:04:23 2015, lue wrote:
> > There's unfortunately no real diagnostic I can provide for the error
> > specifically, since the result of the bug is a failed grammar parse.
> >
> > The grammar of my SUPERNOVA project
> > (https://github.com/ShimmerFairy/SUPERNOVA) has been failing since
> > the
> > CURI branch was merged into mainline rakudo, for reasons that are
> > unclear. I can verify that switching to a pre-CURI-merge commit (e.g.
> > 6d9d0f11aba8e2f465c2958a9311d9d4016017ff, the last commit before the
> > fast-forward merge of CURI) will allow the grammar to work again,
> > with
> > no changes to SUPERNOVA, thus it's an issue with rakudo.
> >
> > My attempt to bisect rakudo led to commit
> > ac7b2a5a8381d5f255906437d1980c9c3b77e2a5
> > (https://github.com/rakudo/rakudo/commit/ac7b2a5a8381d5f255906437d1980c9c3b77e2a5),
> > however as you can see the reason why _this_ commit should break
> > grammar parsing is a complete mystery. (I may try bisecting again
> > sometime to confirm the result.)
> >
> > Like I said, there's absolutely nothing I provide in terms of errors,
> > since the only indicator is just the grammar suddenly failing to
> > match
> > a valid string. It seems to be centered around the "directive" multi
> > token in my grammar, however I don't have any more specific info on
> > the location of the issue.
> 
> Even if some golfed code isn't possible, providing explicit
> instructions about how to see the breakage would be helpful, e.g.
> "check out from this repo, checkout this specific version, run this
> specific code, get this result, expect this other result." That will
> at least give others the change to try to golf the problem.

Note that bisecting this pre and post Christmas is also difficult because 
SUPERNOVA depends on Grammar::Parsefail - which you'd normally install with 
panda, and the behavior here intentionally changed as part of the CURI merge.

So a full bisect would involve finding an appropriate version of panda to go 
with the rakudo commit (and, btw, removing the install directory after each 
bisect step to insure you're using the version of nqp or moar that goes with 
that commit.) This makes it very difficult to track down via a bisect. (Not to 
mention tracking the version of any modules like Grammar::Parsefail over that 
period)

Golfing the test.p6 script (reported elsewhere as a canary for this problem) is 
probably the easiest way forward at this point.
-- 
Will "Coke" Coleda

Reply via email to