zaach / jison

Bison in JavaScript.
http://jison.org
4.34k stars 448 forks source link

"Jison is not defined" when running generated parser in debug mode #313

Open cosmicexplorer opened 8 years ago

cosmicexplorer commented 8 years ago

Generated parser in debug mode with jison -t <grammar> <lex>. Got ReferenceError: Jison is not defined when running parse() on the generated parser. Traced error back to code:

trace: function trace() {
        Jison.print.apply(null, arguments);
}

in the generated output, which relies upon "Jison" to be previously defined. The Jison.print.apply call isn't there in the non-debug mode, which is why it doesn't happen all the time.

Solved by adding var Jison = require('jison'); to the top of my grammar file between %{%}. Not a huge problem, just annoying. This could be pretty easily added to the compiled output during a debug parser generation, I think.

cosmicexplorer commented 7 years ago

This is still an issue, although the solution I showed above still works. I want to make sure this is an error before I submit an (extremely trivial) pull request. Not sure if this being actively maintained any more.

GerHobbelt commented 7 years ago

You might want to check out my fork for this: https://github.com/GerHobbelt/jison/blob/master/lib/jison.js#L1699