@@ -1114,27 +1114,27 @@ func convertToUint64(t NumberTypeImpl_, v interface{}) (uint64, sql.ConvertInRan
11141114 return uint64 (v .UTC ().Unix ()), sql .InRange , nil
11151115 case int :
11161116 if v < 0 {
1117- return uint64 (math .MaxUint64 - uint (- v - 1 )), sql .OutOfRange , nil
1117+ return uint64 (math .MaxUint64 - uint64 (- v - 1 )), sql .OutOfRange , nil
11181118 }
11191119 return uint64 (v ), sql .InRange , nil
11201120 case int8 :
11211121 if v < 0 {
1122- return uint64 (math .MaxUint64 - uint (- v - 1 )), sql .OutOfRange , nil
1122+ return uint64 (math .MaxUint64 - uint64 (- v - 1 )), sql .OutOfRange , nil
11231123 }
11241124 return uint64 (v ), sql .InRange , nil
11251125 case int16 :
11261126 if v < 0 {
1127- return uint64 (math .MaxUint64 - uint (- v - 1 )), sql .OutOfRange , nil
1127+ return uint64 (math .MaxUint64 - uint64 (- v - 1 )), sql .OutOfRange , nil
11281128 }
11291129 return uint64 (v ), sql .InRange , nil
11301130 case int32 :
11311131 if v < 0 {
1132- return uint64 (math .MaxUint64 - uint (- v - 1 )), sql .OutOfRange , nil
1132+ return uint64 (math .MaxUint64 - uint64 (- v - 1 )), sql .OutOfRange , nil
11331133 }
11341134 return uint64 (v ), sql .InRange , nil
11351135 case int64 :
11361136 if v < 0 {
1137- return uint64 (math .MaxUint64 - uint (- v - 1 )), sql .OutOfRange , nil
1137+ return uint64 (math .MaxUint64 - uint64 (- v - 1 )), sql .OutOfRange , nil
11381138 }
11391139 return uint64 (v ), sql .InRange , nil
11401140 case uint :
@@ -1204,35 +1204,35 @@ func convertToUint32(t NumberTypeImpl_, v interface{}) (uint32, sql.ConvertInRan
12041204 switch v := v .(type ) {
12051205 case int :
12061206 if v < 0 {
1207- return uint32 (math .MaxUint32 - uint (- v - 1 )), sql .OutOfRange , nil
1208- } else if v > math .MaxUint32 {
1207+ return uint32 (math .MaxUint32 - uint64 (- v - 1 )), sql .OutOfRange , nil
1208+ } else if int64 ( v ) > int64 ( math .MaxUint32 ) {
12091209 return uint32 (math .MaxUint32 ), sql .OutOfRange , nil
12101210 }
12111211 return uint32 (v ), sql .InRange , nil
12121212 case int8 :
12131213 if v < 0 {
1214- return uint32 (math .MaxUint32 - uint (- v - 1 )), sql .OutOfRange , nil
1215- } else if int (v ) > math .MaxUint32 {
1214+ return uint32 (math .MaxUint32 - uint64 (- v - 1 )), sql .OutOfRange , nil
1215+ } else if int64 (v ) > int64 ( math .MaxUint32 ) {
12161216 return uint32 (math .MaxUint32 ), sql .OutOfRange , nil
12171217 }
12181218 return uint32 (v ), sql .InRange , nil
12191219 case int16 :
12201220 if v < 0 {
1221- return uint32 (math .MaxUint32 - uint (- v - 1 )), sql .OutOfRange , nil
1222- } else if int (v ) > math .MaxUint32 {
1221+ return uint32 (math .MaxUint32 - uint64 (- v - 1 )), sql .OutOfRange , nil
1222+ } else if int64 (v ) > int64 ( math .MaxUint32 ) {
12231223 return uint32 (math .MaxUint32 ), sql .OutOfRange , nil
12241224 }
12251225 return uint32 (v ), sql .InRange , nil
12261226 case int32 :
12271227 if v < 0 {
1228- return uint32 (math .MaxUint32 - uint (- v - 1 )), sql .OutOfRange , nil
1229- } else if int (v ) > math .MaxUint32 {
1228+ return uint32 (math .MaxUint32 - uint64 (- v - 1 )), sql .OutOfRange , nil
1229+ } else if int64 (v ) > int64 ( math .MaxUint32 ) {
12301230 return uint32 (math .MaxUint32 ), sql .OutOfRange , nil
12311231 }
12321232 return uint32 (v ), sql .InRange , nil
12331233 case int64 :
12341234 if v < 0 {
1235- return uint32 (math .MaxUint32 - uint (- v - 1 )), sql .OutOfRange , nil
1235+ return uint32 (math .MaxUint32 - uint64 (- v - 1 )), sql .OutOfRange , nil
12361236 } else if v > math .MaxUint32 {
12371237 return uint32 (math .MaxUint32 ), sql .OutOfRange , nil
12381238 }
0 commit comments