On Tue Oct 8 20:31:11 2024 +0000, Jacek Caban wrote:
It seems that most of `tIdentifier` -> `Identifier` changes should not depend on lexer changes nor *NoES5. It would be nice to split them. Unless I'm missing something, `ProprtyDefinition` could have explicit rules like `kGET ':' AssignmentExpression` instead of depending on a lexer hack. Is there anything other than labelled statements that need the lexer hack? Did you see actual code depending that?
Yeah, it's used by some of the common js libs/frameworks/whatever they are called, although not 100% sure if it was for labels as well. The problem is that it generates conflicts, and last time I tried to upstream this (years back, until I revisited it now), I was told not to increase bison conflicts. But I added new tests now and those conflicts were wrong anyway since they were failing to parse.
Thanks for the suggestion, I'll try to duplicate the rules, maybe I can get rid of (some of?) the hacks.