libstdc++
|
00001 // Specific definitions for generic platforms -*- C++ -*- 00002 00003 // Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc. 00004 // 00005 // This file is part of the GNU ISO C++ Library. This library is free 00006 // software; you can redistribute it and/or modify it under the 00007 // terms of the GNU General Public License as published by the 00008 // Free Software Foundation; either version 3, or (at your option) 00009 // any later version. 00010 00011 // This library is distributed in the hope that it will be useful, 00012 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00014 // GNU General Public License for more details. 00015 00016 // Under Section 7 of GPL version 3, you are granted additional 00017 // permissions described in the GCC Runtime Library Exception, version 00018 // 3.1, as published by the Free Software Foundation. 00019 00020 // You should have received a copy of the GNU General Public License and 00021 // a copy of the GCC Runtime Library Exception along with this program; 00022 // see the files COPYING3 and COPYING.RUNTIME respectively. If not, see 00023 // <http://www.gnu.org/licenses/>. 00024 00025 /** @file error_constants.h 00026 * This is an internal header file, included by other library headers. 00027 * You should not attempt to use it directly. 00028 */ 00029 00030 #ifndef _GLIBCXX_ERROR_CONSTANTS 00031 #define _GLIBCXX_ERROR_CONSTANTS 1 00032 00033 #include <bits/c++config.h> 00034 #include <cerrno> 00035 00036 _GLIBCXX_BEGIN_NAMESPACE(std) 00037 00038 enum class errc 00039 { 00040 address_family_not_supported = EAFNOSUPPORT, 00041 address_in_use = EADDRINUSE, 00042 address_not_available = EADDRNOTAVAIL, 00043 already_connected = EISCONN, 00044 argument_list_too_long = E2BIG, 00045 argument_out_of_domain = EDOM, 00046 bad_address = EFAULT, 00047 bad_file_descriptor = EBADF, 00048 00049 #ifdef _GLIBCXX_HAVE_EBADMSG 00050 bad_message = EBADMSG, 00051 #endif 00052 00053 broken_pipe = EPIPE, 00054 connection_aborted = ECONNABORTED, 00055 connection_already_in_progress = EALREADY, 00056 connection_refused = ECONNREFUSED, 00057 connection_reset = ECONNRESET, 00058 cross_device_link = EXDEV, 00059 destination_address_required = EDESTADDRREQ, 00060 device_or_resource_busy = EBUSY, 00061 directory_not_empty = ENOTEMPTY, 00062 executable_format_error = ENOEXEC, 00063 file_exists = EEXIST, 00064 file_too_large = EFBIG, 00065 filename_too_long = ENAMETOOLONG, 00066 function_not_supported = ENOSYS, 00067 host_unreachable = EHOSTUNREACH, 00068 00069 #ifdef _GLIBCXX_HAVE_EIDRM 00070 identifier_removed = EIDRM, 00071 #endif 00072 00073 illegal_byte_sequence = EILSEQ, 00074 inappropriate_io_control_operation = ENOTTY, 00075 interrupted = EINTR, 00076 invalid_argument = EINVAL, 00077 invalid_seek = ESPIPE, 00078 io_error = EIO, 00079 is_a_directory = EISDIR, 00080 message_size = EMSGSIZE, 00081 network_down = ENETDOWN, 00082 network_reset = ENETRESET, 00083 network_unreachable = ENETUNREACH, 00084 no_buffer_space = ENOBUFS, 00085 no_child_process = ECHILD, 00086 00087 #ifdef _GLIBCXX_HAVE_ENOLINK 00088 no_link = ENOLINK, 00089 #endif 00090 00091 no_lock_available = ENOLCK, 00092 00093 #ifdef _GLIBCXX_HAVE_ENODATA 00094 no_message_available = ENODATA, 00095 #endif 00096 00097 no_message = ENOMSG, 00098 no_protocol_option = ENOPROTOOPT, 00099 no_space_on_device = ENOSPC, 00100 00101 #ifdef _GLIBCXX_HAVE_ENOSR 00102 no_stream_resources = ENOSR, 00103 #endif 00104 00105 no_such_device_or_address = ENXIO, 00106 no_such_device = ENODEV, 00107 no_such_file_or_directory = ENOENT, 00108 no_such_process = ESRCH, 00109 not_a_directory = ENOTDIR, 00110 not_a_socket = ENOTSOCK, 00111 00112 #ifdef _GLIBCXX_HAVE_ENOSTR 00113 not_a_stream = ENOSTR, 00114 #endif 00115 00116 not_connected = ENOTCONN, 00117 not_enough_memory = ENOMEM, 00118 00119 #ifdef _GLIBCXX_HAVE_ENOTSUP 00120 not_supported = ENOTSUP, 00121 #endif 00122 00123 #ifdef _GLIBCXX_HAVE_ECANCELED 00124 operation_canceled = ECANCELED, 00125 #endif 00126 00127 operation_in_progress = EINPROGRESS, 00128 operation_not_permitted = EPERM, 00129 operation_not_supported = EOPNOTSUPP, 00130 operation_would_block = EWOULDBLOCK, 00131 00132 #ifdef _GLIBCXX_HAVE_EOWNERDEAD 00133 owner_dead = EOWNERDEAD, 00134 #endif 00135 00136 permission_denied = EACCES, 00137 00138 #ifdef _GLIBCXX_HAVE_EPROTO 00139 protocol_error = EPROTO, 00140 #endif 00141 00142 protocol_not_supported = EPROTONOSUPPORT, 00143 read_only_file_system = EROFS, 00144 resource_deadlock_would_occur = EDEADLK, 00145 resource_unavailable_try_again = EAGAIN, 00146 result_out_of_range = ERANGE, 00147 00148 #ifdef _GLIBCXX_HAVE_ENOTRECOVERABLE 00149 state_not_recoverable = ENOTRECOVERABLE, 00150 #endif 00151 00152 #ifdef _GLIBCXX_HAVE_ETIME 00153 stream_timeout = ETIME, 00154 #endif 00155 00156 #ifdef _GLIBCXX_HAVE_ETXTBSY 00157 text_file_busy = ETXTBSY, 00158 #endif 00159 00160 timed_out = ETIMEDOUT, 00161 too_many_files_open_in_system = ENFILE, 00162 too_many_files_open = EMFILE, 00163 too_many_links = EMLINK, 00164 too_many_symbolic_link_levels = ELOOP, 00165 00166 #ifdef _GLIBCXX_HAVE_EOVERFLOW 00167 value_too_large = EOVERFLOW, 00168 #endif 00169 00170 wrong_protocol_type = EPROTOTYPE 00171 }; 00172 00173 _GLIBCXX_END_NAMESPACE 00174 00175 #endif