diff options
Diffstat (limited to 'libgo/misc/cgo/test/test.go')
-rw-r--r-- | libgo/misc/cgo/test/test.go | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/libgo/misc/cgo/test/test.go b/libgo/misc/cgo/test/test.go index b014899..35bc3a1 100644 --- a/libgo/misc/cgo/test/test.go +++ b/libgo/misc/cgo/test/test.go @@ -897,6 +897,16 @@ static uint16_t issue31093F(uint16_t v) { return v; } // issue 32579 typedef struct S32579 { unsigned char data[1]; } S32579; + +// issue 38649 +// Test that #define'd type aliases work. +#define netbsd_gid unsigned int + +// issue 40494 +// Inconsistent handling of tagged enum and union types. +enum Enum40494 { X_40494 }; +union Union40494 { int x; }; +void issue40494(enum Enum40494 e, union Union40494* up) {} */ import "C" @@ -2192,3 +2202,18 @@ func test32579(t *testing.T) { t.Errorf("&s[0].data[0] failed: got %d, want %d", s[0].data[0], 1) } } + +// issue 38649 + +var issue38649 C.netbsd_gid = 42 + +// issue 39877 + +var issue39877 *C.void = nil + +// issue 40494 +// No runtime test; just make sure it compiles. + +func Issue40494() { + C.issue40494(C.enum_Enum40494(C.X_40494), (*C.union_Union40494)(nil)) +} |