Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Ensure significand remains an integer in Python3 json parser
The / operation in Python 2 is "floor division" for int/long types while in Python 3 is "true division". This means that the significand can become a float with the existing code in Python 3. This, in turn, can result in a parse of something like [1.10e1] returning 11 in Python 2 and 11.0 in Python 3. Switching to the // operator resolves this difference. The JSON tests do not catch this difference because the built-in serializer prints floats with the %.15g format which will convert floats with no fractional part to an integer representation. Signed-off-by: Terry Wilson <[email protected]> Signed-off-by: Ben Pfaff <[email protected]>
- Loading branch information