We didn't backport any of the number parsing changes to 0.2.1 since those are features.
On Fri, Feb 28, 2014 at 8:27 AM, Pierre-Yves Gérardy <[email protected]>wrote: > That approach works, at least for 64 bits CPUs. > > In v0.2, parse(str) will choke on number overflow and throw a ParseError. > > It would be nice if someone using v0.2.1 and a 32bit machine (old OS X?) > could tell me what happens when you run this: > > parse("9223372036854775807") > parse("-9223372036854775808") > > —Pierre-Yves > > > On Friday, February 28, 2014 11:53:51 AM UTC+1, Pierre-Yves Gérardy wrote: >> >> Short of re-implementing parseint, is there a way to work around this? >> >> I was thinking of something like this (for Int64 only) >> >> try >> num = parseint(Int64, str) >> if num != parse(str) throw(FOO) end >> num >> catch ... end >> >> But I don't know if it would work properly on 32 bits CPUs. >> >> -- Pierre-Yves >> >> On Saturday, November 23, 2013 5:07:47 PM UTC+1, Stefan Karpinski wrote: >>> >>> This is now done except for 128-bit integers, where LLVM's overflow >>> detection is broken on some platforms. Issue opened to track the 128-bit >>> problems: https://github.com/JuliaLang/julia/issues/4905. >>> >>> >>> On Thu, Nov 21, 2013 at 2:29 AM, Eric Davies <[email protected]> wrote: >>> >>>> Thanks, glad to see this being worked on :) >>>> >>>> >>>> On Wednesday, 20 November 2013 18:15:17 UTC-6, Stefan Karpinski wrote: >>>> >>>>> I started some work on this: https://github.com/JuliaLang/j >>>>> ulia/pull/4875. >>>>> >>>>> >>>>> On Wed, Nov 20, 2013 at 6:33 PM, Stefan Karpinski < >>>>> [email protected]> wrote: >>>>> >>>>>> Yes, this should raise an error on overflow: >>>>>> >>>>>> https://github.com/JuliaLang/julia/blob/704b852d54cb9b02f07e >>>>>> a084b102dec8fb2dca2a/base/string.jl#L1472 >>>>>> >>>>>> Up-for-grabs issue created: https://github.com/JuliaLang/j >>>>>> ulia/issues/4874. >>>>>> >>>>>> >>>>>> On Wed, Nov 20, 2013 at 6:00 PM, Eric Davies <[email protected]>wrote: >>>>>> >>>>>>> julia> integer("9223372036854775807") >>>>>>> 9223372036854775807 >>>>>>> >>>>>>> julia> integer("9223372036854775808") >>>>>>> -9223372036854775808 >>>>>>> >>>>>>> I'm looking for a function that will error (or return some >>>>>>> indication of validity) on large integers rather than failing. Does >>>>>>> such a >>>>>>> thing exist? It's my opinion that parseint should do this, even though >>>>>>> it >>>>>>> currently performs the same as above. >>>>>>> >>>>>> >>>>>> >>>>> >>>
