You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Jan 3, 2023. It is now read-only.
Mono should raise a System.OverflowException for this obscure case when converting a large negative biginteger to an int64. Instead it returns a positive int64.
open System.Numerics
let x = -1I * BigInteger.Pow(2I,63)
int64 (x - 1I)
// The value is -9223372036854775809
// Mono gives: val it : int64 = 9223372036854775807L
// .NET gives: System.OverflowException
The text was updated successfully, but these errors were encountered:
The Mono bug this is working around was fixed in late 2013, and is in the Mono 3.2 series
that F# already strongly recommends.
(cherry picked from commit 28db078)
This issue was closed.
Sign up for freeto subscribe to this conversation on GitHub.
Already have an account?
Sign in.
This is very corner case!!
Mono should raise a System.OverflowException for this obscure case when converting a large negative biginteger to an int64. Instead it returns a positive int64.
open System.Numerics
let x = -1I * BigInteger.Pow(2I,63)
int64 (x - 1I)
// The value is -9223372036854775809
// Mono gives: val it : int64 = 9223372036854775807L
// .NET gives: System.OverflowException
The text was updated successfully, but these errors were encountered: