/src/openexr/src/lib/Iex/IexThrowErrnoExc.cpp
Line | Count | Source |
1 | | // |
2 | | // SPDX-License-Identifier: BSD-3-Clause |
3 | | // Copyright (c) Contributors to the OpenEXR Project. |
4 | | // |
5 | | |
6 | | //---------------------------------------------------------------- |
7 | | // |
8 | | // Exceptions that correspond to "errno" error codes, |
9 | | // and a function to make throwing those exceptions easy. |
10 | | // |
11 | | //---------------------------------------------------------------- |
12 | | |
13 | | #include "IexThrowErrnoExc.h" |
14 | | #include "IexErrnoExc.h" |
15 | | #include <errno.h> |
16 | | #include <string.h> |
17 | | |
18 | | #ifdef _WIN32 |
19 | | # include <windows.h> |
20 | | #endif |
21 | | |
22 | | #ifdef _MSC_VER |
23 | | # pragma warning(disable : 4996) |
24 | | #endif |
25 | | |
26 | | IEX_INTERNAL_NAMESPACE_SOURCE_ENTER |
27 | | |
28 | | void |
29 | | throwErrnoExc (const std::string& text, int errnum) |
30 | 0 | { |
31 | | #ifdef _WIN32 |
32 | | if (0 != getenv ("IEXDEBUGTHROW")) DebugBreak (); |
33 | | #endif |
34 | |
|
35 | 0 | const char* entext = strerror (errnum); |
36 | 0 | std::string tmp (text); |
37 | 0 | std::string::size_type pos; |
38 | |
|
39 | 0 | while (std::string::npos != (pos = tmp.find ("%T"))) |
40 | 0 | tmp.replace (pos, 2, entext, strlen (entext)); |
41 | |
|
42 | 0 | switch (errnum) |
43 | 0 | { |
44 | 0 | #if defined(EPERM) |
45 | 0 | case EPERM: throw EpermExc (tmp); |
46 | 0 | #endif |
47 | | |
48 | 0 | #if defined(ENOENT) |
49 | 0 | case ENOENT: throw EnoentExc (tmp); |
50 | 0 | #endif |
51 | | |
52 | 0 | #if defined(ESRCH) |
53 | 0 | case ESRCH: throw EsrchExc (tmp); |
54 | 0 | #endif |
55 | | |
56 | 0 | #if defined(EINTR) |
57 | 0 | case EINTR: throw EintrExc (tmp); |
58 | 0 | #endif |
59 | | |
60 | 0 | #if defined(EIO) |
61 | 0 | case EIO: throw EioExc (tmp); |
62 | 0 | #endif |
63 | | |
64 | 0 | #if defined(ENXIO) |
65 | 0 | case ENXIO: throw EnxioExc (tmp); |
66 | 0 | #endif |
67 | | |
68 | 0 | #if defined(E2BIG) |
69 | 0 | case E2BIG: throw E2bigExc (tmp); |
70 | 0 | #endif |
71 | | |
72 | 0 | #if defined(ENOEXEC) |
73 | 0 | case ENOEXEC: throw EnoexecExc (tmp); |
74 | 0 | #endif |
75 | | |
76 | 0 | #if defined(EBADF) |
77 | 0 | case EBADF: throw EbadfExc (tmp); |
78 | 0 | #endif |
79 | | |
80 | 0 | #if defined(ECHILD) |
81 | 0 | case ECHILD: throw EchildExc (tmp); |
82 | 0 | #endif |
83 | | |
84 | 0 | #if defined(EAGAIN) |
85 | 0 | case EAGAIN: throw EagainExc (tmp); |
86 | 0 | #endif |
87 | | |
88 | 0 | #if defined(ENOMEM) |
89 | 0 | case ENOMEM: throw EnomemExc (tmp); |
90 | 0 | #endif |
91 | | |
92 | 0 | #if defined(EACCES) |
93 | 0 | case EACCES: throw EaccesExc (tmp); |
94 | 0 | #endif |
95 | | |
96 | 0 | #if defined(EFAULT) |
97 | 0 | case EFAULT: throw EfaultExc (tmp); |
98 | 0 | #endif |
99 | | |
100 | 0 | #if defined(ENOTBLK) |
101 | 0 | case ENOTBLK: throw EnotblkExc (tmp); |
102 | 0 | #endif |
103 | | |
104 | 0 | #if defined(EBUSY) |
105 | 0 | case EBUSY: throw EbusyExc (tmp); |
106 | 0 | #endif |
107 | | |
108 | 0 | #if defined(EEXIST) |
109 | 0 | case EEXIST: throw EexistExc (tmp); |
110 | 0 | #endif |
111 | | |
112 | 0 | #if defined(EXDEV) |
113 | 0 | case EXDEV: throw ExdevExc (tmp); |
114 | 0 | #endif |
115 | | |
116 | 0 | #if defined(ENODEV) |
117 | 0 | case ENODEV: throw EnodevExc (tmp); |
118 | 0 | #endif |
119 | | |
120 | 0 | #if defined(ENOTDIR) |
121 | 0 | case ENOTDIR: throw EnotdirExc (tmp); |
122 | 0 | #endif |
123 | | |
124 | 0 | #if defined(EISDIR) |
125 | 0 | case EISDIR: throw EisdirExc (tmp); |
126 | 0 | #endif |
127 | | |
128 | 0 | #if defined(EINVAL) |
129 | 0 | case EINVAL: throw EinvalExc (tmp); |
130 | 0 | #endif |
131 | | |
132 | 0 | #if defined(ENFILE) |
133 | 0 | case ENFILE: throw EnfileExc (tmp); |
134 | 0 | #endif |
135 | | |
136 | 0 | #if defined(EMFILE) |
137 | 0 | case EMFILE: throw EmfileExc (tmp); |
138 | 0 | #endif |
139 | | |
140 | 0 | #if defined(ENOTTY) |
141 | 0 | case ENOTTY: throw EnottyExc (tmp); |
142 | 0 | #endif |
143 | | |
144 | 0 | #if defined(ETXTBSY) |
145 | 0 | case ETXTBSY: throw EtxtbsyExc (tmp); |
146 | 0 | #endif |
147 | | |
148 | 0 | #if defined(EFBIG) |
149 | 0 | case EFBIG: throw EfbigExc (tmp); |
150 | 0 | #endif |
151 | | |
152 | 0 | #if defined(ENOSPC) |
153 | 0 | case ENOSPC: throw EnospcExc (tmp); |
154 | 0 | #endif |
155 | | |
156 | 0 | #if defined(ESPIPE) |
157 | 0 | case ESPIPE: throw EspipeExc (tmp); |
158 | 0 | #endif |
159 | | |
160 | 0 | #if defined(EROFS) |
161 | 0 | case EROFS: throw ErofsExc (tmp); |
162 | 0 | #endif |
163 | | |
164 | 0 | #if defined(EMLINK) |
165 | 0 | case EMLINK: throw EmlinkExc (tmp); |
166 | 0 | #endif |
167 | | |
168 | 0 | #if defined(EPIPE) |
169 | 0 | case EPIPE: throw EpipeExc (tmp); |
170 | 0 | #endif |
171 | | |
172 | 0 | #if defined(EDOM) |
173 | 0 | case EDOM: throw EdomExc (tmp); |
174 | 0 | #endif |
175 | | |
176 | 0 | #if defined(ERANGE) |
177 | 0 | case ERANGE: throw ErangeExc (tmp); |
178 | 0 | #endif |
179 | | |
180 | 0 | #if defined(ENOMSG) |
181 | 0 | case ENOMSG: throw EnomsgExc (tmp); |
182 | 0 | #endif |
183 | | |
184 | 0 | #if defined(EIDRM) |
185 | 0 | case EIDRM: throw EidrmExc (tmp); |
186 | 0 | #endif |
187 | | |
188 | 0 | #if defined(ECHRNG) |
189 | 0 | case ECHRNG: throw EchrngExc (tmp); |
190 | 0 | #endif |
191 | | |
192 | 0 | #if defined(EL2NSYNC) |
193 | 0 | case EL2NSYNC: throw El2nsyncExc (tmp); |
194 | 0 | #endif |
195 | | |
196 | 0 | #if defined(EL3HLT) |
197 | 0 | case EL3HLT: throw El3hltExc (tmp); |
198 | 0 | #endif |
199 | | |
200 | 0 | #if defined(EL3RST) |
201 | 0 | case EL3RST: throw El3rstExc (tmp); |
202 | 0 | #endif |
203 | | |
204 | 0 | #if defined(ELNRNG) |
205 | 0 | case ELNRNG: throw ElnrngExc (tmp); |
206 | 0 | #endif |
207 | | |
208 | 0 | #if defined(EUNATCH) |
209 | 0 | case EUNATCH: throw EunatchExc (tmp); |
210 | 0 | #endif |
211 | | |
212 | 0 | #if defined(ENOCSI) |
213 | 0 | case ENOCSI: throw EnocsiExc (tmp); |
214 | 0 | #endif |
215 | | |
216 | 0 | #if defined(EL2HLT) |
217 | 0 | case EL2HLT: throw El2hltExc (tmp); |
218 | 0 | #endif |
219 | | |
220 | 0 | #if defined(EDEADLK) |
221 | 0 | case EDEADLK: throw EdeadlkExc (tmp); |
222 | 0 | #endif |
223 | | |
224 | 0 | #if defined(ENOLCK) |
225 | 0 | case ENOLCK: throw EnolckExc (tmp); |
226 | 0 | #endif |
227 | | |
228 | 0 | #if defined(EBADE) |
229 | 0 | case EBADE: throw EbadeExc (tmp); |
230 | 0 | #endif |
231 | | |
232 | 0 | #if defined(EBADR) |
233 | 0 | case EBADR: throw EbadrExc (tmp); |
234 | 0 | #endif |
235 | | |
236 | 0 | #if defined(EXFULL) |
237 | 0 | case EXFULL: throw ExfullExc (tmp); |
238 | 0 | #endif |
239 | | |
240 | 0 | #if defined(ENOANO) |
241 | 0 | case ENOANO: throw EnoanoExc (tmp); |
242 | 0 | #endif |
243 | | |
244 | 0 | #if defined(EBADRQC) |
245 | 0 | case EBADRQC: throw EbadrqcExc (tmp); |
246 | 0 | #endif |
247 | | |
248 | 0 | #if defined(EBADSLT) |
249 | 0 | case EBADSLT: throw EbadsltExc (tmp); |
250 | 0 | #endif |
251 | | |
252 | 0 | #if defined(EDEADLOCK) && defined(EDEADLK) |
253 | | # if EDEADLOCK != EDEADLK |
254 | | case EDEADLOCK: throw EdeadlockExc (tmp); |
255 | | # endif |
256 | | #elif defined(EDEADLOCK) |
257 | | case EDEADLOCK: throw EdeadlockExc (tmp); |
258 | | #endif |
259 | | |
260 | 0 | #if defined(EBFONT) |
261 | 0 | case EBFONT: throw EbfontExc (tmp); |
262 | 0 | #endif |
263 | | |
264 | 0 | #if defined(ENOSTR) |
265 | 0 | case ENOSTR: throw EnostrExc (tmp); |
266 | 0 | #endif |
267 | | |
268 | 0 | #if defined(ENODATA) |
269 | 0 | case ENODATA: throw EnodataExc (tmp); |
270 | 0 | #endif |
271 | | |
272 | 0 | #if defined(ETIME) |
273 | 0 | case ETIME: throw EtimeExc (tmp); |
274 | 0 | #endif |
275 | | |
276 | 0 | #if defined(ENOSR) |
277 | 0 | case ENOSR: throw EnosrExc (tmp); |
278 | 0 | #endif |
279 | | |
280 | 0 | #if defined(ENONET) |
281 | 0 | case ENONET: throw EnonetExc (tmp); |
282 | 0 | #endif |
283 | | |
284 | 0 | #if defined(ENOPKG) |
285 | 0 | case ENOPKG: throw EnopkgExc (tmp); |
286 | 0 | #endif |
287 | | |
288 | 0 | #if defined(EREMOTE) |
289 | 0 | case EREMOTE: throw EremoteExc (tmp); |
290 | 0 | #endif |
291 | | |
292 | 0 | #if defined(ENOLINK) |
293 | 0 | case ENOLINK: throw EnolinkExc (tmp); |
294 | 0 | #endif |
295 | | |
296 | 0 | #if defined(EADV) |
297 | 0 | case EADV: throw EadvExc (tmp); |
298 | 0 | #endif |
299 | | |
300 | 0 | #if defined(ESRMNT) |
301 | 0 | case ESRMNT: throw EsrmntExc (tmp); |
302 | 0 | #endif |
303 | | |
304 | 0 | #if defined(ECOMM) |
305 | 0 | case ECOMM: throw EcommExc (tmp); |
306 | 0 | #endif |
307 | | |
308 | 0 | #if defined(EPROTO) |
309 | 0 | case EPROTO: throw EprotoExc (tmp); |
310 | 0 | #endif |
311 | | |
312 | 0 | #if defined(EMULTIHOP) |
313 | 0 | case EMULTIHOP: throw EmultihopExc (tmp); |
314 | 0 | #endif |
315 | | |
316 | 0 | #if defined(EBADMSG) |
317 | 0 | case EBADMSG: throw EbadmsgExc (tmp); |
318 | 0 | #endif |
319 | | |
320 | 0 | #if defined(ENAMETOOLONG) |
321 | 0 | case ENAMETOOLONG: throw EnametoolongExc (tmp); |
322 | 0 | #endif |
323 | | |
324 | 0 | #if defined(EOVERFLOW) |
325 | 0 | case EOVERFLOW: throw EoverflowExc (tmp); |
326 | 0 | #endif |
327 | | |
328 | 0 | #if defined(ENOTUNIQ) |
329 | 0 | case ENOTUNIQ: throw EnotuniqExc (tmp); |
330 | 0 | #endif |
331 | | |
332 | 0 | #if defined(EBADFD) |
333 | 0 | case EBADFD: throw EbadfdExc (tmp); |
334 | 0 | #endif |
335 | | |
336 | 0 | #if defined(EREMCHG) |
337 | 0 | case EREMCHG: throw EremchgExc (tmp); |
338 | 0 | #endif |
339 | | |
340 | 0 | #if defined(ELIBACC) |
341 | 0 | case ELIBACC: throw ElibaccExc (tmp); |
342 | 0 | #endif |
343 | | |
344 | 0 | #if defined(ELIBBAD) |
345 | 0 | case ELIBBAD: throw ElibbadExc (tmp); |
346 | 0 | #endif |
347 | | |
348 | 0 | #if defined(ELIBSCN) |
349 | 0 | case ELIBSCN: throw ElibscnExc (tmp); |
350 | 0 | #endif |
351 | | |
352 | 0 | #if defined(ELIBMAX) |
353 | 0 | case ELIBMAX: throw ElibmaxExc (tmp); |
354 | 0 | #endif |
355 | | |
356 | 0 | #if defined(ELIBEXEC) |
357 | 0 | case ELIBEXEC: throw ElibexecExc (tmp); |
358 | 0 | #endif |
359 | | |
360 | 0 | #if defined(EILSEQ) |
361 | 0 | case EILSEQ: throw EilseqExc (tmp); |
362 | 0 | #endif |
363 | | |
364 | 0 | #if defined(ENOSYS) |
365 | 0 | case ENOSYS: throw EnosysExc (tmp); |
366 | 0 | #endif |
367 | | |
368 | 0 | #if defined(ELOOP) |
369 | 0 | case ELOOP: throw EloopExc (tmp); |
370 | 0 | #endif |
371 | | |
372 | 0 | #if defined(ERESTART) |
373 | 0 | case ERESTART: throw ErestartExc (tmp); |
374 | 0 | #endif |
375 | | |
376 | 0 | #if defined(ESTRPIPE) |
377 | 0 | case ESTRPIPE: throw EstrpipeExc (tmp); |
378 | 0 | #endif |
379 | | |
380 | 0 | #if defined(ENOTEMPTY) |
381 | 0 | case ENOTEMPTY: throw EnotemptyExc (tmp); |
382 | 0 | #endif |
383 | | |
384 | 0 | #if defined(EUSERS) |
385 | 0 | case EUSERS: throw EusersExc (tmp); |
386 | 0 | #endif |
387 | | |
388 | 0 | #if defined(ENOTSOCK) |
389 | 0 | case ENOTSOCK: throw EnotsockExc (tmp); |
390 | 0 | #endif |
391 | | |
392 | 0 | #if defined(EDESTADDRREQ) |
393 | 0 | case EDESTADDRREQ: throw EdestaddrreqExc (tmp); |
394 | 0 | #endif |
395 | | |
396 | 0 | #if defined(EMSGSIZE) |
397 | 0 | case EMSGSIZE: throw EmsgsizeExc (tmp); |
398 | 0 | #endif |
399 | | |
400 | 0 | #if defined(EPROTOTYPE) |
401 | 0 | case EPROTOTYPE: throw EprototypeExc (tmp); |
402 | 0 | #endif |
403 | | |
404 | 0 | #if defined(ENOPROTOOPT) |
405 | 0 | case ENOPROTOOPT: throw EnoprotooptExc (tmp); |
406 | 0 | #endif |
407 | | |
408 | 0 | #if defined(EPROTONOSUPPORT) |
409 | 0 | case EPROTONOSUPPORT: throw EprotonosupportExc (tmp); |
410 | 0 | #endif |
411 | | |
412 | 0 | #if defined(ESOCKTNOSUPPORT) |
413 | 0 | case ESOCKTNOSUPPORT: throw EsocktnosupportExc (tmp); |
414 | 0 | #endif |
415 | | |
416 | 0 | #if defined(EOPNOTSUPP) |
417 | 0 | case EOPNOTSUPP: throw EopnotsuppExc (tmp); |
418 | 0 | #endif |
419 | | |
420 | 0 | #if defined(EPFNOSUPPORT) |
421 | 0 | case EPFNOSUPPORT: throw EpfnosupportExc (tmp); |
422 | 0 | #endif |
423 | | |
424 | 0 | #if defined(EAFNOSUPPORT) |
425 | 0 | case EAFNOSUPPORT: throw EafnosupportExc (tmp); |
426 | 0 | #endif |
427 | | |
428 | 0 | #if defined(EADDRINUSE) |
429 | 0 | case EADDRINUSE: throw EaddrinuseExc (tmp); |
430 | 0 | #endif |
431 | | |
432 | 0 | #if defined(EADDRNOTAVAIL) |
433 | 0 | case EADDRNOTAVAIL: throw EaddrnotavailExc (tmp); |
434 | 0 | #endif |
435 | | |
436 | 0 | #if defined(ENETDOWN) |
437 | 0 | case ENETDOWN: throw EnetdownExc (tmp); |
438 | 0 | #endif |
439 | | |
440 | 0 | #if defined(ENETUNREACH) |
441 | 0 | case ENETUNREACH: throw EnetunreachExc (tmp); |
442 | 0 | #endif |
443 | | |
444 | 0 | #if defined(ENETRESET) |
445 | 0 | case ENETRESET: throw EnetresetExc (tmp); |
446 | 0 | #endif |
447 | | |
448 | 0 | #if defined(ECONNABORTED) |
449 | 0 | case ECONNABORTED: throw EconnabortedExc (tmp); |
450 | 0 | #endif |
451 | | |
452 | 0 | #if defined(ECONNRESET) |
453 | 0 | case ECONNRESET: throw EconnresetExc (tmp); |
454 | 0 | #endif |
455 | | |
456 | 0 | #if defined(ENOBUFS) |
457 | 0 | case ENOBUFS: throw EnobufsExc (tmp); |
458 | 0 | #endif |
459 | | |
460 | 0 | #if defined(EISCONN) |
461 | 0 | case EISCONN: throw EisconnExc (tmp); |
462 | 0 | #endif |
463 | | |
464 | 0 | #if defined(ENOTCONN) |
465 | 0 | case ENOTCONN: throw EnotconnExc (tmp); |
466 | 0 | #endif |
467 | | |
468 | 0 | #if defined(ESHUTDOWN) |
469 | 0 | case ESHUTDOWN: throw EshutdownExc (tmp); |
470 | 0 | #endif |
471 | | |
472 | 0 | #if defined(ETOOMANYREFS) |
473 | 0 | case ETOOMANYREFS: throw EtoomanyrefsExc (tmp); |
474 | 0 | #endif |
475 | | |
476 | 0 | #if defined(ETIMEDOUT) |
477 | 0 | case ETIMEDOUT: throw EtimedoutExc (tmp); |
478 | 0 | #endif |
479 | | |
480 | 0 | #if defined(ECONNREFUSED) |
481 | 0 | case ECONNREFUSED: throw EconnrefusedExc (tmp); |
482 | 0 | #endif |
483 | | |
484 | 0 | #if defined(EHOSTDOWN) |
485 | 0 | case EHOSTDOWN: throw EhostdownExc (tmp); |
486 | 0 | #endif |
487 | | |
488 | 0 | #if defined(EHOSTUNREACH) |
489 | 0 | case EHOSTUNREACH: throw EhostunreachExc (tmp); |
490 | 0 | #endif |
491 | | |
492 | 0 | #if defined(EALREADY) |
493 | 0 | case EALREADY: throw EalreadyExc (tmp); |
494 | 0 | #endif |
495 | | |
496 | 0 | #if defined(EINPROGRESS) |
497 | 0 | case EINPROGRESS: throw EinprogressExc (tmp); |
498 | 0 | #endif |
499 | | |
500 | 0 | #if defined(ESTALE) |
501 | 0 | case ESTALE: throw EstaleExc (tmp); |
502 | 0 | #endif |
503 | | |
504 | | #if defined(EIORESID) |
505 | | case EIORESID: throw EioresidExc (tmp); |
506 | | #endif |
507 | | |
508 | 0 | #if defined(EUCLEAN) |
509 | 0 | case EUCLEAN: throw EucleanExc (tmp); |
510 | 0 | #endif |
511 | | |
512 | 0 | #if defined(ENOTNAM) |
513 | 0 | case ENOTNAM: throw EnotnamExc (tmp); |
514 | 0 | #endif |
515 | | |
516 | 0 | #if defined(ENAVAIL) |
517 | 0 | case ENAVAIL: throw EnavailExc (tmp); |
518 | 0 | #endif |
519 | | |
520 | 0 | #if defined(EISNAM) |
521 | 0 | case EISNAM: throw EisnamExc (tmp); |
522 | 0 | #endif |
523 | | |
524 | 0 | #if defined(EREMOTEIO) |
525 | 0 | case EREMOTEIO: throw EremoteioExc (tmp); |
526 | 0 | #endif |
527 | | |
528 | | #if defined(EINIT) |
529 | | case EINIT: throw EinitExc (tmp); |
530 | | #endif |
531 | | |
532 | | #if defined(EREMDEV) |
533 | | case EREMDEV: throw EremdevExc (tmp); |
534 | | #endif |
535 | | |
536 | 0 | #if defined(ECANCELED) |
537 | 0 | case ECANCELED: throw EcanceledExc (tmp); |
538 | 0 | #endif |
539 | | |
540 | | #if defined(ENOLIMFILE) |
541 | | case ENOLIMFILE: throw EnolimfileExc (tmp); |
542 | | #endif |
543 | | |
544 | | #if defined(EPROCLIM) |
545 | | case EPROCLIM: throw EproclimExc (tmp); |
546 | | #endif |
547 | | |
548 | | #if defined(EDISJOINT) |
549 | | case EDISJOINT: throw EdisjointExc (tmp); |
550 | | #endif |
551 | | |
552 | | #if defined(ENOLOGIN) |
553 | | case ENOLOGIN: throw EnologinExc (tmp); |
554 | | #endif |
555 | | |
556 | | #if defined(ELOGINLIM) |
557 | | case ELOGINLIM: throw EloginlimExc (tmp); |
558 | | #endif |
559 | | |
560 | | #if defined(EGROUPLOOP) |
561 | | case EGROUPLOOP: throw EgrouploopExc (tmp); |
562 | | #endif |
563 | | |
564 | | #if defined(ENOATTACH) |
565 | | case ENOATTACH: throw EnoattachExc (tmp); |
566 | | #endif |
567 | | |
568 | 0 | #if defined(ENOTSUP) && defined(EOPNOTSUPP) |
569 | | # if ENOTSUP != EOPNOTSUPP |
570 | | case ENOTSUP: throw EnotsupExc (tmp); |
571 | | # endif |
572 | | #elif defined(ENOTSUP) |
573 | | case ENOTSUP: throw EnotsupExc (tmp); |
574 | | #endif |
575 | | |
576 | | #if defined(ENOATTR) |
577 | | case ENOATTR: throw EnoattrExc (tmp); |
578 | | #endif |
579 | | |
580 | | #if defined(EDIRCORRUPTED) |
581 | | case EDIRCORRUPTED: throw EdircorruptedExc (tmp); |
582 | | #endif |
583 | | |
584 | 0 | #if defined(EDQUOT) |
585 | 0 | case EDQUOT: throw EdquotExc (tmp); |
586 | 0 | #endif |
587 | |
|
588 | | #if defined(ENFSREMOTE) |
589 | | case ENFSREMOTE: throw EnfsremoteExc (tmp); |
590 | | #endif |
591 | |
|
592 | | #if defined(ECONTROLLER) |
593 | | case ECONTROLLER: throw EcontrollerExc (tmp); |
594 | | #endif |
595 | |
|
596 | | #if defined(ENOTCONTROLLER) |
597 | | case ENOTCONTROLLER: throw EnotcontrollerExc (tmp); |
598 | | #endif |
599 | |
|
600 | | #if defined(EENQUEUED) |
601 | | case EENQUEUED: throw EenqueuedExc (tmp); |
602 | | #endif |
603 | |
|
604 | | #if defined(ENOTENQUEUED) |
605 | | case ENOTENQUEUED: throw EnotenqueuedExc (tmp); |
606 | | #endif |
607 | |
|
608 | | #if defined(EJOINED) |
609 | | case EJOINED: throw EjoinedExc (tmp); |
610 | | #endif |
611 | |
|
612 | | #if defined(ENOTJOINED) |
613 | | case ENOTJOINED: throw EnotjoinedExc (tmp); |
614 | | #endif |
615 | |
|
616 | | #if defined(ENOPROC) |
617 | | case ENOPROC: throw EnoprocExc (tmp); |
618 | | #endif |
619 | |
|
620 | | #if defined(EMUSTRUN) |
621 | | case EMUSTRUN: throw EmustrunExc (tmp); |
622 | | #endif |
623 | |
|
624 | | #if defined(ENOTSTOPPED) |
625 | | case ENOTSTOPPED: throw EnotstoppedExc (tmp); |
626 | | #endif |
627 | |
|
628 | | #if defined(ECLOCKCPU) |
629 | | case ECLOCKCPU: throw EclockcpuExc (tmp); |
630 | | #endif |
631 | |
|
632 | | #if defined(EINVALSTATE) |
633 | | case EINVALSTATE: throw EinvalstateExc (tmp); |
634 | | #endif |
635 | |
|
636 | | #if defined(ENOEXIST) |
637 | | case ENOEXIST: throw EnoexistExc (tmp); |
638 | | #endif |
639 | |
|
640 | | #if defined(EENDOFMINOR) |
641 | | case EENDOFMINOR: throw EendofminorExc (tmp); |
642 | | #endif |
643 | |
|
644 | | #if defined(EBUFSIZE) |
645 | | case EBUFSIZE: throw EbufsizeExc (tmp); |
646 | | #endif |
647 | |
|
648 | | #if defined(EEMPTY) |
649 | | case EEMPTY: throw EemptyExc (tmp); |
650 | | #endif |
651 | |
|
652 | | #if defined(ENOINTRGROUP) |
653 | | case ENOINTRGROUP: throw EnointrgroupExc (tmp); |
654 | | #endif |
655 | |
|
656 | | #if defined(EINVALMODE) |
657 | | case EINVALMODE: throw EinvalmodeExc (tmp); |
658 | | #endif |
659 | |
|
660 | | #if defined(ECANTEXTENT) |
661 | | case ECANTEXTENT: throw EcantextentExc (tmp); |
662 | | #endif |
663 | |
|
664 | | #if defined(EINVALTIME) |
665 | | case EINVALTIME: throw EinvaltimeExc (tmp); |
666 | | #endif |
667 | |
|
668 | | #if defined(EDESTROYED) |
669 | | case EDESTROYED: throw EdestroyedExc (tmp); |
670 | | #endif |
671 | 0 | } |
672 | | |
673 | 0 | throw ErrnoExc (tmp); |
674 | 0 | } |
675 | | |
676 | | void |
677 | | throwErrnoExc (const std::string& text) |
678 | 0 | { |
679 | 0 | throwErrnoExc (text, errno); |
680 | 0 | } |
681 | | |
682 | | void |
683 | | throwErrnoExc () |
684 | 0 | { |
685 | 0 | std::string txt = "%T."; |
686 | 0 | throwErrnoExc (txt); |
687 | 0 | } |
688 | | |
689 | | IEX_INTERNAL_NAMESPACE_SOURCE_EXIT |