| // -*- C++ -*- |
| //===-------------------------- cerrno ------------------------------------===// |
| // |
| // The LLVM Compiler Infrastructure |
| // |
| // This file is dual licensed under the MIT and the University of Illinois Open |
| // Source Licenses. See LICENSE.TXT for details. |
| // |
| //===----------------------------------------------------------------------===// |
| |
| #ifndef _LIBCPP_CERRNO |
| #define _LIBCPP_CERRNO |
| |
| /* |
| cerrno synopsis |
| |
| Macros: |
| |
| EDOM |
| EILSEQ // C99 |
| ERANGE |
| errno |
| |
| */ |
| |
| #include <__config> |
| #include <errno.h> |
| |
| #pragma GCC system_header |
| |
| #if !defined(EOWNERDEAD) || !defined(ENOTRECOVERABLE) |
| |
| const int __elast1 = ELAST+1; |
| const int __elast2 = ELAST+2; |
| #undef ELAST |
| |
| #ifdef ENOTRECOVERABLE |
| |
| #define EOWNERDEAD __elast1 |
| #define ELAST EOWNERDEAD |
| |
| #elif defined(EOWNERDEAD) |
| |
| #define ENOTRECOVERABLE __elast1 |
| #define ELAST ENOTRECOVERABLE |
| |
| #else // defined(EOWNERDEAD) |
| |
| #define EOWNERDEAD __elast1 |
| #define ENOTRECOVERABLE __elast2 |
| #define ELAST ENOTRECOVERABLE |
| |
| #endif // defined(EOWNERDEAD) |
| |
| #endif // !defined(EOWNERDEAD) || !defined(ENOTRECOVERABLE) |
| |
| #endif // _LIBCPP_CERRNO |