zaach / jison-lex

generates lexical analyzers. used by jison.
57 stars 33 forks source link

Tests fail with Node ≥ 10 #27

Open guimard opened 5 years ago

guimard commented 5 years ago

Hello, using Node 10.5, I've these 2 errors when launching test:

    test more()
      ⚡ SyntaxError: Unexpected token (
          at new RegExpLexer (/home/xavier/dev/debian/src/pkg-js/packages/node-jison-lex/regexp-lexer.js:124:22)                                                 
          at exports.test more() (/home/xavier/dev/debian/src/pkg-js/packages/node-jison-lex/tests/regexplexer.js:322:17)                                        
          at test (/home/xavier/dev/debian/src/pkg-js/packages/node-jison-lex/node_modules/test/test.js:32:20)                                                   
          at next (/home/xavier/dev/debian/src/pkg-js/packages/node-jison-lex/node_modules/test/test.js:70:72)                                                   
          at done (/home/xavier/dev/debian/src/pkg-js/packages/node-jison-lex/node_modules/test/test.js:29:7)                                                    
          at test (/home/xavier/dev/debian/src/pkg-js/packages/node-jison-lex/node_modules/test/test.js:44:21)                                                   
          at next (/home/xavier/dev/debian/src/pkg-js/packages/node-jison-lex/node_modules/test/test.js:70:72)                                                   
          at done (/home/xavier/dev/debian/src/pkg-js/packages/node-jison-lex/node_modules/test/test.js:29:7)                                                    
          at test (/home/xavier/dev/debian/src/pkg-js/packages/node-jison-lex/node_modules/test/test.js:44:21)                                                   
          at next (/home/xavier/dev/debian/src/pkg-js/packages/node-jison-lex/node_modules/test/test.js:70:72)                                                   
    test defined token returns
      ✓ passed
    test module generator from constructor
      ✓ passed
    test module generator
      ✓ passed
    test generator with more complex lexer
      ⚡ SyntaxError: Unexpected token (
          at new RegExpLexer (/home/xavier/dev/debian/src/pkg-js/packages/node-jison-lex/regexp-lexer.js:124:22)                                                 
          at exports.test generator with more complex lexer (/home/xavier/dev/debian/src/pkg-js/packages/node-jison-lex/tests/regexplexer.js:413:18)             
          at test (/home/xavier/dev/debian/src/pkg-js/packages/node-jison-lex/node_modules/test/test.js:32:20)                                                   
          at next (/home/xavier/dev/debian/src/pkg-js/packages/node-jison-lex/node_modules/test/test.js:70:72)                                                   
          at done (/home/xavier/dev/debian/src/pkg-js/packages/node-jison-lex/node_modules/test/test.js:29:7)                                                    
          at test (/home/xavier/dev/debian/src/pkg-js/packages/node-jison-lex/node_modules/test/test.js:44:21)                                                   
          at next (/home/xavier/dev/debian/src/pkg-js/packages/node-jison-lex/node_modules/test/test.js:70:72)                                                   
          at done (/home/xavier/dev/debian/src/pkg-js/packages/node-jison-lex/node_modules/test/test.js:29:7)                                                    
          at test (/home/xavier/dev/debian/src/pkg-js/packages/node-jison-lex/node_modules/test/test.js:44:21)                                                   
          at next (/home/xavier/dev/debian/src/pkg-js/packages/node-jison-lex/node_modules/test/test.js:70:72)                                                   
BurtHarris commented 3 years ago

I'm hitting these errors too.

fraczak commented 1 year ago

Changing line 57 in regexp-lexer.js to:

rules[i][1] = String(rules[i][1]).replace(/^(?:\s|\n)function\s(\s)(?:\s|\n){((.|\n))}(?:\s|\n|;)$/, '$1'); worked for me.