source: Daodan/MSYS2/mingw32/include/c++/11.2.0/i686-w64-mingw32/bits/error_constants.h@ 1186

Last change on this file since 1186 was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 5.0 KB
Line 
1// Specific definitions for mingw32 platform -*- C++ -*-
2
3// Copyright (C) 2007-2021 Free Software Foundation, Inc.
4//
5// This file is part of the GNU ISO C++ Library. This library is free
6// software; you can redistribute it and/or modify it under the
7// terms of the GNU General Public License as published by the
8// Free Software Foundation; either version 3, or (at your option)
9// any later version.
10
11// This library is distributed in the hope that it will be useful,
12// but WITHOUT ANY WARRANTY; without even the implied warranty of
13// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14// GNU General Public License for more details.
15
16// Under Section 7 of GPL version 3, you are granted additional
17// permissions described in the GCC Runtime Library Exception, version
18// 3.1, as published by the Free Software Foundation.
19
20// You should have received a copy of the GNU General Public License and
21// a copy of the GCC Runtime Library Exception along with this program;
22// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
23// <http://www.gnu.org/licenses/>.
24
25/** @file bits/error_constants.h
26 * This is an internal header file, included by other library headers.
27 * Do not attempt to use it directly. @headername{system_error}
28 */
29
30#ifndef _GLIBCXX_ERROR_CONSTANTS
31# define _GLIBCXX_ERROR_CONSTANTS
32
33#include <bits/c++config.h>
34#include <cerrno>
35
36namespace std _GLIBCXX_VISIBILITY(default)
37{
38_GLIBCXX_BEGIN_NAMESPACE_VERSION
39
40// Most of the commented-out error codes are socket-related and could be
41// replaced by Winsock WSA-prefixed equivalents.
42 enum class errc
43 {
44 address_family_not_supported = EAFNOSUPPORT,
45 address_in_use = EADDRINUSE,
46 address_not_available = EADDRNOTAVAIL,
47 already_connected = EISCONN,
48 argument_list_too_long = E2BIG,
49 argument_out_of_domain = EDOM,
50 bad_address = EFAULT,
51 bad_file_descriptor = EBADF,
52#ifdef EBADMSG
53 bad_message = EBADMSG,
54#endif
55 broken_pipe = EPIPE,
56 connection_aborted = ECONNABORTED,
57 connection_already_in_progress = EALREADY,
58 connection_refused = ECONNREFUSED,
59 connection_reset = ECONNRESET,
60 cross_device_link = EXDEV,
61 destination_address_required = EDESTADDRREQ,
62 device_or_resource_busy = EBUSY,
63 directory_not_empty = ENOTEMPTY,
64 executable_format_error = ENOEXEC,
65 file_exists = EEXIST,
66 file_too_large = EFBIG,
67 filename_too_long = ENAMETOOLONG,
68 function_not_supported = ENOSYS,
69 host_unreachable = EHOSTUNREACH,
70#ifdef EIDRM
71 identifier_removed = EIDRM,
72#endif
73 illegal_byte_sequence = EILSEQ,
74 inappropriate_io_control_operation = ENOTTY,
75 interrupted = EINTR,
76 invalid_argument = EINVAL,
77 invalid_seek = ESPIPE,
78 io_error = EIO,
79 is_a_directory = EISDIR,
80 message_size = EMSGSIZE,
81 network_down = ENETDOWN,
82 network_reset = ENETRESET,
83 network_unreachable = ENETUNREACH,
84 no_buffer_space = ENOBUFS,
85#ifdef ECHILD
86 no_child_process = ECHILD,
87#endif
88#ifdef ENOLINK
89 no_link = ENOLINK,
90#endif
91 no_lock_available = ENOLCK,
92#ifdef ENODATA
93 no_message_available = ENODATA,
94#endif
95#ifdef ENOMSG
96 no_message = ENOMSG,
97#endif
98 no_protocol_option = ENOPROTOOPT,
99#ifdef ENOSPC
100 no_space_on_device = ENOSPC,
101#endif
102#ifdef ENOSR
103 no_stream_resources = ENOSR,
104#endif
105 no_such_device_or_address = ENXIO,
106 no_such_device = ENODEV,
107 no_such_file_or_directory = ENOENT,
108 no_such_process = ESRCH,
109 not_a_directory = ENOTDIR,
110 not_a_socket = ENOTSOCK,
111#ifdef ENOSTR
112 not_a_stream = ENOSTR,
113#endif
114 not_connected = ENOTCONN,
115 not_enough_memory = ENOMEM,
116#ifdef ENOTSUP
117 not_supported = ENOTSUP,
118#endif
119 operation_canceled = ECANCELED,
120 operation_in_progress = EINPROGRESS,
121#ifdef EPERM
122 operation_not_permitted = EPERM,
123#endif
124 operation_not_supported = EOPNOTSUPP,
125#ifdef EWOULDBLOCK
126 operation_would_block = EWOULDBLOCK,
127#endif
128#ifdef EOWNERDEAD
129 owner_dead = EOWNERDEAD,
130#endif
131 permission_denied = EACCES,
132 protocol_error = EPROTO,
133 protocol_not_supported = EPROTONOSUPPORT,
134 read_only_file_system = EROFS,
135 resource_deadlock_would_occur = EDEADLK,
136 resource_unavailable_try_again = EAGAIN,
137 result_out_of_range = ERANGE,
138#ifdef ENOTRECOVERABLE
139 state_not_recoverable = ENOTRECOVERABLE,
140#endif
141#ifdef ETIME
142 stream_timeout = ETIME,
143#endif
144#ifdef ETXTBSY
145 text_file_busy = ETXTBSY,
146#endif
147#ifdef ETIMEDOUT
148 timed_out = ETIMEDOUT,
149#endif
150 too_many_files_open_in_system = ENFILE,
151 too_many_files_open = EMFILE,
152 too_many_links = EMLINK,
153 too_many_symbolic_link_levels = ELOOP,
154#ifdef EOVERFLOW
155 value_too_large = EOVERFLOW,
156#endif
157 wrong_protocol_type = EPROTOTYPE
158 };
159
160_GLIBCXX_END_NAMESPACE_VERSION
161} // namespace
162
163#endif
Note: See TracBrowser for help on using the repository browser.