• Martin Möhrmann's avatar
    strconv: check bitsize range in ParseInt and ParseUint · 63c42843
    Martin Möhrmann authored
    Return an error when a bitSize below 0 or above 64 is specified.
    
    Move bitSize 0 handling in ParseInt after the call to ParseUint
    to avoid a spill.
    
    AMD64:
    name       old time/op  new time/op  delta
    Atoi       28.9ns ± 6%  27.4ns ± 6%  -5.21%  (p=0.002 n=20+20)
    AtoiNeg    24.6ns ± 2%  23.1ns ± 1%  -6.04%  (p=0.000 n=19+18)
    Atoi64     38.8ns ± 1%  38.0ns ± 1%  -2.03%  (p=0.000 n=17+20)
    Atoi64Neg  35.5ns ± 1%  34.3ns ± 1%  -3.42%  (p=0.000 n=19+20)
    
    Updates #21275
    
    Change-Id: I70f0e4a16fa003f7ea929ca4ef56bd1a4181660b
    Reviewed-on: https://go-review.googlesource.com/55139Reviewed-by: 's avatarRobert Griesemer <gri@golang.org>
    Run-TryBot: Robert Griesemer <gri@golang.org>
    63c42843
Name
Last commit
Last update
..
testdata Loading commit data...
atob.go Loading commit data...
atob_test.go Loading commit data...
atof.go Loading commit data...
atof_test.go Loading commit data...
atoi.go Loading commit data...
atoi_test.go Loading commit data...
decimal.go Loading commit data...
decimal_test.go Loading commit data...
doc.go Loading commit data...
example_test.go Loading commit data...
export_test.go Loading commit data...
extfloat.go Loading commit data...
fp_test.go Loading commit data...
ftoa.go Loading commit data...
ftoa_test.go Loading commit data...
internal_test.go Loading commit data...
isprint.go Loading commit data...
itoa.go Loading commit data...
itoa_test.go Loading commit data...
makeisprint.go Loading commit data...
quote.go Loading commit data...
quote_test.go Loading commit data...
strconv_test.go Loading commit data...