]> Cypherpunks repositories - gostls13.git/commit
cmd/cgo: for -godefs, promote first field of anonymous union
authorIan Lance Taylor <iant@golang.org>
Wed, 6 Aug 2014 00:10:15 +0000 (17:10 -0700)
committerIan Lance Taylor <iant@golang.org>
Wed, 6 Aug 2014 00:10:15 +0000 (17:10 -0700)
commitf2f17c0ff2b2b712e588886cfa2c05066ef2ae87
treee523a5e2b4c8227cd063aa38886f97af14c62e11
parentf6f2f77142fcf0a4ec317bff6850ffb6ee6f0bb2
cmd/cgo: for -godefs, promote first field of anonymous union

Update #6677

When a struct contains an anonymous union, use the type and
name of the first field in the union.

This should make the glibc <sys/resource.h> file work; in that
file struct rusage has fields like

__extension__ union
{
        long int ru_maxrss;
        __syscall_slong_t __ru_maxrss_word;
};

in which the field that matters is ru_maxrss and
__ru_maxrss_word just exists to advance to the next field on
systems where the kernel uses long long fields but userspace
expects long fields.

LGTM=mikioh.mikioh
R=golang-codereviews, mikioh.mikioh
CC=golang-codereviews
https://golang.org/cl/106260044
misc/cgo/testgodefs/anonunion.go [new file with mode: 0644]
misc/cgo/testgodefs/main.go [new file with mode: 0644]
misc/cgo/testgodefs/test.bash [new file with mode: 0755]
src/cmd/cgo/gcc.go