pegjs/lib/compiler/passes
David Majda 6ce97457bf Fix left recursion detection
So far, left recursion detector assumed that left recursion occurs only
when the recursive rule is at the very left-hand side of rule's
expression:

  start = start

This didn't catch cases like this:

  start = "a"? start

In general, if a rule reference can be reached without consuming any
input, it can lead to left recursion. This commit fixes the detector to
consider that.

Fixes #190.
2015-04-01 10:10:51 +02:00
..
generate-bytecode.js Make labels behave like block-scoped variables 2015-02-13 14:10:32 +01:00
generate-javascript.js Implement basic support for tracing 2015-03-30 14:00:19 +02:00
remove-proxy-rules.js Simplify visitors by providing default visit functions 2014-06-04 07:41:00 +02:00
report-left-recursion.js Fix left recursion detection 2015-04-01 10:10:51 +02:00
report-missing-rules.js Simplify visitors by providing default visit functions 2014-06-04 07:41:00 +02:00