Handle the remaining known issues (modulo snan) with the double/single parsing logic...
authorTanner Gooding <tagoo@outlook.com>
Mon, 26 Nov 2018 19:01:04 +0000 (11:01 -0800)
committerGitHub <noreply@github.com>
Mon, 26 Nov 2018 19:01:04 +0000 (11:01 -0800)
commitb95aedbeb405370a66cd6e367b3826c2d4ec823e
tree943c4d25b7bcd608b8b295f386bfa238b976ac06
parent6cfc3056ed565c6378f8a8dc42bd9bd43b4eb171
Handle the remaining known issues (modulo snan) with the double/single parsing logic (dotnet/coreclr#21036)

* Fixing the double/single parser to return negative zero for `-0`

* Updating the Utf8Parser to allow exponents of arbitrary length

* Updating the double/single parser to support case-insensitive and signed infinity/nan

* Ensure TryParseAsSpecialFloatingPoint handles the case where we have an empty source

* Fixing the number parser to allow `-0` for decimal and to not parse '++infini'

Commit migrated from https://github.com/dotnet/coreclr/commit/1ebc1a9deb24bdb82a0a28afb2f6e853bfa0bf8f
src/libraries/System.Private.CoreLib/src/System/Buffers/Text/Utf8Parser/Utf8Parser.Decimal.cs
src/libraries/System.Private.CoreLib/src/System/Buffers/Text/Utf8Parser/Utf8Parser.Float.cs
src/libraries/System.Private.CoreLib/src/System/Buffers/Text/Utf8Parser/Utf8Parser.Number.cs
src/libraries/System.Private.CoreLib/src/System/Number.Parsing.cs