]> pd.if.org Git - pdclib.old/blobdiff - includes/errno.h
PDCLIB-2: Complete wchar.h + manual page. This header is a monster, implies numerous...
[pdclib.old] / includes / errno.h
index 0569284da550613d2501614a804705919c517bf1..34cf843de8e54ee1947f0ec1a642a1db3d624b82 100644 (file)
@@ -1,25 +1,99 @@
-// ----------------------------------------------------------------------------
-// $Id$
-// ----------------------------------------------------------------------------
-// Public Domain C Library - http://pdclib.sourceforge.net
-// This code is Public Domain. Use, modify, and redistribute at will.
-// ----------------------------------------------------------------------------
-// Errors
-// ----------------------------------------------------------------------------
+/* $Id$ */
 
-#ifndef __ERRNO_H
-#define __ERRNO_H __ERRNO_H
+/* 7.5 Errors <errno.h>
 
-// ----------------------------------------------------------------------------
-// DECLARATIONS
+   This file is part of the Public Domain C Library (PDCLib).
+   Permission is granted to use, modify, and / or redistribute at will.
+*/
 
-extern int errno;
+#ifndef _PDCLIB_ERRNO_H
+#define _PDCLIB_ERRNO_H _PDCLIB_ERRNO_H
+#include <_PDCLIB_int.h>
+_PDCLIB_BEGIN_EXTERN_C
 
-// ----------------------------------------------------------------------------
-// DEFINES
+#define errno (*_PDCLIB_errno_func())
 
-#define EDOM      1 // domain error
-#define EILSEQ    2 // illegal (multibyte) sequence
-#define ERANGE    3 // range error
+/* C99 */
+#define ERANGE _PDCLIB_ERANGE
+#define EDOM _PDCLIB_EDOM
+#define EILSEQ _PDCLIB_EILSEQ
+
+/* C++11. Yes, they did just copy the POSIX errno list into the standard 
+ *
+  * ...take a DEEP breath...
+ */
+#define E2BIG _PDCLIB_E2BIG
+#define ECONNRESET _PDCLIB_ECONNRESET
+#define EISCONN _PDCLIB_EISCONN
+#define ENOENT _PDCLIB_ENOENT
+#define ENOTRECOVERABLE _PDCLIB_ENOTRECOVERABLE
+#define EROFS _PDCLIB_EROFS
+#define EACCES _PDCLIB_EACCES
+#define EDEADLK _PDCLIB_EDEADLK
+#define EISDIR _PDCLIB_EISDIR
+#define ENOEXEC _PDCLIB_ENOEXEC
+#define ENOTSOCK _PDCLIB_ENOTSOCK
+#define ESPIPE _PDCLIB_ESPIPE
+#define EADDRINUSE _PDCLIB_EADDRINUSE
+#define EDESTADDRREQ _PDCLIB_EDESTADDRREQ
+#define ELOOP _PDCLIB_ELOOP
+#define ENOLCK _PDCLIB_ENOLCK
+#define ENOTSUP _PDCLIB_ENOTSUPP
+#define ESRCH _PDCLIB_ESRCH
+#define EADDRNOTAVAIL _PDCLIB_EADDRNOTAVAIL
+#define EMFILE _PDCLIB_EMFILE
+#define ENOLINK _PDCLIB_ENOLINK
+#define ENOTTY _PDCLIB_ENOTTY
+#define ETIME _PDCLIB_ETIME
+#define EAFNOSUPPORT _PDCLIB_EAFNOSUPPORT
+#define EEXIST _PDCLIB_EEXIST
+#define EMLINK _PDCLIB_EMLINK
+#define ENOMEM _PDCLIB_ENOMEM
+#define ENXIO _PDCLIB_ENXIO
+#define ETIMEDOUT _PDCLIB_ETIMEDOUT
+#define EAGAIN _PDCLIB_EAGAIN
+#define EFAULT _PDCLIB_EFAULT
+#define EMSGSIZE _PDCLIB_EMSGSIZE
+#define ENOMSG _PDCLIB_ENOMSG
+#define EOPNOTSUPP _PDCLIB_EOPNOTSUPP
+#define ETXTBSY _PDCLIB_ETXTBSY
+#define EALREADY _PDCLIB_EALREADY
+#define EFBIG _PDCLIB_EFBIG
+#define ENAMETOOLONG _PDCLIB_ENAMETOOLONG
+#define ENOPROTOOPT _PDCLIB_ENOPROTOOPT
+#define EOVERFLOW _PDCLIB_EOVERFLOW
+#define EWOULDBLOCK _PDCLIB_EWOULDBLOCK
+#define EBADF _PDCLIB_EBADF
+#define EHOSTUNREACH _PDCLIB_EHOSTUNREACH
+#define ENETDOWN _PDCLIB_ENETDOWN
+#define ENOSPC _PDCLIB_ENOSPC
+#define EOWNERDEAD _PDCLIB_EOWNERDEAD
+#define EXDEV _PDCLIB_EXDEV
+#define EBADMSG _PDCLIB_EBADMSG
+#define EIDRM _PDCLIB_EIDRM
+#define ENETRESET _PDCLIB_ENETRESET
+#define ENOSR _PDCLIB_ENOSR
+#define EPERM _PDCLIB_EPERM
+#define EBUSY _PDCLIB_EBUSY
+#define ENETUNREACH _PDCLIB_ENETUNREACH
+#define ENOSTR _PDCLIB_ENOSTR
+#define EPIPE _PDCLIB_EPIPE
+#define ECANCELED _PDCLIB_ECANCELED
+#define EINPROGRESS _PDCLIB_EINPROGRESS
+#define ENFILE _PDCLIB_ENFILE
+#define ENOSYS _PDCLIB_ENOSYS
+#define EPROTO _PDCLIB_EPROTO
+#define ECHILD _PDCLIB_ECHILD
+#define EINTR _PDCLIB_EINTR
+#define ENOBUFS _PDCLIB_ENOBUFS
+#define ENOTCONN _PDCLIB_ENOTCONN
+#define EPROTONOSUPPORT _PDCLIB_EPROTONOSUPPORT
+#define ECONNABORTED _PDCLIB_ECONNABORTED
+#define EINVAL _PDCLIB_EINVAL
+#define ENODATA _PDCLIB_ENODATA
+#define ENOTDIR _PDCLIB_ENOTDIR
+#define EPROTOTYPE _PDCLIB_EPROTOTYPE
+
+_PDCLIB_END_EXTERN_C
+#endif
 
-#endif // __ERRNO_H