Fix parsing of semi-reserved tokens at offset > 4GB #6616
Closed
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.
Possibly related to GH-5668
Also affects php 8.0 but this changes the
datastructures in public(?) header files.
(binary ABI change)
PHP 7.4 wouldn't even parse a class with the below example.
namespace
with an offset that's larger than 2**32
Offset is relative to yy_start(the start of the file?)
Low priority because 4GB php files and the configured memory limits to support them are extremely rare - this was only noticed when looking into edge cases in the parser - this test case is artificial
Instead of parsing the token 'namespace', the character range from 4GB before is used due to truncation to 32 bits