Cast long yychar to int. #760
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.
Starting from JFlex 1.8.0,
yycharis a long.However, it is used to build an antlr
CommonTokenwhich takes an int.Hence, explicit casting is needed.
I propose to cast the
yycharwithjava.lang.Math.toIntExact()which throw an ArithmeticException in case of overflow.This is acceptable because the previous code would have returned an overflowed (negative) position.
See jflex-de/jflex#605 for details.