1#include <sys/select.h>
2#define T(t) (t*)0;
3#define F(t,n) {t *y = &x.n;}
4#define C(n) switch(n){case n:;}
5static void f()
6{
7T(time_t)
8T(suseconds_t)
9T(sigset_t)
10T(struct timespec)
11T(fd_set)
12{
13struct timeval x;
14F(time_t, tv_sec)
15F(suseconds_t, tv_usec)
16}
17C(FD_SETSIZE)
18#ifndef FD_CLR
19{void(*p)(int,fd_set*) = FD_CLR;}
20#endif
21#ifndef FD_ISSET
22{int(*p)(int,fd_set*) = FD_ISSET;}
23#endif
24#ifndef FD_SET
25{void(*p)(int,fd_set*) = FD_SET;}
26#endif
27#ifndef FD_ZERO
28{void(*p)(fd_set*) = FD_ZERO;}
29#endif
30{int(*p)(int,fd_set*restrict,fd_set*restrict,fd_set*restrict,const struct timespec*restrict,const sigset_t*restrict) = pselect;}
31{int(*p)(int,fd_set*restrict,fd_set*restrict,fd_set*restrict,struct timeval*restrict) = select;}
32}
33