[MLton-commit] r4647

Matthew Fluet MLton@mlton.org
Mon, 12 Jun 2006 09:25:14 -0700


dos2unix
----------------------------------------------------------------------

U   mlton/branches/on-20050822-x86_64-branch/basis-library/primitive/basis-ffi.sml

----------------------------------------------------------------------

Modified: mlton/branches/on-20050822-x86_64-branch/basis-library/primitive/basis-ffi.sml
===================================================================
--- mlton/branches/on-20050822-x86_64-branch/basis-library/primitive/basis-ffi.sml	2006-06-12 16:24:06 UTC (rev 4646)
+++ mlton/branches/on-20050822-x86_64-branch/basis-library/primitive/basis-ffi.sml	2006-06-12 16:25:12 UTC (rev 4647)
@@ -1,1411 +1,1411 @@
-(* This file is automatically generated.  Do not edit. *)
-
-local open Primitive in 
-structure PrimitiveFFI =
-struct
-structure CommandLine = 
-struct
-val (argcGet, argcSet) = _symbol "CommandLine_argc": (unit -> (C_Int.t)) * ((C_Int.t) -> unit);
-val (argvGet, argvSet) = _symbol "CommandLine_argv": (unit -> (C_StringArray.t)) * ((C_StringArray.t) -> unit);
-val (commandNameGet, commandNameSet) = _symbol "CommandLine_commandName": (unit -> (C_String.t)) * ((C_String.t) -> unit);
-end
-structure Cygwin = 
-struct
-val toFullWindowsPath = _import "Cygwin_toFullWindowsPath" : NullString8.t -> C_String.t;
-end
-structure Date = 
-struct
-val gmTime = _import "Date_gmTime" : (C_Time.t) ref -> (C_Int.t) C_Errno.t;
-val localOffset = _import "Date_localOffset" : unit -> C_Double.t;
-val localTime = _import "Date_localTime" : (C_Time.t) ref -> (C_Int.t) C_Errno.t;
-val mkTime = _import "Date_mkTime" : unit -> (C_Time.t) C_Errno.t;
-val strfTime = _import "Date_strfTime" : (Char8.t) array * C_Size.t * NullString8.t -> C_Size.t;
-structure Tm = 
-struct
-val getHour = _import "Date_Tm_getHour" : unit -> C_Int.t;
-val getIsDst = _import "Date_Tm_getIsDst" : unit -> C_Int.t;
-val getMDay = _import "Date_Tm_getMDay" : unit -> C_Int.t;
-val getMin = _import "Date_Tm_getMin" : unit -> C_Int.t;
-val getMon = _import "Date_Tm_getMon" : unit -> C_Int.t;
-val getSec = _import "Date_Tm_getSec" : unit -> C_Int.t;
-val getWDay = _import "Date_Tm_getWDay" : unit -> C_Int.t;
-val getYDay = _import "Date_Tm_getYDay" : unit -> C_Int.t;
-val getYear = _import "Date_Tm_getYear" : unit -> C_Int.t;
-val setHour = _import "Date_Tm_setHour" : C_Int.t -> unit;
-val setIsDst = _import "Date_Tm_setIsDst" : C_Int.t -> unit;
-val setMDay = _import "Date_Tm_setMDay" : C_Int.t -> unit;
-val setMin = _import "Date_Tm_setMin" : C_Int.t -> unit;
-val setMon = _import "Date_Tm_setMon" : C_Int.t -> unit;
-val setSec = _import "Date_Tm_setSec" : C_Int.t -> unit;
-val setWDay = _import "Date_Tm_setWDay" : C_Int.t -> unit;
-val setYDay = _import "Date_Tm_setYDay" : C_Int.t -> unit;
-val setYear = _import "Date_Tm_setYear" : C_Int.t -> unit;
-end
-end
-structure IEEEReal = 
-struct
-structure FloatClass = 
-struct
-val FP_INFINITE = _const "IEEEReal_FloatClass_FP_INFINITE" : C_Int.t;
-val FP_NAN = _const "IEEEReal_FloatClass_FP_NAN" : C_Int.t;
-val FP_NORMAL = _const "IEEEReal_FloatClass_FP_NORMAL" : C_Int.t;
-val FP_SUBNORMAL = _const "IEEEReal_FloatClass_FP_SUBNORMAL" : C_Int.t;
-val FP_ZERO = _const "IEEEReal_FloatClass_FP_ZERO" : C_Int.t;
-end
-val getRoundingMode = _import "IEEEReal_getRoundingMode" : unit -> C_Int.t;
-structure RoundingMode = 
-struct
-val FE_DOWNWARD = _const "IEEEReal_RoundingMode_FE_DOWNWARD" : C_Int.t;
-val FE_NOSUPPORT = _const "IEEEReal_RoundingMode_FE_NOSUPPORT" : C_Int.t;
-val FE_TONEAREST = _const "IEEEReal_RoundingMode_FE_TONEAREST" : C_Int.t;
-val FE_TOWARDZERO = _const "IEEEReal_RoundingMode_FE_TOWARDZERO" : C_Int.t;
-val FE_UPWARD = _const "IEEEReal_RoundingMode_FE_UPWARD" : C_Int.t;
-end
-val setRoundingMode = _import "IEEEReal_setRoundingMode" : C_Int.t -> unit;
-end
-structure MLton = 
-struct
-val bug = _import "MLton_bug" : NullString8.t -> unit;
-structure Itimer = 
-struct
-val PROF = _const "MLton_Itimer_PROF" : C_Int.t;
-val REAL = _const "MLton_Itimer_REAL" : C_Int.t;
-val set = _import "MLton_Itimer_set" : C_Int.t * C_Time.t * C_SUSeconds.t * C_Time.t * C_SUSeconds.t -> (C_Int.t) C_Errno.t;
-val VIRTUAL = _const "MLton_Itimer_VIRTUAL" : C_Int.t;
-end
-structure Process = 
-struct
-val cwait = _import "MLton_Process_cwait" : C_PId.t * (C_Status.t) ref -> (C_PId.t) C_Errno.t;
-val spawne = _import "MLton_Process_spawne" : NullString8.t * NullString8Array.t * NullString8Array.t -> (C_Int.t) C_Errno.t;
-val spawnp = _import "MLton_Process_spawnp" : NullString8.t * NullString8Array.t -> (C_Int.t) C_Errno.t;
-end
-structure Rlimit = 
-struct
-val AS = _const "MLton_Rlimit_AS" : C_Int.t;
-val CORE = _const "MLton_Rlimit_CORE" : C_Int.t;
-val CPU = _const "MLton_Rlimit_CPU" : C_Int.t;
-val DATA = _const "MLton_Rlimit_DATA" : C_Int.t;
-val FSIZE = _const "MLton_Rlimit_FSIZE" : C_Int.t;
-val get = _import "MLton_Rlimit_get" : C_Int.t -> (C_Int.t) C_Errno.t;
-val getHard = _import "MLton_Rlimit_getHard" : unit -> C_RLim.t;
-val getSoft = _import "MLton_Rlimit_getSoft" : unit -> C_RLim.t;
-val INFINITY = _const "MLton_Rlimit_INFINITY" : C_RLim.t;
-val NOFILE = _const "MLton_Rlimit_NOFILE" : C_Int.t;
-val set = _import "MLton_Rlimit_set" : C_Int.t * C_RLim.t * C_RLim.t -> (C_Int.t) C_Errno.t;
-val STACK = _const "MLton_Rlimit_STACK" : C_Int.t;
-end
-structure Rusage = 
-struct
-val children_stime_sec = _import "MLton_Rusage_children_stime_sec" : unit -> C_Time.t;
-val children_stime_usec = _import "MLton_Rusage_children_stime_usec" : unit -> C_SUSeconds.t;
-val children_utime_sec = _import "MLton_Rusage_children_utime_sec" : unit -> C_Time.t;
-val children_utime_usec = _import "MLton_Rusage_children_utime_usec" : unit -> C_SUSeconds.t;
-val gc_stime_sec = _import "MLton_Rusage_gc_stime_sec" : unit -> C_Time.t;
-val gc_stime_usec = _import "MLton_Rusage_gc_stime_usec" : unit -> C_SUSeconds.t;
-val gc_utime_sec = _import "MLton_Rusage_gc_utime_sec" : unit -> C_Time.t;
-val gc_utime_usec = _import "MLton_Rusage_gc_utime_usec" : unit -> C_SUSeconds.t;
-val getrusage = _import "MLton_Rusage_getrusage" : unit -> unit;
-val self_stime_sec = _import "MLton_Rusage_self_stime_sec" : unit -> C_Time.t;
-val self_stime_usec = _import "MLton_Rusage_self_stime_usec" : unit -> C_SUSeconds.t;
-val self_utime_sec = _import "MLton_Rusage_self_utime_sec" : unit -> C_Time.t;
-val self_utime_usec = _import "MLton_Rusage_self_utime_usec" : unit -> C_SUSeconds.t;
-end
-structure Syslog = 
-struct
-val closelog = _import "MLton_Syslog_closelog" : unit -> unit;
-structure Facility = 
-struct
-val LOG_AUTH = _const "MLton_Syslog_Facility_LOG_AUTH" : C_Int.t;
-val LOG_CRON = _const "MLton_Syslog_Facility_LOG_CRON" : C_Int.t;
-val LOG_DAEMON = _const "MLton_Syslog_Facility_LOG_DAEMON" : C_Int.t;
-val LOG_KERN = _const "MLton_Syslog_Facility_LOG_KERN" : C_Int.t;
-val LOG_LOCAL0 = _const "MLton_Syslog_Facility_LOG_LOCAL0" : C_Int.t;
-val LOG_LOCAL1 = _const "MLton_Syslog_Facility_LOG_LOCAL1" : C_Int.t;
-val LOG_LOCAL2 = _const "MLton_Syslog_Facility_LOG_LOCAL2" : C_Int.t;
-val LOG_LOCAL3 = _const "MLton_Syslog_Facility_LOG_LOCAL3" : C_Int.t;
-val LOG_LOCAL4 = _const "MLton_Syslog_Facility_LOG_LOCAL4" : C_Int.t;
-val LOG_LOCAL5 = _const "MLton_Syslog_Facility_LOG_LOCAL5" : C_Int.t;
-val LOG_LOCAL6 = _const "MLton_Syslog_Facility_LOG_LOCAL6" : C_Int.t;
-val LOG_LOCAL7 = _const "MLton_Syslog_Facility_LOG_LOCAL7" : C_Int.t;
-val LOG_LPR = _const "MLton_Syslog_Facility_LOG_LPR" : C_Int.t;
-val LOG_MAIL = _const "MLton_Syslog_Facility_LOG_MAIL" : C_Int.t;
-val LOG_NEWS = _const "MLton_Syslog_Facility_LOG_NEWS" : C_Int.t;
-val LOG_USER = _const "MLton_Syslog_Facility_LOG_USER" : C_Int.t;
-val LOG_UUCP = _const "MLton_Syslog_Facility_LOG_UUCP" : C_Int.t;
-end
-structure Logopt = 
-struct
-val LOG_CONS = _const "MLton_Syslog_Logopt_LOG_CONS" : C_Int.t;
-val LOG_NDELAY = _const "MLton_Syslog_Logopt_LOG_NDELAY" : C_Int.t;
-val LOG_NOWAIT = _const "MLton_Syslog_Logopt_LOG_NOWAIT" : C_Int.t;
-val LOG_ODELAY = _const "MLton_Syslog_Logopt_LOG_ODELAY" : C_Int.t;
-val LOG_PID = _const "MLton_Syslog_Logopt_LOG_PID" : C_Int.t;
-end
-val openlog = _import "MLton_Syslog_openlog" : NullString8.t * C_Int.t * C_Int.t -> unit;
-structure Severity = 
-struct
-val LOG_ALERT = _const "MLton_Syslog_Severity_LOG_ALERT" : C_Int.t;
-val LOG_CRIT = _const "MLton_Syslog_Severity_LOG_CRIT" : C_Int.t;
-val LOG_DEBUG = _const "MLton_Syslog_Severity_LOG_DEBUG" : C_Int.t;
-val LOG_EMERG = _const "MLton_Syslog_Severity_LOG_EMERG" : C_Int.t;
-val LOG_ERR = _const "MLton_Syslog_Severity_LOG_ERR" : C_Int.t;
-val LOG_INFO = _const "MLton_Syslog_Severity_LOG_INFO" : C_Int.t;
-val LOG_NOTICE = _const "MLton_Syslog_Severity_LOG_NOTICE" : C_Int.t;
-val LOG_WARNING = _const "MLton_Syslog_Severity_LOG_WARNING" : C_Int.t;
-end
-val syslog = _import "MLton_Syslog_syslog" : C_Int.t * NullString8.t -> unit;
-end
-end
-structure Net = 
-struct
-val htonl = _import "Net_htonl" : Word32.t -> Word32.t;
-val htons = _import "Net_htons" : Word16.t -> Word16.t;
-val ntohl = _import "Net_ntohl" : Word32.t -> Word32.t;
-val ntohs = _import "Net_ntohs" : Word16.t -> Word16.t;
-end
-structure NetHostDB = 
-struct
-val getByAddress = _import "NetHostDB_getByAddress" : (Word8.t) vector * C_Socklen.t -> Bool.t;
-val getByName = _import "NetHostDB_getByName" : NullString8.t -> Bool.t;
-val getEntryAddrsN = _import "NetHostDB_getEntryAddrsN" : C_Int.t * (Word8.t) array -> unit;
-val getEntryAddrsNum = _import "NetHostDB_getEntryAddrsNum" : unit -> C_Int.t;
-val getEntryAddrType = _import "NetHostDB_getEntryAddrType" : unit -> C_Int.t;
-val getEntryAliasesN = _import "NetHostDB_getEntryAliasesN" : C_Int.t -> C_String.t;
-val getEntryAliasesNum = _import "NetHostDB_getEntryAliasesNum" : unit -> C_Int.t;
-val getEntryLength = _import "NetHostDB_getEntryLength" : unit -> C_Int.t;
-val getEntryName = _import "NetHostDB_getEntryName" : unit -> C_String.t;
-val getHostName = _import "NetHostDB_getHostName" : (Char8.t) array * C_Size.t -> (C_Int.t) C_Errno.t;
-val INADDR_ANY = _const "NetHostDB_INADDR_ANY" : C_Int.t;
-val inAddrSize = _const "NetHostDB_inAddrSize" : C_Size.t;
-end
-structure NetProtDB = 
-struct
-val getByName = _import "NetProtDB_getByName" : NullString8.t -> Bool.t;
-val getByNumber = _import "NetProtDB_getByNumber" : C_Int.t -> Bool.t;
-val getEntryAliasesN = _import "NetProtDB_getEntryAliasesN" : C_Int.t -> C_String.t;
-val getEntryAliasesNum = _import "NetProtDB_getEntryAliasesNum" : unit -> C_Int.t;
-val getEntryName = _import "NetProtDB_getEntryName" : unit -> C_String.t;
-val getEntryProto = _import "NetProtDB_getEntryProto" : unit -> C_Int.t;
-end
-structure NetServDB = 
-struct
-val getByName = _import "NetServDB_getByName" : NullString8.t * NullString8.t -> Bool.t;
-val getByNameNull = _import "NetServDB_getByNameNull" : NullString8.t -> Bool.t;
-val getByPort = _import "NetServDB_getByPort" : C_Int.t * NullString8.t -> Bool.t;
-val getByPortNull = _import "NetServDB_getByPortNull" : C_Int.t -> Bool.t;
-val getEntryAliasesN = _import "NetServDB_getEntryAliasesN" : C_Int.t -> C_String.t;
-val getEntryAliasesNum = _import "NetServDB_getEntryAliasesNum" : unit -> C_Int.t;
-val getEntryName = _import "NetServDB_getEntryName" : unit -> C_String.t;
-val getEntryPort = _import "NetServDB_getEntryPort" : unit -> C_Int.t;
-val getEntryProto = _import "NetServDB_getEntryProto" : unit -> C_String.t;
-end
-structure OS = 
-struct
-structure IO = 
-struct
-val poll = _import "OS_IO_poll" : (C_Fd.t) vector * (C_Short.t) vector * C_NFds.t * C_Int.t * (C_Short.t) array -> (C_Int.t) C_Errno.t;
-val POLLIN = _const "OS_IO_POLLIN" : C_Short.t;
-val POLLOUT = _const "OS_IO_POLLOUT" : C_Short.t;
-val POLLPRI = _const "OS_IO_POLLPRI" : C_Short.t;
-end
-end
-structure PackReal32 = 
-struct
-val subArr = _import "PackReal32_subArr" : (Word8.t) array * C_Ptrdiff.t -> Real32.t;
-val subArrRev = _import "PackReal32_subArrRev" : (Word8.t) array * C_Ptrdiff.t -> Real32.t;
-val subVec = _import "PackReal32_subVec" : (Word8.t) vector * C_Ptrdiff.t -> Real32.t;
-val subVecRev = _import "PackReal32_subVecRev" : (Word8.t) vector * C_Ptrdiff.t -> Real32.t;
-val update = _import "PackReal32_update" : (Word8.t) array * C_Ptrdiff.t * Real32.t -> unit;
-val updateRev = _import "PackReal32_updateRev" : (Word8.t) array * C_Ptrdiff.t * Real32.t -> unit;
-end
-structure PackReal64 = 
-struct
-val subArr = _import "PackReal64_subArr" : (Word8.t) array * C_Ptrdiff.t -> Real64.t;
-val subArrRev = _import "PackReal64_subArrRev" : (Word8.t) array * C_Ptrdiff.t -> Real64.t;
-val subVec = _import "PackReal64_subVec" : (Word8.t) vector * C_Ptrdiff.t -> Real64.t;
-val subVecRev = _import "PackReal64_subVecRev" : (Word8.t) vector * C_Ptrdiff.t -> Real64.t;
-val update = _import "PackReal64_update" : (Word8.t) array * C_Ptrdiff.t * Real64.t -> unit;
-val updateRev = _import "PackReal64_updateRev" : (Word8.t) array * C_Ptrdiff.t * Real64.t -> unit;
-end
-structure PackWord16 = 
-struct
-val subArr = _import "PackWord16_subArr" : (Word8.t) array * C_Ptrdiff.t -> Word16.t;
-val subArrRev = _import "PackWord16_subArrRev" : (Word8.t) array * C_Ptrdiff.t -> Word16.t;
-val subVec = _import "PackWord16_subVec" : (Word8.t) vector * C_Ptrdiff.t -> Word16.t;
-val subVecRev = _import "PackWord16_subVecRev" : (Word8.t) vector * C_Ptrdiff.t -> Word16.t;
-val update = _import "PackWord16_update" : (Word8.t) array * C_Ptrdiff.t * Word16.t -> unit;
-val updateRev = _import "PackWord16_updateRev" : (Word8.t) array * C_Ptrdiff.t * Word16.t -> unit;
-end
-structure PackWord32 = 
-struct
-val subArr = _import "PackWord32_subArr" : (Word8.t) array * C_Ptrdiff.t -> Word32.t;
-val subArrRev = _import "PackWord32_subArrRev" : (Word8.t) array * C_Ptrdiff.t -> Word32.t;
-val subVec = _import "PackWord32_subVec" : (Word8.t) vector * C_Ptrdiff.t -> Word32.t;
-val subVecRev = _import "PackWord32_subVecRev" : (Word8.t) vector * C_Ptrdiff.t -> Word32.t;
-val update = _import "PackWord32_update" : (Word8.t) array * C_Ptrdiff.t * Word32.t -> unit;
-val updateRev = _import "PackWord32_updateRev" : (Word8.t) array * C_Ptrdiff.t * Word32.t -> unit;
-end
-structure PackWord64 = 
-struct
-val subArr = _import "PackWord64_subArr" : (Word8.t) array * C_Ptrdiff.t -> Word64.t;
-val subArrRev = _import "PackWord64_subArrRev" : (Word8.t) array * C_Ptrdiff.t -> Word64.t;
-val subVec = _import "PackWord64_subVec" : (Word8.t) vector * C_Ptrdiff.t -> Word64.t;
-val subVecRev = _import "PackWord64_subVecRev" : (Word8.t) vector * C_Ptrdiff.t -> Word64.t;
-val update = _import "PackWord64_update" : (Word8.t) array * C_Ptrdiff.t * Word64.t -> unit;
-val updateRev = _import "PackWord64_updateRev" : (Word8.t) array * C_Ptrdiff.t * Word64.t -> unit;
-end
-structure PackWord8 = 
-struct
-val subArr = _import "PackWord8_subArr" : (Word8.t) array * C_Ptrdiff.t -> Word8.t;
-val subArrRev = _import "PackWord8_subArrRev" : (Word8.t) array * C_Ptrdiff.t -> Word8.t;
-val subVec = _import "PackWord8_subVec" : (Word8.t) vector * C_Ptrdiff.t -> Word8.t;
-val subVecRev = _import "PackWord8_subVecRev" : (Word8.t) vector * C_Ptrdiff.t -> Word8.t;
-val update = _import "PackWord8_update" : (Word8.t) array * C_Ptrdiff.t * Word8.t -> unit;
-val updateRev = _import "PackWord8_updateRev" : (Word8.t) array * C_Ptrdiff.t * Word8.t -> unit;
-end
-structure Posix = 
-struct
-structure Error = 
-struct
-val clearErrno = _import "Posix_Error_clearErrno" : unit -> unit;
-val E2BIG = _const "Posix_Error_E2BIG" : C_Int.t;
-val EACCES = _const "Posix_Error_EACCES" : C_Int.t;
-val EADDRINUSE = _const "Posix_Error_EADDRINUSE" : C_Int.t;
-val EADDRNOTAVAIL = _const "Posix_Error_EADDRNOTAVAIL" : C_Int.t;
-val EAFNOSUPPORT = _const "Posix_Error_EAFNOSUPPORT" : C_Int.t;
-val EAGAIN = _const "Posix_Error_EAGAIN" : C_Int.t;
-val EALREADY = _const "Posix_Error_EALREADY" : C_Int.t;
-val EBADF = _const "Posix_Error_EBADF" : C_Int.t;
-val EBADMSG = _const "Posix_Error_EBADMSG" : C_Int.t;
-val EBUSY = _const "Posix_Error_EBUSY" : C_Int.t;
-val ECANCELED = _const "Posix_Error_ECANCELED" : C_Int.t;
-val ECHILD = _const "Posix_Error_ECHILD" : C_Int.t;
-val ECONNABORTED = _const "Posix_Error_ECONNABORTED" : C_Int.t;
-val ECONNREFUSED = _const "Posix_Error_ECONNREFUSED" : C_Int.t;
-val ECONNRESET = _const "Posix_Error_ECONNRESET" : C_Int.t;
-val EDEADLK = _const "Posix_Error_EDEADLK" : C_Int.t;
-val EDESTADDRREQ = _const "Posix_Error_EDESTADDRREQ" : C_Int.t;
-val EDOM = _const "Posix_Error_EDOM" : C_Int.t;
-val EDQUOT = _const "Posix_Error_EDQUOT" : C_Int.t;
-val EEXIST = _const "Posix_Error_EEXIST" : C_Int.t;
-val EFAULT = _const "Posix_Error_EFAULT" : C_Int.t;
-val EFBIG = _const "Posix_Error_EFBIG" : C_Int.t;
-val EHOSTUNREACH = _const "Posix_Error_EHOSTUNREACH" : C_Int.t;
-val EIDRM = _const "Posix_Error_EIDRM" : C_Int.t;
-val EILSEQ = _const "Posix_Error_EILSEQ" : C_Int.t;
-val EINPROGRESS = _const "Posix_Error_EINPROGRESS" : C_Int.t;
-val EINTR = _const "Posix_Error_EINTR" : C_Int.t;
-val EINVAL = _const "Posix_Error_EINVAL" : C_Int.t;
-val EIO = _const "Posix_Error_EIO" : C_Int.t;
-val EISCONN = _const "Posix_Error_EISCONN" : C_Int.t;
-val EISDIR = _const "Posix_Error_EISDIR" : C_Int.t;
-val ELOOP = _const "Posix_Error_ELOOP" : C_Int.t;
-val EMFILE = _const "Posix_Error_EMFILE" : C_Int.t;
-val EMLINK = _const "Posix_Error_EMLINK" : C_Int.t;
-val EMSGSIZE = _const "Posix_Error_EMSGSIZE" : C_Int.t;
-val EMULTIHOP = _const "Posix_Error_EMULTIHOP" : C_Int.t;
-val ENAMETOOLONG = _const "Posix_Error_ENAMETOOLONG" : C_Int.t;
-val ENETDOWN = _const "Posix_Error_ENETDOWN" : C_Int.t;
-val ENETRESET = _const "Posix_Error_ENETRESET" : C_Int.t;
-val ENETUNREACH = _const "Posix_Error_ENETUNREACH" : C_Int.t;
-val ENFILE = _const "Posix_Error_ENFILE" : C_Int.t;
-val ENOBUFS = _const "Posix_Error_ENOBUFS" : C_Int.t;
-val ENODATA = _const "Posix_Error_ENODATA" : C_Int.t;
-val ENODEV = _const "Posix_Error_ENODEV" : C_Int.t;
-val ENOENT = _const "Posix_Error_ENOENT" : C_Int.t;
-val ENOEXEC = _const "Posix_Error_ENOEXEC" : C_Int.t;
-val ENOLCK = _const "Posix_Error_ENOLCK" : C_Int.t;
-val ENOLINK = _const "Posix_Error_ENOLINK" : C_Int.t;
-val ENOMEM = _const "Posix_Error_ENOMEM" : C_Int.t;
-val ENOMSG = _const "Posix_Error_ENOMSG" : C_Int.t;
-val ENOPROTOOPT = _const "Posix_Error_ENOPROTOOPT" : C_Int.t;
-val ENOSPC = _const "Posix_Error_ENOSPC" : C_Int.t;
-val ENOSR = _const "Posix_Error_ENOSR" : C_Int.t;
-val ENOSTR = _const "Posix_Error_ENOSTR" : C_Int.t;
-val ENOSYS = _const "Posix_Error_ENOSYS" : C_Int.t;
-val ENOTCONN = _const "Posix_Error_ENOTCONN" : C_Int.t;
-val ENOTDIR = _const "Posix_Error_ENOTDIR" : C_Int.t;
-val ENOTEMPTY = _const "Posix_Error_ENOTEMPTY" : C_Int.t;
-val ENOTSOCK = _const "Posix_Error_ENOTSOCK" : C_Int.t;
-val ENOTSUP = _const "Posix_Error_ENOTSUP" : C_Int.t;
-val ENOTTY = _const "Posix_Error_ENOTTY" : C_Int.t;
-val ENXIO = _const "Posix_Error_ENXIO" : C_Int.t;
-val EOPNOTSUPP = _const "Posix_Error_EOPNOTSUPP" : C_Int.t;
-val EOVERFLOW = _const "Posix_Error_EOVERFLOW" : C_Int.t;
-val EPERM = _const "Posix_Error_EPERM" : C_Int.t;
-val EPIPE = _const "Posix_Error_EPIPE" : C_Int.t;
-val EPROTO = _const "Posix_Error_EPROTO" : C_Int.t;
-val EPROTONOSUPPORT = _const "Posix_Error_EPROTONOSUPPORT" : C_Int.t;
-val EPROTOTYPE = _const "Posix_Error_EPROTOTYPE" : C_Int.t;
-val ERANGE = _const "Posix_Error_ERANGE" : C_Int.t;
-val EROFS = _const "Posix_Error_EROFS" : C_Int.t;
-val ESPIPE = _const "Posix_Error_ESPIPE" : C_Int.t;
-val ESRCH = _const "Posix_Error_ESRCH" : C_Int.t;
-val ESTALE = _const "Posix_Error_ESTALE" : C_Int.t;
-val ETIME = _const "Posix_Error_ETIME" : C_Int.t;
-val ETIMEDOUT = _const "Posix_Error_ETIMEDOUT" : C_Int.t;
-val ETXTBSY = _const "Posix_Error_ETXTBSY" : C_Int.t;
-val EWOULDBLOCK = _const "Posix_Error_EWOULDBLOCK" : C_Int.t;
-val EXDEV = _const "Posix_Error_EXDEV" : C_Int.t;
-val getErrno = _import "Posix_Error_getErrno" : unit -> C_Int.t;
-val strError = _import "Posix_Error_strError" : C_Int.t -> C_String.t;
-end
-structure FileSys = 
-struct
-structure A = 
-struct
-val F_OK = _const "Posix_FileSys_A_F_OK" : C_Int.t;
-val R_OK = _const "Posix_FileSys_A_R_OK" : C_Int.t;
-val W_OK = _const "Posix_FileSys_A_W_OK" : C_Int.t;
-val X_OK = _const "Posix_FileSys_A_X_OK" : C_Int.t;
-end
-val access = _import "Posix_FileSys_access" : NullString8.t * C_Int.t -> (C_Int.t) C_Errno.t;
-val chdir = _import "Posix_FileSys_chdir" : NullString8.t -> (C_Int.t) C_Errno.t;
-val chmod = _import "Posix_FileSys_chmod" : NullString8.t * C_Mode.t -> (C_Int.t) C_Errno.t;
-val chown = _import "Posix_FileSys_chown" : NullString8.t * C_UId.t * C_GId.t -> (C_Int.t) C_Errno.t;
-structure Dirstream = 
-struct
-val closeDir = _import "Posix_FileSys_Dirstream_closeDir" : C_DirP.t -> (C_Int.t) C_Errno.t;
-val openDir = _import "Posix_FileSys_Dirstream_openDir" : NullString8.t -> (C_DirP.t) C_Errno.t;
-val readDir = _import "Posix_FileSys_Dirstream_readDir" : C_DirP.t -> (C_String.t) C_Errno.t;
-val rewindDir = _import "Posix_FileSys_Dirstream_rewindDir" : C_DirP.t -> unit;
-end
-val fchdir = _import "Posix_FileSys_fchdir" : C_Fd.t -> (C_Int.t) C_Errno.t;
-val fchmod = _import "Posix_FileSys_fchmod" : C_Fd.t * C_Mode.t -> (C_Int.t) C_Errno.t;
-val fchown = _import "Posix_FileSys_fchown" : C_Fd.t * C_UId.t * C_GId.t -> (C_Int.t) C_Errno.t;
-val fpathconf = _import "Posix_FileSys_fpathconf" : C_Fd.t * C_Int.t -> (C_Long.t) C_Errno.t;
-val ftruncate = _import "Posix_FileSys_ftruncate" : C_Fd.t * C_Off.t -> (C_Int.t) C_Errno.t;
-val getcwd = _import "Posix_FileSys_getcwd" : (Char8.t) array * C_Size.t -> (C_String.t) C_Errno.t;
-val link = _import "Posix_FileSys_link" : NullString8.t * NullString8.t -> (C_Int.t) C_Errno.t;
-val mkdir = _import "Posix_FileSys_mkdir" : NullString8.t * C_Mode.t -> (C_Int.t) C_Errno.t;
-val mkfifo = _import "Posix_FileSys_mkfifo" : NullString8.t * C_Mode.t -> (C_Int.t) C_Errno.t;
-structure O = 
-struct
-val APPEND = _const "Posix_FileSys_O_APPEND" : C_Int.t;
-val BINARY = _const "Posix_FileSys_O_BINARY" : C_Int.t;
-val CREAT = _const "Posix_FileSys_O_CREAT" : C_Int.t;
-val DSYNC = _const "Posix_FileSys_O_DSYNC" : C_Int.t;
-val EXCL = _const "Posix_FileSys_O_EXCL" : C_Int.t;
-val NOCTTY = _const "Posix_FileSys_O_NOCTTY" : C_Int.t;
-val NONBLOCK = _const "Posix_FileSys_O_NONBLOCK" : C_Int.t;
-val RDONLY = _const "Posix_FileSys_O_RDONLY" : C_Int.t;
-val RDWR = _const "Posix_FileSys_O_RDWR" : C_Int.t;
-val RSYNC = _const "Posix_FileSys_O_RSYNC" : C_Int.t;
-val SYNC = _const "Posix_FileSys_O_SYNC" : C_Int.t;
-val TEXT = _const "Posix_FileSys_O_TEXT" : C_Int.t;
-val TRUNC = _const "Posix_FileSys_O_TRUNC" : C_Int.t;
-val WRONLY = _const "Posix_FileSys_O_WRONLY" : C_Int.t;
-end
-val open2 = _import "Posix_FileSys_open2" : NullString8.t * C_Int.t -> (C_Fd.t) C_Errno.t;
-val open3 = _import "Posix_FileSys_open3" : NullString8.t * C_Int.t * C_Mode.t -> (C_Fd.t) C_Errno.t;
-val pathconf = _import "Posix_FileSys_pathconf" : NullString8.t * C_Int.t -> (C_Long.t) C_Errno.t;
-structure PC = 
-struct
-val ALLOC_SIZE_MIN = _const "Posix_FileSys_PC_ALLOC_SIZE_MIN" : C_Int.t;
-val ASYNC_IO = _const "Posix_FileSys_PC_ASYNC_IO" : C_Int.t;
-val CHOWN_RESTRICTED = _const "Posix_FileSys_PC_CHOWN_RESTRICTED" : C_Int.t;
-val FILESIZEBITS = _const "Posix_FileSys_PC_FILESIZEBITS" : C_Int.t;
-val LINK_MAX = _const "Posix_FileSys_PC_LINK_MAX" : C_Int.t;
-val MAX_CANON = _const "Posix_FileSys_PC_MAX_CANON" : C_Int.t;
-val MAX_INPUT = _const "Posix_FileSys_PC_MAX_INPUT" : C_Int.t;
-val NAME_MAX = _const "Posix_FileSys_PC_NAME_MAX" : C_Int.t;
-val NO_TRUNC = _const "Posix_FileSys_PC_NO_TRUNC" : C_Int.t;
-val PATH_MAX = _const "Posix_FileSys_PC_PATH_MAX" : C_Int.t;
-val PIPE_BUF = _const "Posix_FileSys_PC_PIPE_BUF" : C_Int.t;
-val PRIO_IO = _const "Posix_FileSys_PC_PRIO_IO" : C_Int.t;
-val REC_INCR_XFER_SIZE = _const "Posix_FileSys_PC_REC_INCR_XFER_SIZE" : C_Int.t;
-val REC_MAX_XFER_SIZE = _const "Posix_FileSys_PC_REC_MAX_XFER_SIZE" : C_Int.t;
-val REC_MIN_XFER_SIZE = _const "Posix_FileSys_PC_REC_MIN_XFER_SIZE" : C_Int.t;
-val REC_XFER_ALIGN = _const "Posix_FileSys_PC_REC_XFER_ALIGN" : C_Int.t;
-val SYMLINK_MAX = _const "Posix_FileSys_PC_SYMLINK_MAX" : C_Int.t;
-val SYNC_IO = _const "Posix_FileSys_PC_SYNC_IO" : C_Int.t;
-val TWO_SYMLINKS = _const "Posix_FileSys_PC_TWO_SYMLINKS" : C_Int.t;
-val VDISABLE = _const "Posix_FileSys_PC_VDISABLE" : C_Int.t;
-end
-val readlink = _import "Posix_FileSys_readlink" : NullString8.t * (Char8.t) array * C_Size.t -> (C_SSize.t) C_Errno.t;
-val rename = _import "Posix_FileSys_rename" : NullString8.t * NullString8.t -> (C_Int.t) C_Errno.t;
-val rmdir = _import "Posix_FileSys_rmdir" : NullString8.t -> (C_Int.t) C_Errno.t;
-structure S = 
-struct
-val IFBLK = _const "Posix_FileSys_S_IFBLK" : C_Mode.t;
-val IFCHR = _const "Posix_FileSys_S_IFCHR" : C_Mode.t;
-val IFDIR = _const "Posix_FileSys_S_IFDIR" : C_Mode.t;
-val IFIFO = _const "Posix_FileSys_S_IFIFO" : C_Mode.t;
-val IFLNK = _const "Posix_FileSys_S_IFLNK" : C_Mode.t;
-val IFMT = _const "Posix_FileSys_S_IFMT" : C_Mode.t;
-val IFREG = _const "Posix_FileSys_S_IFREG" : C_Mode.t;
-val IFSOCK = _const "Posix_FileSys_S_IFSOCK" : C_Mode.t;
-val IRGRP = _const "Posix_FileSys_S_IRGRP" : C_Mode.t;
-val IROTH = _const "Posix_FileSys_S_IROTH" : C_Mode.t;
-val IRUSR = _const "Posix_FileSys_S_IRUSR" : C_Mode.t;
-val IRWXG = _const "Posix_FileSys_S_IRWXG" : C_Mode.t;
-val IRWXO = _const "Posix_FileSys_S_IRWXO" : C_Mode.t;
-val IRWXU = _const "Posix_FileSys_S_IRWXU" : C_Mode.t;
-val ISGID = _const "Posix_FileSys_S_ISGID" : C_Mode.t;
-val ISUID = _const "Posix_FileSys_S_ISUID" : C_Mode.t;
-val ISVTX = _const "Posix_FileSys_S_ISVTX" : C_Mode.t;
-val IWGRP = _const "Posix_FileSys_S_IWGRP" : C_Mode.t;
-val IWOTH = _const "Posix_FileSys_S_IWOTH" : C_Mode.t;
-val IWUSR = _const "Posix_FileSys_S_IWUSR" : C_Mode.t;
-val IXGRP = _const "Posix_FileSys_S_IXGRP" : C_Mode.t;
-val IXOTH = _const "Posix_FileSys_S_IXOTH" : C_Mode.t;
-val IXUSR = _const "Posix_FileSys_S_IXUSR" : C_Mode.t;
-end
-structure ST = 
-struct
-val isBlk = _import "Posix_FileSys_ST_isBlk" : C_Mode.t -> Bool.t;
-val isChr = _import "Posix_FileSys_ST_isChr" : C_Mode.t -> Bool.t;
-val isDir = _import "Posix_FileSys_ST_isDir" : C_Mode.t -> Bool.t;
-val isFIFO = _import "Posix_FileSys_ST_isFIFO" : C_Mode.t -> Bool.t;
-val isLink = _import "Posix_FileSys_ST_isLink" : C_Mode.t -> Bool.t;
-val isReg = _import "Posix_FileSys_ST_isReg" : C_Mode.t -> Bool.t;
-val isSock = _import "Posix_FileSys_ST_isSock" : C_Mode.t -> Bool.t;
-end
-structure Stat = 
-struct
-val fstat = _import "Posix_FileSys_Stat_fstat" : C_Fd.t -> (C_Int.t) C_Errno.t;
-val getATime = _import "Posix_FileSys_Stat_getATime" : unit -> C_Time.t;
-val getCTime = _import "Posix_FileSys_Stat_getCTime" : unit -> C_Time.t;
-val getDev = _import "Posix_FileSys_Stat_getDev" : unit -> C_Dev.t;
-val getGId = _import "Posix_FileSys_Stat_getGId" : unit -> C_GId.t;
-val getINo = _import "Posix_FileSys_Stat_getINo" : unit -> C_INo.t;
-val getMode = _import "Posix_FileSys_Stat_getMode" : unit -> C_Mode.t;
-val getMTime = _import "Posix_FileSys_Stat_getMTime" : unit -> C_Time.t;
-val getNLink = _import "Posix_FileSys_Stat_getNLink" : unit -> C_NLink.t;
-val getRDev = _import "Posix_FileSys_Stat_getRDev" : unit -> C_Dev.t;
-val getSize = _import "Posix_FileSys_Stat_getSize" : unit -> C_Off.t;
-val getUId = _import "Posix_FileSys_Stat_getUId" : unit -> C_UId.t;
-val lstat = _import "Posix_FileSys_Stat_lstat" : NullString8.t -> (C_Int.t) C_Errno.t;
-val stat = _import "Posix_FileSys_Stat_stat" : NullString8.t -> (C_Int.t) C_Errno.t;
-end
-val symlink = _import "Posix_FileSys_symlink" : NullString8.t * NullString8.t -> (C_Int.t) C_Errno.t;
-val truncate = _import "Posix_FileSys_truncate" : NullString8.t * C_Off.t -> (C_Int.t) C_Errno.t;
-val umask = _import "Posix_FileSys_umask" : C_Mode.t -> C_Mode.t;
-val unlink = _import "Posix_FileSys_unlink" : NullString8.t -> (C_Int.t) C_Errno.t;
-structure Utimbuf = 
-struct
-val setAcTime = _import "Posix_FileSys_Utimbuf_setAcTime" : C_Time.t -> unit;
-val setModTime = _import "Posix_FileSys_Utimbuf_setModTime" : C_Time.t -> unit;
-val utime = _import "Posix_FileSys_Utimbuf_utime" : NullString8.t -> (C_Int.t) C_Errno.t;
-end
-end
-structure IO = 
-struct
-val close = _import "Posix_IO_close" : C_Fd.t -> (C_Int.t) C_Errno.t;
-val dup = _import "Posix_IO_dup" : C_Fd.t -> (C_Fd.t) C_Errno.t;
-val dup2 = _import "Posix_IO_dup2" : C_Fd.t * C_Fd.t -> (C_Fd.t) C_Errno.t;
-val F_DUPFD = _const "Posix_IO_F_DUPFD" : C_Int.t;
-val F_GETFD = _const "Posix_IO_F_GETFD" : C_Int.t;
-val F_GETFL = _const "Posix_IO_F_GETFL" : C_Int.t;
-val F_GETOWN = _const "Posix_IO_F_GETOWN" : C_Int.t;
-val F_SETFD = _const "Posix_IO_F_SETFD" : C_Int.t;
-val F_SETFL = _const "Posix_IO_F_SETFL" : C_Int.t;
-val F_SETOWN = _const "Posix_IO_F_SETOWN" : C_Int.t;
-val fcntl2 = _import "Posix_IO_fcntl2" : C_Fd.t * C_Int.t -> (C_Int.t) C_Errno.t;
-val fcntl3 = _import "Posix_IO_fcntl3" : C_Fd.t * C_Int.t * C_Int.t -> (C_Int.t) C_Errno.t;
-structure FD = 
-struct
-val CLOEXEC = _const "Posix_IO_FD_CLOEXEC" : C_Int.t;
-end
-structure FLock = 
-struct
-val F_GETLK = _const "Posix_IO_FLock_F_GETLK" : C_Int.t;
-val F_RDLCK = _const "Posix_IO_FLock_F_RDLCK" : C_Short.t;
-val F_SETLK = _const "Posix_IO_FLock_F_SETLK" : C_Int.t;
-val F_SETLKW = _const "Posix_IO_FLock_F_SETLKW" : C_Int.t;
-val F_UNLCK = _const "Posix_IO_FLock_F_UNLCK" : C_Short.t;
-val F_WRLCK = _const "Posix_IO_FLock_F_WRLCK" : C_Short.t;
-val fcntl = _import "Posix_IO_FLock_fcntl" : C_Fd.t * C_Int.t -> (C_Int.t) C_Errno.t;
-val getLen = _import "Posix_IO_FLock_getLen" : unit -> C_Off.t;
-val getPId = _import "Posix_IO_FLock_getPId" : unit -> C_PId.t;
-val getStart = _import "Posix_IO_FLock_getStart" : unit -> C_Off.t;
-val getType = _import "Posix_IO_FLock_getType" : unit -> C_Short.t;
-val getWhence = _import "Posix_IO_FLock_getWhence" : unit -> C_Short.t;
-val SEEK_CUR = _const "Posix_IO_FLock_SEEK_CUR" : C_Short.t;
-val SEEK_END = _const "Posix_IO_FLock_SEEK_END" : C_Short.t;
-val SEEK_SET = _const "Posix_IO_FLock_SEEK_SET" : C_Short.t;
-val setLen = _import "Posix_IO_FLock_setLen" : C_Off.t -> unit;
-val setPId = _import "Posix_IO_FLock_setPId" : C_PId.t -> unit;
-val setStart = _import "Posix_IO_FLock_setStart" : C_Off.t -> unit;
-val setType = _import "Posix_IO_FLock_setType" : C_Short.t -> unit;
-val setWhence = _import "Posix_IO_FLock_setWhence" : C_Short.t -> unit;
-end
-val fsync = _import "Posix_IO_fsync" : C_Fd.t -> (C_Int.t) C_Errno.t;
-val lseek = _import "Posix_IO_lseek" : C_Fd.t * C_Off.t * C_Int.t -> (C_Off.t) C_Errno.t;
-val O_ACCMODE = _const "Posix_IO_O_ACCMODE" : C_Int.t;
-val pipe = _import "Posix_IO_pipe" : (C_Fd.t) array -> (C_Int.t) C_Errno.t;
-val readChar8 = _import "Posix_IO_readChar8" : C_Fd.t * (Char8.t) array * C_Int.t * C_Size.t -> (C_SSize.t) C_Errno.t;
-val readWord8 = _import "Posix_IO_readWord8" : C_Fd.t * (Word8.t) array * C_Int.t * C_Size.t -> (C_SSize.t) C_Errno.t;
-val SEEK_CUR = _const "Posix_IO_SEEK_CUR" : C_Int.t;
-val SEEK_END = _const "Posix_IO_SEEK_END" : C_Int.t;
-val SEEK_SET = _const "Posix_IO_SEEK_SET" : C_Int.t;
-val setbin = _import "Posix_IO_setbin" : C_Fd.t -> unit;
-val settext = _import "Posix_IO_settext" : C_Fd.t -> unit;
-val writeChar8Arr = _import "Posix_IO_writeChar8Arr" : C_Fd.t * (Char8.t) array * C_Int.t * C_Size.t -> (C_SSize.t) C_Errno.t;
-val writeChar8Vec = _import "Posix_IO_writeChar8Vec" : C_Fd.t * (Char8.t) vector * C_Int.t * C_Size.t -> (C_SSize.t) C_Errno.t;
-val writeWord8Arr = _import "Posix_IO_writeWord8Arr" : C_Fd.t * (Word8.t) array * C_Int.t * C_Size.t -> (C_SSize.t) C_Errno.t;
-val writeWord8Vec = _import "Posix_IO_writeWord8Vec" : C_Fd.t * (Word8.t) vector * C_Int.t * C_Size.t -> (C_SSize.t) C_Errno.t;
-end
-structure ProcEnv = 
-struct
-val ctermid = _import "Posix_ProcEnv_ctermid" : unit -> C_String.t;
-val (environGet, environSet) = _symbol "Posix_ProcEnv_environ": (unit -> (C_StringArray.t)) * ((C_StringArray.t) -> unit);
-val getegid = _import "Posix_ProcEnv_getegid" : unit -> C_GId.t;
-val getenv = _import "Posix_ProcEnv_getenv" : NullString8.t -> C_String.t;
-val geteuid = _import "Posix_ProcEnv_geteuid" : unit -> C_UId.t;
-val getgid = _import "Posix_ProcEnv_getgid" : unit -> C_GId.t;
-val getgroups = _import "Posix_ProcEnv_getgroups" : C_Int.t * (C_GId.t) array -> (C_Int.t) C_Errno.t;
-val getgroupsN = _import "Posix_ProcEnv_getgroupsN" : unit -> C_Int.t;
-val getlogin = _import "Posix_ProcEnv_getlogin" : unit -> (C_String.t) C_Errno.t;
-val getpgrp = _import "Posix_ProcEnv_getpgrp" : unit -> C_PId.t;
-val getpid = _import "Posix_ProcEnv_getpid" : unit -> C_PId.t;
-val getppid = _import "Posix_ProcEnv_getppid" : unit -> C_PId.t;
-val getuid = _import "Posix_ProcEnv_getuid" : unit -> C_UId.t;
-val isatty = _import "Posix_ProcEnv_isatty" : C_Fd.t -> Bool.t;
-val SC_2_C_BIND = _const "Posix_ProcEnv_SC_2_C_BIND" : C_Int.t;
-val SC_2_C_DEV = _const "Posix_ProcEnv_SC_2_C_DEV" : C_Int.t;
-val SC_2_CHAR_TERM = _const "Posix_ProcEnv_SC_2_CHAR_TERM" : C_Int.t;
-val SC_2_FORT_DEV = _const "Posix_ProcEnv_SC_2_FORT_DEV" : C_Int.t;
-val SC_2_FORT_RUN = _const "Posix_ProcEnv_SC_2_FORT_RUN" : C_Int.t;
-val SC_2_LOCALEDEF = _const "Posix_ProcEnv_SC_2_LOCALEDEF" : C_Int.t;
-val SC_2_PBS = _const "Posix_ProcEnv_SC_2_PBS" : C_Int.t;
-val SC_2_PBS_ACCOUNTING = _const "Posix_ProcEnv_SC_2_PBS_ACCOUNTING" : C_Int.t;
-val SC_2_PBS_CHECKPOINT = _const "Posix_ProcEnv_SC_2_PBS_CHECKPOINT" : C_Int.t;
-val SC_2_PBS_LOCATE = _const "Posix_ProcEnv_SC_2_PBS_LOCATE" : C_Int.t;
-val SC_2_PBS_MESSAGE = _const "Posix_ProcEnv_SC_2_PBS_MESSAGE" : C_Int.t;
-val SC_2_PBS_TRACK = _const "Posix_ProcEnv_SC_2_PBS_TRACK" : C_Int.t;
-val SC_2_SW_DEV = _const "Posix_ProcEnv_SC_2_SW_DEV" : C_Int.t;
-val SC_2_UPE = _const "Posix_ProcEnv_SC_2_UPE" : C_Int.t;
-val SC_2_VERSION = _const "Posix_ProcEnv_SC_2_VERSION" : C_Int.t;
-val SC_ADVISORY_INFO = _const "Posix_ProcEnv_SC_ADVISORY_INFO" : C_Int.t;
-val SC_AIO_LISTIO_MAX = _const "Posix_ProcEnv_SC_AIO_LISTIO_MAX" : C_Int.t;
-val SC_AIO_MAX = _const "Posix_ProcEnv_SC_AIO_MAX" : C_Int.t;
-val SC_AIO_PRIO_DELTA_MAX = _const "Posix_ProcEnv_SC_AIO_PRIO_DELTA_MAX" : C_Int.t;
-val SC_ARG_MAX = _const "Posix_ProcEnv_SC_ARG_MAX" : C_Int.t;
-val SC_ASYNCHRONOUS_IO = _const "Posix_ProcEnv_SC_ASYNCHRONOUS_IO" : C_Int.t;
-val SC_ATEXIT_MAX = _const "Posix_ProcEnv_SC_ATEXIT_MAX" : C_Int.t;
-val SC_BARRIERS = _const "Posix_ProcEnv_SC_BARRIERS" : C_Int.t;
-val SC_BC_BASE_MAX = _const "Posix_ProcEnv_SC_BC_BASE_MAX" : C_Int.t;
-val SC_BC_DIM_MAX = _const "Posix_ProcEnv_SC_BC_DIM_MAX" : C_Int.t;
-val SC_BC_SCALE_MAX = _const "Posix_ProcEnv_SC_BC_SCALE_MAX" : C_Int.t;
-val SC_BC_STRING_MAX = _const "Posix_ProcEnv_SC_BC_STRING_MAX" : C_Int.t;
-val SC_CHILD_MAX = _const "Posix_ProcEnv_SC_CHILD_MAX" : C_Int.t;
-val SC_CLK_TCK = _const "Posix_ProcEnv_SC_CLK_TCK" : C_Int.t;
-val SC_CLOCK_SELECTION = _const "Posix_ProcEnv_SC_CLOCK_SELECTION" : C_Int.t;
-val SC_COLL_WEIGHTS_MAX = _const "Posix_ProcEnv_SC_COLL_WEIGHTS_MAX" : C_Int.t;
-val SC_CPUTIME = _const "Posix_ProcEnv_SC_CPUTIME" : C_Int.t;
-val SC_DELAYTIMER_MAX = _const "Posix_ProcEnv_SC_DELAYTIMER_MAX" : C_Int.t;
-val SC_EXPR_NEST_MAX = _const "Posix_ProcEnv_SC_EXPR_NEST_MAX" : C_Int.t;
-val SC_FSYNC = _const "Posix_ProcEnv_SC_FSYNC" : C_Int.t;
-val SC_GETGR_R_SIZE_MAX = _const "Posix_ProcEnv_SC_GETGR_R_SIZE_MAX" : C_Int.t;
-val SC_GETPW_R_SIZE_MAX = _const "Posix_ProcEnv_SC_GETPW_R_SIZE_MAX" : C_Int.t;
-val SC_HOST_NAME_MAX = _const "Posix_ProcEnv_SC_HOST_NAME_MAX" : C_Int.t;
-val SC_IOV_MAX = _const "Posix_ProcEnv_SC_IOV_MAX" : C_Int.t;
-val SC_IPV6 = _const "Posix_ProcEnv_SC_IPV6" : C_Int.t;
-val SC_JOB_CONTROL = _const "Posix_ProcEnv_SC_JOB_CONTROL" : C_Int.t;
-val SC_LINE_MAX = _const "Posix_ProcEnv_SC_LINE_MAX" : C_Int.t;
-val SC_LOGIN_NAME_MAX = _const "Posix_ProcEnv_SC_LOGIN_NAME_MAX" : C_Int.t;
-val SC_MAPPED_FILES = _const "Posix_ProcEnv_SC_MAPPED_FILES" : C_Int.t;
-val SC_MEMLOCK = _const "Posix_ProcEnv_SC_MEMLOCK" : C_Int.t;
-val SC_MEMLOCK_RANGE = _const "Posix_ProcEnv_SC_MEMLOCK_RANGE" : C_Int.t;
-val SC_MEMORY_PROTECTION = _const "Posix_ProcEnv_SC_MEMORY_PROTECTION" : C_Int.t;
-val SC_MESSAGE_PASSING = _const "Posix_ProcEnv_SC_MESSAGE_PASSING" : C_Int.t;
-val SC_MONOTONIC_CLOCK = _const "Posix_ProcEnv_SC_MONOTONIC_CLOCK" : C_Int.t;
-val SC_MQ_OPEN_MAX = _const "Posix_ProcEnv_SC_MQ_OPEN_MAX" : C_Int.t;
-val SC_MQ_PRIO_MAX = _const "Posix_ProcEnv_SC_MQ_PRIO_MAX" : C_Int.t;
-val SC_NGROUPS_MAX = _const "Posix_ProcEnv_SC_NGROUPS_MAX" : C_Int.t;
-val SC_OPEN_MAX = _const "Posix_ProcEnv_SC_OPEN_MAX" : C_Int.t;
-val SC_PAGE_SIZE = _const "Posix_ProcEnv_SC_PAGE_SIZE" : C_Int.t;
-val SC_PAGESIZE = _const "Posix_ProcEnv_SC_PAGESIZE" : C_Int.t;
-val SC_PRIORITIZED_IO = _const "Posix_ProcEnv_SC_PRIORITIZED_IO" : C_Int.t;
-val SC_PRIORITY_SCHEDULING = _const "Posix_ProcEnv_SC_PRIORITY_SCHEDULING" : C_Int.t;
-val SC_RAW_SOCKETS = _const "Posix_ProcEnv_SC_RAW_SOCKETS" : C_Int.t;
-val SC_RE_DUP_MAX = _const "Posix_ProcEnv_SC_RE_DUP_MAX" : C_Int.t;
-val SC_READER_WRITER_LOCKS = _const "Posix_ProcEnv_SC_READER_WRITER_LOCKS" : C_Int.t;
-val SC_REALTIME_SIGNALS = _const "Posix_ProcEnv_SC_REALTIME_SIGNALS" : C_Int.t;
-val SC_REGEXP = _const "Posix_ProcEnv_SC_REGEXP" : C_Int.t;
-val SC_RTSIG_MAX = _const "Posix_ProcEnv_SC_RTSIG_MAX" : C_Int.t;
-val SC_SAVED_IDS = _const "Posix_ProcEnv_SC_SAVED_IDS" : C_Int.t;
-val SC_SEM_NSEMS_MAX = _const "Posix_ProcEnv_SC_SEM_NSEMS_MAX" : C_Int.t;
-val SC_SEM_VALUE_MAX = _const "Posix_ProcEnv_SC_SEM_VALUE_MAX" : C_Int.t;
-val SC_SEMAPHORES = _const "Posix_ProcEnv_SC_SEMAPHORES" : C_Int.t;
-val SC_SHARED_MEMORY_OBJECTS = _const "Posix_ProcEnv_SC_SHARED_MEMORY_OBJECTS" : C_Int.t;
-val SC_SHELL = _const "Posix_ProcEnv_SC_SHELL" : C_Int.t;
-val SC_SIGQUEUE_MAX = _const "Posix_ProcEnv_SC_SIGQUEUE_MAX" : C_Int.t;
-val SC_SPAWN = _const "Posix_ProcEnv_SC_SPAWN" : C_Int.t;
-val SC_SPIN_LOCKS = _const "Posix_ProcEnv_SC_SPIN_LOCKS" : C_Int.t;
-val SC_SPORADIC_SERVER = _const "Posix_ProcEnv_SC_SPORADIC_SERVER" : C_Int.t;
-val SC_SS_REPL_MAX = _const "Posix_ProcEnv_SC_SS_REPL_MAX" : C_Int.t;
-val SC_STREAM_MAX = _const "Posix_ProcEnv_SC_STREAM_MAX" : C_Int.t;
-val SC_SYMLOOP_MAX = _const "Posix_ProcEnv_SC_SYMLOOP_MAX" : C_Int.t;
-val SC_SYNCHRONIZED_IO = _const "Posix_ProcEnv_SC_SYNCHRONIZED_IO" : C_Int.t;
-val SC_THREAD_ATTR_STACKADDR = _const "Posix_ProcEnv_SC_THREAD_ATTR_STACKADDR" : C_Int.t;
-val SC_THREAD_ATTR_STACKSIZE = _const "Posix_ProcEnv_SC_THREAD_ATTR_STACKSIZE" : C_Int.t;
-val SC_THREAD_CPUTIME = _const "Posix_ProcEnv_SC_THREAD_CPUTIME" : C_Int.t;
-val SC_THREAD_DESTRUCTOR_ITERATIONS = _const "Posix_ProcEnv_SC_THREAD_DESTRUCTOR_ITERATIONS" : C_Int.t;
-val SC_THREAD_KEYS_MAX = _const "Posix_ProcEnv_SC_THREAD_KEYS_MAX" : C_Int.t;
-val SC_THREAD_PRIO_INHERIT = _const "Posix_ProcEnv_SC_THREAD_PRIO_INHERIT" : C_Int.t;
-val SC_THREAD_PRIO_PROTECT = _const "Posix_ProcEnv_SC_THREAD_PRIO_PROTECT" : C_Int.t;
-val SC_THREAD_PRIORITY_SCHEDULING = _const "Posix_ProcEnv_SC_THREAD_PRIORITY_SCHEDULING" : C_Int.t;
-val SC_THREAD_PROCESS_SHARED = _const "Posix_ProcEnv_SC_THREAD_PROCESS_SHARED" : C_Int.t;
-val SC_THREAD_SAFE_FUNCTIONS = _const "Posix_ProcEnv_SC_THREAD_SAFE_FUNCTIONS" : C_Int.t;
-val SC_THREAD_SPORADIC_SERVER = _const "Posix_ProcEnv_SC_THREAD_SPORADIC_SERVER" : C_Int.t;
-val SC_THREAD_STACK_MIN = _const "Posix_ProcEnv_SC_THREAD_STACK_MIN" : C_Int.t;
-val SC_THREAD_THREADS_MAX = _const "Posix_ProcEnv_SC_THREAD_THREADS_MAX" : C_Int.t;
-val SC_THREADS = _const "Posix_ProcEnv_SC_THREADS" : C_Int.t;
-val SC_TIMEOUTS = _const "Posix_ProcEnv_SC_TIMEOUTS" : C_Int.t;
-val SC_TIMER_MAX = _const "Posix_ProcEnv_SC_TIMER_MAX" : C_Int.t;
-val SC_TIMERS = _const "Posix_ProcEnv_SC_TIMERS" : C_Int.t;
-val SC_TRACE = _const "Posix_ProcEnv_SC_TRACE" : C_Int.t;
-val SC_TRACE_EVENT_FILTER = _const "Posix_ProcEnv_SC_TRACE_EVENT_FILTER" : C_Int.t;
-val SC_TRACE_EVENT_NAME_MAX = _const "Posix_ProcEnv_SC_TRACE_EVENT_NAME_MAX" : C_Int.t;
-val SC_TRACE_INHERIT = _const "Posix_ProcEnv_SC_TRACE_INHERIT" : C_Int.t;
-val SC_TRACE_LOG = _const "Posix_ProcEnv_SC_TRACE_LOG" : C_Int.t;
-val SC_TRACE_NAME_MAX = _const "Posix_ProcEnv_SC_TRACE_NAME_MAX" : C_Int.t;
-val SC_TRACE_SYS_MAX = _const "Posix_ProcEnv_SC_TRACE_SYS_MAX" : C_Int.t;
-val SC_TRACE_USER_EVENT_MAX = _const "Posix_ProcEnv_SC_TRACE_USER_EVENT_MAX" : C_Int.t;
-val SC_TTY_NAME_MAX = _const "Posix_ProcEnv_SC_TTY_NAME_MAX" : C_Int.t;
-val SC_TYPED_MEMORY_OBJECTS = _const "Posix_ProcEnv_SC_TYPED_MEMORY_OBJECTS" : C_Int.t;
-val SC_TZNAME_MAX = _const "Posix_ProcEnv_SC_TZNAME_MAX" : C_Int.t;
-val SC_V6_ILP32_OFF32 = _const "Posix_ProcEnv_SC_V6_ILP32_OFF32" : C_Int.t;
-val SC_V6_ILP32_OFFBIG = _const "Posix_ProcEnv_SC_V6_ILP32_OFFBIG" : C_Int.t;
-val SC_V6_LP64_OFF64 = _const "Posix_ProcEnv_SC_V6_LP64_OFF64" : C_Int.t;
-val SC_V6_LPBIG_OFFBIG = _const "Posix_ProcEnv_SC_V6_LPBIG_OFFBIG" : C_Int.t;
-val SC_VERSION = _const "Posix_ProcEnv_SC_VERSION" : C_Int.t;
-val SC_XBS5_ILP32_OFF32 = _const "Posix_ProcEnv_SC_XBS5_ILP32_OFF32" : C_Int.t;
-val SC_XBS5_ILP32_OFFBIG = _const "Posix_ProcEnv_SC_XBS5_ILP32_OFFBIG" : C_Int.t;
-val SC_XBS5_LP64_OFF64 = _const "Posix_ProcEnv_SC_XBS5_LP64_OFF64" : C_Int.t;
-val SC_XBS5_LPBIG_OFFBIG = _const "Posix_ProcEnv_SC_XBS5_LPBIG_OFFBIG" : C_Int.t;
-val SC_XOPEN_CRYPT = _const "Posix_ProcEnv_SC_XOPEN_CRYPT" : C_Int.t;
-val SC_XOPEN_ENH_I18N = _const "Posix_ProcEnv_SC_XOPEN_ENH_I18N" : C_Int.t;
-val SC_XOPEN_LEGACY = _const "Posix_ProcEnv_SC_XOPEN_LEGACY" : C_Int.t;
-val SC_XOPEN_REALTIME = _const "Posix_ProcEnv_SC_XOPEN_REALTIME" : C_Int.t;
-val SC_XOPEN_REALTIME_THREADS = _const "Posix_ProcEnv_SC_XOPEN_REALTIME_THREADS" : C_Int.t;
-val SC_XOPEN_SHM = _const "Posix_ProcEnv_SC_XOPEN_SHM" : C_Int.t;
-val SC_XOPEN_STREAMS = _const "Posix_ProcEnv_SC_XOPEN_STREAMS" : C_Int.t;
-val SC_XOPEN_UNIX = _const "Posix_ProcEnv_SC_XOPEN_UNIX" : C_Int.t;
-val SC_XOPEN_VERSION = _const "Posix_ProcEnv_SC_XOPEN_VERSION" : C_Int.t;
-val setenv = _import "Posix_ProcEnv_setenv" : NullString8.t * NullString8.t -> (C_Int.t) C_Errno.t;
-val setgid = _import "Posix_ProcEnv_setgid" : C_GId.t -> (C_Int.t) C_Errno.t;
-val setgroups = _import "Posix_ProcEnv_setgroups" : C_Int.t * (C_GId.t) vector -> (C_Int.t) C_Errno.t;
-val setpgid = _import "Posix_ProcEnv_setpgid" : C_PId.t * C_PId.t -> (C_Int.t) C_Errno.t;
-val setsid = _import "Posix_ProcEnv_setsid" : unit -> (C_PId.t) C_Errno.t;
-val setuid = _import "Posix_ProcEnv_setuid" : C_UId.t -> (C_Int.t) C_Errno.t;
-val sysconf = _import "Posix_ProcEnv_sysconf" : C_Int.t -> (C_Long.t) C_Errno.t;
-val times = _import "Posix_ProcEnv_times" : unit -> (C_Clock.t) C_Errno.t;
-structure Times = 
-struct
-val getCSTime = _import "Posix_ProcEnv_Times_getCSTime" : unit -> C_Clock.t;
-val getCUTime = _import "Posix_ProcEnv_Times_getCUTime" : unit -> C_Clock.t;
-val getSTime = _import "Posix_ProcEnv_Times_getSTime" : unit -> C_Clock.t;
-val getUTime = _import "Posix_ProcEnv_Times_getUTime" : unit -> C_Clock.t;
-end
-val ttyname = _import "Posix_ProcEnv_ttyname" : C_Fd.t -> (C_String.t) C_Errno.t;
-val uname = _import "Posix_ProcEnv_uname" : unit -> (C_Int.t) C_Errno.t;
-structure Uname = 
-struct
-val getMachine = _import "Posix_ProcEnv_Uname_getMachine" : unit -> C_String.t;
-val getNodeName = _import "Posix_ProcEnv_Uname_getNodeName" : unit -> C_String.t;
-val getRelease = _import "Posix_ProcEnv_Uname_getRelease" : unit -> C_String.t;
-val getSysName = _import "Posix_ProcEnv_Uname_getSysName" : unit -> C_String.t;
-val getVersion = _import "Posix_ProcEnv_Uname_getVersion" : unit -> C_String.t;
-end
-end
-structure Process = 
-struct
-val alarm = _import "Posix_Process_alarm" : C_UInt.t -> C_UInt.t;
-val exece = _import "Posix_Process_exece" : NullString8.t * NullString8Array.t * NullString8Array.t -> (C_Int.t) C_Errno.t;
-val execp = _import "Posix_Process_execp" : NullString8.t * NullString8Array.t -> (C_Int.t) C_Errno.t;
-val exit = _import "Posix_Process_exit" : C_Status.t -> unit;
-val exitStatus = _import "Posix_Process_exitStatus" : C_Status.t -> C_Int.t;
-val fork = _import "Posix_Process_fork" : unit -> (C_PId.t) C_Errno.t;
-val ifExited = _import "Posix_Process_ifExited" : C_Status.t -> Bool.t;
-val ifSignaled = _import "Posix_Process_ifSignaled" : C_Status.t -> Bool.t;
-val ifStopped = _import "Posix_Process_ifStopped" : C_Status.t -> Bool.t;
-val kill = _import "Posix_Process_kill" : C_PId.t * C_Signal.t -> (C_Int.t) C_Errno.t;
-val nanosleep = _import "Posix_Process_nanosleep" : (C_Time.t) ref * (C_Long.t) ref -> (C_Int.t) C_Errno.t;
-val pause = _import "Posix_Process_pause" : unit -> (C_Int.t) C_Errno.t;
-val sleep = _import "Posix_Process_sleep" : C_UInt.t -> C_UInt.t;
-val stopSig = _import "Posix_Process_stopSig" : C_Status.t -> C_Signal.t;
-val system = _import "Posix_Process_system" : NullString8.t -> (C_Status.t) C_Errno.t;
-val termSig = _import "Posix_Process_termSig" : C_Status.t -> C_Signal.t;
-structure W = 
-struct
-val NOHANG = _const "Posix_Process_W_NOHANG" : C_Int.t;
-val UNTRACED = _const "Posix_Process_W_UNTRACED" : C_Int.t;
-end
-val waitpid = _import "Posix_Process_waitpid" : C_PId.t * (C_Int.t) ref * C_Int.t -> (C_PId.t) C_Errno.t;
-end
-structure Signal = 
-struct
-val default = _import "Posix_Signal_default" : C_Signal.t -> (C_Int.t) C_Errno.t;
-val handlee = _import "Posix_Signal_handlee" : C_Signal.t -> (C_Int.t) C_Errno.t;
-val handleGC = _import "Posix_Signal_handleGC" : unit -> unit;
-val ignore = _import "Posix_Signal_ignore" : C_Signal.t -> (C_Int.t) C_Errno.t;
-val isDefault = _import "Posix_Signal_isDefault" : C_Signal.t * (Bool.t) ref -> (C_Int.t) C_Errno.t;
-val isIgnore = _import "Posix_Signal_isIgnore" : C_Signal.t * (Bool.t) ref -> (C_Int.t) C_Errno.t;
-val isPending = _import "Posix_Signal_isPending" : C_Signal.t -> Bool.t;
-val isPendingGC = _import "Posix_Signal_isPendingGC" : unit -> Bool.t;
-val NSIG = _const "Posix_Signal_NSIG" : C_Int.t;
-val resetPending = _import "Posix_Signal_resetPending" : unit -> unit;
-val SIG_BLOCK = _const "Posix_Signal_SIG_BLOCK" : C_Int.t;
-val SIG_SETMASK = _const "Posix_Signal_SIG_SETMASK" : C_Int.t;
-val SIG_UNBLOCK = _const "Posix_Signal_SIG_UNBLOCK" : C_Int.t;
-val SIGABRT = _const "Posix_Signal_SIGABRT" : C_Signal.t;
-val sigaddset = _import "Posix_Signal_sigaddset" : C_Signal.t -> (C_Int.t) C_Errno.t;
-val SIGALRM = _const "Posix_Signal_SIGALRM" : C_Signal.t;
-val SIGBUS = _const "Posix_Signal_SIGBUS" : C_Signal.t;
-val SIGCHLD = _const "Posix_Signal_SIGCHLD" : C_Signal.t;
-val SIGCONT = _const "Posix_Signal_SIGCONT" : C_Signal.t;
-val sigdelset = _import "Posix_Signal_sigdelset" : C_Signal.t -> (C_Int.t) C_Errno.t;
-val sigemptyset = _import "Posix_Signal_sigemptyset" : unit -> (C_Int.t) C_Errno.t;
-val sigfillset = _import "Posix_Signal_sigfillset" : unit -> (C_Int.t) C_Errno.t;
-val SIGFPE = _const "Posix_Signal_SIGFPE" : C_Signal.t;
-val SIGHUP = _const "Posix_Signal_SIGHUP" : C_Signal.t;
-val SIGILL = _const "Posix_Signal_SIGILL" : C_Signal.t;
-val SIGINT = _const "Posix_Signal_SIGINT" : C_Signal.t;
-val sigismember = _import "Posix_Signal_sigismember" : C_Signal.t -> (C_Int.t) C_Errno.t;
-val SIGKILL = _const "Posix_Signal_SIGKILL" : C_Signal.t;
-val SIGPIPE = _const "Posix_Signal_SIGPIPE" : C_Signal.t;
-val SIGPOLL = _const "Posix_Signal_SIGPOLL" : C_Signal.t;
-val sigprocmask = _import "Posix_Signal_sigprocmask" : C_Int.t -> (C_Int.t) C_Errno.t;
-val SIGPROF = _const "Posix_Signal_SIGPROF" : C_Signal.t;
-val SIGQUIT = _const "Posix_Signal_SIGQUIT" : C_Signal.t;
-val SIGSEGV = _const "Posix_Signal_SIGSEGV" : C_Signal.t;
-val SIGSTOP = _const "Posix_Signal_SIGSTOP" : C_Signal.t;
-val sigsuspend = _import "Posix_Signal_sigsuspend" : unit -> unit;
-val SIGSYS = _const "Posix_Signal_SIGSYS" : C_Signal.t;
-val SIGTERM = _const "Posix_Signal_SIGTERM" : C_Signal.t;
-val SIGTRAP = _const "Posix_Signal_SIGTRAP" : C_Signal.t;
-val SIGTSTP = _const "Posix_Signal_SIGTSTP" : C_Signal.t;
-val SIGTTIN = _const "Posix_Signal_SIGTTIN" : C_Signal.t;
-val SIGTTOU = _const "Posix_Signal_SIGTTOU" : C_Signal.t;
-val SIGURG = _const "Posix_Signal_SIGURG" : C_Signal.t;
-val SIGUSR1 = _const "Posix_Signal_SIGUSR1" : C_Signal.t;
-val SIGUSR2 = _const "Posix_Signal_SIGUSR2" : C_Signal.t;
-val SIGVTALRM = _const "Posix_Signal_SIGVTALRM" : C_Signal.t;
-val SIGXCPU = _const "Posix_Signal_SIGXCPU" : C_Signal.t;
-val SIGXFSZ = _const "Posix_Signal_SIGXFSZ" : C_Signal.t;
-end
-structure SysDB = 
-struct
-val getgrgid = _import "Posix_SysDB_getgrgid" : C_GId.t -> Bool.t;
-val getgrnam = _import "Posix_SysDB_getgrnam" : NullString8.t -> Bool.t;
-val getpwnam = _import "Posix_SysDB_getpwnam" : NullString8.t -> Bool.t;
-val getpwuid = _import "Posix_SysDB_getpwuid" : C_GId.t -> Bool.t;
-structure Group = 
-struct
-val getGId = _import "Posix_SysDB_Group_getGId" : unit -> C_GId.t;
-val getMem = _import "Posix_SysDB_Group_getMem" : unit -> C_StringArray.t;
-val getName = _import "Posix_SysDB_Group_getName" : unit -> C_String.t;
-end
-structure Passwd = 
-struct
-val getDir = _import "Posix_SysDB_Passwd_getDir" : unit -> C_String.t;
-val getGId = _import "Posix_SysDB_Passwd_getGId" : unit -> C_GId.t;
-val getName = _import "Posix_SysDB_Passwd_getName" : unit -> C_String.t;
-val getShell = _import "Posix_SysDB_Passwd_getShell" : unit -> C_String.t;
-val getUId = _import "Posix_SysDB_Passwd_getUId" : unit -> C_UId.t;
-end
-end
-structure TTY = 
-struct
-val B0 = _const "Posix_TTY_B0" : C_Speed.t;
-val B110 = _const "Posix_TTY_B110" : C_Speed.t;
-val B1200 = _const "Posix_TTY_B1200" : C_Speed.t;
-val B134 = _const "Posix_TTY_B134" : C_Speed.t;
-val B150 = _const "Posix_TTY_B150" : C_Speed.t;
-val B1800 = _const "Posix_TTY_B1800" : C_Speed.t;
-val B19200 = _const "Posix_TTY_B19200" : C_Speed.t;
-val B200 = _const "Posix_TTY_B200" : C_Speed.t;
-val B2400 = _const "Posix_TTY_B2400" : C_Speed.t;
-val B300 = _const "Posix_TTY_B300" : C_Speed.t;
-val B38400 = _const "Posix_TTY_B38400" : C_Speed.t;
-val B4800 = _const "Posix_TTY_B4800" : C_Speed.t;
-val B50 = _const "Posix_TTY_B50" : C_Speed.t;
-val B600 = _const "Posix_TTY_B600" : C_Speed.t;
-val B75 = _const "Posix_TTY_B75" : C_Speed.t;
-val B9600 = _const "Posix_TTY_B9600" : C_Speed.t;
-structure C = 
-struct
-val CLOCAL = _const "Posix_TTY_C_CLOCAL" : C_TCFlag.t;
-val CREAD = _const "Posix_TTY_C_CREAD" : C_TCFlag.t;
-val CS5 = _const "Posix_TTY_C_CS5" : C_TCFlag.t;
-val CS6 = _const "Posix_TTY_C_CS6" : C_TCFlag.t;
-val CS7 = _const "Posix_TTY_C_CS7" : C_TCFlag.t;
-val CS8 = _const "Posix_TTY_C_CS8" : C_TCFlag.t;
-val CSIZE = _const "Posix_TTY_C_CSIZE" : C_TCFlag.t;
-val CSTOPB = _const "Posix_TTY_C_CSTOPB" : C_TCFlag.t;
-val HUPCL = _const "Posix_TTY_C_HUPCL" : C_TCFlag.t;
-val PARENB = _const "Posix_TTY_C_PARENB" : C_TCFlag.t;
-val PARODD = _const "Posix_TTY_C_PARODD" : C_TCFlag.t;
-end
-structure I = 
-struct
-val BRKINT = _const "Posix_TTY_I_BRKINT" : C_TCFlag.t;
-val ICRNL = _const "Posix_TTY_I_ICRNL" : C_TCFlag.t;
-val IGNBRK = _const "Posix_TTY_I_IGNBRK" : C_TCFlag.t;
-val IGNCR = _const "Posix_TTY_I_IGNCR" : C_TCFlag.t;
-val IGNPAR = _const "Posix_TTY_I_IGNPAR" : C_TCFlag.t;
-val INLCR = _const "Posix_TTY_I_INLCR" : C_TCFlag.t;
-val INPCK = _const "Posix_TTY_I_INPCK" : C_TCFlag.t;
-val ISTRIP = _const "Posix_TTY_I_ISTRIP" : C_TCFlag.t;
-val IXANY = _const "Posix_TTY_I_IXANY" : C_TCFlag.t;
-val IXOFF = _const "Posix_TTY_I_IXOFF" : C_TCFlag.t;
-val IXON = _const "Posix_TTY_I_IXON" : C_TCFlag.t;
-val PARMRK = _const "Posix_TTY_I_PARMRK" : C_TCFlag.t;
-end
-structure L = 
-struct
-val ECHO = _const "Posix_TTY_L_ECHO" : C_TCFlag.t;
-val ECHOE = _const "Posix_TTY_L_ECHOE" : C_TCFlag.t;
-val ECHOK = _const "Posix_TTY_L_ECHOK" : C_TCFlag.t;
-val ECHONL = _const "Posix_TTY_L_ECHONL" : C_TCFlag.t;
-val ICANON = _const "Posix_TTY_L_ICANON" : C_TCFlag.t;
-val IEXTEN = _const "Posix_TTY_L_IEXTEN" : C_TCFlag.t;
-val ISIG = _const "Posix_TTY_L_ISIG" : C_TCFlag.t;
-val NOFLSH = _const "Posix_TTY_L_NOFLSH" : C_TCFlag.t;
-val TOSTOP = _const "Posix_TTY_L_TOSTOP" : C_TCFlag.t;
-end
-structure O = 
-struct
-val BS0 = _const "Posix_TTY_O_BS0" : C_TCFlag.t;
-val BS1 = _const "Posix_TTY_O_BS1" : C_TCFlag.t;
-val BSDLY = _const "Posix_TTY_O_BSDLY" : C_TCFlag.t;
-val CR0 = _const "Posix_TTY_O_CR0" : C_TCFlag.t;
-val CR1 = _const "Posix_TTY_O_CR1" : C_TCFlag.t;
-val CR2 = _const "Posix_TTY_O_CR2" : C_TCFlag.t;
-val CR3 = _const "Posix_TTY_O_CR3" : C_TCFlag.t;
-val CRDLY = _const "Posix_TTY_O_CRDLY" : C_TCFlag.t;
-val FF0 = _const "Posix_TTY_O_FF0" : C_TCFlag.t;
-val FF1 = _const "Posix_TTY_O_FF1" : C_TCFlag.t;
-val FFDLY = _const "Posix_TTY_O_FFDLY" : C_TCFlag.t;
-val NL0 = _const "Posix_TTY_O_NL0" : C_TCFlag.t;
-val NL1 = _const "Posix_TTY_O_NL1" : C_TCFlag.t;
-val NLDLY = _const "Posix_TTY_O_NLDLY" : C_TCFlag.t;
-val OCRNL = _const "Posix_TTY_O_OCRNL" : C_TCFlag.t;
-val OFILL = _const "Posix_TTY_O_OFILL" : C_TCFlag.t;
-val ONLCR = _const "Posix_TTY_O_ONLCR" : C_TCFlag.t;
-val ONLRET = _const "Posix_TTY_O_ONLRET" : C_TCFlag.t;
-val ONOCR = _const "Posix_TTY_O_ONOCR" : C_TCFlag.t;
-val OPOST = _const "Posix_TTY_O_OPOST" : C_TCFlag.t;
-val TAB0 = _const "Posix_TTY_O_TAB0" : C_TCFlag.t;
-val TAB1 = _const "Posix_TTY_O_TAB1" : C_TCFlag.t;
-val TAB2 = _const "Posix_TTY_O_TAB2" : C_TCFlag.t;
-val TAB3 = _const "Posix_TTY_O_TAB3" : C_TCFlag.t;
-val TABDLY = _const "Posix_TTY_O_TABDLY" : C_TCFlag.t;
-val VT0 = _const "Posix_TTY_O_VT0" : C_TCFlag.t;
-val VT1 = _const "Posix_TTY_O_VT1" : C_TCFlag.t;
-val VTDLY = _const "Posix_TTY_O_VTDLY" : C_TCFlag.t;
-end
-structure TC = 
-struct
-val drain = _import "Posix_TTY_TC_drain" : C_Fd.t -> (C_Int.t) C_Errno.t;
-val flow = _import "Posix_TTY_TC_flow" : C_Fd.t * C_Int.t -> (C_Int.t) C_Errno.t;
-val flush = _import "Posix_TTY_TC_flush" : C_Fd.t * C_Int.t -> (C_Int.t) C_Errno.t;
-val getattr = _import "Posix_TTY_TC_getattr" : C_Fd.t -> (C_Int.t) C_Errno.t;
-val getpgrp = _import "Posix_TTY_TC_getpgrp" : C_Fd.t -> (C_PId.t) C_Errno.t;
-val sendbreak = _import "Posix_TTY_TC_sendbreak" : C_Fd.t * C_Int.t -> (C_Int.t) C_Errno.t;
-val setattr = _import "Posix_TTY_TC_setattr" : C_Fd.t * C_Int.t -> (C_Int.t) C_Errno.t;
-val setpgrp = _import "Posix_TTY_TC_setpgrp" : C_Fd.t * C_PId.t -> (C_Int.t) C_Errno.t;
-val TCIFLUSH = _const "Posix_TTY_TC_TCIFLUSH" : C_Int.t;
-val TCIOFF = _const "Posix_TTY_TC_TCIOFF" : C_Int.t;
-val TCIOFLUSH = _const "Posix_TTY_TC_TCIOFLUSH" : C_Int.t;
-val TCION = _const "Posix_TTY_TC_TCION" : C_Int.t;
-val TCOFLUSH = _const "Posix_TTY_TC_TCOFLUSH" : C_Int.t;
-val TCOOFF = _const "Posix_TTY_TC_TCOOFF" : C_Int.t;
-val TCOON = _const "Posix_TTY_TC_TCOON" : C_Int.t;
-val TCSADRAIN = _const "Posix_TTY_TC_TCSADRAIN" : C_Int.t;
-val TCSAFLUSH = _const "Posix_TTY_TC_TCSAFLUSH" : C_Int.t;
-val TCSANOW = _const "Posix_TTY_TC_TCSANOW" : C_Int.t;
-end
-structure Termios = 
-struct
-val cfGetISpeed = _import "Posix_TTY_Termios_cfGetISpeed" : unit -> C_Speed.t;
-val cfGetOSpeed = _import "Posix_TTY_Termios_cfGetOSpeed" : unit -> C_Speed.t;
-val cfSetISpeed = _import "Posix_TTY_Termios_cfSetISpeed" : C_Speed.t -> (C_Int.t) C_Errno.t;
-val cfSetOSpeed = _import "Posix_TTY_Termios_cfSetOSpeed" : C_Speed.t -> (C_Int.t) C_Errno.t;
-val getCC = _import "Posix_TTY_Termios_getCC" : (C_CC.t) array -> unit;
-val getCFlag = _import "Posix_TTY_Termios_getCFlag" : unit -> C_TCFlag.t;
-val getIFlag = _import "Posix_TTY_Termios_getIFlag" : unit -> C_TCFlag.t;
-val getLFlag = _import "Posix_TTY_Termios_getLFlag" : unit -> C_TCFlag.t;
-val getOFlag = _import "Posix_TTY_Termios_getOFlag" : unit -> C_TCFlag.t;
-val setCC = _import "Posix_TTY_Termios_setCC" : (C_CC.t) array -> unit;
-val setCFlag = _import "Posix_TTY_Termios_setCFlag" : C_TCFlag.t -> unit;
-val setIFlag = _import "Posix_TTY_Termios_setIFlag" : C_TCFlag.t -> unit;
-val setLFlag = _import "Posix_TTY_Termios_setLFlag" : C_TCFlag.t -> unit;
-val setOFlag = _import "Posix_TTY_Termios_setOFlag" : C_TCFlag.t -> unit;
-end
-structure V = 
-struct
-val NCCS = _const "Posix_TTY_V_NCCS" : C_Int.t;
-val VEOF = _const "Posix_TTY_V_VEOF" : C_Int.t;
-val VEOL = _const "Posix_TTY_V_VEOL" : C_Int.t;
-val VERASE = _const "Posix_TTY_V_VERASE" : C_Int.t;
-val VINTR = _const "Posix_TTY_V_VINTR" : C_Int.t;
-val VKILL = _const "Posix_TTY_V_VKILL" : C_Int.t;
-val VMIN = _const "Posix_TTY_V_VMIN" : C_Int.t;
-val VQUIT = _const "Posix_TTY_V_VQUIT" : C_Int.t;
-val VSTART = _const "Posix_TTY_V_VSTART" : C_Int.t;
-val VSTOP = _const "Posix_TTY_V_VSTOP" : C_Int.t;
-val VSUSP = _const "Posix_TTY_V_VSUSP" : C_Int.t;
-val VTIME = _const "Posix_TTY_V_VTIME" : C_Int.t;
-end
-end
-end
-structure Real32 = 
-struct
-type t = Real32.t
-val abs = _import "Real32_abs" : Real32.t -> Real32.t;
-val add = _import "Real32_add" : Real32.t * Real32.t -> Real32.t;
-val class = _import "Real32_class" : Real32.t -> C_Int.t;
-val div = _import "Real32_div" : Real32.t * Real32.t -> Real32.t;
-val equal = _import "Real32_equal" : Real32.t * Real32.t -> Bool.t;
-val fetch = _import "Real32_fetch" : (Real32.t) ref -> Real32.t;
-val frexp = _import "Real32_frexp" : Real32.t * (C_Int.t) ref -> Real32.t;
-val gdtoa = _import "Real32_gdtoa" : Real32.t * C_Int.t * C_Int.t * (C_Int.t) ref -> C_String.t;
-val ldexp = _import "Real32_ldexp" : Real32.t * C_Int.t -> Real32.t;
-val le = _import "Real32_le" : Real32.t * Real32.t -> Bool.t;
-val lt = _import "Real32_lt" : Real32.t * Real32.t -> Bool.t;
-structure Math = 
-struct
-val acos = _import "Real32_Math_acos" : Real32.t -> Real32.t;
-val asin = _import "Real32_Math_asin" : Real32.t -> Real32.t;
-val atan = _import "Real32_Math_atan" : Real32.t -> Real32.t;
-val atan2 = _import "Real32_Math_atan2" : Real32.t * Real32.t -> Real32.t;
-val cos = _import "Real32_Math_cos" : Real32.t -> Real32.t;
-val cosh = _import "Real32_Math_cosh" : Real32.t -> Real32.t;
-val (eGet, eSet) = _symbol "Real32_Math_e": (unit -> (Real32.t)) * ((Real32.t) -> unit);
-val exp = _import "Real32_Math_exp" : Real32.t -> Real32.t;
-val ln = _import "Real32_Math_ln" : Real32.t -> Real32.t;
-val log10 = _import "Real32_Math_log10" : Real32.t -> Real32.t;
-val (piGet, piSet) = _symbol "Real32_Math_pi": (unit -> (Real32.t)) * ((Real32.t) -> unit);
-val pow = _import "Real32_Math_pow" : Real32.t * Real32.t -> Real32.t;
-val sin = _import "Real32_Math_sin" : Real32.t -> Real32.t;
-val sinh = _import "Real32_Math_sinh" : Real32.t -> Real32.t;
-val sqrt = _import "Real32_Math_sqrt" : Real32.t -> Real32.t;
-val tan = _import "Real32_Math_tan" : Real32.t -> Real32.t;
-val tanh = _import "Real32_Math_tanh" : Real32.t -> Real32.t;
-end
-val (maxFiniteGet, maxFiniteSet) = _symbol "Real32_maxFinite": (unit -> (Real32.t)) * ((Real32.t) -> unit);
-val (minNormalPosGet, minNormalPosSet) = _symbol "Real32_minNormalPos": (unit -> (Real32.t)) * ((Real32.t) -> unit);
-val (minPosGet, minPosSet) = _symbol "Real32_minPos": (unit -> (Real32.t)) * ((Real32.t) -> unit);
-val modf = _import "Real32_modf" : Real32.t * (Real32.t) ref -> Real32.t;
-val move = _import "Real32_move" : (Real32.t) ref * (Real32.t) ref -> unit;
-val mul = _import "Real32_mul" : Real32.t * Real32.t -> Real32.t;
-val muladd = _import "Real32_muladd" : Real32.t * Real32.t * Real32.t -> Real32.t;
-val mulsub = _import "Real32_mulsub" : Real32.t * Real32.t * Real32.t -> Real32.t;
-val neg = _import "Real32_neg" : Real32.t -> Real32.t;
-val nextAfter = _import "Real32_nextAfter" : Real32.t * Real32.t -> Real32.t;
-val round = _import "Real32_round" : Real32.t -> Real32.t;
-val signBit = _import "Real32_signBit" : Real32.t -> C_Int.t;
-val store = _import "Real32_store" : (Real32.t) ref * Real32.t -> unit;
-val strto = _import "Real32_strto" : NullString8.t -> Real32.t;
-val sub = _import "Real32_sub" : Real32.t * Real32.t -> Real32.t;
-val toReal32 = _import "Real32_toReal32" : Real32.t -> Real32.t;
-val toReal64 = _import "Real32_toReal64" : Real32.t -> Real64.t;
-val toWordS16 = _import "Real32_toWordS16" : Real32.t -> Int16.t;
-val toWordS32 = _import "Real32_toWordS32" : Real32.t -> Int32.t;
-val toWordS64 = _import "Real32_toWordS64" : Real32.t -> Int64.t;
-val toWordS8 = _import "Real32_toWordS8" : Real32.t -> Int8.t;
-val toWordU16 = _import "Real32_toWordU16" : Real32.t -> Word16.t;
-val toWordU32 = _import "Real32_toWordU32" : Real32.t -> Word32.t;
-val toWordU64 = _import "Real32_toWordU64" : Real32.t -> Word64.t;
-val toWordU8 = _import "Real32_toWordU8" : Real32.t -> Word8.t;
-end
-structure Real64 = 
-struct
-type t = Real64.t
-val abs = _import "Real64_abs" : Real64.t -> Real64.t;
-val add = _import "Real64_add" : Real64.t * Real64.t -> Real64.t;
-val class = _import "Real64_class" : Real64.t -> C_Int.t;
-val div = _import "Real64_div" : Real64.t * Real64.t -> Real64.t;
-val equal = _import "Real64_equal" : Real64.t * Real64.t -> Bool.t;
-val fetch = _import "Real64_fetch" : (Real64.t) ref -> Real64.t;
-val frexp = _import "Real64_frexp" : Real64.t * (C_Int.t) ref -> Real64.t;
-val gdtoa = _import "Real64_gdtoa" : Real64.t * C_Int.t * C_Int.t * (C_Int.t) ref -> C_String.t;
-val ldexp = _import "Real64_ldexp" : Real64.t * C_Int.t -> Real64.t;
-val le = _import "Real64_le" : Real64.t * Real64.t -> Bool.t;
-val lt = _import "Real64_lt" : Real64.t * Real64.t -> Bool.t;
-structure Math = 
-struct
-val acos = _import "Real64_Math_acos" : Real64.t -> Real64.t;
-val asin = _import "Real64_Math_asin" : Real64.t -> Real64.t;
-val atan = _import "Real64_Math_atan" : Real64.t -> Real64.t;
-val atan2 = _import "Real64_Math_atan2" : Real64.t * Real64.t -> Real64.t;
-val cos = _import "Real64_Math_cos" : Real64.t -> Real64.t;
-val cosh = _import "Real64_Math_cosh" : Real64.t -> Real64.t;
-val (eGet, eSet) = _symbol "Real64_Math_e": (unit -> (Real64.t)) * ((Real64.t) -> unit);
-val exp = _import "Real64_Math_exp" : Real64.t -> Real64.t;
-val ln = _import "Real64_Math_ln" : Real64.t -> Real64.t;
-val log10 = _import "Real64_Math_log10" : Real64.t -> Real64.t;
-val (piGet, piSet) = _symbol "Real64_Math_pi": (unit -> (Real64.t)) * ((Real64.t) -> unit);
-val pow = _import "Real64_Math_pow" : Real64.t * Real64.t -> Real64.t;
-val sin = _import "Real64_Math_sin" : Real64.t -> Real64.t;
-val sinh = _import "Real64_Math_sinh" : Real64.t -> Real64.t;
-val sqrt = _import "Real64_Math_sqrt" : Real64.t -> Real64.t;
-val tan = _import "Real64_Math_tan" : Real64.t -> Real64.t;
-val tanh = _import "Real64_Math_tanh" : Real64.t -> Real64.t;
-end
-val (maxFiniteGet, maxFiniteSet) = _symbol "Real64_maxFinite": (unit -> (Real64.t)) * ((Real64.t) -> unit);
-val (minNormalPosGet, minNormalPosSet) = _symbol "Real64_minNormalPos": (unit -> (Real64.t)) * ((Real64.t) -> unit);
-val (minPosGet, minPosSet) = _symbol "Real64_minPos": (unit -> (Real64.t)) * ((Real64.t) -> unit);
-val modf = _import "Real64_modf" : Real64.t * (Real64.t) ref -> Real64.t;
-val move = _import "Real64_move" : (Real64.t) ref * (Real64.t) ref -> unit;
-val mul = _import "Real64_mul" : Real64.t * Real64.t -> Real64.t;
-val muladd = _import "Real64_muladd" : Real64.t * Real64.t * Real64.t -> Real64.t;
-val mulsub = _import "Real64_mulsub" : Real64.t * Real64.t * Real64.t -> Real64.t;
-val neg = _import "Real64_neg" : Real64.t -> Real64.t;
-val nextAfter = _import "Real64_nextAfter" : Real64.t * Real64.t -> Real64.t;
-val round = _import "Real64_round" : Real64.t -> Real64.t;
-val signBit = _import "Real64_signBit" : Real64.t -> C_Int.t;
-val store = _import "Real64_store" : (Real64.t) ref * Real64.t -> unit;
-val strto = _import "Real64_strto" : NullString8.t -> Real64.t;
-val sub = _import "Real64_sub" : Real64.t * Real64.t -> Real64.t;
-val toReal32 = _import "Real64_toReal32" : Real64.t -> Real32.t;
-val toReal64 = _import "Real64_toReal64" : Real64.t -> Real64.t;
-val toWordS16 = _import "Real64_toWordS16" : Real64.t -> Int16.t;
-val toWordS32 = _import "Real64_toWordS32" : Real64.t -> Int32.t;
-val toWordS64 = _import "Real64_toWordS64" : Real64.t -> Int64.t;
-val toWordS8 = _import "Real64_toWordS8" : Real64.t -> Int8.t;
-val toWordU16 = _import "Real64_toWordU16" : Real64.t -> Word16.t;
-val toWordU32 = _import "Real64_toWordU32" : Real64.t -> Word32.t;
-val toWordU64 = _import "Real64_toWordU64" : Real64.t -> Word64.t;
-val toWordU8 = _import "Real64_toWordU8" : Real64.t -> Word8.t;
-end
-structure Socket = 
-struct
-val accept = _import "Socket_accept" : C_Sock.t * (Word8.t) array * (C_Socklen.t) ref -> (C_Int.t) C_Errno.t;
-structure AF = 
-struct
-val INET = _const "Socket_AF_INET" : C_Int.t;
-val INET6 = _const "Socket_AF_INET6" : C_Int.t;
-val UNIX = _const "Socket_AF_UNIX" : C_Int.t;
-val UNSPEC = _const "Socket_AF_UNSPEC" : C_Int.t;
-end
-val bind = _import "Socket_bind" : C_Sock.t * (Word8.t) vector * C_Socklen.t -> (C_Int.t) C_Errno.t;
-val close = _import "Socket_close" : C_Sock.t -> (C_Int.t) C_Errno.t;
-val connect = _import "Socket_connect" : C_Sock.t * (Word8.t) vector * C_Socklen.t -> (C_Int.t) C_Errno.t;
-structure Ctl = 
-struct
-val FIONBIO = _const "Socket_Ctl_FIONBIO" : C_Int.t;
-val FIONREAD = _const "Socket_Ctl_FIONREAD" : C_Int.t;
-val getIOCtl = _import "Socket_Ctl_getIOCtl" : C_Sock.t * C_Int.t * (Word8.t) array -> (C_Int.t) C_Errno.t;
-val getPeerName = _import "Socket_Ctl_getPeerName" : C_Sock.t * (Word8.t) array * (C_Socklen.t) ref -> (C_Int.t) C_Errno.t;
-val getSockName = _import "Socket_Ctl_getSockName" : C_Sock.t * (Word8.t) array * (C_Socklen.t) ref -> (C_Int.t) C_Errno.t;
-val getSockOpt = _import "Socket_Ctl_getSockOpt" : C_Sock.t * C_Int.t * C_Int.t * (Word8.t) array * (C_Socklen.t) ref -> (C_Int.t) C_Errno.t;
-val setIOCtl = _import "Socket_Ctl_setIOCtl" : C_Sock.t * C_Int.t * (Word8.t) vector -> (C_Int.t) C_Errno.t;
-val setSockOpt = _import "Socket_Ctl_setSockOpt" : C_Sock.t * C_Int.t * C_Int.t * (Word8.t) vector * C_Socklen.t -> (C_Int.t) C_Errno.t;
-val SIOCATMARK = _const "Socket_Ctl_SIOCATMARK" : C_Int.t;
-val SO_ACCEPTCONN = _const "Socket_Ctl_SO_ACCEPTCONN" : C_Int.t;
-val SO_BROADCAST = _const "Socket_Ctl_SO_BROADCAST" : C_Int.t;
-val SO_DEBUG = _const "Socket_Ctl_SO_DEBUG" : C_Int.t;
-val SO_DONTROUTE = _const "Socket_Ctl_SO_DONTROUTE" : C_Int.t;
-val SO_ERROR = _const "Socket_Ctl_SO_ERROR" : C_Int.t;
-val SO_KEEPALIVE = _const "Socket_Ctl_SO_KEEPALIVE" : C_Int.t;
-val SO_LINGER = _const "Socket_Ctl_SO_LINGER" : C_Int.t;
-val SO_OOBINLINE = _const "Socket_Ctl_SO_OOBINLINE" : C_Int.t;
-val SO_RCVBUF = _const "Socket_Ctl_SO_RCVBUF" : C_Int.t;
-val SO_RCVLOWAT = _const "Socket_Ctl_SO_RCVLOWAT" : C_Int.t;
-val SO_RCVTIMEO = _const "Socket_Ctl_SO_RCVTIMEO" : C_Int.t;
-val SO_REUSEADDR = _const "Socket_Ctl_SO_REUSEADDR" : C_Int.t;
-val SO_SNDBUF = _const "Socket_Ctl_SO_SNDBUF" : C_Int.t;
-val SO_SNDLOWAT = _const "Socket_Ctl_SO_SNDLOWAT" : C_Int.t;
-val SO_SNDTIMEO = _const "Socket_Ctl_SO_SNDTIMEO" : C_Int.t;
-val SO_TYPE = _const "Socket_Ctl_SO_TYPE" : C_Int.t;
-val SOL_SOCKET = _const "Socket_Ctl_SOL_SOCKET" : C_Int.t;
-end
-val familyOfAddr = _import "Socket_familyOfAddr" : (Word8.t) vector -> C_Int.t;
-structure GenericSock = 
-struct
-val socket = _import "Socket_GenericSock_socket" : C_Int.t * C_Int.t * C_Int.t -> (C_Int.t) C_Errno.t;
-val socketPair = _import "Socket_GenericSock_socketPair" : C_Int.t * C_Int.t * C_Int.t * (C_Int.t) array -> (C_Int.t) C_Errno.t;
-end
-structure INetSock = 
-struct
-structure Ctl = 
-struct
-val IPPROTO_TCP = _const "Socket_INetSock_Ctl_IPPROTO_TCP" : C_Int.t;
-val TCP_NODELAY = _const "Socket_INetSock_Ctl_TCP_NODELAY" : C_Int.t;
-end
-val fromAddr = _import "Socket_INetSock_fromAddr" : (Word8.t) vector -> unit;
-val getInAddr = _import "Socket_INetSock_getInAddr" : (Word8.t) array -> unit;
-val getPort = _import "Socket_INetSock_getPort" : unit -> C_Int.t;
-val toAddr = _import "Socket_INetSock_toAddr" : (Word8.t) vector * C_Int.t * (Word8.t) array * (C_Socklen.t) ref -> unit;
-end
-val listen = _import "Socket_listen" : C_Sock.t * C_Int.t -> (C_Int.t) C_Errno.t;
-val MSG_CTRUNC = _const "Socket_MSG_CTRUNC" : C_Int.t;
-val MSG_DONTROUTE = _const "Socket_MSG_DONTROUTE" : C_Int.t;
-val MSG_DONTWAIT = _const "Socket_MSG_DONTWAIT" : C_Int.t;
-val MSG_EOR = _const "Socket_MSG_EOR" : C_Int.t;
-val MSG_OOB = _const "Socket_MSG_OOB" : C_Int.t;
-val MSG_PEEK = _const "Socket_MSG_PEEK" : C_Int.t;
-val MSG_TRUNC = _const "Socket_MSG_TRUNC" : C_Int.t;
-val MSG_WAITALL = _const "Socket_MSG_WAITALL" : C_Int.t;
-val recv = _import "Socket_recv" : C_Sock.t * (Word8.t) array * C_Int.t * C_Size.t * C_Int.t -> (C_SSize.t) C_Errno.t;
-val recvFrom = _import "Socket_recvFrom" : C_Sock.t * (Word8.t) array * C_Int.t * C_Size.t * C_Int.t * (Word8.t) array * (C_Socklen.t) ref -> (C_SSize.t) C_Errno.t;
-val sendArr = _import "Socket_sendArr" : C_Sock.t * (Word8.t) array * C_Int.t * C_Size.t * C_Int.t -> (C_SSize.t) C_Errno.t;
-val sendArrTo = _import "Socket_sendArrTo" : C_Sock.t * (Word8.t) array * C_Int.t * C_Size.t * C_Int.t * (Word8.t) vector * C_Socklen.t -> (C_SSize.t) C_Errno.t;
-val sendVec = _import "Socket_sendVec" : C_Sock.t * (Word8.t) vector * C_Int.t * C_Size.t * C_Int.t -> (C_SSize.t) C_Errno.t;
-val sendVecTo = _import "Socket_sendVecTo" : C_Sock.t * (Word8.t) vector * C_Int.t * C_Size.t * C_Int.t * (Word8.t) vector * C_Socklen.t -> (C_SSize.t) C_Errno.t;
-val SHUT_RD = _const "Socket_SHUT_RD" : C_Int.t;
-val SHUT_RDWR = _const "Socket_SHUT_RDWR" : C_Int.t;
-val SHUT_WR = _const "Socket_SHUT_WR" : C_Int.t;
-val shutdown = _import "Socket_shutdown" : C_Sock.t * C_Int.t -> (C_Int.t) C_Errno.t;
-structure SOCK = 
-struct
-val DGRAM = _const "Socket_SOCK_DGRAM" : C_Int.t;
-val RAW = _const "Socket_SOCK_RAW" : C_Int.t;
-val SEQPACKET = _const "Socket_SOCK_SEQPACKET" : C_Int.t;
-val STREAM = _const "Socket_SOCK_STREAM" : C_Int.t;
-end
-val sockAddrStorageLen = _const "Socket_sockAddrStorageLen" : C_Size.t;
-structure UnixSock = 
-struct
-val fromAddr = _import "Socket_UnixSock_fromAddr" : (Word8.t) vector * (Char8.t) array * C_Size.t -> unit;
-val pathLen = _import "Socket_UnixSock_pathLen" : (Word8.t) vector -> C_Size.t;
-val toAddr = _import "Socket_UnixSock_toAddr" : NullString8.t * C_Size.t * (Word8.t) array * (C_Socklen.t) ref -> unit;
-end
-end
-structure Stdio = 
-struct
-val print = _import "Stdio_print" : String8.t -> unit;
-val printStderr = _import "Stdio_printStderr" : String8.t -> unit;
-val printStdout = _import "Stdio_printStdout" : String8.t -> unit;
-end
-structure Time = 
-struct
-val getTimeOfDay = _import "Time_getTimeOfDay" : unit -> C_Int.t;
-val sec = _import "Time_sec" : unit -> C_Time.t;
-val usec = _import "Time_usec" : unit -> C_SUSeconds.t;
-end
-structure Windows = 
-struct
-structure Process = 
-struct
-val create = _import "Windows_Process_create" : NullString8.t * NullString8.t * NullString8.t * C_Fd.t * C_Fd.t * C_Fd.t -> (C_PId.t) C_Errno.t;
-val terminate = _import "Windows_Process_terminate" : C_PId.t * C_Signal.t -> (C_Int.t) C_Errno.t;
-end
-end
-structure Word16 = 
-struct
-type t = Word16.t
-val add = _import "Word16_add" : Word16.t * Word16.t -> Word16.t;
-val andb = _import "Word16_andb" : Word16.t * Word16.t -> Word16.t;
-val equal = _import "Word16_equal" : Word16.t * Word16.t -> Bool.t;
-val lshift = _import "Word16_lshift" : Word16.t * Word32.t -> Word16.t;
-val neg = _import "Word16_neg" : Word16.t -> Word16.t;
-val notb = _import "Word16_notb" : Word16.t -> Word16.t;
-val orb = _import "Word16_orb" : Word16.t * Word16.t -> Word16.t;
-val rol = _import "Word16_rol" : Word16.t * Word32.t -> Word16.t;
-val ror = _import "Word16_ror" : Word16.t * Word32.t -> Word16.t;
-val sub = _import "Word16_sub" : Word16.t * Word16.t -> Word16.t;
-val xorb = _import "Word16_xorb" : Word16.t * Word16.t -> Word16.t;
-end
-structure Word32 = 
-struct
-type t = Word32.t
-val add = _import "Word32_add" : Word32.t * Word32.t -> Word32.t;
-val andb = _import "Word32_andb" : Word32.t * Word32.t -> Word32.t;
-val equal = _import "Word32_equal" : Word32.t * Word32.t -> Bool.t;
-val lshift = _import "Word32_lshift" : Word32.t * Word32.t -> Word32.t;
-val neg = _import "Word32_neg" : Word32.t -> Word32.t;
-val notb = _import "Word32_notb" : Word32.t -> Word32.t;
-val orb = _import "Word32_orb" : Word32.t * Word32.t -> Word32.t;
-val rol = _import "Word32_rol" : Word32.t * Word32.t -> Word32.t;
-val ror = _import "Word32_ror" : Word32.t * Word32.t -> Word32.t;
-val sub = _import "Word32_sub" : Word32.t * Word32.t -> Word32.t;
-val xorb = _import "Word32_xorb" : Word32.t * Word32.t -> Word32.t;
-end
-structure Word64 = 
-struct
-type t = Word64.t
-val add = _import "Word64_add" : Word64.t * Word64.t -> Word64.t;
-val andb = _import "Word64_andb" : Word64.t * Word64.t -> Word64.t;
-val equal = _import "Word64_equal" : Word64.t * Word64.t -> Bool.t;
-val lshift = _import "Word64_lshift" : Word64.t * Word32.t -> Word64.t;
-val neg = _import "Word64_neg" : Word64.t -> Word64.t;
-val notb = _import "Word64_notb" : Word64.t -> Word64.t;
-val orb = _import "Word64_orb" : Word64.t * Word64.t -> Word64.t;
-val rol = _import "Word64_rol" : Word64.t * Word32.t -> Word64.t;
-val ror = _import "Word64_ror" : Word64.t * Word32.t -> Word64.t;
-val sub = _import "Word64_sub" : Word64.t * Word64.t -> Word64.t;
-val xorb = _import "Word64_xorb" : Word64.t * Word64.t -> Word64.t;
-end
-structure Word8 = 
-struct
-type t = Word8.t
-val add = _import "Word8_add" : Word8.t * Word8.t -> Word8.t;
-val andb = _import "Word8_andb" : Word8.t * Word8.t -> Word8.t;
-val equal = _import "Word8_equal" : Word8.t * Word8.t -> Bool.t;
-val lshift = _import "Word8_lshift" : Word8.t * Word32.t -> Word8.t;
-val neg = _import "Word8_neg" : Word8.t -> Word8.t;
-val notb = _import "Word8_notb" : Word8.t -> Word8.t;
-val orb = _import "Word8_orb" : Word8.t * Word8.t -> Word8.t;
-val rol = _import "Word8_rol" : Word8.t * Word32.t -> Word8.t;
-val ror = _import "Word8_ror" : Word8.t * Word32.t -> Word8.t;
-val sub = _import "Word8_sub" : Word8.t * Word8.t -> Word8.t;
-val xorb = _import "Word8_xorb" : Word8.t * Word8.t -> Word8.t;
-end
-structure WordS16 = 
-struct
-val addCheckOverflows = _import "WordS16_addCheckOverflows" : Int16.t * Int16.t -> Bool.t;
-val ge = _import "WordS16_ge" : Int16.t * Int16.t -> Bool.t;
-val gt = _import "WordS16_gt" : Int16.t * Int16.t -> Bool.t;
-val le = _import "WordS16_le" : Int16.t * Int16.t -> Bool.t;
-val lt = _import "WordS16_lt" : Int16.t * Int16.t -> Bool.t;
-val mul = _import "WordS16_mul" : Int16.t * Int16.t -> Int16.t;
-val mulCheckOverflows = _import "WordS16_mulCheckOverflows" : Int16.t * Int16.t -> Bool.t;
-val negCheckOverflows = _import "WordS16_negCheckOverflows" : Int16.t -> Bool.t;
-val quot = _import "WordS16_quot" : Int16.t * Int16.t -> Int16.t;
-val rem = _import "WordS16_rem" : Int16.t * Int16.t -> Int16.t;
-val rshift = _import "WordS16_rshift" : Int16.t * Word32.t -> Int16.t;
-val subCheckOverflows = _import "WordS16_subCheckOverflows" : Int16.t * Int16.t -> Bool.t;
-val toReal32 = _import "WordS16_toReal32" : Int16.t -> Real32.t;
-val toReal64 = _import "WordS16_toReal64" : Int16.t -> Real64.t;
-val toWord16 = _import "WordS16_toWord16" : Int16.t -> Word16.t;
-val toWord32 = _import "WordS16_toWord32" : Int16.t -> Word32.t;
-val toWord64 = _import "WordS16_toWord64" : Int16.t -> Word64.t;
-val toWord8 = _import "WordS16_toWord8" : Int16.t -> Word8.t;
-end
-structure WordS32 = 
-struct
-val addCheckOverflows = _import "WordS32_addCheckOverflows" : Int32.t * Int32.t -> Bool.t;
-val ge = _import "WordS32_ge" : Int32.t * Int32.t -> Bool.t;
-val gt = _import "WordS32_gt" : Int32.t * Int32.t -> Bool.t;
-val le = _import "WordS32_le" : Int32.t * Int32.t -> Bool.t;
-val lt = _import "WordS32_lt" : Int32.t * Int32.t -> Bool.t;
-val mul = _import "WordS32_mul" : Int32.t * Int32.t -> Int32.t;
-val mulCheckOverflows = _import "WordS32_mulCheckOverflows" : Int32.t * Int32.t -> Bool.t;
-val negCheckOverflows = _import "WordS32_negCheckOverflows" : Int32.t -> Bool.t;
-val quot = _import "WordS32_quot" : Int32.t * Int32.t -> Int32.t;
-val rem = _import "WordS32_rem" : Int32.t * Int32.t -> Int32.t;
-val rshift = _import "WordS32_rshift" : Int32.t * Word32.t -> Int32.t;
-val subCheckOverflows = _import "WordS32_subCheckOverflows" : Int32.t * Int32.t -> Bool.t;
-val toReal32 = _import "WordS32_toReal32" : Int32.t -> Real32.t;
-val toReal64 = _import "WordS32_toReal64" : Int32.t -> Real64.t;
-val toWord16 = _import "WordS32_toWord16" : Int32.t -> Word16.t;
-val toWord32 = _import "WordS32_toWord32" : Int32.t -> Word32.t;
-val toWord64 = _import "WordS32_toWord64" : Int32.t -> Word64.t;
-val toWord8 = _import "WordS32_toWord8" : Int32.t -> Word8.t;
-end
-structure WordS64 = 
-struct
-val addCheckOverflows = _import "WordS64_addCheckOverflows" : Int64.t * Int64.t -> Bool.t;
-val ge = _import "WordS64_ge" : Int64.t * Int64.t -> Bool.t;
-val gt = _import "WordS64_gt" : Int64.t * Int64.t -> Bool.t;
-val le = _import "WordS64_le" : Int64.t * Int64.t -> Bool.t;
-val lt = _import "WordS64_lt" : Int64.t * Int64.t -> Bool.t;
-val mul = _import "WordS64_mul" : Int64.t * Int64.t -> Int64.t;
-val mulCheckOverflows = _import "WordS64_mulCheckOverflows" : Int64.t * Int64.t -> Bool.t;
-val negCheckOverflows = _import "WordS64_negCheckOverflows" : Int64.t -> Bool.t;
-val quot = _import "WordS64_quot" : Int64.t * Int64.t -> Int64.t;
-val rem = _import "WordS64_rem" : Int64.t * Int64.t -> Int64.t;
-val rshift = _import "WordS64_rshift" : Int64.t * Word32.t -> Int64.t;
-val subCheckOverflows = _import "WordS64_subCheckOverflows" : Int64.t * Int64.t -> Bool.t;
-val toReal32 = _import "WordS64_toReal32" : Int64.t -> Real32.t;
-val toReal64 = _import "WordS64_toReal64" : Int64.t -> Real64.t;
-val toWord16 = _import "WordS64_toWord16" : Int64.t -> Word16.t;
-val toWord32 = _import "WordS64_toWord32" : Int64.t -> Word32.t;
-val toWord64 = _import "WordS64_toWord64" : Int64.t -> Word64.t;
-val toWord8 = _import "WordS64_toWord8" : Int64.t -> Word8.t;
-end
-structure WordS8 = 
-struct
-val addCheckOverflows = _import "WordS8_addCheckOverflows" : Int8.t * Int8.t -> Bool.t;
-val ge = _import "WordS8_ge" : Int8.t * Int8.t -> Bool.t;
-val gt = _import "WordS8_gt" : Int8.t * Int8.t -> Bool.t;
-val le = _import "WordS8_le" : Int8.t * Int8.t -> Bool.t;
-val lt = _import "WordS8_lt" : Int8.t * Int8.t -> Bool.t;
-val mul = _import "WordS8_mul" : Int8.t * Int8.t -> Int8.t;
-val mulCheckOverflows = _import "WordS8_mulCheckOverflows" : Int8.t * Int8.t -> Bool.t;
-val negCheckOverflows = _import "WordS8_negCheckOverflows" : Int8.t -> Bool.t;
-val quot = _import "WordS8_quot" : Int8.t * Int8.t -> Int8.t;
-val rem = _import "WordS8_rem" : Int8.t * Int8.t -> Int8.t;
-val rshift = _import "WordS8_rshift" : Int8.t * Word32.t -> Int8.t;
-val subCheckOverflows = _import "WordS8_subCheckOverflows" : Int8.t * Int8.t -> Bool.t;
-val toReal32 = _import "WordS8_toReal32" : Int8.t -> Real32.t;
-val toReal64 = _import "WordS8_toReal64" : Int8.t -> Real64.t;
-val toWord16 = _import "WordS8_toWord16" : Int8.t -> Word16.t;
-val toWord32 = _import "WordS8_toWord32" : Int8.t -> Word32.t;
-val toWord64 = _import "WordS8_toWord64" : Int8.t -> Word64.t;
-val toWord8 = _import "WordS8_toWord8" : Int8.t -> Word8.t;
-end
-structure WordU16 = 
-struct
-val addCheckOverflows = _import "WordU16_addCheckOverflows" : Word16.t * Word16.t -> Bool.t;
-val ge = _import "WordU16_ge" : Word16.t * Word16.t -> Bool.t;
-val gt = _import "WordU16_gt" : Word16.t * Word16.t -> Bool.t;
-val le = _import "WordU16_le" : Word16.t * Word16.t -> Bool.t;
-val lt = _import "WordU16_lt" : Word16.t * Word16.t -> Bool.t;
-val mul = _import "WordU16_mul" : Word16.t * Word16.t -> Word16.t;
-val mulCheckOverflows = _import "WordU16_mulCheckOverflows" : Word16.t * Word16.t -> Bool.t;
-val quot = _import "WordU16_quot" : Word16.t * Word16.t -> Word16.t;
-val rem = _import "WordU16_rem" : Word16.t * Word16.t -> Word16.t;
-val rshift = _import "WordU16_rshift" : Word16.t * Word32.t -> Word16.t;
-val toReal32 = _import "WordU16_toReal32" : Word16.t -> Real32.t;
-val toReal64 = _import "WordU16_toReal64" : Word16.t -> Real64.t;
-val toWord16 = _import "WordU16_toWord16" : Word16.t -> Word16.t;
-val toWord32 = _import "WordU16_toWord32" : Word16.t -> Word32.t;
-val toWord64 = _import "WordU16_toWord64" : Word16.t -> Word64.t;
-val toWord8 = _import "WordU16_toWord8" : Word16.t -> Word8.t;
-end
-structure WordU32 = 
-struct
-val addCheckOverflows = _import "WordU32_addCheckOverflows" : Word32.t * Word32.t -> Bool.t;
-val ge = _import "WordU32_ge" : Word32.t * Word32.t -> Bool.t;
-val gt = _import "WordU32_gt" : Word32.t * Word32.t -> Bool.t;
-val le = _import "WordU32_le" : Word32.t * Word32.t -> Bool.t;
-val lt = _import "WordU32_lt" : Word32.t * Word32.t -> Bool.t;
-val mul = _import "WordU32_mul" : Word32.t * Word32.t -> Word32.t;
-val mulCheckOverflows = _import "WordU32_mulCheckOverflows" : Word32.t * Word32.t -> Bool.t;
-val quot = _import "WordU32_quot" : Word32.t * Word32.t -> Word32.t;
-val rem = _import "WordU32_rem" : Word32.t * Word32.t -> Word32.t;
-val rshift = _import "WordU32_rshift" : Word32.t * Word32.t -> Word32.t;
-val toReal32 = _import "WordU32_toReal32" : Word32.t -> Real32.t;
-val toReal64 = _import "WordU32_toReal64" : Word32.t -> Real64.t;
-val toWord16 = _import "WordU32_toWord16" : Word32.t -> Word16.t;
-val toWord32 = _import "WordU32_toWord32" : Word32.t -> Word32.t;
-val toWord64 = _import "WordU32_toWord64" : Word32.t -> Word64.t;
-val toWord8 = _import "WordU32_toWord8" : Word32.t -> Word8.t;
-end
-structure WordU64 = 
-struct
-val addCheckOverflows = _import "WordU64_addCheckOverflows" : Word64.t * Word64.t -> Bool.t;
-val ge = _import "WordU64_ge" : Word64.t * Word64.t -> Bool.t;
-val gt = _import "WordU64_gt" : Word64.t * Word64.t -> Bool.t;
-val le = _import "WordU64_le" : Word64.t * Word64.t -> Bool.t;
-val lt = _import "WordU64_lt" : Word64.t * Word64.t -> Bool.t;
-val mul = _import "WordU64_mul" : Word64.t * Word64.t -> Word64.t;
-val mulCheckOverflows = _import "WordU64_mulCheckOverflows" : Word64.t * Word64.t -> Bool.t;
-val quot = _import "WordU64_quot" : Word64.t * Word64.t -> Word64.t;
-val rem = _import "WordU64_rem" : Word64.t * Word64.t -> Word64.t;
-val rshift = _import "WordU64_rshift" : Word64.t * Word32.t -> Word64.t;
-val toReal32 = _import "WordU64_toReal32" : Word64.t -> Real32.t;
-val toReal64 = _import "WordU64_toReal64" : Word64.t -> Real64.t;
-val toWord16 = _import "WordU64_toWord16" : Word64.t -> Word16.t;
-val toWord32 = _import "WordU64_toWord32" : Word64.t -> Word32.t;
-val toWord64 = _import "WordU64_toWord64" : Word64.t -> Word64.t;
-val toWord8 = _import "WordU64_toWord8" : Word64.t -> Word8.t;
-end
-structure WordU8 = 
-struct
-val addCheckOverflows = _import "WordU8_addCheckOverflows" : Word8.t * Word8.t -> Bool.t;
-val ge = _import "WordU8_ge" : Word8.t * Word8.t -> Bool.t;
-val gt = _import "WordU8_gt" : Word8.t * Word8.t -> Bool.t;
-val le = _import "WordU8_le" : Word8.t * Word8.t -> Bool.t;
-val lt = _import "WordU8_lt" : Word8.t * Word8.t -> Bool.t;
-val mul = _import "WordU8_mul" : Word8.t * Word8.t -> Word8.t;
-val mulCheckOverflows = _import "WordU8_mulCheckOverflows" : Word8.t * Word8.t -> Bool.t;
-val quot = _import "WordU8_quot" : Word8.t * Word8.t -> Word8.t;
-val rem = _import "WordU8_rem" : Word8.t * Word8.t -> Word8.t;
-val rshift = _import "WordU8_rshift" : Word8.t * Word32.t -> Word8.t;
-val toReal32 = _import "WordU8_toReal32" : Word8.t -> Real32.t;
-val toReal64 = _import "WordU8_toReal64" : Word8.t -> Real64.t;
-val toWord16 = _import "WordU8_toWord16" : Word8.t -> Word16.t;
-val toWord32 = _import "WordU8_toWord32" : Word8.t -> Word32.t;
-val toWord64 = _import "WordU8_toWord64" : Word8.t -> Word64.t;
-val toWord8 = _import "WordU8_toWord8" : Word8.t -> Word8.t;
-end
-end
-end
+(* This file is automatically generated.  Do not edit. *)
+
+local open Primitive in 
+structure PrimitiveFFI =
+struct
+structure CommandLine = 
+struct
+val (argcGet, argcSet) = _symbol "CommandLine_argc": (unit -> (C_Int.t)) * ((C_Int.t) -> unit);
+val (argvGet, argvSet) = _symbol "CommandLine_argv": (unit -> (C_StringArray.t)) * ((C_StringArray.t) -> unit);
+val (commandNameGet, commandNameSet) = _symbol "CommandLine_commandName": (unit -> (C_String.t)) * ((C_String.t) -> unit);
+end
+structure Cygwin = 
+struct
+val toFullWindowsPath = _import "Cygwin_toFullWindowsPath" : NullString8.t -> C_String.t;
+end
+structure Date = 
+struct
+val gmTime = _import "Date_gmTime" : (C_Time.t) ref -> (C_Int.t) C_Errno.t;
+val localOffset = _import "Date_localOffset" : unit -> C_Double.t;
+val localTime = _import "Date_localTime" : (C_Time.t) ref -> (C_Int.t) C_Errno.t;
+val mkTime = _import "Date_mkTime" : unit -> (C_Time.t) C_Errno.t;
+val strfTime = _import "Date_strfTime" : (Char8.t) array * C_Size.t * NullString8.t -> C_Size.t;
+structure Tm = 
+struct
+val getHour = _import "Date_Tm_getHour" : unit -> C_Int.t;
+val getIsDst = _import "Date_Tm_getIsDst" : unit -> C_Int.t;
+val getMDay = _import "Date_Tm_getMDay" : unit -> C_Int.t;
+val getMin = _import "Date_Tm_getMin" : unit -> C_Int.t;
+val getMon = _import "Date_Tm_getMon" : unit -> C_Int.t;
+val getSec = _import "Date_Tm_getSec" : unit -> C_Int.t;
+val getWDay = _import "Date_Tm_getWDay" : unit -> C_Int.t;
+val getYDay = _import "Date_Tm_getYDay" : unit -> C_Int.t;
+val getYear = _import "Date_Tm_getYear" : unit -> C_Int.t;
+val setHour = _import "Date_Tm_setHour" : C_Int.t -> unit;
+val setIsDst = _import "Date_Tm_setIsDst" : C_Int.t -> unit;
+val setMDay = _import "Date_Tm_setMDay" : C_Int.t -> unit;
+val setMin = _import "Date_Tm_setMin" : C_Int.t -> unit;
+val setMon = _import "Date_Tm_setMon" : C_Int.t -> unit;
+val setSec = _import "Date_Tm_setSec" : C_Int.t -> unit;
+val setWDay = _import "Date_Tm_setWDay" : C_Int.t -> unit;
+val setYDay = _import "Date_Tm_setYDay" : C_Int.t -> unit;
+val setYear = _import "Date_Tm_setYear" : C_Int.t -> unit;
+end
+end
+structure IEEEReal = 
+struct
+structure FloatClass = 
+struct
+val FP_INFINITE = _const "IEEEReal_FloatClass_FP_INFINITE" : C_Int.t;
+val FP_NAN = _const "IEEEReal_FloatClass_FP_NAN" : C_Int.t;
+val FP_NORMAL = _const "IEEEReal_FloatClass_FP_NORMAL" : C_Int.t;
+val FP_SUBNORMAL = _const "IEEEReal_FloatClass_FP_SUBNORMAL" : C_Int.t;
+val FP_ZERO = _const "IEEEReal_FloatClass_FP_ZERO" : C_Int.t;
+end
+val getRoundingMode = _import "IEEEReal_getRoundingMode" : unit -> C_Int.t;
+structure RoundingMode = 
+struct
+val FE_DOWNWARD = _const "IEEEReal_RoundingMode_FE_DOWNWARD" : C_Int.t;
+val FE_NOSUPPORT = _const "IEEEReal_RoundingMode_FE_NOSUPPORT" : C_Int.t;
+val FE_TONEAREST = _const "IEEEReal_RoundingMode_FE_TONEAREST" : C_Int.t;
+val FE_TOWARDZERO = _const "IEEEReal_RoundingMode_FE_TOWARDZERO" : C_Int.t;
+val FE_UPWARD = _const "IEEEReal_RoundingMode_FE_UPWARD" : C_Int.t;
+end
+val setRoundingMode = _import "IEEEReal_setRoundingMode" : C_Int.t -> unit;
+end
+structure MLton = 
+struct
+val bug = _import "MLton_bug" : NullString8.t -> unit;
+structure Itimer = 
+struct
+val PROF = _const "MLton_Itimer_PROF" : C_Int.t;
+val REAL = _const "MLton_Itimer_REAL" : C_Int.t;
+val set = _import "MLton_Itimer_set" : C_Int.t * C_Time.t * C_SUSeconds.t * C_Time.t * C_SUSeconds.t -> (C_Int.t) C_Errno.t;
+val VIRTUAL = _const "MLton_Itimer_VIRTUAL" : C_Int.t;
+end
+structure Process = 
+struct
+val cwait = _import "MLton_Process_cwait" : C_PId.t * (C_Status.t) ref -> (C_PId.t) C_Errno.t;
+val spawne = _import "MLton_Process_spawne" : NullString8.t * NullString8Array.t * NullString8Array.t -> (C_Int.t) C_Errno.t;
+val spawnp = _import "MLton_Process_spawnp" : NullString8.t * NullString8Array.t -> (C_Int.t) C_Errno.t;
+end
+structure Rlimit = 
+struct
+val AS = _const "MLton_Rlimit_AS" : C_Int.t;
+val CORE = _const "MLton_Rlimit_CORE" : C_Int.t;
+val CPU = _const "MLton_Rlimit_CPU" : C_Int.t;
+val DATA = _const "MLton_Rlimit_DATA" : C_Int.t;
+val FSIZE = _const "MLton_Rlimit_FSIZE" : C_Int.t;
+val get = _import "MLton_Rlimit_get" : C_Int.t -> (C_Int.t) C_Errno.t;
+val getHard = _import "MLton_Rlimit_getHard" : unit -> C_RLim.t;
+val getSoft = _import "MLton_Rlimit_getSoft" : unit -> C_RLim.t;
+val INFINITY = _const "MLton_Rlimit_INFINITY" : C_RLim.t;
+val NOFILE = _const "MLton_Rlimit_NOFILE" : C_Int.t;
+val set = _import "MLton_Rlimit_set" : C_Int.t * C_RLim.t * C_RLim.t -> (C_Int.t) C_Errno.t;
+val STACK = _const "MLton_Rlimit_STACK" : C_Int.t;
+end
+structure Rusage = 
+struct
+val children_stime_sec = _import "MLton_Rusage_children_stime_sec" : unit -> C_Time.t;
+val children_stime_usec = _import "MLton_Rusage_children_stime_usec" : unit -> C_SUSeconds.t;
+val children_utime_sec = _import "MLton_Rusage_children_utime_sec" : unit -> C_Time.t;
+val children_utime_usec = _import "MLton_Rusage_children_utime_usec" : unit -> C_SUSeconds.t;
+val gc_stime_sec = _import "MLton_Rusage_gc_stime_sec" : unit -> C_Time.t;
+val gc_stime_usec = _import "MLton_Rusage_gc_stime_usec" : unit -> C_SUSeconds.t;
+val gc_utime_sec = _import "MLton_Rusage_gc_utime_sec" : unit -> C_Time.t;
+val gc_utime_usec = _import "MLton_Rusage_gc_utime_usec" : unit -> C_SUSeconds.t;
+val getrusage = _import "MLton_Rusage_getrusage" : unit -> unit;
+val self_stime_sec = _import "MLton_Rusage_self_stime_sec" : unit -> C_Time.t;
+val self_stime_usec = _import "MLton_Rusage_self_stime_usec" : unit -> C_SUSeconds.t;
+val self_utime_sec = _import "MLton_Rusage_self_utime_sec" : unit -> C_Time.t;
+val self_utime_usec = _import "MLton_Rusage_self_utime_usec" : unit -> C_SUSeconds.t;
+end
+structure Syslog = 
+struct
+val closelog = _import "MLton_Syslog_closelog" : unit -> unit;
+structure Facility = 
+struct
+val LOG_AUTH = _const "MLton_Syslog_Facility_LOG_AUTH" : C_Int.t;
+val LOG_CRON = _const "MLton_Syslog_Facility_LOG_CRON" : C_Int.t;
+val LOG_DAEMON = _const "MLton_Syslog_Facility_LOG_DAEMON" : C_Int.t;
+val LOG_KERN = _const "MLton_Syslog_Facility_LOG_KERN" : C_Int.t;
+val LOG_LOCAL0 = _const "MLton_Syslog_Facility_LOG_LOCAL0" : C_Int.t;
+val LOG_LOCAL1 = _const "MLton_Syslog_Facility_LOG_LOCAL1" : C_Int.t;
+val LOG_LOCAL2 = _const "MLton_Syslog_Facility_LOG_LOCAL2" : C_Int.t;
+val LOG_LOCAL3 = _const "MLton_Syslog_Facility_LOG_LOCAL3" : C_Int.t;
+val LOG_LOCAL4 = _const "MLton_Syslog_Facility_LOG_LOCAL4" : C_Int.t;
+val LOG_LOCAL5 = _const "MLton_Syslog_Facility_LOG_LOCAL5" : C_Int.t;
+val LOG_LOCAL6 = _const "MLton_Syslog_Facility_LOG_LOCAL6" : C_Int.t;
+val LOG_LOCAL7 = _const "MLton_Syslog_Facility_LOG_LOCAL7" : C_Int.t;
+val LOG_LPR = _const "MLton_Syslog_Facility_LOG_LPR" : C_Int.t;
+val LOG_MAIL = _const "MLton_Syslog_Facility_LOG_MAIL" : C_Int.t;
+val LOG_NEWS = _const "MLton_Syslog_Facility_LOG_NEWS" : C_Int.t;
+val LOG_USER = _const "MLton_Syslog_Facility_LOG_USER" : C_Int.t;
+val LOG_UUCP = _const "MLton_Syslog_Facility_LOG_UUCP" : C_Int.t;
+end
+structure Logopt = 
+struct
+val LOG_CONS = _const "MLton_Syslog_Logopt_LOG_CONS" : C_Int.t;
+val LOG_NDELAY = _const "MLton_Syslog_Logopt_LOG_NDELAY" : C_Int.t;
+val LOG_NOWAIT = _const "MLton_Syslog_Logopt_LOG_NOWAIT" : C_Int.t;
+val LOG_ODELAY = _const "MLton_Syslog_Logopt_LOG_ODELAY" : C_Int.t;
+val LOG_PID = _const "MLton_Syslog_Logopt_LOG_PID" : C_Int.t;
+end
+val openlog = _import "MLton_Syslog_openlog" : NullString8.t * C_Int.t * C_Int.t -> unit;
+structure Severity = 
+struct
+val LOG_ALERT = _const "MLton_Syslog_Severity_LOG_ALERT" : C_Int.t;
+val LOG_CRIT = _const "MLton_Syslog_Severity_LOG_CRIT" : C_Int.t;
+val LOG_DEBUG = _const "MLton_Syslog_Severity_LOG_DEBUG" : C_Int.t;
+val LOG_EMERG = _const "MLton_Syslog_Severity_LOG_EMERG" : C_Int.t;
+val LOG_ERR = _const "MLton_Syslog_Severity_LOG_ERR" : C_Int.t;
+val LOG_INFO = _const "MLton_Syslog_Severity_LOG_INFO" : C_Int.t;
+val LOG_NOTICE = _const "MLton_Syslog_Severity_LOG_NOTICE" : C_Int.t;
+val LOG_WARNING = _const "MLton_Syslog_Severity_LOG_WARNING" : C_Int.t;
+end
+val syslog = _import "MLton_Syslog_syslog" : C_Int.t * NullString8.t -> unit;
+end
+end
+structure Net = 
+struct
+val htonl = _import "Net_htonl" : Word32.t -> Word32.t;
+val htons = _import "Net_htons" : Word16.t -> Word16.t;
+val ntohl = _import "Net_ntohl" : Word32.t -> Word32.t;
+val ntohs = _import "Net_ntohs" : Word16.t -> Word16.t;
+end
+structure NetHostDB = 
+struct
+val getByAddress = _import "NetHostDB_getByAddress" : (Word8.t) vector * C_Socklen.t -> Bool.t;
+val getByName = _import "NetHostDB_getByName" : NullString8.t -> Bool.t;
+val getEntryAddrsN = _import "NetHostDB_getEntryAddrsN" : C_Int.t * (Word8.t) array -> unit;
+val getEntryAddrsNum = _import "NetHostDB_getEntryAddrsNum" : unit -> C_Int.t;
+val getEntryAddrType = _import "NetHostDB_getEntryAddrType" : unit -> C_Int.t;
+val getEntryAliasesN = _import "NetHostDB_getEntryAliasesN" : C_Int.t -> C_String.t;
+val getEntryAliasesNum = _import "NetHostDB_getEntryAliasesNum" : unit -> C_Int.t;
+val getEntryLength = _import "NetHostDB_getEntryLength" : unit -> C_Int.t;
+val getEntryName = _import "NetHostDB_getEntryName" : unit -> C_String.t;
+val getHostName = _import "NetHostDB_getHostName" : (Char8.t) array * C_Size.t -> (C_Int.t) C_Errno.t;
+val INADDR_ANY = _const "NetHostDB_INADDR_ANY" : C_Int.t;
+val inAddrSize = _const "NetHostDB_inAddrSize" : C_Size.t;
+end
+structure NetProtDB = 
+struct
+val getByName = _import "NetProtDB_getByName" : NullString8.t -> Bool.t;
+val getByNumber = _import "NetProtDB_getByNumber" : C_Int.t -> Bool.t;
+val getEntryAliasesN = _import "NetProtDB_getEntryAliasesN" : C_Int.t -> C_String.t;
+val getEntryAliasesNum = _import "NetProtDB_getEntryAliasesNum" : unit -> C_Int.t;
+val getEntryName = _import "NetProtDB_getEntryName" : unit -> C_String.t;
+val getEntryProto = _import "NetProtDB_getEntryProto" : unit -> C_Int.t;
+end
+structure NetServDB = 
+struct
+val getByName = _import "NetServDB_getByName" : NullString8.t * NullString8.t -> Bool.t;
+val getByNameNull = _import "NetServDB_getByNameNull" : NullString8.t -> Bool.t;
+val getByPort = _import "NetServDB_getByPort" : C_Int.t * NullString8.t -> Bool.t;
+val getByPortNull = _import "NetServDB_getByPortNull" : C_Int.t -> Bool.t;
+val getEntryAliasesN = _import "NetServDB_getEntryAliasesN" : C_Int.t -> C_String.t;
+val getEntryAliasesNum = _import "NetServDB_getEntryAliasesNum" : unit -> C_Int.t;
+val getEntryName = _import "NetServDB_getEntryName" : unit -> C_String.t;
+val getEntryPort = _import "NetServDB_getEntryPort" : unit -> C_Int.t;
+val getEntryProto = _import "NetServDB_getEntryProto" : unit -> C_String.t;
+end
+structure OS = 
+struct
+structure IO = 
+struct
+val poll = _import "OS_IO_poll" : (C_Fd.t) vector * (C_Short.t) vector * C_NFds.t * C_Int.t * (C_Short.t) array -> (C_Int.t) C_Errno.t;
+val POLLIN = _const "OS_IO_POLLIN" : C_Short.t;
+val POLLOUT = _const "OS_IO_POLLOUT" : C_Short.t;
+val POLLPRI = _const "OS_IO_POLLPRI" : C_Short.t;
+end
+end
+structure PackReal32 = 
+struct
+val subArr = _import "PackReal32_subArr" : (Word8.t) array * C_Ptrdiff.t -> Real32.t;
+val subArrRev = _import "PackReal32_subArrRev" : (Word8.t) array * C_Ptrdiff.t -> Real32.t;
+val subVec = _import "PackReal32_subVec" : (Word8.t) vector * C_Ptrdiff.t -> Real32.t;
+val subVecRev = _import "PackReal32_subVecRev" : (Word8.t) vector * C_Ptrdiff.t -> Real32.t;
+val update = _import "PackReal32_update" : (Word8.t) array * C_Ptrdiff.t * Real32.t -> unit;
+val updateRev = _import "PackReal32_updateRev" : (Word8.t) array * C_Ptrdiff.t * Real32.t -> unit;
+end
+structure PackReal64 = 
+struct
+val subArr = _import "PackReal64_subArr" : (Word8.t) array * C_Ptrdiff.t -> Real64.t;
+val subArrRev = _import "PackReal64_subArrRev" : (Word8.t) array * C_Ptrdiff.t -> Real64.t;
+val subVec = _import "PackReal64_subVec" : (Word8.t) vector * C_Ptrdiff.t -> Real64.t;
+val subVecRev = _import "PackReal64_subVecRev" : (Word8.t) vector * C_Ptrdiff.t -> Real64.t;
+val update = _import "PackReal64_update" : (Word8.t) array * C_Ptrdiff.t * Real64.t -> unit;
+val updateRev = _import "PackReal64_updateRev" : (Word8.t) array * C_Ptrdiff.t * Real64.t -> unit;
+end
+structure PackWord16 = 
+struct
+val subArr = _import "PackWord16_subArr" : (Word8.t) array * C_Ptrdiff.t -> Word16.t;
+val subArrRev = _import "PackWord16_subArrRev" : (Word8.t) array * C_Ptrdiff.t -> Word16.t;
+val subVec = _import "PackWord16_subVec" : (Word8.t) vector * C_Ptrdiff.t -> Word16.t;
+val subVecRev = _import "PackWord16_subVecRev" : (Word8.t) vector * C_Ptrdiff.t -> Word16.t;
+val update = _import "PackWord16_update" : (Word8.t) array * C_Ptrdiff.t * Word16.t -> unit;
+val updateRev = _import "PackWord16_updateRev" : (Word8.t) array * C_Ptrdiff.t * Word16.t -> unit;
+end
+structure PackWord32 = 
+struct
+val subArr = _import "PackWord32_subArr" : (Word8.t) array * C_Ptrdiff.t -> Word32.t;
+val subArrRev = _import "PackWord32_subArrRev" : (Word8.t) array * C_Ptrdiff.t -> Word32.t;
+val subVec = _import "PackWord32_subVec" : (Word8.t) vector * C_Ptrdiff.t -> Word32.t;
+val subVecRev = _import "PackWord32_subVecRev" : (Word8.t) vector * C_Ptrdiff.t -> Word32.t;
+val update = _import "PackWord32_update" : (Word8.t) array * C_Ptrdiff.t * Word32.t -> unit;
+val updateRev = _import "PackWord32_updateRev" : (Word8.t) array * C_Ptrdiff.t * Word32.t -> unit;
+end
+structure PackWord64 = 
+struct
+val subArr = _import "PackWord64_subArr" : (Word8.t) array * C_Ptrdiff.t -> Word64.t;
+val subArrRev = _import "PackWord64_subArrRev" : (Word8.t) array * C_Ptrdiff.t -> Word64.t;
+val subVec = _import "PackWord64_subVec" : (Word8.t) vector * C_Ptrdiff.t -> Word64.t;
+val subVecRev = _import "PackWord64_subVecRev" : (Word8.t) vector * C_Ptrdiff.t -> Word64.t;
+val update = _import "PackWord64_update" : (Word8.t) array * C_Ptrdiff.t * Word64.t -> unit;
+val updateRev = _import "PackWord64_updateRev" : (Word8.t) array * C_Ptrdiff.t * Word64.t -> unit;
+end
+structure PackWord8 = 
+struct
+val subArr = _import "PackWord8_subArr" : (Word8.t) array * C_Ptrdiff.t -> Word8.t;
+val subArrRev = _import "PackWord8_subArrRev" : (Word8.t) array * C_Ptrdiff.t -> Word8.t;
+val subVec = _import "PackWord8_subVec" : (Word8.t) vector * C_Ptrdiff.t -> Word8.t;
+val subVecRev = _import "PackWord8_subVecRev" : (Word8.t) vector * C_Ptrdiff.t -> Word8.t;
+val update = _import "PackWord8_update" : (Word8.t) array * C_Ptrdiff.t * Word8.t -> unit;
+val updateRev = _import "PackWord8_updateRev" : (Word8.t) array * C_Ptrdiff.t * Word8.t -> unit;
+end
+structure Posix = 
+struct
+structure Error = 
+struct
+val clearErrno = _import "Posix_Error_clearErrno" : unit -> unit;
+val E2BIG = _const "Posix_Error_E2BIG" : C_Int.t;
+val EACCES = _const "Posix_Error_EACCES" : C_Int.t;
+val EADDRINUSE = _const "Posix_Error_EADDRINUSE" : C_Int.t;
+val EADDRNOTAVAIL = _const "Posix_Error_EADDRNOTAVAIL" : C_Int.t;
+val EAFNOSUPPORT = _const "Posix_Error_EAFNOSUPPORT" : C_Int.t;
+val EAGAIN = _const "Posix_Error_EAGAIN" : C_Int.t;
+val EALREADY = _const "Posix_Error_EALREADY" : C_Int.t;
+val EBADF = _const "Posix_Error_EBADF" : C_Int.t;
+val EBADMSG = _const "Posix_Error_EBADMSG" : C_Int.t;
+val EBUSY = _const "Posix_Error_EBUSY" : C_Int.t;
+val ECANCELED = _const "Posix_Error_ECANCELED" : C_Int.t;
+val ECHILD = _const "Posix_Error_ECHILD" : C_Int.t;
+val ECONNABORTED = _const "Posix_Error_ECONNABORTED" : C_Int.t;
+val ECONNREFUSED = _const "Posix_Error_ECONNREFUSED" : C_Int.t;
+val ECONNRESET = _const "Posix_Error_ECONNRESET" : C_Int.t;
+val EDEADLK = _const "Posix_Error_EDEADLK" : C_Int.t;
+val EDESTADDRREQ = _const "Posix_Error_EDESTADDRREQ" : C_Int.t;
+val EDOM = _const "Posix_Error_EDOM" : C_Int.t;
+val EDQUOT = _const "Posix_Error_EDQUOT" : C_Int.t;
+val EEXIST = _const "Posix_Error_EEXIST" : C_Int.t;
+val EFAULT = _const "Posix_Error_EFAULT" : C_Int.t;
+val EFBIG = _const "Posix_Error_EFBIG" : C_Int.t;
+val EHOSTUNREACH = _const "Posix_Error_EHOSTUNREACH" : C_Int.t;
+val EIDRM = _const "Posix_Error_EIDRM" : C_Int.t;
+val EILSEQ = _const "Posix_Error_EILSEQ" : C_Int.t;
+val EINPROGRESS = _const "Posix_Error_EINPROGRESS" : C_Int.t;
+val EINTR = _const "Posix_Error_EINTR" : C_Int.t;
+val EINVAL = _const "Posix_Error_EINVAL" : C_Int.t;
+val EIO = _const "Posix_Error_EIO" : C_Int.t;
+val EISCONN = _const "Posix_Error_EISCONN" : C_Int.t;
+val EISDIR = _const "Posix_Error_EISDIR" : C_Int.t;
+val ELOOP = _const "Posix_Error_ELOOP" : C_Int.t;
+val EMFILE = _const "Posix_Error_EMFILE" : C_Int.t;
+val EMLINK = _const "Posix_Error_EMLINK" : C_Int.t;
+val EMSGSIZE = _const "Posix_Error_EMSGSIZE" : C_Int.t;
+val EMULTIHOP = _const "Posix_Error_EMULTIHOP" : C_Int.t;
+val ENAMETOOLONG = _const "Posix_Error_ENAMETOOLONG" : C_Int.t;
+val ENETDOWN = _const "Posix_Error_ENETDOWN" : C_Int.t;
+val ENETRESET = _const "Posix_Error_ENETRESET" : C_Int.t;
+val ENETUNREACH = _const "Posix_Error_ENETUNREACH" : C_Int.t;
+val ENFILE = _const "Posix_Error_ENFILE" : C_Int.t;
+val ENOBUFS = _const "Posix_Error_ENOBUFS" : C_Int.t;
+val ENODATA = _const "Posix_Error_ENODATA" : C_Int.t;
+val ENODEV = _const "Posix_Error_ENODEV" : C_Int.t;
+val ENOENT = _const "Posix_Error_ENOENT" : C_Int.t;
+val ENOEXEC = _const "Posix_Error_ENOEXEC" : C_Int.t;
+val ENOLCK = _const "Posix_Error_ENOLCK" : C_Int.t;
+val ENOLINK = _const "Posix_Error_ENOLINK" : C_Int.t;
+val ENOMEM = _const "Posix_Error_ENOMEM" : C_Int.t;
+val ENOMSG = _const "Posix_Error_ENOMSG" : C_Int.t;
+val ENOPROTOOPT = _const "Posix_Error_ENOPROTOOPT" : C_Int.t;
+val ENOSPC = _const "Posix_Error_ENOSPC" : C_Int.t;
+val ENOSR = _const "Posix_Error_ENOSR" : C_Int.t;
+val ENOSTR = _const "Posix_Error_ENOSTR" : C_Int.t;
+val ENOSYS = _const "Posix_Error_ENOSYS" : C_Int.t;
+val ENOTCONN = _const "Posix_Error_ENOTCONN" : C_Int.t;
+val ENOTDIR = _const "Posix_Error_ENOTDIR" : C_Int.t;
+val ENOTEMPTY = _const "Posix_Error_ENOTEMPTY" : C_Int.t;
+val ENOTSOCK = _const "Posix_Error_ENOTSOCK" : C_Int.t;
+val ENOTSUP = _const "Posix_Error_ENOTSUP" : C_Int.t;
+val ENOTTY = _const "Posix_Error_ENOTTY" : C_Int.t;
+val ENXIO = _const "Posix_Error_ENXIO" : C_Int.t;
+val EOPNOTSUPP = _const "Posix_Error_EOPNOTSUPP" : C_Int.t;
+val EOVERFLOW = _const "Posix_Error_EOVERFLOW" : C_Int.t;
+val EPERM = _const "Posix_Error_EPERM" : C_Int.t;
+val EPIPE = _const "Posix_Error_EPIPE" : C_Int.t;
+val EPROTO = _const "Posix_Error_EPROTO" : C_Int.t;
+val EPROTONOSUPPORT = _const "Posix_Error_EPROTONOSUPPORT" : C_Int.t;
+val EPROTOTYPE = _const "Posix_Error_EPROTOTYPE" : C_Int.t;
+val ERANGE = _const "Posix_Error_ERANGE" : C_Int.t;
+val EROFS = _const "Posix_Error_EROFS" : C_Int.t;
+val ESPIPE = _const "Posix_Error_ESPIPE" : C_Int.t;
+val ESRCH = _const "Posix_Error_ESRCH" : C_Int.t;
+val ESTALE = _const "Posix_Error_ESTALE" : C_Int.t;
+val ETIME = _const "Posix_Error_ETIME" : C_Int.t;
+val ETIMEDOUT = _const "Posix_Error_ETIMEDOUT" : C_Int.t;
+val ETXTBSY = _const "Posix_Error_ETXTBSY" : C_Int.t;
+val EWOULDBLOCK = _const "Posix_Error_EWOULDBLOCK" : C_Int.t;
+val EXDEV = _const "Posix_Error_EXDEV" : C_Int.t;
+val getErrno = _import "Posix_Error_getErrno" : unit -> C_Int.t;
+val strError = _import "Posix_Error_strError" : C_Int.t -> C_String.t;
+end
+structure FileSys = 
+struct
+structure A = 
+struct
+val F_OK = _const "Posix_FileSys_A_F_OK" : C_Int.t;
+val R_OK = _const "Posix_FileSys_A_R_OK" : C_Int.t;
+val W_OK = _const "Posix_FileSys_A_W_OK" : C_Int.t;
+val X_OK = _const "Posix_FileSys_A_X_OK" : C_Int.t;
+end
+val access = _import "Posix_FileSys_access" : NullString8.t * C_Int.t -> (C_Int.t) C_Errno.t;
+val chdir = _import "Posix_FileSys_chdir" : NullString8.t -> (C_Int.t) C_Errno.t;
+val chmod = _import "Posix_FileSys_chmod" : NullString8.t * C_Mode.t -> (C_Int.t) C_Errno.t;
+val chown = _import "Posix_FileSys_chown" : NullString8.t * C_UId.t * C_GId.t -> (C_Int.t) C_Errno.t;
+structure Dirstream = 
+struct
+val closeDir = _import "Posix_FileSys_Dirstream_closeDir" : C_DirP.t -> (C_Int.t) C_Errno.t;
+val openDir = _import "Posix_FileSys_Dirstream_openDir" : NullString8.t -> (C_DirP.t) C_Errno.t;
+val readDir = _import "Posix_FileSys_Dirstream_readDir" : C_DirP.t -> (C_String.t) C_Errno.t;
+val rewindDir = _import "Posix_FileSys_Dirstream_rewindDir" : C_DirP.t -> unit;
+end
+val fchdir = _import "Posix_FileSys_fchdir" : C_Fd.t -> (C_Int.t) C_Errno.t;
+val fchmod = _import "Posix_FileSys_fchmod" : C_Fd.t * C_Mode.t -> (C_Int.t) C_Errno.t;
+val fchown = _import "Posix_FileSys_fchown" : C_Fd.t * C_UId.t * C_GId.t -> (C_Int.t) C_Errno.t;
+val fpathconf = _import "Posix_FileSys_fpathconf" : C_Fd.t * C_Int.t -> (C_Long.t) C_Errno.t;
+val ftruncate = _import "Posix_FileSys_ftruncate" : C_Fd.t * C_Off.t -> (C_Int.t) C_Errno.t;
+val getcwd = _import "Posix_FileSys_getcwd" : (Char8.t) array * C_Size.t -> (C_String.t) C_Errno.t;
+val link = _import "Posix_FileSys_link" : NullString8.t * NullString8.t -> (C_Int.t) C_Errno.t;
+val mkdir = _import "Posix_FileSys_mkdir" : NullString8.t * C_Mode.t -> (C_Int.t) C_Errno.t;
+val mkfifo = _import "Posix_FileSys_mkfifo" : NullString8.t * C_Mode.t -> (C_Int.t) C_Errno.t;
+structure O = 
+struct
+val APPEND = _const "Posix_FileSys_O_APPEND" : C_Int.t;
+val BINARY = _const "Posix_FileSys_O_BINARY" : C_Int.t;
+val CREAT = _const "Posix_FileSys_O_CREAT" : C_Int.t;
+val DSYNC = _const "Posix_FileSys_O_DSYNC" : C_Int.t;
+val EXCL = _const "Posix_FileSys_O_EXCL" : C_Int.t;
+val NOCTTY = _const "Posix_FileSys_O_NOCTTY" : C_Int.t;
+val NONBLOCK = _const "Posix_FileSys_O_NONBLOCK" : C_Int.t;
+val RDONLY = _const "Posix_FileSys_O_RDONLY" : C_Int.t;
+val RDWR = _const "Posix_FileSys_O_RDWR" : C_Int.t;
+val RSYNC = _const "Posix_FileSys_O_RSYNC" : C_Int.t;
+val SYNC = _const "Posix_FileSys_O_SYNC" : C_Int.t;
+val TEXT = _const "Posix_FileSys_O_TEXT" : C_Int.t;
+val TRUNC = _const "Posix_FileSys_O_TRUNC" : C_Int.t;
+val WRONLY = _const "Posix_FileSys_O_WRONLY" : C_Int.t;
+end
+val open2 = _import "Posix_FileSys_open2" : NullString8.t * C_Int.t -> (C_Fd.t) C_Errno.t;
+val open3 = _import "Posix_FileSys_open3" : NullString8.t * C_Int.t * C_Mode.t -> (C_Fd.t) C_Errno.t;
+val pathconf = _import "Posix_FileSys_pathconf" : NullString8.t * C_Int.t -> (C_Long.t) C_Errno.t;
+structure PC = 
+struct
+val ALLOC_SIZE_MIN = _const "Posix_FileSys_PC_ALLOC_SIZE_MIN" : C_Int.t;
+val ASYNC_IO = _const "Posix_FileSys_PC_ASYNC_IO" : C_Int.t;
+val CHOWN_RESTRICTED = _const "Posix_FileSys_PC_CHOWN_RESTRICTED" : C_Int.t;
+val FILESIZEBITS = _const "Posix_FileSys_PC_FILESIZEBITS" : C_Int.t;
+val LINK_MAX = _const "Posix_FileSys_PC_LINK_MAX" : C_Int.t;
+val MAX_CANON = _const "Posix_FileSys_PC_MAX_CANON" : C_Int.t;
+val MAX_INPUT = _const "Posix_FileSys_PC_MAX_INPUT" : C_Int.t;
+val NAME_MAX = _const "Posix_FileSys_PC_NAME_MAX" : C_Int.t;
+val NO_TRUNC = _const "Posix_FileSys_PC_NO_TRUNC" : C_Int.t;
+val PATH_MAX = _const "Posix_FileSys_PC_PATH_MAX" : C_Int.t;
+val PIPE_BUF = _const "Posix_FileSys_PC_PIPE_BUF" : C_Int.t;
+val PRIO_IO = _const "Posix_FileSys_PC_PRIO_IO" : C_Int.t;
+val REC_INCR_XFER_SIZE = _const "Posix_FileSys_PC_REC_INCR_XFER_SIZE" : C_Int.t;
+val REC_MAX_XFER_SIZE = _const "Posix_FileSys_PC_REC_MAX_XFER_SIZE" : C_Int.t;
+val REC_MIN_XFER_SIZE = _const "Posix_FileSys_PC_REC_MIN_XFER_SIZE" : C_Int.t;
+val REC_XFER_ALIGN = _const "Posix_FileSys_PC_REC_XFER_ALIGN" : C_Int.t;
+val SYMLINK_MAX = _const "Posix_FileSys_PC_SYMLINK_MAX" : C_Int.t;
+val SYNC_IO = _const "Posix_FileSys_PC_SYNC_IO" : C_Int.t;
+val TWO_SYMLINKS = _const "Posix_FileSys_PC_TWO_SYMLINKS" : C_Int.t;
+val VDISABLE = _const "Posix_FileSys_PC_VDISABLE" : C_Int.t;
+end
+val readlink = _import "Posix_FileSys_readlink" : NullString8.t * (Char8.t) array * C_Size.t -> (C_SSize.t) C_Errno.t;
+val rename = _import "Posix_FileSys_rename" : NullString8.t * NullString8.t -> (C_Int.t) C_Errno.t;
+val rmdir = _import "Posix_FileSys_rmdir" : NullString8.t -> (C_Int.t) C_Errno.t;
+structure S = 
+struct
+val IFBLK = _const "Posix_FileSys_S_IFBLK" : C_Mode.t;
+val IFCHR = _const "Posix_FileSys_S_IFCHR" : C_Mode.t;
+val IFDIR = _const "Posix_FileSys_S_IFDIR" : C_Mode.t;
+val IFIFO = _const "Posix_FileSys_S_IFIFO" : C_Mode.t;
+val IFLNK = _const "Posix_FileSys_S_IFLNK" : C_Mode.t;
+val IFMT = _const "Posix_FileSys_S_IFMT" : C_Mode.t;
+val IFREG = _const "Posix_FileSys_S_IFREG" : C_Mode.t;
+val IFSOCK = _const "Posix_FileSys_S_IFSOCK" : C_Mode.t;
+val IRGRP = _const "Posix_FileSys_S_IRGRP" : C_Mode.t;
+val IROTH = _const "Posix_FileSys_S_IROTH" : C_Mode.t;
+val IRUSR = _const "Posix_FileSys_S_IRUSR" : C_Mode.t;
+val IRWXG = _const "Posix_FileSys_S_IRWXG" : C_Mode.t;
+val IRWXO = _const "Posix_FileSys_S_IRWXO" : C_Mode.t;
+val IRWXU = _const "Posix_FileSys_S_IRWXU" : C_Mode.t;
+val ISGID = _const "Posix_FileSys_S_ISGID" : C_Mode.t;
+val ISUID = _const "Posix_FileSys_S_ISUID" : C_Mode.t;
+val ISVTX = _const "Posix_FileSys_S_ISVTX" : C_Mode.t;
+val IWGRP = _const "Posix_FileSys_S_IWGRP" : C_Mode.t;
+val IWOTH = _const "Posix_FileSys_S_IWOTH" : C_Mode.t;
+val IWUSR = _const "Posix_FileSys_S_IWUSR" : C_Mode.t;
+val IXGRP = _const "Posix_FileSys_S_IXGRP" : C_Mode.t;
+val IXOTH = _const "Posix_FileSys_S_IXOTH" : C_Mode.t;
+val IXUSR = _const "Posix_FileSys_S_IXUSR" : C_Mode.t;
+end
+structure ST = 
+struct
+val isBlk = _import "Posix_FileSys_ST_isBlk" : C_Mode.t -> Bool.t;
+val isChr = _import "Posix_FileSys_ST_isChr" : C_Mode.t -> Bool.t;
+val isDir = _import "Posix_FileSys_ST_isDir" : C_Mode.t -> Bool.t;
+val isFIFO = _import "Posix_FileSys_ST_isFIFO" : C_Mode.t -> Bool.t;
+val isLink = _import "Posix_FileSys_ST_isLink" : C_Mode.t -> Bool.t;
+val isReg = _import "Posix_FileSys_ST_isReg" : C_Mode.t -> Bool.t;
+val isSock = _import "Posix_FileSys_ST_isSock" : C_Mode.t -> Bool.t;
+end
+structure Stat = 
+struct
+val fstat = _import "Posix_FileSys_Stat_fstat" : C_Fd.t -> (C_Int.t) C_Errno.t;
+val getATime = _import "Posix_FileSys_Stat_getATime" : unit -> C_Time.t;
+val getCTime = _import "Posix_FileSys_Stat_getCTime" : unit -> C_Time.t;
+val getDev = _import "Posix_FileSys_Stat_getDev" : unit -> C_Dev.t;
+val getGId = _import "Posix_FileSys_Stat_getGId" : unit -> C_GId.t;
+val getINo = _import "Posix_FileSys_Stat_getINo" : unit -> C_INo.t;
+val getMode = _import "Posix_FileSys_Stat_getMode" : unit -> C_Mode.t;
+val getMTime = _import "Posix_FileSys_Stat_getMTime" : unit -> C_Time.t;
+val getNLink = _import "Posix_FileSys_Stat_getNLink" : unit -> C_NLink.t;
+val getRDev = _import "Posix_FileSys_Stat_getRDev" : unit -> C_Dev.t;
+val getSize = _import "Posix_FileSys_Stat_getSize" : unit -> C_Off.t;
+val getUId = _import "Posix_FileSys_Stat_getUId" : unit -> C_UId.t;
+val lstat = _import "Posix_FileSys_Stat_lstat" : NullString8.t -> (C_Int.t) C_Errno.t;
+val stat = _import "Posix_FileSys_Stat_stat" : NullString8.t -> (C_Int.t) C_Errno.t;
+end
+val symlink = _import "Posix_FileSys_symlink" : NullString8.t * NullString8.t -> (C_Int.t) C_Errno.t;
+val truncate = _import "Posix_FileSys_truncate" : NullString8.t * C_Off.t -> (C_Int.t) C_Errno.t;
+val umask = _import "Posix_FileSys_umask" : C_Mode.t -> C_Mode.t;
+val unlink = _import "Posix_FileSys_unlink" : NullString8.t -> (C_Int.t) C_Errno.t;
+structure Utimbuf = 
+struct
+val setAcTime = _import "Posix_FileSys_Utimbuf_setAcTime" : C_Time.t -> unit;
+val setModTime = _import "Posix_FileSys_Utimbuf_setModTime" : C_Time.t -> unit;
+val utime = _import "Posix_FileSys_Utimbuf_utime" : NullString8.t -> (C_Int.t) C_Errno.t;
+end
+end
+structure IO = 
+struct
+val close = _import "Posix_IO_close" : C_Fd.t -> (C_Int.t) C_Errno.t;
+val dup = _import "Posix_IO_dup" : C_Fd.t -> (C_Fd.t) C_Errno.t;
+val dup2 = _import "Posix_IO_dup2" : C_Fd.t * C_Fd.t -> (C_Fd.t) C_Errno.t;
+val F_DUPFD = _const "Posix_IO_F_DUPFD" : C_Int.t;
+val F_GETFD = _const "Posix_IO_F_GETFD" : C_Int.t;
+val F_GETFL = _const "Posix_IO_F_GETFL" : C_Int.t;
+val F_GETOWN = _const "Posix_IO_F_GETOWN" : C_Int.t;
+val F_SETFD = _const "Posix_IO_F_SETFD" : C_Int.t;
+val F_SETFL = _const "Posix_IO_F_SETFL" : C_Int.t;
+val F_SETOWN = _const "Posix_IO_F_SETOWN" : C_Int.t;
+val fcntl2 = _import "Posix_IO_fcntl2" : C_Fd.t * C_Int.t -> (C_Int.t) C_Errno.t;
+val fcntl3 = _import "Posix_IO_fcntl3" : C_Fd.t * C_Int.t * C_Int.t -> (C_Int.t) C_Errno.t;
+structure FD = 
+struct
+val CLOEXEC = _const "Posix_IO_FD_CLOEXEC" : C_Int.t;
+end
+structure FLock = 
+struct
+val F_GETLK = _const "Posix_IO_FLock_F_GETLK" : C_Int.t;
+val F_RDLCK = _const "Posix_IO_FLock_F_RDLCK" : C_Short.t;
+val F_SETLK = _const "Posix_IO_FLock_F_SETLK" : C_Int.t;
+val F_SETLKW = _const "Posix_IO_FLock_F_SETLKW" : C_Int.t;
+val F_UNLCK = _const "Posix_IO_FLock_F_UNLCK" : C_Short.t;
+val F_WRLCK = _const "Posix_IO_FLock_F_WRLCK" : C_Short.t;
+val fcntl = _import "Posix_IO_FLock_fcntl" : C_Fd.t * C_Int.t -> (C_Int.t) C_Errno.t;
+val getLen = _import "Posix_IO_FLock_getLen" : unit -> C_Off.t;
+val getPId = _import "Posix_IO_FLock_getPId" : unit -> C_PId.t;
+val getStart = _import "Posix_IO_FLock_getStart" : unit -> C_Off.t;
+val getType = _import "Posix_IO_FLock_getType" : unit -> C_Short.t;
+val getWhence = _import "Posix_IO_FLock_getWhence" : unit -> C_Short.t;
+val SEEK_CUR = _const "Posix_IO_FLock_SEEK_CUR" : C_Short.t;
+val SEEK_END = _const "Posix_IO_FLock_SEEK_END" : C_Short.t;
+val SEEK_SET = _const "Posix_IO_FLock_SEEK_SET" : C_Short.t;
+val setLen = _import "Posix_IO_FLock_setLen" : C_Off.t -> unit;
+val setPId = _import "Posix_IO_FLock_setPId" : C_PId.t -> unit;
+val setStart = _import "Posix_IO_FLock_setStart" : C_Off.t -> unit;
+val setType = _import "Posix_IO_FLock_setType" : C_Short.t -> unit;
+val setWhence = _import "Posix_IO_FLock_setWhence" : C_Short.t -> unit;
+end
+val fsync = _import "Posix_IO_fsync" : C_Fd.t -> (C_Int.t) C_Errno.t;
+val lseek = _import "Posix_IO_lseek" : C_Fd.t * C_Off.t * C_Int.t -> (C_Off.t) C_Errno.t;
+val O_ACCMODE = _const "Posix_IO_O_ACCMODE" : C_Int.t;
+val pipe = _import "Posix_IO_pipe" : (C_Fd.t) array -> (C_Int.t) C_Errno.t;
+val readChar8 = _import "Posix_IO_readChar8" : C_Fd.t * (Char8.t) array * C_Int.t * C_Size.t -> (C_SSize.t) C_Errno.t;
+val readWord8 = _import "Posix_IO_readWord8" : C_Fd.t * (Word8.t) array * C_Int.t * C_Size.t -> (C_SSize.t) C_Errno.t;
+val SEEK_CUR = _const "Posix_IO_SEEK_CUR" : C_Int.t;
+val SEEK_END = _const "Posix_IO_SEEK_END" : C_Int.t;
+val SEEK_SET = _const "Posix_IO_SEEK_SET" : C_Int.t;
+val setbin = _import "Posix_IO_setbin" : C_Fd.t -> unit;
+val settext = _import "Posix_IO_settext" : C_Fd.t -> unit;
+val writeChar8Arr = _import "Posix_IO_writeChar8Arr" : C_Fd.t * (Char8.t) array * C_Int.t * C_Size.t -> (C_SSize.t) C_Errno.t;
+val writeChar8Vec = _import "Posix_IO_writeChar8Vec" : C_Fd.t * (Char8.t) vector * C_Int.t * C_Size.t -> (C_SSize.t) C_Errno.t;
+val writeWord8Arr = _import "Posix_IO_writeWord8Arr" : C_Fd.t * (Word8.t) array * C_Int.t * C_Size.t -> (C_SSize.t) C_Errno.t;
+val writeWord8Vec = _import "Posix_IO_writeWord8Vec" : C_Fd.t * (Word8.t) vector * C_Int.t * C_Size.t -> (C_SSize.t) C_Errno.t;
+end
+structure ProcEnv = 
+struct
+val ctermid = _import "Posix_ProcEnv_ctermid" : unit -> C_String.t;
+val (environGet, environSet) = _symbol "Posix_ProcEnv_environ": (unit -> (C_StringArray.t)) * ((C_StringArray.t) -> unit);
+val getegid = _import "Posix_ProcEnv_getegid" : unit -> C_GId.t;
+val getenv = _import "Posix_ProcEnv_getenv" : NullString8.t -> C_String.t;
+val geteuid = _import "Posix_ProcEnv_geteuid" : unit -> C_UId.t;
+val getgid = _import "Posix_ProcEnv_getgid" : unit -> C_GId.t;
+val getgroups = _import "Posix_ProcEnv_getgroups" : C_Int.t * (C_GId.t) array -> (C_Int.t) C_Errno.t;
+val getgroupsN = _import "Posix_ProcEnv_getgroupsN" : unit -> C_Int.t;
+val getlogin = _import "Posix_ProcEnv_getlogin" : unit -> (C_String.t) C_Errno.t;
+val getpgrp = _import "Posix_ProcEnv_getpgrp" : unit -> C_PId.t;
+val getpid = _import "Posix_ProcEnv_getpid" : unit -> C_PId.t;
+val getppid = _import "Posix_ProcEnv_getppid" : unit -> C_PId.t;
+val getuid = _import "Posix_ProcEnv_getuid" : unit -> C_UId.t;
+val isatty = _import "Posix_ProcEnv_isatty" : C_Fd.t -> Bool.t;
+val SC_2_C_BIND = _const "Posix_ProcEnv_SC_2_C_BIND" : C_Int.t;
+val SC_2_C_DEV = _const "Posix_ProcEnv_SC_2_C_DEV" : C_Int.t;
+val SC_2_CHAR_TERM = _const "Posix_ProcEnv_SC_2_CHAR_TERM" : C_Int.t;
+val SC_2_FORT_DEV = _const "Posix_ProcEnv_SC_2_FORT_DEV" : C_Int.t;
+val SC_2_FORT_RUN = _const "Posix_ProcEnv_SC_2_FORT_RUN" : C_Int.t;
+val SC_2_LOCALEDEF = _const "Posix_ProcEnv_SC_2_LOCALEDEF" : C_Int.t;
+val SC_2_PBS = _const "Posix_ProcEnv_SC_2_PBS" : C_Int.t;
+val SC_2_PBS_ACCOUNTING = _const "Posix_ProcEnv_SC_2_PBS_ACCOUNTING" : C_Int.t;
+val SC_2_PBS_CHECKPOINT = _const "Posix_ProcEnv_SC_2_PBS_CHECKPOINT" : C_Int.t;
+val SC_2_PBS_LOCATE = _const "Posix_ProcEnv_SC_2_PBS_LOCATE" : C_Int.t;
+val SC_2_PBS_MESSAGE = _const "Posix_ProcEnv_SC_2_PBS_MESSAGE" : C_Int.t;
+val SC_2_PBS_TRACK = _const "Posix_ProcEnv_SC_2_PBS_TRACK" : C_Int.t;
+val SC_2_SW_DEV = _const "Posix_ProcEnv_SC_2_SW_DEV" : C_Int.t;
+val SC_2_UPE = _const "Posix_ProcEnv_SC_2_UPE" : C_Int.t;
+val SC_2_VERSION = _const "Posix_ProcEnv_SC_2_VERSION" : C_Int.t;
+val SC_ADVISORY_INFO = _const "Posix_ProcEnv_SC_ADVISORY_INFO" : C_Int.t;
+val SC_AIO_LISTIO_MAX = _const "Posix_ProcEnv_SC_AIO_LISTIO_MAX" : C_Int.t;
+val SC_AIO_MAX = _const "Posix_ProcEnv_SC_AIO_MAX" : C_Int.t;
+val SC_AIO_PRIO_DELTA_MAX = _const "Posix_ProcEnv_SC_AIO_PRIO_DELTA_MAX" : C_Int.t;
+val SC_ARG_MAX = _const "Posix_ProcEnv_SC_ARG_MAX" : C_Int.t;
+val SC_ASYNCHRONOUS_IO = _const "Posix_ProcEnv_SC_ASYNCHRONOUS_IO" : C_Int.t;
+val SC_ATEXIT_MAX = _const "Posix_ProcEnv_SC_ATEXIT_MAX" : C_Int.t;
+val SC_BARRIERS = _const "Posix_ProcEnv_SC_BARRIERS" : C_Int.t;
+val SC_BC_BASE_MAX = _const "Posix_ProcEnv_SC_BC_BASE_MAX" : C_Int.t;
+val SC_BC_DIM_MAX = _const "Posix_ProcEnv_SC_BC_DIM_MAX" : C_Int.t;
+val SC_BC_SCALE_MAX = _const "Posix_ProcEnv_SC_BC_SCALE_MAX" : C_Int.t;
+val SC_BC_STRING_MAX = _const "Posix_ProcEnv_SC_BC_STRING_MAX" : C_Int.t;
+val SC_CHILD_MAX = _const "Posix_ProcEnv_SC_CHILD_MAX" : C_Int.t;
+val SC_CLK_TCK = _const "Posix_ProcEnv_SC_CLK_TCK" : C_Int.t;
+val SC_CLOCK_SELECTION = _const "Posix_ProcEnv_SC_CLOCK_SELECTION" : C_Int.t;
+val SC_COLL_WEIGHTS_MAX = _const "Posix_ProcEnv_SC_COLL_WEIGHTS_MAX" : C_Int.t;
+val SC_CPUTIME = _const "Posix_ProcEnv_SC_CPUTIME" : C_Int.t;
+val SC_DELAYTIMER_MAX = _const "Posix_ProcEnv_SC_DELAYTIMER_MAX" : C_Int.t;
+val SC_EXPR_NEST_MAX = _const "Posix_ProcEnv_SC_EXPR_NEST_MAX" : C_Int.t;
+val SC_FSYNC = _const "Posix_ProcEnv_SC_FSYNC" : C_Int.t;
+val SC_GETGR_R_SIZE_MAX = _const "Posix_ProcEnv_SC_GETGR_R_SIZE_MAX" : C_Int.t;
+val SC_GETPW_R_SIZE_MAX = _const "Posix_ProcEnv_SC_GETPW_R_SIZE_MAX" : C_Int.t;
+val SC_HOST_NAME_MAX = _const "Posix_ProcEnv_SC_HOST_NAME_MAX" : C_Int.t;
+val SC_IOV_MAX = _const "Posix_ProcEnv_SC_IOV_MAX" : C_Int.t;
+val SC_IPV6 = _const "Posix_ProcEnv_SC_IPV6" : C_Int.t;
+val SC_JOB_CONTROL = _const "Posix_ProcEnv_SC_JOB_CONTROL" : C_Int.t;
+val SC_LINE_MAX = _const "Posix_ProcEnv_SC_LINE_MAX" : C_Int.t;
+val SC_LOGIN_NAME_MAX = _const "Posix_ProcEnv_SC_LOGIN_NAME_MAX" : C_Int.t;
+val SC_MAPPED_FILES = _const "Posix_ProcEnv_SC_MAPPED_FILES" : C_Int.t;
+val SC_MEMLOCK = _const "Posix_ProcEnv_SC_MEMLOCK" : C_Int.t;
+val SC_MEMLOCK_RANGE = _const "Posix_ProcEnv_SC_MEMLOCK_RANGE" : C_Int.t;
+val SC_MEMORY_PROTECTION = _const "Posix_ProcEnv_SC_MEMORY_PROTECTION" : C_Int.t;
+val SC_MESSAGE_PASSING = _const "Posix_ProcEnv_SC_MESSAGE_PASSING" : C_Int.t;
+val SC_MONOTONIC_CLOCK = _const "Posix_ProcEnv_SC_MONOTONIC_CLOCK" : C_Int.t;
+val SC_MQ_OPEN_MAX = _const "Posix_ProcEnv_SC_MQ_OPEN_MAX" : C_Int.t;
+val SC_MQ_PRIO_MAX = _const "Posix_ProcEnv_SC_MQ_PRIO_MAX" : C_Int.t;
+val SC_NGROUPS_MAX = _const "Posix_ProcEnv_SC_NGROUPS_MAX" : C_Int.t;
+val SC_OPEN_MAX = _const "Posix_ProcEnv_SC_OPEN_MAX" : C_Int.t;
+val SC_PAGE_SIZE = _const "Posix_ProcEnv_SC_PAGE_SIZE" : C_Int.t;
+val SC_PAGESIZE = _const "Posix_ProcEnv_SC_PAGESIZE" : C_Int.t;
+val SC_PRIORITIZED_IO = _const "Posix_ProcEnv_SC_PRIORITIZED_IO" : C_Int.t;
+val SC_PRIORITY_SCHEDULING = _const "Posix_ProcEnv_SC_PRIORITY_SCHEDULING" : C_Int.t;
+val SC_RAW_SOCKETS = _const "Posix_ProcEnv_SC_RAW_SOCKETS" : C_Int.t;
+val SC_RE_DUP_MAX = _const "Posix_ProcEnv_SC_RE_DUP_MAX" : C_Int.t;
+val SC_READER_WRITER_LOCKS = _const "Posix_ProcEnv_SC_READER_WRITER_LOCKS" : C_Int.t;
+val SC_REALTIME_SIGNALS = _const "Posix_ProcEnv_SC_REALTIME_SIGNALS" : C_Int.t;
+val SC_REGEXP = _const "Posix_ProcEnv_SC_REGEXP" : C_Int.t;
+val SC_RTSIG_MAX = _const "Posix_ProcEnv_SC_RTSIG_MAX" : C_Int.t;
+val SC_SAVED_IDS = _const "Posix_ProcEnv_SC_SAVED_IDS" : C_Int.t;
+val SC_SEM_NSEMS_MAX = _const "Posix_ProcEnv_SC_SEM_NSEMS_MAX" : C_Int.t;
+val SC_SEM_VALUE_MAX = _const "Posix_ProcEnv_SC_SEM_VALUE_MAX" : C_Int.t;
+val SC_SEMAPHORES = _const "Posix_ProcEnv_SC_SEMAPHORES" : C_Int.t;
+val SC_SHARED_MEMORY_OBJECTS = _const "Posix_ProcEnv_SC_SHARED_MEMORY_OBJECTS" : C_Int.t;
+val SC_SHELL = _const "Posix_ProcEnv_SC_SHELL" : C_Int.t;
+val SC_SIGQUEUE_MAX = _const "Posix_ProcEnv_SC_SIGQUEUE_MAX" : C_Int.t;
+val SC_SPAWN = _const "Posix_ProcEnv_SC_SPAWN" : C_Int.t;
+val SC_SPIN_LOCKS = _const "Posix_ProcEnv_SC_SPIN_LOCKS" : C_Int.t;
+val SC_SPORADIC_SERVER = _const "Posix_ProcEnv_SC_SPORADIC_SERVER" : C_Int.t;
+val SC_SS_REPL_MAX = _const "Posix_ProcEnv_SC_SS_REPL_MAX" : C_Int.t;
+val SC_STREAM_MAX = _const "Posix_ProcEnv_SC_STREAM_MAX" : C_Int.t;
+val SC_SYMLOOP_MAX = _const "Posix_ProcEnv_SC_SYMLOOP_MAX" : C_Int.t;
+val SC_SYNCHRONIZED_IO = _const "Posix_ProcEnv_SC_SYNCHRONIZED_IO" : C_Int.t;
+val SC_THREAD_ATTR_STACKADDR = _const "Posix_ProcEnv_SC_THREAD_ATTR_STACKADDR" : C_Int.t;
+val SC_THREAD_ATTR_STACKSIZE = _const "Posix_ProcEnv_SC_THREAD_ATTR_STACKSIZE" : C_Int.t;
+val SC_THREAD_CPUTIME = _const "Posix_ProcEnv_SC_THREAD_CPUTIME" : C_Int.t;
+val SC_THREAD_DESTRUCTOR_ITERATIONS = _const "Posix_ProcEnv_SC_THREAD_DESTRUCTOR_ITERATIONS" : C_Int.t;
+val SC_THREAD_KEYS_MAX = _const "Posix_ProcEnv_SC_THREAD_KEYS_MAX" : C_Int.t;
+val SC_THREAD_PRIO_INHERIT = _const "Posix_ProcEnv_SC_THREAD_PRIO_INHERIT" : C_Int.t;
+val SC_THREAD_PRIO_PROTECT = _const "Posix_ProcEnv_SC_THREAD_PRIO_PROTECT" : C_Int.t;
+val SC_THREAD_PRIORITY_SCHEDULING = _const "Posix_ProcEnv_SC_THREAD_PRIORITY_SCHEDULING" : C_Int.t;
+val SC_THREAD_PROCESS_SHARED = _const "Posix_ProcEnv_SC_THREAD_PROCESS_SHARED" : C_Int.t;
+val SC_THREAD_SAFE_FUNCTIONS = _const "Posix_ProcEnv_SC_THREAD_SAFE_FUNCTIONS" : C_Int.t;
+val SC_THREAD_SPORADIC_SERVER = _const "Posix_ProcEnv_SC_THREAD_SPORADIC_SERVER" : C_Int.t;
+val SC_THREAD_STACK_MIN = _const "Posix_ProcEnv_SC_THREAD_STACK_MIN" : C_Int.t;
+val SC_THREAD_THREADS_MAX = _const "Posix_ProcEnv_SC_THREAD_THREADS_MAX" : C_Int.t;
+val SC_THREADS = _const "Posix_ProcEnv_SC_THREADS" : C_Int.t;
+val SC_TIMEOUTS = _const "Posix_ProcEnv_SC_TIMEOUTS" : C_Int.t;
+val SC_TIMER_MAX = _const "Posix_ProcEnv_SC_TIMER_MAX" : C_Int.t;
+val SC_TIMERS = _const "Posix_ProcEnv_SC_TIMERS" : C_Int.t;
+val SC_TRACE = _const "Posix_ProcEnv_SC_TRACE" : C_Int.t;
+val SC_TRACE_EVENT_FILTER = _const "Posix_ProcEnv_SC_TRACE_EVENT_FILTER" : C_Int.t;
+val SC_TRACE_EVENT_NAME_MAX = _const "Posix_ProcEnv_SC_TRACE_EVENT_NAME_MAX" : C_Int.t;
+val SC_TRACE_INHERIT = _const "Posix_ProcEnv_SC_TRACE_INHERIT" : C_Int.t;
+val SC_TRACE_LOG = _const "Posix_ProcEnv_SC_TRACE_LOG" : C_Int.t;
+val SC_TRACE_NAME_MAX = _const "Posix_ProcEnv_SC_TRACE_NAME_MAX" : C_Int.t;
+val SC_TRACE_SYS_MAX = _const "Posix_ProcEnv_SC_TRACE_SYS_MAX" : C_Int.t;
+val SC_TRACE_USER_EVENT_MAX = _const "Posix_ProcEnv_SC_TRACE_USER_EVENT_MAX" : C_Int.t;
+val SC_TTY_NAME_MAX = _const "Posix_ProcEnv_SC_TTY_NAME_MAX" : C_Int.t;
+val SC_TYPED_MEMORY_OBJECTS = _const "Posix_ProcEnv_SC_TYPED_MEMORY_OBJECTS" : C_Int.t;
+val SC_TZNAME_MAX = _const "Posix_ProcEnv_SC_TZNAME_MAX" : C_Int.t;
+val SC_V6_ILP32_OFF32 = _const "Posix_ProcEnv_SC_V6_ILP32_OFF32" : C_Int.t;
+val SC_V6_ILP32_OFFBIG = _const "Posix_ProcEnv_SC_V6_ILP32_OFFBIG" : C_Int.t;
+val SC_V6_LP64_OFF64 = _const "Posix_ProcEnv_SC_V6_LP64_OFF64" : C_Int.t;
+val SC_V6_LPBIG_OFFBIG = _const "Posix_ProcEnv_SC_V6_LPBIG_OFFBIG" : C_Int.t;
+val SC_VERSION = _const "Posix_ProcEnv_SC_VERSION" : C_Int.t;
+val SC_XBS5_ILP32_OFF32 = _const "Posix_ProcEnv_SC_XBS5_ILP32_OFF32" : C_Int.t;
+val SC_XBS5_ILP32_OFFBIG = _const "Posix_ProcEnv_SC_XBS5_ILP32_OFFBIG" : C_Int.t;
+val SC_XBS5_LP64_OFF64 = _const "Posix_ProcEnv_SC_XBS5_LP64_OFF64" : C_Int.t;
+val SC_XBS5_LPBIG_OFFBIG = _const "Posix_ProcEnv_SC_XBS5_LPBIG_OFFBIG" : C_Int.t;
+val SC_XOPEN_CRYPT = _const "Posix_ProcEnv_SC_XOPEN_CRYPT" : C_Int.t;
+val SC_XOPEN_ENH_I18N = _const "Posix_ProcEnv_SC_XOPEN_ENH_I18N" : C_Int.t;
+val SC_XOPEN_LEGACY = _const "Posix_ProcEnv_SC_XOPEN_LEGACY" : C_Int.t;
+val SC_XOPEN_REALTIME = _const "Posix_ProcEnv_SC_XOPEN_REALTIME" : C_Int.t;
+val SC_XOPEN_REALTIME_THREADS = _const "Posix_ProcEnv_SC_XOPEN_REALTIME_THREADS" : C_Int.t;
+val SC_XOPEN_SHM = _const "Posix_ProcEnv_SC_XOPEN_SHM" : C_Int.t;
+val SC_XOPEN_STREAMS = _const "Posix_ProcEnv_SC_XOPEN_STREAMS" : C_Int.t;
+val SC_XOPEN_UNIX = _const "Posix_ProcEnv_SC_XOPEN_UNIX" : C_Int.t;
+val SC_XOPEN_VERSION = _const "Posix_ProcEnv_SC_XOPEN_VERSION" : C_Int.t;
+val setenv = _import "Posix_ProcEnv_setenv" : NullString8.t * NullString8.t -> (C_Int.t) C_Errno.t;
+val setgid = _import "Posix_ProcEnv_setgid" : C_GId.t -> (C_Int.t) C_Errno.t;
+val setgroups = _import "Posix_ProcEnv_setgroups" : C_Int.t * (C_GId.t) vector -> (C_Int.t) C_Errno.t;
+val setpgid = _import "Posix_ProcEnv_setpgid" : C_PId.t * C_PId.t -> (C_Int.t) C_Errno.t;
+val setsid = _import "Posix_ProcEnv_setsid" : unit -> (C_PId.t) C_Errno.t;
+val setuid = _import "Posix_ProcEnv_setuid" : C_UId.t -> (C_Int.t) C_Errno.t;
+val sysconf = _import "Posix_ProcEnv_sysconf" : C_Int.t -> (C_Long.t) C_Errno.t;
+val times = _import "Posix_ProcEnv_times" : unit -> (C_Clock.t) C_Errno.t;
+structure Times = 
+struct
+val getCSTime = _import "Posix_ProcEnv_Times_getCSTime" : unit -> C_Clock.t;
+val getCUTime = _import "Posix_ProcEnv_Times_getCUTime" : unit -> C_Clock.t;
+val getSTime = _import "Posix_ProcEnv_Times_getSTime" : unit -> C_Clock.t;
+val getUTime = _import "Posix_ProcEnv_Times_getUTime" : unit -> C_Clock.t;
+end
+val ttyname = _import "Posix_ProcEnv_ttyname" : C_Fd.t -> (C_String.t) C_Errno.t;
+val uname = _import "Posix_ProcEnv_uname" : unit -> (C_Int.t) C_Errno.t;
+structure Uname = 
+struct
+val getMachine = _import "Posix_ProcEnv_Uname_getMachine" : unit -> C_String.t;
+val getNodeName = _import "Posix_ProcEnv_Uname_getNodeName" : unit -> C_String.t;
+val getRelease = _import "Posix_ProcEnv_Uname_getRelease" : unit -> C_String.t;
+val getSysName = _import "Posix_ProcEnv_Uname_getSysName" : unit -> C_String.t;
+val getVersion = _import "Posix_ProcEnv_Uname_getVersion" : unit -> C_String.t;
+end
+end
+structure Process = 
+struct
+val alarm = _import "Posix_Process_alarm" : C_UInt.t -> C_UInt.t;
+val exece = _import "Posix_Process_exece" : NullString8.t * NullString8Array.t * NullString8Array.t -> (C_Int.t) C_Errno.t;
+val execp = _import "Posix_Process_execp" : NullString8.t * NullString8Array.t -> (C_Int.t) C_Errno.t;
+val exit = _import "Posix_Process_exit" : C_Status.t -> unit;
+val exitStatus = _import "Posix_Process_exitStatus" : C_Status.t -> C_Int.t;
+val fork = _import "Posix_Process_fork" : unit -> (C_PId.t) C_Errno.t;
+val ifExited = _import "Posix_Process_ifExited" : C_Status.t -> Bool.t;
+val ifSignaled = _import "Posix_Process_ifSignaled" : C_Status.t -> Bool.t;
+val ifStopped = _import "Posix_Process_ifStopped" : C_Status.t -> Bool.t;
+val kill = _import "Posix_Process_kill" : C_PId.t * C_Signal.t -> (C_Int.t) C_Errno.t;
+val nanosleep = _import "Posix_Process_nanosleep" : (C_Time.t) ref * (C_Long.t) ref -> (C_Int.t) C_Errno.t;
+val pause = _import "Posix_Process_pause" : unit -> (C_Int.t) C_Errno.t;
+val sleep = _import "Posix_Process_sleep" : C_UInt.t -> C_UInt.t;
+val stopSig = _import "Posix_Process_stopSig" : C_Status.t -> C_Signal.t;
+val system = _import "Posix_Process_system" : NullString8.t -> (C_Status.t) C_Errno.t;
+val termSig = _import "Posix_Process_termSig" : C_Status.t -> C_Signal.t;
+structure W = 
+struct
+val NOHANG = _const "Posix_Process_W_NOHANG" : C_Int.t;
+val UNTRACED = _const "Posix_Process_W_UNTRACED" : C_Int.t;
+end
+val waitpid = _import "Posix_Process_waitpid" : C_PId.t * (C_Int.t) ref * C_Int.t -> (C_PId.t) C_Errno.t;
+end
+structure Signal = 
+struct
+val default = _import "Posix_Signal_default" : C_Signal.t -> (C_Int.t) C_Errno.t;
+val handlee = _import "Posix_Signal_handlee" : C_Signal.t -> (C_Int.t) C_Errno.t;
+val handleGC = _import "Posix_Signal_handleGC" : unit -> unit;
+val ignore = _import "Posix_Signal_ignore" : C_Signal.t -> (C_Int.t) C_Errno.t;
+val isDefault = _import "Posix_Signal_isDefault" : C_Signal.t * (Bool.t) ref -> (C_Int.t) C_Errno.t;
+val isIgnore = _import "Posix_Signal_isIgnore" : C_Signal.t * (Bool.t) ref -> (C_Int.t) C_Errno.t;
+val isPending = _import "Posix_Signal_isPending" : C_Signal.t -> Bool.t;
+val isPendingGC = _import "Posix_Signal_isPendingGC" : unit -> Bool.t;
+val NSIG = _const "Posix_Signal_NSIG" : C_Int.t;
+val resetPending = _import "Posix_Signal_resetPending" : unit -> unit;
+val SIG_BLOCK = _const "Posix_Signal_SIG_BLOCK" : C_Int.t;
+val SIG_SETMASK = _const "Posix_Signal_SIG_SETMASK" : C_Int.t;
+val SIG_UNBLOCK = _const "Posix_Signal_SIG_UNBLOCK" : C_Int.t;
+val SIGABRT = _const "Posix_Signal_SIGABRT" : C_Signal.t;
+val sigaddset = _import "Posix_Signal_sigaddset" : C_Signal.t -> (C_Int.t) C_Errno.t;
+val SIGALRM = _const "Posix_Signal_SIGALRM" : C_Signal.t;
+val SIGBUS = _const "Posix_Signal_SIGBUS" : C_Signal.t;
+val SIGCHLD = _const "Posix_Signal_SIGCHLD" : C_Signal.t;
+val SIGCONT = _const "Posix_Signal_SIGCONT" : C_Signal.t;
+val sigdelset = _import "Posix_Signal_sigdelset" : C_Signal.t -> (C_Int.t) C_Errno.t;
+val sigemptyset = _import "Posix_Signal_sigemptyset" : unit -> (C_Int.t) C_Errno.t;
+val sigfillset = _import "Posix_Signal_sigfillset" : unit -> (C_Int.t) C_Errno.t;
+val SIGFPE = _const "Posix_Signal_SIGFPE" : C_Signal.t;
+val SIGHUP = _const "Posix_Signal_SIGHUP" : C_Signal.t;
+val SIGILL = _const "Posix_Signal_SIGILL" : C_Signal.t;
+val SIGINT = _const "Posix_Signal_SIGINT" : C_Signal.t;
+val sigismember = _import "Posix_Signal_sigismember" : C_Signal.t -> (C_Int.t) C_Errno.t;
+val SIGKILL = _const "Posix_Signal_SIGKILL" : C_Signal.t;
+val SIGPIPE = _const "Posix_Signal_SIGPIPE" : C_Signal.t;
+val SIGPOLL = _const "Posix_Signal_SIGPOLL" : C_Signal.t;
+val sigprocmask = _import "Posix_Signal_sigprocmask" : C_Int.t -> (C_Int.t) C_Errno.t;
+val SIGPROF = _const "Posix_Signal_SIGPROF" : C_Signal.t;
+val SIGQUIT = _const "Posix_Signal_SIGQUIT" : C_Signal.t;
+val SIGSEGV = _const "Posix_Signal_SIGSEGV" : C_Signal.t;
+val SIGSTOP = _const "Posix_Signal_SIGSTOP" : C_Signal.t;
+val sigsuspend = _import "Posix_Signal_sigsuspend" : unit -> unit;
+val SIGSYS = _const "Posix_Signal_SIGSYS" : C_Signal.t;
+val SIGTERM = _const "Posix_Signal_SIGTERM" : C_Signal.t;
+val SIGTRAP = _const "Posix_Signal_SIGTRAP" : C_Signal.t;
+val SIGTSTP = _const "Posix_Signal_SIGTSTP" : C_Signal.t;
+val SIGTTIN = _const "Posix_Signal_SIGTTIN" : C_Signal.t;
+val SIGTTOU = _const "Posix_Signal_SIGTTOU" : C_Signal.t;
+val SIGURG = _const "Posix_Signal_SIGURG" : C_Signal.t;
+val SIGUSR1 = _const "Posix_Signal_SIGUSR1" : C_Signal.t;
+val SIGUSR2 = _const "Posix_Signal_SIGUSR2" : C_Signal.t;
+val SIGVTALRM = _const "Posix_Signal_SIGVTALRM" : C_Signal.t;
+val SIGXCPU = _const "Posix_Signal_SIGXCPU" : C_Signal.t;
+val SIGXFSZ = _const "Posix_Signal_SIGXFSZ" : C_Signal.t;
+end
+structure SysDB = 
+struct
+val getgrgid = _import "Posix_SysDB_getgrgid" : C_GId.t -> Bool.t;
+val getgrnam = _import "Posix_SysDB_getgrnam" : NullString8.t -> Bool.t;
+val getpwnam = _import "Posix_SysDB_getpwnam" : NullString8.t -> Bool.t;
+val getpwuid = _import "Posix_SysDB_getpwuid" : C_GId.t -> Bool.t;
+structure Group = 
+struct
+val getGId = _import "Posix_SysDB_Group_getGId" : unit -> C_GId.t;
+val getMem = _import "Posix_SysDB_Group_getMem" : unit -> C_StringArray.t;
+val getName = _import "Posix_SysDB_Group_getName" : unit -> C_String.t;
+end
+structure Passwd = 
+struct
+val getDir = _import "Posix_SysDB_Passwd_getDir" : unit -> C_String.t;
+val getGId = _import "Posix_SysDB_Passwd_getGId" : unit -> C_GId.t;
+val getName = _import "Posix_SysDB_Passwd_getName" : unit -> C_String.t;
+val getShell = _import "Posix_SysDB_Passwd_getShell" : unit -> C_String.t;
+val getUId = _import "Posix_SysDB_Passwd_getUId" : unit -> C_UId.t;
+end
+end
+structure TTY = 
+struct
+val B0 = _const "Posix_TTY_B0" : C_Speed.t;
+val B110 = _const "Posix_TTY_B110" : C_Speed.t;
+val B1200 = _const "Posix_TTY_B1200" : C_Speed.t;
+val B134 = _const "Posix_TTY_B134" : C_Speed.t;
+val B150 = _const "Posix_TTY_B150" : C_Speed.t;
+val B1800 = _const "Posix_TTY_B1800" : C_Speed.t;
+val B19200 = _const "Posix_TTY_B19200" : C_Speed.t;
+val B200 = _const "Posix_TTY_B200" : C_Speed.t;
+val B2400 = _const "Posix_TTY_B2400" : C_Speed.t;
+val B300 = _const "Posix_TTY_B300" : C_Speed.t;
+val B38400 = _const "Posix_TTY_B38400" : C_Speed.t;
+val B4800 = _const "Posix_TTY_B4800" : C_Speed.t;
+val B50 = _const "Posix_TTY_B50" : C_Speed.t;
+val B600 = _const "Posix_TTY_B600" : C_Speed.t;
+val B75 = _const "Posix_TTY_B75" : C_Speed.t;
+val B9600 = _const "Posix_TTY_B9600" : C_Speed.t;
+structure C = 
+struct
+val CLOCAL = _const "Posix_TTY_C_CLOCAL" : C_TCFlag.t;
+val CREAD = _const "Posix_TTY_C_CREAD" : C_TCFlag.t;
+val CS5 = _const "Posix_TTY_C_CS5" : C_TCFlag.t;
+val CS6 = _const "Posix_TTY_C_CS6" : C_TCFlag.t;
+val CS7 = _const "Posix_TTY_C_CS7" : C_TCFlag.t;
+val CS8 = _const "Posix_TTY_C_CS8" : C_TCFlag.t;
+val CSIZE = _const "Posix_TTY_C_CSIZE" : C_TCFlag.t;
+val CSTOPB = _const "Posix_TTY_C_CSTOPB" : C_TCFlag.t;
+val HUPCL = _const "Posix_TTY_C_HUPCL" : C_TCFlag.t;
+val PARENB = _const "Posix_TTY_C_PARENB" : C_TCFlag.t;
+val PARODD = _const "Posix_TTY_C_PARODD" : C_TCFlag.t;
+end
+structure I = 
+struct
+val BRKINT = _const "Posix_TTY_I_BRKINT" : C_TCFlag.t;
+val ICRNL = _const "Posix_TTY_I_ICRNL" : C_TCFlag.t;
+val IGNBRK = _const "Posix_TTY_I_IGNBRK" : C_TCFlag.t;
+val IGNCR = _const "Posix_TTY_I_IGNCR" : C_TCFlag.t;
+val IGNPAR = _const "Posix_TTY_I_IGNPAR" : C_TCFlag.t;
+val INLCR = _const "Posix_TTY_I_INLCR" : C_TCFlag.t;
+val INPCK = _const "Posix_TTY_I_INPCK" : C_TCFlag.t;
+val ISTRIP = _const "Posix_TTY_I_ISTRIP" : C_TCFlag.t;
+val IXANY = _const "Posix_TTY_I_IXANY" : C_TCFlag.t;
+val IXOFF = _const "Posix_TTY_I_IXOFF" : C_TCFlag.t;
+val IXON = _const "Posix_TTY_I_IXON" : C_TCFlag.t;
+val PARMRK = _const "Posix_TTY_I_PARMRK" : C_TCFlag.t;
+end
+structure L = 
+struct
+val ECHO = _const "Posix_TTY_L_ECHO" : C_TCFlag.t;
+val ECHOE = _const "Posix_TTY_L_ECHOE" : C_TCFlag.t;
+val ECHOK = _const "Posix_TTY_L_ECHOK" : C_TCFlag.t;
+val ECHONL = _const "Posix_TTY_L_ECHONL" : C_TCFlag.t;
+val ICANON = _const "Posix_TTY_L_ICANON" : C_TCFlag.t;
+val IEXTEN = _const "Posix_TTY_L_IEXTEN" : C_TCFlag.t;
+val ISIG = _const "Posix_TTY_L_ISIG" : C_TCFlag.t;
+val NOFLSH = _const "Posix_TTY_L_NOFLSH" : C_TCFlag.t;
+val TOSTOP = _const "Posix_TTY_L_TOSTOP" : C_TCFlag.t;
+end
+structure O = 
+struct
+val BS0 = _const "Posix_TTY_O_BS0" : C_TCFlag.t;
+val BS1 = _const "Posix_TTY_O_BS1" : C_TCFlag.t;
+val BSDLY = _const "Posix_TTY_O_BSDLY" : C_TCFlag.t;
+val CR0 = _const "Posix_TTY_O_CR0" : C_TCFlag.t;
+val CR1 = _const "Posix_TTY_O_CR1" : C_TCFlag.t;
+val CR2 = _const "Posix_TTY_O_CR2" : C_TCFlag.t;
+val CR3 = _const "Posix_TTY_O_CR3" : C_TCFlag.t;
+val CRDLY = _const "Posix_TTY_O_CRDLY" : C_TCFlag.t;
+val FF0 = _const "Posix_TTY_O_FF0" : C_TCFlag.t;
+val FF1 = _const "Posix_TTY_O_FF1" : C_TCFlag.t;
+val FFDLY = _const "Posix_TTY_O_FFDLY" : C_TCFlag.t;
+val NL0 = _const "Posix_TTY_O_NL0" : C_TCFlag.t;
+val NL1 = _const "Posix_TTY_O_NL1" : C_TCFlag.t;
+val NLDLY = _const "Posix_TTY_O_NLDLY" : C_TCFlag.t;
+val OCRNL = _const "Posix_TTY_O_OCRNL" : C_TCFlag.t;
+val OFILL = _const "Posix_TTY_O_OFILL" : C_TCFlag.t;
+val ONLCR = _const "Posix_TTY_O_ONLCR" : C_TCFlag.t;
+val ONLRET = _const "Posix_TTY_O_ONLRET" : C_TCFlag.t;
+val ONOCR = _const "Posix_TTY_O_ONOCR" : C_TCFlag.t;
+val OPOST = _const "Posix_TTY_O_OPOST" : C_TCFlag.t;
+val TAB0 = _const "Posix_TTY_O_TAB0" : C_TCFlag.t;
+val TAB1 = _const "Posix_TTY_O_TAB1" : C_TCFlag.t;
+val TAB2 = _const "Posix_TTY_O_TAB2" : C_TCFlag.t;
+val TAB3 = _const "Posix_TTY_O_TAB3" : C_TCFlag.t;
+val TABDLY = _const "Posix_TTY_O_TABDLY" : C_TCFlag.t;
+val VT0 = _const "Posix_TTY_O_VT0" : C_TCFlag.t;
+val VT1 = _const "Posix_TTY_O_VT1" : C_TCFlag.t;
+val VTDLY = _const "Posix_TTY_O_VTDLY" : C_TCFlag.t;
+end
+structure TC = 
+struct
+val drain = _import "Posix_TTY_TC_drain" : C_Fd.t -> (C_Int.t) C_Errno.t;
+val flow = _import "Posix_TTY_TC_flow" : C_Fd.t * C_Int.t -> (C_Int.t) C_Errno.t;
+val flush = _import "Posix_TTY_TC_flush" : C_Fd.t * C_Int.t -> (C_Int.t) C_Errno.t;
+val getattr = _import "Posix_TTY_TC_getattr" : C_Fd.t -> (C_Int.t) C_Errno.t;
+val getpgrp = _import "Posix_TTY_TC_getpgrp" : C_Fd.t -> (C_PId.t) C_Errno.t;
+val sendbreak = _import "Posix_TTY_TC_sendbreak" : C_Fd.t * C_Int.t -> (C_Int.t) C_Errno.t;
+val setattr = _import "Posix_TTY_TC_setattr" : C_Fd.t * C_Int.t -> (C_Int.t) C_Errno.t;
+val setpgrp = _import "Posix_TTY_TC_setpgrp" : C_Fd.t * C_PId.t -> (C_Int.t) C_Errno.t;
+val TCIFLUSH = _const "Posix_TTY_TC_TCIFLUSH" : C_Int.t;
+val TCIOFF = _const "Posix_TTY_TC_TCIOFF" : C_Int.t;
+val TCIOFLUSH = _const "Posix_TTY_TC_TCIOFLUSH" : C_Int.t;
+val TCION = _const "Posix_TTY_TC_TCION" : C_Int.t;
+val TCOFLUSH = _const "Posix_TTY_TC_TCOFLUSH" : C_Int.t;
+val TCOOFF = _const "Posix_TTY_TC_TCOOFF" : C_Int.t;
+val TCOON = _const "Posix_TTY_TC_TCOON" : C_Int.t;
+val TCSADRAIN = _const "Posix_TTY_TC_TCSADRAIN" : C_Int.t;
+val TCSAFLUSH = _const "Posix_TTY_TC_TCSAFLUSH" : C_Int.t;
+val TCSANOW = _const "Posix_TTY_TC_TCSANOW" : C_Int.t;
+end
+structure Termios = 
+struct
+val cfGetISpeed = _import "Posix_TTY_Termios_cfGetISpeed" : unit -> C_Speed.t;
+val cfGetOSpeed = _import "Posix_TTY_Termios_cfGetOSpeed" : unit -> C_Speed.t;
+val cfSetISpeed = _import "Posix_TTY_Termios_cfSetISpeed" : C_Speed.t -> (C_Int.t) C_Errno.t;
+val cfSetOSpeed = _import "Posix_TTY_Termios_cfSetOSpeed" : C_Speed.t -> (C_Int.t) C_Errno.t;
+val getCC = _import "Posix_TTY_Termios_getCC" : (C_CC.t) array -> unit;
+val getCFlag = _import "Posix_TTY_Termios_getCFlag" : unit -> C_TCFlag.t;
+val getIFlag = _import "Posix_TTY_Termios_getIFlag" : unit -> C_TCFlag.t;
+val getLFlag = _import "Posix_TTY_Termios_getLFlag" : unit -> C_TCFlag.t;
+val getOFlag = _import "Posix_TTY_Termios_getOFlag" : unit -> C_TCFlag.t;
+val setCC = _import "Posix_TTY_Termios_setCC" : (C_CC.t) array -> unit;
+val setCFlag = _import "Posix_TTY_Termios_setCFlag" : C_TCFlag.t -> unit;
+val setIFlag = _import "Posix_TTY_Termios_setIFlag" : C_TCFlag.t -> unit;
+val setLFlag = _import "Posix_TTY_Termios_setLFlag" : C_TCFlag.t -> unit;
+val setOFlag = _import "Posix_TTY_Termios_setOFlag" : C_TCFlag.t -> unit;
+end
+structure V = 
+struct
+val NCCS = _const "Posix_TTY_V_NCCS" : C_Int.t;
+val VEOF = _const "Posix_TTY_V_VEOF" : C_Int.t;
+val VEOL = _const "Posix_TTY_V_VEOL" : C_Int.t;
+val VERASE = _const "Posix_TTY_V_VERASE" : C_Int.t;
+val VINTR = _const "Posix_TTY_V_VINTR" : C_Int.t;
+val VKILL = _const "Posix_TTY_V_VKILL" : C_Int.t;
+val VMIN = _const "Posix_TTY_V_VMIN" : C_Int.t;
+val VQUIT = _const "Posix_TTY_V_VQUIT" : C_Int.t;
+val VSTART = _const "Posix_TTY_V_VSTART" : C_Int.t;
+val VSTOP = _const "Posix_TTY_V_VSTOP" : C_Int.t;
+val VSUSP = _const "Posix_TTY_V_VSUSP" : C_Int.t;
+val VTIME = _const "Posix_TTY_V_VTIME" : C_Int.t;
+end
+end
+end
+structure Real32 = 
+struct
+type t = Real32.t
+val abs = _import "Real32_abs" : Real32.t -> Real32.t;
+val add = _import "Real32_add" : Real32.t * Real32.t -> Real32.t;
+val class = _import "Real32_class" : Real32.t -> C_Int.t;
+val div = _import "Real32_div" : Real32.t * Real32.t -> Real32.t;
+val equal = _import "Real32_equal" : Real32.t * Real32.t -> Bool.t;
+val fetch = _import "Real32_fetch" : (Real32.t) ref -> Real32.t;
+val frexp = _import "Real32_frexp" : Real32.t * (C_Int.t) ref -> Real32.t;
+val gdtoa = _import "Real32_gdtoa" : Real32.t * C_Int.t * C_Int.t * (C_Int.t) ref -> C_String.t;
+val ldexp = _import "Real32_ldexp" : Real32.t * C_Int.t -> Real32.t;
+val le = _import "Real32_le" : Real32.t * Real32.t -> Bool.t;
+val lt = _import "Real32_lt" : Real32.t * Real32.t -> Bool.t;
+structure Math = 
+struct
+val acos = _import "Real32_Math_acos" : Real32.t -> Real32.t;
+val asin = _import "Real32_Math_asin" : Real32.t -> Real32.t;
+val atan = _import "Real32_Math_atan" : Real32.t -> Real32.t;
+val atan2 = _import "Real32_Math_atan2" : Real32.t * Real32.t -> Real32.t;
+val cos = _import "Real32_Math_cos" : Real32.t -> Real32.t;
+val cosh = _import "Real32_Math_cosh" : Real32.t -> Real32.t;
+val (eGet, eSet) = _symbol "Real32_Math_e": (unit -> (Real32.t)) * ((Real32.t) -> unit);
+val exp = _import "Real32_Math_exp" : Real32.t -> Real32.t;
+val ln = _import "Real32_Math_ln" : Real32.t -> Real32.t;
+val log10 = _import "Real32_Math_log10" : Real32.t -> Real32.t;
+val (piGet, piSet) = _symbol "Real32_Math_pi": (unit -> (Real32.t)) * ((Real32.t) -> unit);
+val pow = _import "Real32_Math_pow" : Real32.t * Real32.t -> Real32.t;
+val sin = _import "Real32_Math_sin" : Real32.t -> Real32.t;
+val sinh = _import "Real32_Math_sinh" : Real32.t -> Real32.t;
+val sqrt = _import "Real32_Math_sqrt" : Real32.t -> Real32.t;
+val tan = _import "Real32_Math_tan" : Real32.t -> Real32.t;
+val tanh = _import "Real32_Math_tanh" : Real32.t -> Real32.t;
+end
+val (maxFiniteGet, maxFiniteSet) = _symbol "Real32_maxFinite": (unit -> (Real32.t)) * ((Real32.t) -> unit);
+val (minNormalPosGet, minNormalPosSet) = _symbol "Real32_minNormalPos": (unit -> (Real32.t)) * ((Real32.t) -> unit);
+val (minPosGet, minPosSet) = _symbol "Real32_minPos": (unit -> (Real32.t)) * ((Real32.t) -> unit);
+val modf = _import "Real32_modf" : Real32.t * (Real32.t) ref -> Real32.t;
+val move = _import "Real32_move" : (Real32.t) ref * (Real32.t) ref -> unit;
+val mul = _import "Real32_mul" : Real32.t * Real32.t -> Real32.t;
+val muladd = _import "Real32_muladd" : Real32.t * Real32.t * Real32.t -> Real32.t;
+val mulsub = _import "Real32_mulsub" : Real32.t * Real32.t * Real32.t -> Real32.t;
+val neg = _import "Real32_neg" : Real32.t -> Real32.t;
+val nextAfter = _import "Real32_nextAfter" : Real32.t * Real32.t -> Real32.t;
+val round = _import "Real32_round" : Real32.t -> Real32.t;
+val signBit = _import "Real32_signBit" : Real32.t -> C_Int.t;
+val store = _import "Real32_store" : (Real32.t) ref * Real32.t -> unit;
+val strto = _import "Real32_strto" : NullString8.t -> Real32.t;
+val sub = _import "Real32_sub" : Real32.t * Real32.t -> Real32.t;
+val toReal32 = _import "Real32_toReal32" : Real32.t -> Real32.t;
+val toReal64 = _import "Real32_toReal64" : Real32.t -> Real64.t;
+val toWordS16 = _import "Real32_toWordS16" : Real32.t -> Int16.t;
+val toWordS32 = _import "Real32_toWordS32" : Real32.t -> Int32.t;
+val toWordS64 = _import "Real32_toWordS64" : Real32.t -> Int64.t;
+val toWordS8 = _import "Real32_toWordS8" : Real32.t -> Int8.t;
+val toWordU16 = _import "Real32_toWordU16" : Real32.t -> Word16.t;
+val toWordU32 = _import "Real32_toWordU32" : Real32.t -> Word32.t;
+val toWordU64 = _import "Real32_toWordU64" : Real32.t -> Word64.t;
+val toWordU8 = _import "Real32_toWordU8" : Real32.t -> Word8.t;
+end
+structure Real64 = 
+struct
+type t = Real64.t
+val abs = _import "Real64_abs" : Real64.t -> Real64.t;
+val add = _import "Real64_add" : Real64.t * Real64.t -> Real64.t;
+val class = _import "Real64_class" : Real64.t -> C_Int.t;
+val div = _import "Real64_div" : Real64.t * Real64.t -> Real64.t;
+val equal = _import "Real64_equal" : Real64.t * Real64.t -> Bool.t;
+val fetch = _import "Real64_fetch" : (Real64.t) ref -> Real64.t;
+val frexp = _import "Real64_frexp" : Real64.t * (C_Int.t) ref -> Real64.t;
+val gdtoa = _import "Real64_gdtoa" : Real64.t * C_Int.t * C_Int.t * (C_Int.t) ref -> C_String.t;
+val ldexp = _import "Real64_ldexp" : Real64.t * C_Int.t -> Real64.t;
+val le = _import "Real64_le" : Real64.t * Real64.t -> Bool.t;
+val lt = _import "Real64_lt" : Real64.t * Real64.t -> Bool.t;
+structure Math = 
+struct
+val acos = _import "Real64_Math_acos" : Real64.t -> Real64.t;
+val asin = _import "Real64_Math_asin" : Real64.t -> Real64.t;
+val atan = _import "Real64_Math_atan" : Real64.t -> Real64.t;
+val atan2 = _import "Real64_Math_atan2" : Real64.t * Real64.t -> Real64.t;
+val cos = _import "Real64_Math_cos" : Real64.t -> Real64.t;
+val cosh = _import "Real64_Math_cosh" : Real64.t -> Real64.t;
+val (eGet, eSet) = _symbol "Real64_Math_e": (unit -> (Real64.t)) * ((Real64.t) -> unit);
+val exp = _import "Real64_Math_exp" : Real64.t -> Real64.t;
+val ln = _import "Real64_Math_ln" : Real64.t -> Real64.t;
+val log10 = _import "Real64_Math_log10" : Real64.t -> Real64.t;
+val (piGet, piSet) = _symbol "Real64_Math_pi": (unit -> (Real64.t)) * ((Real64.t) -> unit);
+val pow = _import "Real64_Math_pow" : Real64.t * Real64.t -> Real64.t;
+val sin = _import "Real64_Math_sin" : Real64.t -> Real64.t;
+val sinh = _import "Real64_Math_sinh" : Real64.t -> Real64.t;
+val sqrt = _import "Real64_Math_sqrt" : Real64.t -> Real64.t;
+val tan = _import "Real64_Math_tan" : Real64.t -> Real64.t;
+val tanh = _import "Real64_Math_tanh" : Real64.t -> Real64.t;
+end
+val (maxFiniteGet, maxFiniteSet) = _symbol "Real64_maxFinite": (unit -> (Real64.t)) * ((Real64.t) -> unit);
+val (minNormalPosGet, minNormalPosSet) = _symbol "Real64_minNormalPos": (unit -> (Real64.t)) * ((Real64.t) -> unit);
+val (minPosGet, minPosSet) = _symbol "Real64_minPos": (unit -> (Real64.t)) * ((Real64.t) -> unit);
+val modf = _import "Real64_modf" : Real64.t * (Real64.t) ref -> Real64.t;
+val move = _import "Real64_move" : (Real64.t) ref * (Real64.t) ref -> unit;
+val mul = _import "Real64_mul" : Real64.t * Real64.t -> Real64.t;
+val muladd = _import "Real64_muladd" : Real64.t * Real64.t * Real64.t -> Real64.t;
+val mulsub = _import "Real64_mulsub" : Real64.t * Real64.t * Real64.t -> Real64.t;
+val neg = _import "Real64_neg" : Real64.t -> Real64.t;
+val nextAfter = _import "Real64_nextAfter" : Real64.t * Real64.t -> Real64.t;
+val round = _import "Real64_round" : Real64.t -> Real64.t;
+val signBit = _import "Real64_signBit" : Real64.t -> C_Int.t;
+val store = _import "Real64_store" : (Real64.t) ref * Real64.t -> unit;
+val strto = _import "Real64_strto" : NullString8.t -> Real64.t;
+val sub = _import "Real64_sub" : Real64.t * Real64.t -> Real64.t;
+val toReal32 = _import "Real64_toReal32" : Real64.t -> Real32.t;
+val toReal64 = _import "Real64_toReal64" : Real64.t -> Real64.t;
+val toWordS16 = _import "Real64_toWordS16" : Real64.t -> Int16.t;
+val toWordS32 = _import "Real64_toWordS32" : Real64.t -> Int32.t;
+val toWordS64 = _import "Real64_toWordS64" : Real64.t -> Int64.t;
+val toWordS8 = _import "Real64_toWordS8" : Real64.t -> Int8.t;
+val toWordU16 = _import "Real64_toWordU16" : Real64.t -> Word16.t;
+val toWordU32 = _import "Real64_toWordU32" : Real64.t -> Word32.t;
+val toWordU64 = _import "Real64_toWordU64" : Real64.t -> Word64.t;
+val toWordU8 = _import "Real64_toWordU8" : Real64.t -> Word8.t;
+end
+structure Socket = 
+struct
+val accept = _import "Socket_accept" : C_Sock.t * (Word8.t) array * (C_Socklen.t) ref -> (C_Int.t) C_Errno.t;
+structure AF = 
+struct
+val INET = _const "Socket_AF_INET" : C_Int.t;
+val INET6 = _const "Socket_AF_INET6" : C_Int.t;
+val UNIX = _const "Socket_AF_UNIX" : C_Int.t;
+val UNSPEC = _const "Socket_AF_UNSPEC" : C_Int.t;
+end
+val bind = _import "Socket_bind" : C_Sock.t * (Word8.t) vector * C_Socklen.t -> (C_Int.t) C_Errno.t;
+val close = _import "Socket_close" : C_Sock.t -> (C_Int.t) C_Errno.t;
+val connect = _import "Socket_connect" : C_Sock.t * (Word8.t) vector * C_Socklen.t -> (C_Int.t) C_Errno.t;
+structure Ctl = 
+struct
+val FIONBIO = _const "Socket_Ctl_FIONBIO" : C_Int.t;
+val FIONREAD = _const "Socket_Ctl_FIONREAD" : C_Int.t;
+val getIOCtl = _import "Socket_Ctl_getIOCtl" : C_Sock.t * C_Int.t * (Word8.t) array -> (C_Int.t) C_Errno.t;
+val getPeerName = _import "Socket_Ctl_getPeerName" : C_Sock.t * (Word8.t) array * (C_Socklen.t) ref -> (C_Int.t) C_Errno.t;
+val getSockName = _import "Socket_Ctl_getSockName" : C_Sock.t * (Word8.t) array * (C_Socklen.t) ref -> (C_Int.t) C_Errno.t;
+val getSockOpt = _import "Socket_Ctl_getSockOpt" : C_Sock.t * C_Int.t * C_Int.t * (Word8.t) array * (C_Socklen.t) ref -> (C_Int.t) C_Errno.t;
+val setIOCtl = _import "Socket_Ctl_setIOCtl" : C_Sock.t * C_Int.t * (Word8.t) vector -> (C_Int.t) C_Errno.t;
+val setSockOpt = _import "Socket_Ctl_setSockOpt" : C_Sock.t * C_Int.t * C_Int.t * (Word8.t) vector * C_Socklen.t -> (C_Int.t) C_Errno.t;
+val SIOCATMARK = _const "Socket_Ctl_SIOCATMARK" : C_Int.t;
+val SO_ACCEPTCONN = _const "Socket_Ctl_SO_ACCEPTCONN" : C_Int.t;
+val SO_BROADCAST = _const "Socket_Ctl_SO_BROADCAST" : C_Int.t;
+val SO_DEBUG = _const "Socket_Ctl_SO_DEBUG" : C_Int.t;
+val SO_DONTROUTE = _const "Socket_Ctl_SO_DONTROUTE" : C_Int.t;
+val SO_ERROR = _const "Socket_Ctl_SO_ERROR" : C_Int.t;
+val SO_KEEPALIVE = _const "Socket_Ctl_SO_KEEPALIVE" : C_Int.t;
+val SO_LINGER = _const "Socket_Ctl_SO_LINGER" : C_Int.t;
+val SO_OOBINLINE = _const "Socket_Ctl_SO_OOBINLINE" : C_Int.t;
+val SO_RCVBUF = _const "Socket_Ctl_SO_RCVBUF" : C_Int.t;
+val SO_RCVLOWAT = _const "Socket_Ctl_SO_RCVLOWAT" : C_Int.t;
+val SO_RCVTIMEO = _const "Socket_Ctl_SO_RCVTIMEO" : C_Int.t;
+val SO_REUSEADDR = _const "Socket_Ctl_SO_REUSEADDR" : C_Int.t;
+val SO_SNDBUF = _const "Socket_Ctl_SO_SNDBUF" : C_Int.t;
+val SO_SNDLOWAT = _const "Socket_Ctl_SO_SNDLOWAT" : C_Int.t;
+val SO_SNDTIMEO = _const "Socket_Ctl_SO_SNDTIMEO" : C_Int.t;
+val SO_TYPE = _const "Socket_Ctl_SO_TYPE" : C_Int.t;
+val SOL_SOCKET = _const "Socket_Ctl_SOL_SOCKET" : C_Int.t;
+end
+val familyOfAddr = _import "Socket_familyOfAddr" : (Word8.t) vector -> C_Int.t;
+structure GenericSock = 
+struct
+val socket = _import "Socket_GenericSock_socket" : C_Int.t * C_Int.t * C_Int.t -> (C_Int.t) C_Errno.t;
+val socketPair = _import "Socket_GenericSock_socketPair" : C_Int.t * C_Int.t * C_Int.t * (C_Int.t) array -> (C_Int.t) C_Errno.t;
+end
+structure INetSock = 
+struct
+structure Ctl = 
+struct
+val IPPROTO_TCP = _const "Socket_INetSock_Ctl_IPPROTO_TCP" : C_Int.t;
+val TCP_NODELAY = _const "Socket_INetSock_Ctl_TCP_NODELAY" : C_Int.t;
+end
+val fromAddr = _import "Socket_INetSock_fromAddr" : (Word8.t) vector -> unit;
+val getInAddr = _import "Socket_INetSock_getInAddr" : (Word8.t) array -> unit;
+val getPort = _import "Socket_INetSock_getPort" : unit -> C_Int.t;
+val toAddr = _import "Socket_INetSock_toAddr" : (Word8.t) vector * C_Int.t * (Word8.t) array * (C_Socklen.t) ref -> unit;
+end
+val listen = _import "Socket_listen" : C_Sock.t * C_Int.t -> (C_Int.t) C_Errno.t;
+val MSG_CTRUNC = _const "Socket_MSG_CTRUNC" : C_Int.t;
+val MSG_DONTROUTE = _const "Socket_MSG_DONTROUTE" : C_Int.t;
+val MSG_DONTWAIT = _const "Socket_MSG_DONTWAIT" : C_Int.t;
+val MSG_EOR = _const "Socket_MSG_EOR" : C_Int.t;
+val MSG_OOB = _const "Socket_MSG_OOB" : C_Int.t;
+val MSG_PEEK = _const "Socket_MSG_PEEK" : C_Int.t;
+val MSG_TRUNC = _const "Socket_MSG_TRUNC" : C_Int.t;
+val MSG_WAITALL = _const "Socket_MSG_WAITALL" : C_Int.t;
+val recv = _import "Socket_recv" : C_Sock.t * (Word8.t) array * C_Int.t * C_Size.t * C_Int.t -> (C_SSize.t) C_Errno.t;
+val recvFrom = _import "Socket_recvFrom" : C_Sock.t * (Word8.t) array * C_Int.t * C_Size.t * C_Int.t * (Word8.t) array * (C_Socklen.t) ref -> (C_SSize.t) C_Errno.t;
+val sendArr = _import "Socket_sendArr" : C_Sock.t * (Word8.t) array * C_Int.t * C_Size.t * C_Int.t -> (C_SSize.t) C_Errno.t;
+val sendArrTo = _import "Socket_sendArrTo" : C_Sock.t * (Word8.t) array * C_Int.t * C_Size.t * C_Int.t * (Word8.t) vector * C_Socklen.t -> (C_SSize.t) C_Errno.t;
+val sendVec = _import "Socket_sendVec" : C_Sock.t * (Word8.t) vector * C_Int.t * C_Size.t * C_Int.t -> (C_SSize.t) C_Errno.t;
+val sendVecTo = _import "Socket_sendVecTo" : C_Sock.t * (Word8.t) vector * C_Int.t * C_Size.t * C_Int.t * (Word8.t) vector * C_Socklen.t -> (C_SSize.t) C_Errno.t;
+val SHUT_RD = _const "Socket_SHUT_RD" : C_Int.t;
+val SHUT_RDWR = _const "Socket_SHUT_RDWR" : C_Int.t;
+val SHUT_WR = _const "Socket_SHUT_WR" : C_Int.t;
+val shutdown = _import "Socket_shutdown" : C_Sock.t * C_Int.t -> (C_Int.t) C_Errno.t;
+structure SOCK = 
+struct
+val DGRAM = _const "Socket_SOCK_DGRAM" : C_Int.t;
+val RAW = _const "Socket_SOCK_RAW" : C_Int.t;
+val SEQPACKET = _const "Socket_SOCK_SEQPACKET" : C_Int.t;
+val STREAM = _const "Socket_SOCK_STREAM" : C_Int.t;
+end
+val sockAddrStorageLen = _const "Socket_sockAddrStorageLen" : C_Size.t;
+structure UnixSock = 
+struct
+val fromAddr = _import "Socket_UnixSock_fromAddr" : (Word8.t) vector * (Char8.t) array * C_Size.t -> unit;
+val pathLen = _import "Socket_UnixSock_pathLen" : (Word8.t) vector -> C_Size.t;
+val toAddr = _import "Socket_UnixSock_toAddr" : NullString8.t * C_Size.t * (Word8.t) array * (C_Socklen.t) ref -> unit;
+end
+end
+structure Stdio = 
+struct
+val print = _import "Stdio_print" : String8.t -> unit;
+val printStderr = _import "Stdio_printStderr" : String8.t -> unit;
+val printStdout = _import "Stdio_printStdout" : String8.t -> unit;
+end
+structure Time = 
+struct
+val getTimeOfDay = _import "Time_getTimeOfDay" : unit -> C_Int.t;
+val sec = _import "Time_sec" : unit -> C_Time.t;
+val usec = _import "Time_usec" : unit -> C_SUSeconds.t;
+end
+structure Windows = 
+struct
+structure Process = 
+struct
+val create = _import "Windows_Process_create" : NullString8.t * NullString8.t * NullString8.t * C_Fd.t * C_Fd.t * C_Fd.t -> (C_PId.t) C_Errno.t;
+val terminate = _import "Windows_Process_terminate" : C_PId.t * C_Signal.t -> (C_Int.t) C_Errno.t;
+end
+end
+structure Word16 = 
+struct
+type t = Word16.t
+val add = _import "Word16_add" : Word16.t * Word16.t -> Word16.t;
+val andb = _import "Word16_andb" : Word16.t * Word16.t -> Word16.t;
+val equal = _import "Word16_equal" : Word16.t * Word16.t -> Bool.t;
+val lshift = _import "Word16_lshift" : Word16.t * Word32.t -> Word16.t;
+val neg = _import "Word16_neg" : Word16.t -> Word16.t;
+val notb = _import "Word16_notb" : Word16.t -> Word16.t;
+val orb = _import "Word16_orb" : Word16.t * Word16.t -> Word16.t;
+val rol = _import "Word16_rol" : Word16.t * Word32.t -> Word16.t;
+val ror = _import "Word16_ror" : Word16.t * Word32.t -> Word16.t;
+val sub = _import "Word16_sub" : Word16.t * Word16.t -> Word16.t;
+val xorb = _import "Word16_xorb" : Word16.t * Word16.t -> Word16.t;
+end
+structure Word32 = 
+struct
+type t = Word32.t
+val add = _import "Word32_add" : Word32.t * Word32.t -> Word32.t;
+val andb = _import "Word32_andb" : Word32.t * Word32.t -> Word32.t;
+val equal = _import "Word32_equal" : Word32.t * Word32.t -> Bool.t;
+val lshift = _import "Word32_lshift" : Word32.t * Word32.t -> Word32.t;
+val neg = _import "Word32_neg" : Word32.t -> Word32.t;
+val notb = _import "Word32_notb" : Word32.t -> Word32.t;
+val orb = _import "Word32_orb" : Word32.t * Word32.t -> Word32.t;
+val rol = _import "Word32_rol" : Word32.t * Word32.t -> Word32.t;
+val ror = _import "Word32_ror" : Word32.t * Word32.t -> Word32.t;
+val sub = _import "Word32_sub" : Word32.t * Word32.t -> Word32.t;
+val xorb = _import "Word32_xorb" : Word32.t * Word32.t -> Word32.t;
+end
+structure Word64 = 
+struct
+type t = Word64.t
+val add = _import "Word64_add" : Word64.t * Word64.t -> Word64.t;
+val andb = _import "Word64_andb" : Word64.t * Word64.t -> Word64.t;
+val equal = _import "Word64_equal" : Word64.t * Word64.t -> Bool.t;
+val lshift = _import "Word64_lshift" : Word64.t * Word32.t -> Word64.t;
+val neg = _import "Word64_neg" : Word64.t -> Word64.t;
+val notb = _import "Word64_notb" : Word64.t -> Word64.t;
+val orb = _import "Word64_orb" : Word64.t * Word64.t -> Word64.t;
+val rol = _import "Word64_rol" : Word64.t * Word32.t -> Word64.t;
+val ror = _import "Word64_ror" : Word64.t * Word32.t -> Word64.t;
+val sub = _import "Word64_sub" : Word64.t * Word64.t -> Word64.t;
+val xorb = _import "Word64_xorb" : Word64.t * Word64.t -> Word64.t;
+end
+structure Word8 = 
+struct
+type t = Word8.t
+val add = _import "Word8_add" : Word8.t * Word8.t -> Word8.t;
+val andb = _import "Word8_andb" : Word8.t * Word8.t -> Word8.t;
+val equal = _import "Word8_equal" : Word8.t * Word8.t -> Bool.t;
+val lshift = _import "Word8_lshift" : Word8.t * Word32.t -> Word8.t;
+val neg = _import "Word8_neg" : Word8.t -> Word8.t;
+val notb = _import "Word8_notb" : Word8.t -> Word8.t;
+val orb = _import "Word8_orb" : Word8.t * Word8.t -> Word8.t;
+val rol = _import "Word8_rol" : Word8.t * Word32.t -> Word8.t;
+val ror = _import "Word8_ror" : Word8.t * Word32.t -> Word8.t;
+val sub = _import "Word8_sub" : Word8.t * Word8.t -> Word8.t;
+val xorb = _import "Word8_xorb" : Word8.t * Word8.t -> Word8.t;
+end
+structure WordS16 = 
+struct
+val addCheckOverflows = _import "WordS16_addCheckOverflows" : Int16.t * Int16.t -> Bool.t;
+val ge = _import "WordS16_ge" : Int16.t * Int16.t -> Bool.t;
+val gt = _import "WordS16_gt" : Int16.t * Int16.t -> Bool.t;
+val le = _import "WordS16_le" : Int16.t * Int16.t -> Bool.t;
+val lt = _import "WordS16_lt" : Int16.t * Int16.t -> Bool.t;
+val mul = _import "WordS16_mul" : Int16.t * Int16.t -> Int16.t;
+val mulCheckOverflows = _import "WordS16_mulCheckOverflows" : Int16.t * Int16.t -> Bool.t;
+val negCheckOverflows = _import "WordS16_negCheckOverflows" : Int16.t -> Bool.t;
+val quot = _import "WordS16_quot" : Int16.t * Int16.t -> Int16.t;
+val rem = _import "WordS16_rem" : Int16.t * Int16.t -> Int16.t;
+val rshift = _import "WordS16_rshift" : Int16.t * Word32.t -> Int16.t;
+val subCheckOverflows = _import "WordS16_subCheckOverflows" : Int16.t * Int16.t -> Bool.t;
+val toReal32 = _import "WordS16_toReal32" : Int16.t -> Real32.t;
+val toReal64 = _import "WordS16_toReal64" : Int16.t -> Real64.t;
+val toWord16 = _import "WordS16_toWord16" : Int16.t -> Word16.t;
+val toWord32 = _import "WordS16_toWord32" : Int16.t -> Word32.t;
+val toWord64 = _import "WordS16_toWord64" : Int16.t -> Word64.t;
+val toWord8 = _import "WordS16_toWord8" : Int16.t -> Word8.t;
+end
+structure WordS32 = 
+struct
+val addCheckOverflows = _import "WordS32_addCheckOverflows" : Int32.t * Int32.t -> Bool.t;
+val ge = _import "WordS32_ge" : Int32.t * Int32.t -> Bool.t;
+val gt = _import "WordS32_gt" : Int32.t * Int32.t -> Bool.t;
+val le = _import "WordS32_le" : Int32.t * Int32.t -> Bool.t;
+val lt = _import "WordS32_lt" : Int32.t * Int32.t -> Bool.t;
+val mul = _import "WordS32_mul" : Int32.t * Int32.t -> Int32.t;
+val mulCheckOverflows = _import "WordS32_mulCheckOverflows" : Int32.t * Int32.t -> Bool.t;
+val negCheckOverflows = _import "WordS32_negCheckOverflows" : Int32.t -> Bool.t;
+val quot = _import "WordS32_quot" : Int32.t * Int32.t -> Int32.t;
+val rem = _import "WordS32_rem" : Int32.t * Int32.t -> Int32.t;
+val rshift = _import "WordS32_rshift" : Int32.t * Word32.t -> Int32.t;
+val subCheckOverflows = _import "WordS32_subCheckOverflows" : Int32.t * Int32.t -> Bool.t;
+val toReal32 = _import "WordS32_toReal32" : Int32.t -> Real32.t;
+val toReal64 = _import "WordS32_toReal64" : Int32.t -> Real64.t;
+val toWord16 = _import "WordS32_toWord16" : Int32.t -> Word16.t;
+val toWord32 = _import "WordS32_toWord32" : Int32.t -> Word32.t;
+val toWord64 = _import "WordS32_toWord64" : Int32.t -> Word64.t;
+val toWord8 = _import "WordS32_toWord8" : Int32.t -> Word8.t;
+end
+structure WordS64 = 
+struct
+val addCheckOverflows = _import "WordS64_addCheckOverflows" : Int64.t * Int64.t -> Bool.t;
+val ge = _import "WordS64_ge" : Int64.t * Int64.t -> Bool.t;
+val gt = _import "WordS64_gt" : Int64.t * Int64.t -> Bool.t;
+val le = _import "WordS64_le" : Int64.t * Int64.t -> Bool.t;
+val lt = _import "WordS64_lt" : Int64.t * Int64.t -> Bool.t;
+val mul = _import "WordS64_mul" : Int64.t * Int64.t -> Int64.t;
+val mulCheckOverflows = _import "WordS64_mulCheckOverflows" : Int64.t * Int64.t -> Bool.t;
+val negCheckOverflows = _import "WordS64_negCheckOverflows" : Int64.t -> Bool.t;
+val quot = _import "WordS64_quot" : Int64.t * Int64.t -> Int64.t;
+val rem = _import "WordS64_rem" : Int64.t * Int64.t -> Int64.t;
+val rshift = _import "WordS64_rshift" : Int64.t * Word32.t -> Int64.t;
+val subCheckOverflows = _import "WordS64_subCheckOverflows" : Int64.t * Int64.t -> Bool.t;
+val toReal32 = _import "WordS64_toReal32" : Int64.t -> Real32.t;
+val toReal64 = _import "WordS64_toReal64" : Int64.t -> Real64.t;
+val toWord16 = _import "WordS64_toWord16" : Int64.t -> Word16.t;
+val toWord32 = _import "WordS64_toWord32" : Int64.t -> Word32.t;
+val toWord64 = _import "WordS64_toWord64" : Int64.t -> Word64.t;
+val toWord8 = _import "WordS64_toWord8" : Int64.t -> Word8.t;
+end
+structure WordS8 = 
+struct
+val addCheckOverflows = _import "WordS8_addCheckOverflows" : Int8.t * Int8.t -> Bool.t;
+val ge = _import "WordS8_ge" : Int8.t * Int8.t -> Bool.t;
+val gt = _import "WordS8_gt" : Int8.t * Int8.t -> Bool.t;
+val le = _import "WordS8_le" : Int8.t * Int8.t -> Bool.t;
+val lt = _import "WordS8_lt" : Int8.t * Int8.t -> Bool.t;
+val mul = _import "WordS8_mul" : Int8.t * Int8.t -> Int8.t;
+val mulCheckOverflows = _import "WordS8_mulCheckOverflows" : Int8.t * Int8.t -> Bool.t;
+val negCheckOverflows = _import "WordS8_negCheckOverflows" : Int8.t -> Bool.t;
+val quot = _import "WordS8_quot" : Int8.t * Int8.t -> Int8.t;
+val rem = _import "WordS8_rem" : Int8.t * Int8.t -> Int8.t;
+val rshift = _import "WordS8_rshift" : Int8.t * Word32.t -> Int8.t;
+val subCheckOverflows = _import "WordS8_subCheckOverflows" : Int8.t * Int8.t -> Bool.t;
+val toReal32 = _import "WordS8_toReal32" : Int8.t -> Real32.t;
+val toReal64 = _import "WordS8_toReal64" : Int8.t -> Real64.t;
+val toWord16 = _import "WordS8_toWord16" : Int8.t -> Word16.t;
+val toWord32 = _import "WordS8_toWord32" : Int8.t -> Word32.t;
+val toWord64 = _import "WordS8_toWord64" : Int8.t -> Word64.t;
+val toWord8 = _import "WordS8_toWord8" : Int8.t -> Word8.t;
+end
+structure WordU16 = 
+struct
+val addCheckOverflows = _import "WordU16_addCheckOverflows" : Word16.t * Word16.t -> Bool.t;
+val ge = _import "WordU16_ge" : Word16.t * Word16.t -> Bool.t;
+val gt = _import "WordU16_gt" : Word16.t * Word16.t -> Bool.t;
+val le = _import "WordU16_le" : Word16.t * Word16.t -> Bool.t;
+val lt = _import "WordU16_lt" : Word16.t * Word16.t -> Bool.t;
+val mul = _import "WordU16_mul" : Word16.t * Word16.t -> Word16.t;
+val mulCheckOverflows = _import "WordU16_mulCheckOverflows" : Word16.t * Word16.t -> Bool.t;
+val quot = _import "WordU16_quot" : Word16.t * Word16.t -> Word16.t;
+val rem = _import "WordU16_rem" : Word16.t * Word16.t -> Word16.t;
+val rshift = _import "WordU16_rshift" : Word16.t * Word32.t -> Word16.t;
+val toReal32 = _import "WordU16_toReal32" : Word16.t -> Real32.t;
+val toReal64 = _import "WordU16_toReal64" : Word16.t -> Real64.t;
+val toWord16 = _import "WordU16_toWord16" : Word16.t -> Word16.t;
+val toWord32 = _import "WordU16_toWord32" : Word16.t -> Word32.t;
+val toWord64 = _import "WordU16_toWord64" : Word16.t -> Word64.t;
+val toWord8 = _import "WordU16_toWord8" : Word16.t -> Word8.t;
+end
+structure WordU32 = 
+struct
+val addCheckOverflows = _import "WordU32_addCheckOverflows" : Word32.t * Word32.t -> Bool.t;
+val ge = _import "WordU32_ge" : Word32.t * Word32.t -> Bool.t;
+val gt = _import "WordU32_gt" : Word32.t * Word32.t -> Bool.t;
+val le = _import "WordU32_le" : Word32.t * Word32.t -> Bool.t;
+val lt = _import "WordU32_lt" : Word32.t * Word32.t -> Bool.t;
+val mul = _import "WordU32_mul" : Word32.t * Word32.t -> Word32.t;
+val mulCheckOverflows = _import "WordU32_mulCheckOverflows" : Word32.t * Word32.t -> Bool.t;
+val quot = _import "WordU32_quot" : Word32.t * Word32.t -> Word32.t;
+val rem = _import "WordU32_rem" : Word32.t * Word32.t -> Word32.t;
+val rshift = _import "WordU32_rshift" : Word32.t * Word32.t -> Word32.t;
+val toReal32 = _import "WordU32_toReal32" : Word32.t -> Real32.t;
+val toReal64 = _import "WordU32_toReal64" : Word32.t -> Real64.t;
+val toWord16 = _import "WordU32_toWord16" : Word32.t -> Word16.t;
+val toWord32 = _import "WordU32_toWord32" : Word32.t -> Word32.t;
+val toWord64 = _import "WordU32_toWord64" : Word32.t -> Word64.t;
+val toWord8 = _import "WordU32_toWord8" : Word32.t -> Word8.t;
+end
+structure WordU64 = 
+struct
+val addCheckOverflows = _import "WordU64_addCheckOverflows" : Word64.t * Word64.t -> Bool.t;
+val ge = _import "WordU64_ge" : Word64.t * Word64.t -> Bool.t;
+val gt = _import "WordU64_gt" : Word64.t * Word64.t -> Bool.t;
+val le = _import "WordU64_le" : Word64.t * Word64.t -> Bool.t;
+val lt = _import "WordU64_lt" : Word64.t * Word64.t -> Bool.t;
+val mul = _import "WordU64_mul" : Word64.t * Word64.t -> Word64.t;
+val mulCheckOverflows = _import "WordU64_mulCheckOverflows" : Word64.t * Word64.t -> Bool.t;
+val quot = _import "WordU64_quot" : Word64.t * Word64.t -> Word64.t;
+val rem = _import "WordU64_rem" : Word64.t * Word64.t -> Word64.t;
+val rshift = _import "WordU64_rshift" : Word64.t * Word32.t -> Word64.t;
+val toReal32 = _import "WordU64_toReal32" : Word64.t -> Real32.t;
+val toReal64 = _import "WordU64_toReal64" : Word64.t -> Real64.t;
+val toWord16 = _import "WordU64_toWord16" : Word64.t -> Word16.t;
+val toWord32 = _import "WordU64_toWord32" : Word64.t -> Word32.t;
+val toWord64 = _import "WordU64_toWord64" : Word64.t -> Word64.t;
+val toWord8 = _import "WordU64_toWord8" : Word64.t -> Word8.t;
+end
+structure WordU8 = 
+struct
+val addCheckOverflows = _import "WordU8_addCheckOverflows" : Word8.t * Word8.t -> Bool.t;
+val ge = _import "WordU8_ge" : Word8.t * Word8.t -> Bool.t;
+val gt = _import "WordU8_gt" : Word8.t * Word8.t -> Bool.t;
+val le = _import "WordU8_le" : Word8.t * Word8.t -> Bool.t;
+val lt = _import "WordU8_lt" : Word8.t * Word8.t -> Bool.t;
+val mul = _import "WordU8_mul" : Word8.t * Word8.t -> Word8.t;
+val mulCheckOverflows = _import "WordU8_mulCheckOverflows" : Word8.t * Word8.t -> Bool.t;
+val quot = _import "WordU8_quot" : Word8.t * Word8.t -> Word8.t;
+val rem = _import "WordU8_rem" : Word8.t * Word8.t -> Word8.t;
+val rshift = _import "WordU8_rshift" : Word8.t * Word32.t -> Word8.t;
+val toReal32 = _import "WordU8_toReal32" : Word8.t -> Real32.t;
+val toReal64 = _import "WordU8_toReal64" : Word8.t -> Real64.t;
+val toWord16 = _import "WordU8_toWord16" : Word8.t -> Word16.t;
+val toWord32 = _import "WordU8_toWord32" : Word8.t -> Word32.t;
+val toWord64 = _import "WordU8_toWord64" : Word8.t -> Word64.t;
+val toWord8 = _import "WordU8_toWord8" : Word8.t -> Word8.t;
+end
+end
+end