• Keith Randall's avatar
    cmd/cgo: special case C ptr types to use uintptr · b868616b
    Keith Randall authored
    Some C types are declared as pointers, but C code
    stores non-pointers in them.  When the Go garbage
    collector sees such a pointer, it gets unhappy.
    
    Instead, for these types represent them on the Go
    side with uintptr.
    
    We need this change to handle Apple's CoreFoundation
    CF*Ref types. Users of these types might need to
    update their code like we do in root_cgo_darwin.go.
    The only change that is required under normal
    circumstances is converting some nils to 0.
    A go fix module is provided to help.
    
    Fixes #21897
    
    RELNOTE=yes
    
    Change-Id: I9716cfb255dc918792625f42952aa171cd31ec1b
    Reviewed-on: https://go-review.googlesource.com/66332
    Run-TryBot: Keith Randall <khr@golang.org>
    Reviewed-by: 's avatarRobert Griesemer <gri@golang.org>
    Reviewed-by: 's avatarIan Lance Taylor <iant@golang.org>
    b868616b
Name
Last commit
Last update
..
aes Loading commit data...
cipher Loading commit data...
des Loading commit data...
dsa Loading commit data...
ecdsa Loading commit data...
elliptic Loading commit data...
hmac Loading commit data...
internal/cipherhw Loading commit data...
md5 Loading commit data...
rand Loading commit data...
rc4 Loading commit data...
rsa Loading commit data...
sha1 Loading commit data...
sha256 Loading commit data...
sha512 Loading commit data...
subtle Loading commit data...
tls Loading commit data...
x509 Loading commit data...
crypto.go Loading commit data...
issue21104_test.go Loading commit data...