Project

General

Profile

Statistics
| Revision:

root / lab4 / .minix-src / include / c++ / cerrno @ 13

History | View | Annotate | Download (4.93 KB)

1
// -*- C++ -*-
2
//===-------------------------- cerrno ------------------------------------===//
3
//
4
//                     The LLVM Compiler Infrastructure
5
//
6
// This file is dual licensed under the MIT and the University of Illinois Open
7
// Source Licenses. See LICENSE.TXT for details.
8
//
9
//===----------------------------------------------------------------------===//
10

    
11
#ifndef _LIBCPP_CERRNO
12
#define _LIBCPP_CERRNO
13

    
14
/*
15
    cerrno synopsis
16

    
17
Macros:
18

    
19
    EDOM
20
    EILSEQ  // C99
21
    ERANGE
22
    errno
23

    
24
*/
25

    
26
#include <__config>
27
#include <errno.h>
28

    
29
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
30
#pragma GCC system_header
31
#endif
32

    
33
#if !defined(EOWNERDEAD) || !defined(ENOTRECOVERABLE)
34

    
35
#ifdef ELAST
36

    
37
const int __elast1 = ELAST+1;
38
const int __elast2 = ELAST+2;
39

    
40
#else
41

    
42
const int __elast1 = 104;
43
const int __elast2 = 105;
44

    
45
#endif
46

    
47
#ifdef ENOTRECOVERABLE
48

    
49
#define EOWNERDEAD __elast1
50

    
51
#ifdef ELAST
52
#undef ELAST
53
#define ELAST EOWNERDEAD
54
#endif
55

    
56
#elif defined(EOWNERDEAD)
57

    
58
#define ENOTRECOVERABLE __elast1
59
#ifdef ELAST
60
#undef ELAST
61
#define ELAST ENOTRECOVERABLE
62
#endif
63

    
64
#else  // defined(EOWNERDEAD)
65

    
66
#define EOWNERDEAD __elast1
67
#define ENOTRECOVERABLE __elast2
68
#ifdef ELAST
69
#undef ELAST
70
#define ELAST ENOTRECOVERABLE
71
#endif
72

    
73
#endif  // defined(EOWNERDEAD)
74

    
75
#endif  // !defined(EOWNERDEAD) || !defined(ENOTRECOVERABLE)
76

    
77
//  supply errno values likely to be missing, particularly on Windows
78

    
79
#ifndef EAFNOSUPPORT
80
#define EAFNOSUPPORT 9901
81
#endif
82

    
83
#ifndef EADDRINUSE
84
#define EADDRINUSE 9902
85
#endif
86

    
87
#ifndef EADDRNOTAVAIL
88
#define EADDRNOTAVAIL 9903
89
#endif
90

    
91
#ifndef EISCONN
92
#define EISCONN 9904
93
#endif
94

    
95
#ifndef EBADMSG
96
#define EBADMSG 9905
97
#endif
98

    
99
#ifndef ECONNABORTED
100
#define ECONNABORTED 9906
101
#endif
102

    
103
#ifndef EALREADY
104
#define EALREADY 9907
105
#endif
106

    
107
#ifndef ECONNREFUSED
108
#define ECONNREFUSED 9908
109
#endif
110

    
111
#ifndef ECONNRESET
112
#define ECONNRESET 9909
113
#endif
114

    
115
#ifndef EDESTADDRREQ
116
#define EDESTADDRREQ 9910
117
#endif
118

    
119
#ifndef EHOSTUNREACH
120
#define EHOSTUNREACH 9911
121
#endif
122

    
123
#ifndef EIDRM
124
#define EIDRM 9912
125
#endif
126

    
127
#ifndef EMSGSIZE
128
#define EMSGSIZE 9913
129
#endif
130

    
131
#ifndef ENETDOWN
132
#define ENETDOWN 9914
133
#endif
134

    
135
#ifndef ENETRESET
136
#define ENETRESET 9915
137
#endif
138

    
139
#ifndef ENETUNREACH
140
#define ENETUNREACH 9916
141
#endif
142

    
143
#ifndef ENOBUFS
144
#define ENOBUFS 9917
145
#endif
146

    
147
#ifndef ENOLINK
148
#define ENOLINK 9918
149
#endif
150

    
151
#ifndef ENODATA
152
#define ENODATA 9919
153
#endif
154

    
155
#ifndef ENOMSG
156
#define ENOMSG 9920
157
#endif
158

    
159
#ifndef ENOPROTOOPT
160
#define ENOPROTOOPT 9921
161
#endif
162

    
163
#ifndef ENOSR
164
#define ENOSR 9922
165
#endif
166

    
167
#ifndef ENOTSOCK
168
#define ENOTSOCK 9923
169
#endif
170

    
171
#ifndef ENOSTR
172
#define ENOSTR 9924
173
#endif
174

    
175
#ifndef ENOTCONN
176
#define ENOTCONN 9925
177
#endif
178

    
179
#ifndef ENOTSUP
180
#define ENOTSUP 9926
181
#endif
182

    
183
#ifndef ECANCELED
184
#define ECANCELED 9927
185
#endif
186

    
187
#ifndef EINPROGRESS
188
#define EINPROGRESS 9928
189
#endif
190

    
191
#ifndef EOPNOTSUPP
192
#define EOPNOTSUPP 9929
193
#endif
194

    
195
#ifndef EWOULDBLOCK
196
#define EWOULDBLOCK 9930
197
#endif
198

    
199
#ifndef EOWNERDEAD
200
#define EOWNERDEAD  9931
201
#endif
202

    
203
#ifndef EPROTO
204
#define EPROTO 9932
205
#endif
206

    
207
#ifndef EPROTONOSUPPORT
208
#define EPROTONOSUPPORT 9933
209
#endif
210

    
211
#ifndef ENOTRECOVERABLE
212
#define ENOTRECOVERABLE 9934
213
#endif
214

    
215
#ifndef ETIME
216
#define ETIME 9935
217
#endif
218

    
219
#ifndef ETXTBSY
220
#define ETXTBSY 9936
221
#endif
222

    
223
#ifndef ETIMEDOUT
224
#define ETIMEDOUT 9938
225
#endif
226

    
227
#ifndef ELOOP
228
#define ELOOP 9939
229
#endif
230

    
231
#ifndef EOVERFLOW
232
#define EOVERFLOW 9940
233
#endif
234

    
235
#ifndef EPROTOTYPE
236
#define EPROTOTYPE 9941
237
#endif
238

    
239
#ifndef ENOSYS
240
#define ENOSYS 9942
241
#endif
242

    
243
#ifndef EINVAL
244
#define EINVAL 9943
245
#endif
246

    
247
#ifndef ERANGE
248
#define ERANGE 9944
249
#endif
250

    
251
#ifndef EILSEQ
252
#define EILSEQ 9945
253
#endif
254

    
255
//  Windows Mobile doesn't appear to define these:
256

    
257
#ifndef E2BIG
258
#define E2BIG 9946
259
#endif
260

    
261
#ifndef EDOM
262
#define EDOM 9947
263
#endif
264

    
265
#ifndef EFAULT
266
#define EFAULT 9948
267
#endif
268

    
269
#ifndef EBADF
270
#define EBADF 9949
271
#endif
272

    
273
#ifndef EPIPE
274
#define EPIPE 9950
275
#endif
276

    
277
#ifndef EXDEV
278
#define EXDEV 9951
279
#endif
280

    
281
#ifndef EBUSY
282
#define EBUSY 9952
283
#endif
284

    
285
#ifndef ENOTEMPTY
286
#define ENOTEMPTY 9953
287
#endif
288

    
289
#ifndef ENOEXEC
290
#define ENOEXEC 9954
291
#endif
292

    
293
#ifndef EEXIST
294
#define EEXIST 9955
295
#endif
296

    
297
#ifndef EFBIG
298
#define EFBIG 9956
299
#endif
300

    
301
#ifndef ENAMETOOLONG
302
#define ENAMETOOLONG 9957
303
#endif
304

    
305
#ifndef ENOTTY
306
#define ENOTTY 9958
307
#endif
308

    
309
#ifndef EINTR
310
#define EINTR 9959
311
#endif
312

    
313
#ifndef ESPIPE
314
#define ESPIPE 9960
315
#endif
316

    
317
#ifndef EIO
318
#define EIO 9961
319
#endif
320

    
321
#ifndef EISDIR
322
#define EISDIR 9962
323
#endif
324

    
325
#ifndef ECHILD
326
#define ECHILD 9963
327
#endif
328

    
329
#ifndef ENOLCK
330
#define ENOLCK 9964
331
#endif
332

    
333
#ifndef ENOSPC
334
#define ENOSPC 9965
335
#endif
336

    
337
#ifndef ENXIO
338
#define ENXIO 9966
339
#endif
340

    
341
#ifndef ENODEV
342
#define ENODEV 9967
343
#endif
344

    
345
#ifndef ENOENT
346
#define ENOENT 9968
347
#endif
348

    
349
#ifndef ESRCH
350
#define ESRCH 9969
351
#endif
352

    
353
#ifndef ENOTDIR
354
#define ENOTDIR 9970
355
#endif
356

    
357
#ifndef ENOMEM
358
#define ENOMEM 9971
359
#endif
360

    
361
#ifndef EPERM
362
#define EPERM 9972
363
#endif
364

    
365
#ifndef EACCES
366
#define EACCES 9973
367
#endif
368

    
369
#ifndef EROFS
370
#define EROFS 9974
371
#endif
372

    
373
#ifndef EDEADLK
374
#define EDEADLK 9975
375
#endif
376

    
377
#ifndef EAGAIN
378
#define EAGAIN 9976
379
#endif
380

    
381
#ifndef ENFILE
382
#define ENFILE 9977
383
#endif
384

    
385
#ifndef EMFILE
386
#define EMFILE 9978
387
#endif
388

    
389
#ifndef EMLINK
390
#define EMLINK 9979
391
#endif
392

    
393
#endif  // _LIBCPP_CERRNO