Number on left is a double precision real. Number on right is what is returned by NINT
3210000000.00000 -2147483648
20000000.0000000 20000000
1027500000.00000 1027500000
I'm questioning this:
3210000000.00000 -2147483648
And, it gives a floating invalid when assigned to what should be a 64 bit integer. (or double precision integer if you prefer)