This is an automated email from the ASF dual-hosted git repository.

zeroshade pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/arrow.git


The following commit(s) were added to refs/heads/main by this push:
     new becfaf31b3 GH-35133: [Go] fix for `math.MaxUint32 overflows int` error 
in 32-bit arch (#35159)
becfaf31b3 is described below

commit becfaf31b31146031050d023216807d116b9cbcd
Author: sunpeng <[email protected]>
AuthorDate: Mon Apr 17 22:20:00 2023 +0800

    GH-35133: [Go] fix for `math.MaxUint32 overflows int` error in 32-bit arch 
(#35159)
    
    
    
    ### Rationale for this change
    
    When compiling on i386 arch, an error like `math.MaxUint32 (untyped int 
constant 4294967295) overflows int` will appear. The Int type is 32-bit and in 
32-bit arch it overflows. In my PR, I cast `int` to `unint` to avoid this error.
    
    * Closes: #35133
    
    Authored-by: sunpeng <[email protected]>
    Signed-off-by: Matt Topol <[email protected]>
---
 go/arrow/array/dictionary.go | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/go/arrow/array/dictionary.go b/go/arrow/array/dictionary.go
index b84ac75404..6ecda0b966 100644
--- a/go/arrow/array/dictionary.go
+++ b/go/arrow/array/dictionary.go
@@ -1561,7 +1561,7 @@ func (u *unifier) GetResultWithIndexType(indexType 
arrow.DataType) (arrow.Array,
        case arrow.INT16:
                toobig = dictLen > math.MaxInt16
        case arrow.UINT32:
-               toobig = dictLen > math.MaxUint32
+               toobig = uint(dictLen) > math.MaxUint32
        case arrow.INT32:
                toobig = dictLen > math.MaxInt32
        case arrow.UINT64:

Reply via email to