]> ocean-lang.org Git - ocean/commit
parsegen: detect left-recursive symbols in non-final position.
authorNeilBrown <neil@brown.name>
Tue, 6 Oct 2020 06:02:22 +0000 (17:02 +1100)
committerNeilBrown <neil@brown.name>
Tue, 6 Oct 2020 06:02:22 +0000 (17:02 +1100)
commitabe144f0999c5576e18c74324c2436cd6bd65b2d
tree2549858575a3d7d46bba17c48d1356f1f7b8b95a
parent850a39a0a761e0af89c15253f075ecd9e9ecc6ee
parsegen: detect left-recursive symbols in non-final position.

A left-recursive symbol that appear other than at the end of a
production causes problem for indent-based parsing, as describe in the
document.  So teach parsergen to be able to report them.

Ocean currently has several of these, which I'll need to look into at a
later date.

Signed-off-by: NeilBrown <neil@brown.name>
csrc/parsergen.mdc