use SysBasic;


import SysBasic;

Types for low-level system error integration.

This module defines some system error types.

A note about the error code documentation in this file. Error descriptions for system errors are included here for convenience only. Other documentation, such as system man pages or the POSIX specification are the authority on system error codes.


The SysBasic module has been deprecated; most symbols have been moved to IO or OS as appropriate

type qio_err_t = c_int

An integral error code. This is really just a c_int, but code is clearer if you use qio_err_t to indicate arguments, variables, and return types that are system error codes.


‘qio_err_t’ has been deprecated; please use a ‘CTypes.c_int’ instead.

type fd_t = c_int

A system file descriptor. This is really just a c_int, but code is clearer if you use fd_t to indicate arguments, variables, and return types that are system file descriptors.


The error code indicating that no error occurred (Chapel specific)

proc EEOF

An error code indicating the end of file has been reached (Chapel specific)


‘SysBasic.EEOF’ has been deprecated


An error code indicating that the end of file or the end of the input was reached before the requested amount of data could be read. (Chapel specific)


‘SysBasic.ESHORT’ has been deprecated


An error code indicating a format error; for example when reading a quoted string literal, this would be returned if we never encountered the opening quote. (Chapel specific)


‘SysBasic.EFORMAT’ has been deprecated

const EBADE: c_int

Invalid exchange (linux only)

const EBADFD: c_int

File descriptor in bad state (linux only)

const EBADR: c_int

Invalid request descriptor (linux only)

const EBADRQC: c_int

Invalid request code (linux only)

const EBADSLT: c_int

Invalid slot (linux only)

const ECHRNG: c_int

Channel number out of range (linux only)

const ECOMM: c_int

Communication error on send (linux only)

const EHOSTDOWN: c_int

Host is down. A socket operation failed because the destination host was down. (linux, FreeBSD)

const EISNAM: c_int

Is a named type file (linux only)

const EKEYEXPIRED: c_int

Key has expired (linux only)

const EKEYREJECTED: c_int

Key was rejected by service (linux only)

const EKEYREVOKED: c_int

Key has been revoked (linux only)

const EL2HLT: c_int

Level 2 halted (linux only)

const EL2NSYNC: c_int

Level 2 not synchronized (linux only)

const EL3HLT: c_int

Level 3 halted (linux only)

const EL3RST: c_int

Level 3 halted (linux only)

const ELIBACC: c_int

Cannot access a needed shared library (linux only)

const ELIBBAD: c_int

Accessing a corrupted shared library (linux only)

const ELIBMAX: c_int

Attempting to link in too many shared libraries (linux only)

const ELIBSCN: c_int

lib section in a.out corrupted (linux only)

const ELIBEXEC: c_int

Cannot exec a shared library directly (linux only)

const EMEDIUMTYPE: c_int

Wrong medium type (linux only)

const ENODATA: c_int

No message is available on the STREAM head read queue (POSIX.1)

const ENOKEY: c_int

Required key not available (linux only)

const ENOMEDIUM: c_int

No medium found (linux only)

const ENONET: c_int

Machine is not on the network (linux only)

const ENOPKG: c_int

Package not installed (linux only)

const ENOSR: c_int

No STREAM resources (POSIX.1 XSI STREAMS option)

const ENOSTR: c_int


const ENOTBLK: c_int

Block device required. A block device operation was attempted on a non-block device or file. (linux, FreeBSD)

const ENOTUNIQ: c_int

Name not unique on network (linux only)

const EPFNOSUPPORT: c_int

Protocol family not supported. The protocol family has not been configured into the system or no implementation for it exists. (linux, FreeBSD)

const EREMCHG: c_int

Remote address changed (linux only)

const EREMOTE: c_int

Object is remote (linux only)

const EREMOTEIO: c_int

Remote I/O error (linux only)

const ERESTART: c_int

Interrupted system call should be restarted (linux only)

const ESHUTDOWN: c_int

Can’t send after socket shutdown. A request to send data was disallowed because the socket had already been shut down with a previous shutdown system call.


Socket type not supported. The support for the socket type has not been configured into the system or no implementation for it exists. (linux, FreeBSD)

const ESTRPIPE: c_int

Streams pipe error (linux only)

const ETIME: c_int

Timer expired (POSIX.1 XSI STREAMS option)

const EUCLEAN: c_int

Structure needs cleaning (linux only)

const EUNATCH: c_int

Protocol driver not attached (linux only)

const EUSERS: c_int

Too many users. The quota system ran out of table entries. (linux, FreeBSD)

const EXFULL: c_int

Exchange full (linux only)