Fix for issue 943: improper parsing of hexadecimal and octal scalars #947
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.
This is a fix for issue 943 that I reported. The root of the issue is that parsing sometimes surprisingly resulted in negative numbers and there was no way to specify some positive values with hexadecimal or octal scalars. The problem stems from trying to guess the width of the value because YAML does not provide a means of doing this (see issue 943 for details).
This changes the behavior for hexadecimal deserialization so I'm prepared for there to be some controversy here, but I think this is more in line with how a developer using the library might expect the deserialization to behave.
This also fixes the issue with octal parsing which was not functioning properly before.