You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Since we don't have glibc shims for some of the FD_ function declared in sys/select.h, those have been redeclared in FSWatch.swift.
On Linux, this is the set of defines that create the fd_set structure:
typedef long int __fd_mask;
/* Some versions of <linux/posix_types.h> define this macros. */
#undef __NFDBITS
/* It's easier to assume 8-bit bytes than to get CHAR_BIT. */
#define __NFDBITS (8 * (int) sizeof (__fd_mask))
#define __FD_MASK(d) ((__fd_mask) (1UL << ((d) % __NFDBITS)))
#define __FD_SETSIZE 1024 //Defined elsewhere.
/* fd_set for select and pselect. */
typedef struct
{
__fd_mask __fds_bits[__FD_SETSIZE / __NFDBITS];
} fd_set;
I wouldn't be surprised if __FD_SETSIZE had another value on a different platform.
Edit: On arm32 the overall size of the struct is the same but the slot are only 32bits long now, increasing the number of slots to 32 as reported by the error.
While the patch added here will include an ifdef for arm32, the easier solution to this would be to ad the required function to the glibc shim (probably the actual fix I will propose to swiftpm).
The text was updated successfully, but these errors were encountered: