No-op changes in service of indentation-aware parser #5261
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Motivation
I've had a somewhat long-lived branch full of changes in support of #5000. This
PR takes the ones that don't change behavior and lands them (except for one
small improvement for
kIF error
that is actually new).Commit summary
no-op: Mark
Builder::build
const (1f25166)no-op cleanup in Parser.cc (dbadbb8)
pre-work: Better recovery for
kIF kEND
(9ec9e72)pre-work: Expose yytname_ and yytranslate_ to driver (1c171ca)
This lets us avoid having to write our code in C macros at the top of
the parser file, which will then get exploded into usage sites, and
instead lets us factor it into a simple helper function on the driver.
pre-work: Factor rewind_and_reset to driver (979cbcf)
This test gets better (2629f75)
Test plan
Most things don't change, except one test.