@@ -180,15 +180,6 @@ fn test_apple(target: &str) {
180
180
[ x86_64] : "crt_externs.h" ,
181
181
}
182
182
183
- cfg. skip_struct ( move |ty| {
184
- match ty {
185
- // FIXME: actually a union
186
- "sigval" => true ,
187
-
188
- _ => false ,
189
- }
190
- } ) ;
191
-
192
183
cfg. skip_const ( move |name| {
193
184
match name {
194
185
// These OSX constants are removed in Sierra.
@@ -229,14 +220,6 @@ fn test_apple(target: &str) {
229
220
}
230
221
} ) ;
231
222
232
- cfg. skip_field_type ( move |struct_, field| {
233
- match ( struct_, field) {
234
- // FIXME: actually a union
235
- ( "sigevent" , "sigev_value" ) => true ,
236
- _ => false ,
237
- }
238
- } ) ;
239
-
240
223
cfg. volatile_item ( |i| {
241
224
use ctest:: VolatileItemKind :: * ;
242
225
match i {
@@ -361,15 +344,6 @@ fn test_openbsd(target: &str) {
361
344
"sys/shm.h" ,
362
345
}
363
346
364
- cfg. skip_struct ( move |ty| {
365
- match ty {
366
- // FIXME: actually a union
367
- "sigval" => true ,
368
-
369
- _ => false ,
370
- }
371
- } ) ;
372
-
373
347
cfg. skip_const ( move |name| {
374
348
match name {
375
349
// Removed in OpenBSD 6.0
@@ -739,8 +713,6 @@ fn test_solarish(target: &str) {
739
713
return true ;
740
714
}
741
715
match ty {
742
- // union, not a struct
743
- "sigval" => true ,
744
716
// a bunch of solaris-only fields
745
717
"utmpx" if is_illumos => true ,
746
718
_ => false ,
@@ -755,8 +727,6 @@ fn test_solarish(target: &str) {
755
727
"sigaction" if field == "sa_sigaction" => true ,
756
728
// Missing in illumos
757
729
"sigevent" if field == "ss_sp" => true ,
758
- // Avoid sigval union issues
759
- "sigevent" if field == "sigev_value" => true ,
760
730
// const issues
761
731
"sigevent" if field == "sigev_notify_attributes" => true ,
762
732
@@ -938,8 +908,6 @@ fn test_netbsd(target: &str) {
938
908
939
909
cfg. skip_struct ( move |ty| {
940
910
match ty {
941
- // This is actually a union, not a struct
942
- "sigval" => true ,
943
911
// These are tested as part of the linux_fcntl tests since there are
944
912
// header conflicts when including them with all the other structs.
945
913
"termios2" => true ,
@@ -1009,8 +977,6 @@ fn test_netbsd(target: &str) {
1009
977
( struct_ == "ifaddrs" && field == "ifa_ifu" ) ||
1010
978
// sighandler_t type is super weird
1011
979
( struct_ == "sigaction" && field == "sa_sigaction" ) ||
1012
- // sigval is actually a union, but we pretend it's a struct
1013
- ( struct_ == "sigevent" && field == "sigev_value" ) ||
1014
980
// aio_buf is "volatile void*" and Rust doesn't understand volatile
1015
981
( struct_ == "aiocb" && field == "aio_buf" )
1016
982
} ) ;
@@ -1149,9 +1115,6 @@ fn test_dragonflybsd(target: &str) {
1149
1115
1150
1116
cfg. skip_struct ( move |ty| {
1151
1117
match ty {
1152
- // This is actually a union, not a struct
1153
- "sigval" => true ,
1154
-
1155
1118
// FIXME: These are tested as part of the linux_fcntl tests since
1156
1119
// there are header conflicts when including them with all the other
1157
1120
// structs.
@@ -1215,8 +1178,6 @@ fn test_dragonflybsd(target: &str) {
1215
1178
( struct_ == "ifaddrs" && field == "ifa_ifu" ) ||
1216
1179
// sighandler_t type is super weird
1217
1180
( struct_ == "sigaction" && field == "sa_sigaction" ) ||
1218
- // sigval is actually a union, but we pretend it's a struct
1219
- ( struct_ == "sigevent" && field == "sigev_value" ) ||
1220
1181
// aio_buf is "volatile void*" and Rust doesn't understand volatile
1221
1182
( struct_ == "aiocb" && field == "aio_buf" )
1222
1183
} ) ;
@@ -1453,9 +1414,6 @@ fn test_android(target: &str) {
1453
1414
1454
1415
t if t. ends_with ( "_t" ) => t. to_string ( ) ,
1455
1416
1456
- // sigval is a struct in Rust, but a union in C:
1457
- "sigval" => format ! ( "union sigval" ) ,
1458
-
1459
1417
// put `struct` in front of all structs:.
1460
1418
t if is_struct => format ! ( "struct {}" , t) ,
1461
1419
@@ -1550,9 +1508,7 @@ fn test_android(target: &str) {
1550
1508
1551
1509
cfg. skip_field_type ( move |struct_, field| {
1552
1510
// This is a weird union, don't check the type.
1553
- ( struct_ == "ifaddrs" && field == "ifa_ifu" ) ||
1554
- // sigval is actually a union, but we pretend it's a struct
1555
- ( struct_ == "sigevent" && field == "sigev_value" )
1511
+ struct_ == "ifaddrs" && field == "ifa_ifu"
1556
1512
} ) ;
1557
1513
1558
1514
cfg. skip_field ( move |struct_, field| {
@@ -1692,9 +1648,6 @@ fn test_freebsd(target: &str) {
1692
1648
1693
1649
t if t. ends_with ( "_t" ) => t. to_string ( ) ,
1694
1650
1695
- // sigval is a struct in Rust, but a union in C:
1696
- "sigval" => format ! ( "union sigval" ) ,
1697
-
1698
1651
// put `struct` in front of all structs:.
1699
1652
t if is_struct => format ! ( "struct {}" , t) ,
1700
1653
@@ -2034,10 +1987,6 @@ fn test_emscripten(target: &str) {
2034
1987
2035
1988
cfg. skip_struct ( move |ty| {
2036
1989
match ty {
2037
- // This is actually a union, not a struct
2038
- // FIXME: is this necessary?
2039
- "sigval" => true ,
2040
-
2041
1990
// FIXME: It was removed in
2042
1991
// emscripten-core/emscripten@953e414
2043
1992
"pthread_mutexattr_t" => true ,
@@ -2086,9 +2035,6 @@ fn test_emscripten(target: &str) {
2086
2035
// sighandler_t type is super weird
2087
2036
// FIXME: is this necessary?
2088
2037
( struct_ == "sigaction" && field == "sa_sigaction" ) ||
2089
- // sigval is actually a union, but we pretend it's a struct
2090
- // FIXME: is this necessary?
2091
- ( struct_ == "sigevent" && field == "sigev_value" ) ||
2092
2038
// aio_buf is "volatile void*" and Rust doesn't understand volatile
2093
2039
// FIXME: is this necessary?
2094
2040
( struct_ == "aiocb" && field == "aio_buf" )
@@ -2217,10 +2163,8 @@ fn test_vxworks(target: &str) {
2217
2163
2218
2164
// FIXME
2219
2165
cfg. skip_fn ( move |name| match name {
2220
- // sigval
2221
- "sigqueue" | "_sigqueue"
2222
2166
// sighandler_t
2223
- | "signal"
2167
+ "signal"
2224
2168
// not used in static linking by default
2225
2169
| "dlerror" => true ,
2226
2170
_ => false ,
@@ -2506,9 +2450,6 @@ fn test_linux(target: &str) {
2506
2450
// which is absent in glibc, has to be defined.
2507
2451
"__timeval" => true ,
2508
2452
2509
- // FIXME: This is actually a union, not a struct
2510
- "sigval" => true ,
2511
-
2512
2453
// This type is tested in the `linux_termios.rs` file since there
2513
2454
// are header conflicts when including them with all the other
2514
2455
// structs.
@@ -2700,8 +2641,6 @@ fn test_linux(target: &str) {
2700
2641
( struct_ == "sigaction" && field == "sa_sigaction" ) ||
2701
2642
// __timeval type is a patch which doesn't exist in glibc
2702
2643
( struct_ == "utmpx" && field == "ut_tv" ) ||
2703
- // sigval is actually a union, but we pretend it's a struct
2704
- ( struct_ == "sigevent" && field == "sigev_value" ) ||
2705
2644
// this one is an anonymous union
2706
2645
( struct_ == "ff_effect" && field == "u" ) ||
2707
2646
// `__exit_status` type is a patch which is absent in musl
0 commit comments