1 def SigSetType : NamedType<"sigset_t">;
2 def SigSetPtrType : PtrType<SigSetType>;
3 def ConstSigSetPtrType : ConstType<SigSetPtrType>;
4 def RestrictedSigSetType : RestrictedPtrType<SigSetType>;
5 def ConstRestrictedSigSetType : ConstType<RestrictedSigSetType>;
7 def SigInfoType : NamedType<"siginfo_t">;
8 def UnionSigVal : NamedType<"union sigval">;
10 def StructSigaction : NamedType<"struct sigaction">;
11 def StructSigactionPtr : PtrType<StructSigaction>;
12 def ConstStructSigactionPtr : ConstType<StructSigactionPtr>;
13 def RestrictedStructSigactionPtr : RestrictedPtrType<StructSigaction>;
14 def ConstRestrictedStructSigactionPtr : ConstType<RestrictedStructSigactionPtr>;
16 def PThreadStartT : NamedType<"__pthread_start_t">;
17 def PThreadTSSDtorT : NamedType<"__pthread_tss_dtor_t">;
18 def PThreadKeyT : NamedType<"pthread_key_t">;
19 def PThreadKeyTPtr : PtrType<PThreadKeyT>;
20 def PThreadOnceT : NamedType<"pthread_once_t">;
21 def PThreadOnceTPtr : PtrType<PThreadOnceT>;
22 def PThreadOnceCallback : NamedType<"__pthread_once_func_t">;
24 def InoT : NamedType<"ino_t">;
25 def UidT : NamedType<"uid_t">;
26 def GidT : NamedType<"gid_t">;
27 def DevT : NamedType<"dev_t">;
28 def ClockIdT : NamedType<"clockid_t">;
29 def BlkSizeT : NamedType<"blksize_t">;
30 def BlkCntT : NamedType<"blkcnt_t">;
31 def NLinkT : NamedType<"nlink_t">;
33 def StatType : NamedType<"struct stat">;
34 def StatTypePtr : PtrType<StatType>;
35 def RestrictedStatTypePtr : RestrictedPtrType<StatType>;
37 def DIR : NamedType<"DIR">;
38 def DIRPtr : PtrType<DIR>;
39 def DIRRestrictedPtr : RestrictedPtrType<DIR>;
40 def StructDirent : NamedType<"struct dirent">;
41 def StructDirentPtr : PtrType<StructDirent>;
42 def StructDirentPtrPtr : PtrType<StructDirentPtr>;
43 def ConstStructDirentPtrPtr : ConstType<StructDirentPtrPtr>;
45 def StructTimeSpec : NamedType<"struct timespec">;
46 def StructTimeSpecPtr : PtrType<StructTimeSpec>;
47 def ConstStructTimeSpecPtr : ConstType<StructTimeSpecPtr>;
49 def StructSchedParam : NamedType<"struct sched_param">;
50 def StructSchedParamPtr : PtrType<StructSchedParam>;
51 def ConstStructSchedParamPtr : ConstType<StructSchedParamPtr>;
53 def ExecArgvT : NamedType<"__exec_argv_t">;
54 def ExecEnvpT : NamedType<"__exec_envp_t">;
56 def AtForkCallbackT : NamedType<"__atfork_callback_t">;
58 def PosixSpawnFileActionsT : NamedType<"posix_spawn_file_actions_t">;
59 def PosixSpawnFileActionsTPtr : PtrType<PosixSpawnFileActionsT>;
60 def ConstPosixSpawnFileActionsTPtr : ConstType<PosixSpawnFileActionsTPtr>;
61 def PosixSpawnFileActionsTRestrictedPtr : RestrictedPtrType<PosixSpawnFileActionsT>;
63 def PosixSpawnAttrT : NamedType<"posix_spawnattr_t">;
64 def RestrictedPosixSpawnAttrTPtrType : RestrictedPtrType<PosixSpawnAttrT>;
66 def CcT : NamedType<"cc_t">;
67 def SpeedT : NamedType<"speed_t">;
68 def StructTermios : NamedType<"struct termios">;
69 def StructTermiosPtr : PtrType<StructTermios>;
70 def ConstStructTermiosPtr : ConstType<StructTermiosPtr>;
71 def TcFlagT : NamedType<"tcflag_t">;
73 def StackT : NamedType<"stack_t">;
74 def StackTPtr : PtrType<StackT>;
75 def RestrictedStackTPtr : RestrictedPtrType<StackT>;
76 def ConstRestrictedStackTPtr : ConstType<RestrictedStackTPtr>;
78 def FdSet : NamedType<"fd_set">;
79 def FdSetPtr : PtrType<FdSet>;
80 def RestrictedFdSetPtr : RestrictedPtrType<FdSet>;
82 def GetoptArgvT : NamedType<"__getoptargv_t">;
84 def StructSockAddr : NamedType<"struct sockaddr">;
85 def StructSockAddrPtr : PtrType<StructSockAddr>;
86 def SAFamilyType : NamedType<"sa_family_t">;
88 def POSIX : StandardSpec<"POSIX"> {
89 PtrType CharPtr = PtrType<CharType>;
90 RestrictedPtrType RestrictedCharPtr = RestrictedPtrType<CharType>;
91 RestrictedPtrType CharRestrictedDoublePtr = RestrictedPtrType<CharPtr>;
92 ConstType ConstCharPtr = ConstType<CharPtr>;
93 ConstType ConstRestrictedCharPtr = ConstType<RestrictedCharPtr>;
95 NamedType ModeTType = NamedType<"mode_t">;
97 NamedType PThreadAttrTType = NamedType<"pthread_attr_t">;
98 PtrType PThreadAttrTPtr = PtrType<PThreadAttrTType>;
99 RestrictedPtrType RestrictedPThreadAttrTPtr = RestrictedPtrType<PThreadAttrTType>;
100 ConstType ConstPThreadAttrTPtr = ConstType<PThreadAttrTPtr>;
101 ConstType ConstRestrictedPThreadAttrTPtr = ConstType<RestrictedPThreadAttrTPtr>;
103 NamedType PThreadMutexAttrTType = NamedType<"pthread_mutexattr_t">;
104 PtrType PThreadMutexAttrTPtr = PtrType<PThreadMutexAttrTType>;
105 RestrictedPtrType RestrictedPThreadMutexAttrTPtr = RestrictedPtrType<PThreadMutexAttrTType>;
106 ConstType ConstPThreadMutexAttrTPtr = ConstType<PThreadMutexAttrTPtr>;
107 ConstType ConstRestrictedPThreadMutexAttrTPtr = ConstType<RestrictedPThreadMutexAttrTPtr>;
109 NamedType PThreadMutexTType = NamedType<"pthread_mutex_t">;
110 PtrType PThreadMutexTPtr = PtrType<PThreadMutexTType>;
111 RestrictedPtrType RestrictedPThreadMutexTPtr = RestrictedPtrType<PThreadMutexTType>;
112 ConstType ConstPThreadMutexTPtr = ConstType<PThreadMutexTPtr>;
113 ConstType ConstRestrictedPThreadMutexTPtr = ConstType<RestrictedPThreadMutexTPtr>;
115 PtrType PThreadTPtr = PtrType<PThreadTType>;
116 RestrictedPtrType RestrictedPThreadTPtr = RestrictedPtrType<PThreadTType>;
118 HeaderSpec Errno = HeaderSpec<
124 Macro<"EADDRNOTAVAIL">,
125 Macro<"EAFNOSUPPORT">,
133 Macro<"ECONNABORTED">,
134 Macro<"ECONNREFUSED">,
137 Macro<"EDESTADDRREQ">,
142 Macro<"EHOSTUNREACH">,
144 Macro<"EINPROGRESS">,
155 Macro<"ENAMETOOLONG">,
158 Macro<"ENETUNREACH">,
169 Macro<"ENOPROTOOPT">,
177 Macro<"ENOTRECOVERABLE">,
188 Macro<"EPROTONOSUPPORT">,
197 Macro<"EWOULDBLOCK">,
205 HeaderSpec FCntl = HeaderSpec<
214 [ArgSpec<ConstCharPtr>, ArgSpec<ModeTType>]
219 [ArgSpec<ConstCharPtr>, ArgSpec<IntType>, ArgSpec<VarArgType>]
224 [ArgSpec<IntType>, ArgSpec<ConstCharPtr>, ArgSpec<IntType>, ArgSpec<VarArgType>]
229 HeaderSpec SysMMan = HeaderSpec<
232 // TODO: Add a facility to bunch macros into bitwise-or-able groups.
233 // POSIX requires it, so such thing should be captured in this spec.
240 Macro<"MAP_PRIVATE">,
278 [ArgSpec<VoidPtr>, ArgSpec<SizeTType>]
290 HeaderSpec Signal = HeaderSpec<
313 ArgSpec<ConstRestrictedStructSigactionPtr>,
314 ArgSpec<RestrictedStructSigactionPtr>]
319 [ArgSpec<ConstRestrictedStackTPtr>, ArgSpec<RestrictedStackTPtr>]
324 [ArgSpec<SigSetPtrType>,
330 [ArgSpec<IntType>, ArgSpec<ConstRestrictedSigSetType>, ArgSpec<RestrictedSigSetType>]
335 [ArgSpec<SigSetPtrType>]
340 [ArgSpec<SigSetPtrType>,
346 [ArgSpec<SigSetPtrType>]
351 HeaderSpec UniStd = HeaderSpec<
369 [ArgSpec<ConstCharPtr>, ArgSpec<IntType>]
374 [ArgSpec<ConstCharPtr>]
384 [ArgSpec<IntType>, ArgSpec<IntType>]
389 [ArgSpec<IntType>, ArgSpec<IntType>, ArgSpec<IntType>]
399 [ArgSpec<CharPtr>, ArgSpec<SizeTType>]
409 [ArgSpec<ConstCharPtr>, ArgSpec<ExecArgvT>]
414 [ArgSpec<ConstCharPtr>, ArgSpec<ExecArgvT>, ArgSpec<ExecEnvpT>]
429 [ArgSpec<IntType>, ArgSpec<OffTType>]
459 [ArgSpec<ConstCharPtr>, ArgSpec<ConstCharPtr>]
464 [ArgSpec<IntType>, ArgSpec<ConstCharPtr>, ArgSpec<IntType>, ArgSpec<ConstCharPtr>, ArgSpec<IntType>]
468 RetValSpec<OffTType>,
469 [ArgSpec<IntType>, ArgSpec<OffTType>, ArgSpec<IntType>]
473 RetValSpec<SSizeTType>,
474 [ArgSpec<IntType>, ArgSpec<VoidPtr>, ArgSpec<SizeTType>, ArgSpec<OffTType>]
478 RetValSpec<SSizeTType>,
479 [ArgSpec<IntType>, ArgSpec<ConstVoidPtr>, ArgSpec<SizeTType>, ArgSpec<OffTType>]
483 RetValSpec<SSizeTType>,
484 [ArgSpec<IntType>, ArgSpec<VoidPtr>, ArgSpec<SizeTType>]
488 RetValSpec<SSizeTType>,
489 [ArgSpec<ConstCharRestrictedPtr>, ArgSpec<CharRestrictedPtr>, ArgSpec<SizeTType>]
493 RetValSpec<SSizeTType>,
494 [ArgSpec<ConstCharRestrictedPtr>, ArgSpec<CharRestrictedPtr>, ArgSpec<SizeTType>]
499 [ArgSpec<ConstCharPtr>]
514 [ArgSpec<ConstCharPtr>, ArgSpec<ConstCharPtr>]
519 [ArgSpec<IntType>, ArgSpec<ConstCharPtr>, ArgSpec<IntType>, ArgSpec<ConstCharPtr>, ArgSpec<IntType>]
523 RetValSpec<OffTType>,
524 [ArgSpec<IntType>, ArgSpec<OffTType>, ArgSpec<IntType>]
528 RetValSpec<SSizeTType>,
529 [ArgSpec<IntType>, ArgSpec<VoidPtr>, ArgSpec<SizeTType>, ArgSpec<OffTType>]
533 RetValSpec<SSizeTType>,
534 [ArgSpec<IntType>, ArgSpec<ConstVoidPtr>, ArgSpec<SizeTType>, ArgSpec<OffTType>]
538 RetValSpec<SSizeTType>,
539 [ArgSpec<IntType>, ArgSpec<VoidPtr>, ArgSpec<SizeTType>]
543 RetValSpec<SSizeTType>,
544 [ArgSpec<ConstCharRestrictedPtr>, ArgSpec<CharRestrictedPtr>, ArgSpec<SizeTType>]
548 RetValSpec<SSizeTType>,
549 [ArgSpec<ConstCharRestrictedPtr>, ArgSpec<CharRestrictedPtr>, ArgSpec<SizeTType>]
554 [ArgSpec<ConstCharPtr>]
558 RetValSpec<VoidType>,
559 [ArgSpec<ConstVoidRestrictedPtr>, ArgSpec<VoidPtr>, ArgSpec<SSizeTType>]
564 [ArgSpec<ConstCharPtr>, ArgSpec<ConstCharPtr>]
569 [ArgSpec<IntType>, ArgSpec<ConstCharPtr>, ArgSpec<IntType>, ArgSpec<ConstCharPtr>]
577 "__llvm_libc_syscall",
578 RetValSpec<LongType>,
579 [ArgSpec<LongType>,ArgSpec<LongType>,ArgSpec<LongType>,ArgSpec<LongType>,ArgSpec<LongType>,ArgSpec<LongType>,ArgSpec<LongType>]
584 [ArgSpec<ConstCharPtr>, ArgSpec<OffTType>]
589 [ArgSpec<ConstCharPtr>]
594 [ArgSpec<IntType>, ArgSpec<ConstCharPtr>, ArgSpec<IntType>]
598 RetValSpec<SSizeTType>,
599 [ArgSpec<IntType>, ArgSpec<ConstVoidPtr>, ArgSpec<SizeTType>]
604 [ArgSpec<IntType>, ArgSpec<GetoptArgvT>, ArgSpec<ConstCharPtr>]
608 ObjectSpec<"environ", "char **">,
628 HeaderSpec StdLib = HeaderSpec<
637 [ArgSpec<ConstCharPtr>]
642 HeaderSpec Sched = HeaderSpec<
645 [PidT, TimeTType, StructTimeSpec, StructSchedParam], // Types
656 [ArgSpec<PidT>, ArgSpec<ConstStructSchedParamPtr>]
662 [ArgSpec<PidT>, ArgSpec<StructSchedParamPtr>]
666 "sched_setscheduler",
672 "sched_getscheduler",
674 [ArgSpec<PidT>, ArgSpec<IntType>, ArgSpec<ConstStructSchedParamPtr>]
678 "sched_get_priority_min",
684 "sched_get_priority_max",
690 "sched_rr_get_interval",
692 [ArgSpec<PidT>, ArgSpec<StructTimeSpecPtr>]
697 HeaderSpec String = HeaderSpec<
710 [ArgSpec<VoidRestrictedPtr>,
711 ArgSpec<ConstVoidRestrictedPtr>,
718 [ArgSpec<VoidRestrictedPtr>,
719 ArgSpec<ConstVoidRestrictedPtr>,
725 [ArgSpec<RestrictedCharPtr>,
726 ArgSpec<ConstRestrictedCharPtr>]
731 [ArgSpec<RestrictedCharPtr>,
732 ArgSpec<ConstRestrictedCharPtr>,
737 RetValSpec<SizeTType>,
738 [ArgSpec<ConstCharPtr>, ArgSpec<SizeTType>]
743 [ArgSpec<RestrictedCharPtr>,
744 ArgSpec<ConstRestrictedCharPtr>,
745 ArgSpec<CharRestrictedDoublePtr>]
755 HeaderSpec CType = HeaderSpec<
769 NamedType RLimTType = NamedType<"rlim_t">;
770 NamedType StructRLimitType = NamedType<"struct rlimit">;
771 PtrType StructRLimitPtr = PtrType<StructRLimitType>;
772 ConstType ConstStructRLimitPtr = ConstType<StructRLimitType>;
773 HeaderSpec SysResource = HeaderSpec<
776 [RLimTType, StructRLimitType], // Types
782 [ArgSpec<StructRLimitPtr>]
787 [ArgSpec<ConstStructRLimitPtr>]
792 HeaderSpec SysStat = HeaderSpec<
814 [ArgSpec<ConstCharPtr>, ArgSpec<ModeTType>]
819 [ArgSpec<IntType>, ArgSpec<ModeTType>]
824 [ArgSpec<IntType>, ArgSpec<ConstCharPtr>, ArgSpec<ModeTType>, ArgSpec<IntType>]
829 [ArgSpec<IntType>, ArgSpec<StatTypePtr>]
834 [ArgSpec<ConstRestrictedCharPtr>, ArgSpec<RestrictedStatTypePtr>]
839 [ArgSpec<ConstCharPtr>, ArgSpec<ModeTType>]
844 [ArgSpec<IntType>, ArgSpec<ConstCharPtr>, ArgSpec<ModeTType>]
849 [ArgSpec<ConstRestrictedCharPtr>, ArgSpec<RestrictedStatTypePtr>]
854 NamedType StructUtsName = NamedType<"struct utsname">;
855 PtrType StructUtsNamePtr = PtrType<StructUtsName>;
856 HeaderSpec SysUtsName = HeaderSpec<
859 [StructUtsName], // Types
865 [ArgSpec<StructUtsNamePtr>]
870 HeaderSpec ArpaInet = HeaderSpec<
878 RetValSpec<UInt32Type>,
879 [ArgSpec<UInt32Type>]
883 RetValSpec<UInt16Type>,
884 [ArgSpec<UInt16Type>]
888 RetValSpec<UInt32Type>,
889 [ArgSpec<UInt32Type>]
893 RetValSpec<UInt16Type>,
894 [ArgSpec<UInt16Type>]
899 HeaderSpec PThread = HeaderSpec<
906 PThreadMutexAttrTType,
919 [ArgSpec<AtForkCallbackT>, ArgSpec<AtForkCallbackT>, ArgSpec<AtForkCallbackT>]
924 [ArgSpec<PThreadAttrTPtr>]
927 "pthread_attr_destroy",
929 [ArgSpec<PThreadAttrTPtr>]
932 "pthread_attr_getdetachstate",
934 [ArgSpec<ConstPThreadAttrTPtr>, ArgSpec<IntPtr>]
937 "pthread_attr_setdetachstate",
939 [ArgSpec<PThreadAttrTPtr>, ArgSpec<IntType>]
942 "pthread_attr_getguardsize",
944 [ArgSpec<ConstRestrictedPThreadAttrTPtr>, ArgSpec<RestrictedSizeTPtr>]
947 "pthread_attr_setguardsize",
949 [ArgSpec<PThreadAttrTPtr>, ArgSpec<SizeTType>]
952 "pthread_attr_getstacksize",
954 [ArgSpec<ConstRestrictedPThreadAttrTPtr>, ArgSpec<RestrictedSizeTPtr>]
957 "pthread_attr_setstacksize",
959 [ArgSpec<PThreadAttrTPtr>, ArgSpec<SizeTType>]
962 "pthread_attr_getstack",
964 [ArgSpec<ConstRestrictedPThreadAttrTPtr>, ArgSpec<RestrictedVoidPtrPtr>, ArgSpec<RestrictedSizeTPtr>]
967 "pthread_attr_setstack",
969 [ArgSpec<PThreadAttrTPtr>, ArgSpec<VoidPtr>, ArgSpec<SizeTType>]
974 [ArgSpec<RestrictedPThreadTPtr>, ArgSpec<ConstRestrictedPThreadAttrTPtr>, ArgSpec<PThreadStartT>, ArgSpec<VoidPtr>]
979 [ArgSpec<PThreadTType>, ArgSpec<VoidPtrPtr>]
984 [ArgSpec<PThreadTType>]
988 RetValSpec<NoReturn>,
993 RetValSpec<PThreadTType>,
999 [ArgSpec<PThreadTType>, ArgSpec<PThreadTType>]
1002 "pthread_mutexattr_init",
1003 RetValSpec<IntType>,
1004 [ArgSpec<PThreadMutexAttrTPtr>]
1007 "pthread_mutexattr_destroy",
1008 RetValSpec<IntType>,
1009 [ArgSpec<PThreadMutexAttrTPtr>]
1012 "pthread_mutexattr_gettype",
1013 RetValSpec<IntType>,
1014 [ArgSpec<ConstRestrictedPThreadMutexAttrTPtr>, ArgSpec<RestrictedIntPtr>]
1017 "pthread_mutexattr_settype",
1018 RetValSpec<IntType>,
1019 [ArgSpec<RestrictedPThreadMutexAttrTPtr>, ArgSpec<IntType>]
1022 "pthread_mutexattr_getrobust",
1023 RetValSpec<IntType>,
1024 [ArgSpec<ConstRestrictedPThreadMutexAttrTPtr>, ArgSpec<RestrictedIntPtr>]
1027 "pthread_mutexattr_setrobust",
1028 RetValSpec<IntType>,
1029 [ArgSpec<RestrictedPThreadMutexAttrTPtr>, ArgSpec<IntType>]
1032 "pthread_mutexattr_getpshared",
1033 RetValSpec<IntType>,
1034 [ArgSpec<ConstRestrictedPThreadMutexAttrTPtr>, ArgSpec<RestrictedIntPtr>]
1037 "pthread_mutexattr_setpshared",
1038 RetValSpec<IntType>,
1039 [ArgSpec<RestrictedPThreadMutexAttrTPtr>, ArgSpec<IntType>]
1042 "pthread_mutexattr_getprotocol",
1043 RetValSpec<IntType>,
1044 [ArgSpec<ConstRestrictedPThreadMutexAttrTPtr>, ArgSpec<RestrictedIntPtr>]
1047 "pthread_mutexattr_setprotocol",
1048 RetValSpec<IntType>,
1049 [ArgSpec<RestrictedPThreadMutexAttrTPtr>, ArgSpec<IntType>]
1052 "pthread_mutexattr_getprioceiling",
1053 RetValSpec<IntType>,
1054 [ArgSpec<ConstRestrictedPThreadMutexAttrTPtr>, ArgSpec<RestrictedIntPtr>]
1057 "pthread_mutexattr_setprioceiling",
1058 RetValSpec<IntType>,
1059 [ArgSpec<RestrictedPThreadMutexAttrTPtr>, ArgSpec<IntType>]
1062 "pthread_mutex_init",
1063 RetValSpec<IntType>,
1064 [ArgSpec<RestrictedPThreadMutexTPtr>, ArgSpec<ConstRestrictedPThreadMutexAttrTPtr>]
1067 "pthread_mutex_destroy",
1068 RetValSpec<IntType>,
1069 [ArgSpec<PThreadMutexTPtr>]
1072 "pthread_mutex_lock",
1073 RetValSpec<IntType>,
1074 [ArgSpec<PThreadMutexTPtr>]
1077 "pthread_mutex_unlock",
1078 RetValSpec<IntType>,
1079 [ArgSpec<PThreadMutexTPtr>]
1082 "pthread_key_create",
1083 RetValSpec<IntType>,
1084 [ArgSpec<PThreadKeyTPtr>, ArgSpec<PThreadTSSDtorT>]
1087 "pthread_key_delete",
1088 RetValSpec<IntType>,
1089 [ArgSpec<PThreadKeyT>]
1092 "pthread_getspecific",
1093 RetValSpec<VoidPtr>,
1094 [ArgSpec<PThreadKeyT>]
1097 "pthread_setspecific",
1098 RetValSpec<VoidPtr>,
1099 [ArgSpec<PThreadKeyT>, ArgSpec<ConstVoidPtr>]
1103 RetValSpec<IntType>,
1104 [ArgSpec<PThreadOnceTPtr>, ArgSpec<PThreadOnceCallback>]
1109 HeaderSpec StdIO = HeaderSpec<
1117 RetValSpec<VoidType>,
1122 RetValSpec<VoidType>,
1127 RetValSpec<IntType>,
1132 RetValSpec<IntType>,
1138 HeaderSpec Dirent = HeaderSpec<
1141 [InoT, StructDirent, DIR], // Types
1146 RetValSpec<IntType>,
1147 [ArgSpec<ConstStructDirentPtrPtr>, ArgSpec<ConstStructDirentPtrPtr>]
1151 RetValSpec<IntType>,
1156 RetValSpec<IntType>,
1167 [ArgSpec<ConstCharPtr>]
1171 RetValSpec<StructDirentPtr>,
1177 HeaderSpec Time = HeaderSpec<
1180 [ClockIdT, StructTimeSpec, StructTimevalType], // Types
1185 RetValSpec<IntType>,
1186 [ArgSpec<ClockIdT>, ArgSpec<StructTimeSpecPtr>]
1190 RetValSpec<IntType>,
1191 [ArgSpec<StructTimevalPtr>, ArgSpec<VoidPtr>]
1195 RetValSpec<IntType>,
1196 [ArgSpec<ConstStructTimeSpecPtr>, ArgSpec<StructTimeSpecPtr>]
1201 HeaderSpec SysWait = HeaderSpec<
1204 [PidT, StructRUsage, SigInfoType],
1215 [ArgSpec<PidT>, ArgSpec<IntPtr>, ArgSpec<IntType>]
1220 HeaderSpec SysIOctl = HeaderSpec<
1230 HeaderSpec Spawn = HeaderSpec<
1233 [ModeTType, PosixSpawnAttrT, PidT, PosixSpawnFileActionsT],
1237 "posix_spawn_file_actions_addclose",
1238 RetValSpec<IntType>,
1239 [ArgSpec<PosixSpawnFileActionsTPtr>, ArgSpec<IntType>]
1242 "posix_spawn_file_actions_adddup2",
1243 RetValSpec<IntType>,
1244 [ArgSpec<PosixSpawnFileActionsTPtr>, ArgSpec<IntType>, ArgSpec<IntType>]
1247 "posix_spawn_file_actions_addopen",
1248 RetValSpec<IntType>,
1249 [ArgSpec<PosixSpawnFileActionsTRestrictedPtr>, ArgSpec<IntType>,
1250 ArgSpec<ConstCharRestrictedPtr>, ArgSpec<IntType>, ArgSpec<ModeTType>]
1253 "posix_spawn_file_actions_destroy",
1254 RetValSpec<IntType>,
1255 [ArgSpec<PosixSpawnFileActionsTPtr>]
1258 "posix_spawn_file_actions_init",
1259 RetValSpec<IntType>,
1260 [ArgSpec<PosixSpawnFileActionsTPtr>]
1264 RetValSpec<IntType>,
1265 [ArgSpec<RestrictedPidTPtr>, ArgSpec<ConstCharRestrictedPtr>,
1266 ArgSpec<PosixSpawnFileActionsTPtr>, ArgSpec<RestrictedPosixSpawnAttrTPtrType>,
1267 ArgSpec<ConstCharRestrictedPtrPtr>, ArgSpec<ConstCharRestrictedPtrPtr>]
1272 HeaderSpec Termios = HeaderSpec<
1277 [CcT, PidT, SpeedT, StructTermios, TcFlagT], // Types
1283 [ArgSpec<ConstStructTermiosPtr>]
1288 [ArgSpec<ConstStructTermiosPtr>]
1293 [ArgSpec<StructTermiosPtr>, ArgSpec<SpeedT>]
1298 [ArgSpec<StructTermiosPtr>, ArgSpec<SpeedT>]
1302 RetValSpec<IntType>,
1307 RetValSpec<IntType>,
1308 [ArgSpec<IntType>, ArgSpec<IntType>]
1312 RetValSpec<IntType>,
1313 [ArgSpec<IntType>, ArgSpec<IntType>]
1317 RetValSpec<IntType>,
1318 [ArgSpec<IntType>, ArgSpec<StructTermiosPtr>]
1327 RetValSpec<IntType>,
1328 [ArgSpec<IntType>, ArgSpec<IntType>]
1332 RetValSpec<IntType>,
1333 [ArgSpec<IntType>, ArgSpec<IntType>, ArgSpec<StructTermiosPtr>]
1338 HeaderSpec SysSelect = HeaderSpec<
1341 [FdSet, SigSetType, StructTimevalType, StructTimeSpec, SuSecondsT, TimeTType],
1346 RetValSpec<IntType>,
1348 ArgSpec<IntType>, ArgSpec<RestrictedFdSetPtr>, ArgSpec<RestrictedFdSetPtr>,
1349 ArgSpec<RestrictedFdSetPtr>, ArgSpec<RestrictedStructTimevalPtr>
1355 HeaderSpec SysSocket = HeaderSpec<
1363 Macro<"SOCK_STREAM">,
1364 Macro<"SOCK_DGRAM">,
1367 Macro<"SOCK_SEQPACKET">,
1368 Macro<"SOCK_PACKET">,
1371 StructSockAddr, SAFamilyType,
1377 RetValSpec<IntType>,
1378 [ArgSpec<IntType>, ArgSpec<IntType>, ArgSpec<IntType>]
1383 HeaderSpec SysTypes = HeaderSpec<
1386 [BlkCntT, BlkSizeT, ClockIdT, DevT, GidT, InoT, ModeTType, NLinkT, OffTType, PidT,
1387 PThreadAttrTType, PThreadKeyT, PThreadMutexTType, PThreadMutexAttrTType, PThreadOnceT, PThreadTType,
1388 SizeTType, SSizeTType, SuSecondsT, TimeTType, UidT],