opencv/3rdparty/openexr/Iex/IexThrowErrnoExc.cpp

860 lines
17 KiB
C++
Raw Normal View History

2012-08-25 04:31:49 +08:00
///////////////////////////////////////////////////////////////////////////
//
// Copyright (c) 2002, Industrial Light & Magic, a division of Lucas
// Digital Ltd. LLC
2012-10-17 07:18:30 +08:00
//
2012-08-25 04:31:49 +08:00
// All rights reserved.
2012-10-17 07:18:30 +08:00
//
2012-08-25 04:31:49 +08:00
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
// * Neither the name of Industrial Light & Magic nor the names of
// its contributors may be used to endorse or promote products derived
2012-10-17 07:18:30 +08:00
// from this software without specific prior written permission.
//
2012-08-25 04:31:49 +08:00
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
///////////////////////////////////////////////////////////////////////////
//----------------------------------------------------------------
//
// Exceptions that correspond to "errno" error codes,
// and a function to make throwing those exceptions easy.
//
//----------------------------------------------------------------
#include "IexThrowErrnoExc.h"
#include "IexErrnoExc.h"
#include <string.h>
#include <errno.h>
namespace Iex {
void throwErrnoExc (const std::string &text, int errnum)
{
const char *entext = strerror (errnum);
std::string tmp (text);
std::string::size_type pos;
while (std::string::npos != (pos = tmp.find ("%T")))
2012-10-17 07:18:30 +08:00
tmp.replace (pos, 2, entext, strlen (entext));
2012-08-25 04:31:49 +08:00
switch (errnum)
{
#if defined (EPERM)
2012-10-17 07:18:30 +08:00
case EPERM:
throw EpermExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOENT)
2012-10-17 07:18:30 +08:00
case ENOENT:
throw EnoentExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ESRCH)
2012-10-17 07:18:30 +08:00
case ESRCH:
throw EsrchExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EINTR)
2012-10-17 07:18:30 +08:00
case EINTR:
throw EintrExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EIO)
2012-10-17 07:18:30 +08:00
case EIO:
throw EioExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENXIO)
2012-10-17 07:18:30 +08:00
case ENXIO:
throw EnxioExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (E2BIG)
2012-10-17 07:18:30 +08:00
case E2BIG:
throw E2bigExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOEXEC)
2012-10-17 07:18:30 +08:00
case ENOEXEC:
throw EnoexecExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EBADF)
2012-10-17 07:18:30 +08:00
case EBADF:
throw EbadfExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ECHILD)
2012-10-17 07:18:30 +08:00
case ECHILD:
throw EchildExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EAGAIN)
2012-10-17 07:18:30 +08:00
case EAGAIN:
throw EagainExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOMEM)
2012-10-17 07:18:30 +08:00
case ENOMEM:
throw EnomemExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EACCES)
2012-10-17 07:18:30 +08:00
case EACCES:
throw EaccesExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EFAULT)
2012-10-17 07:18:30 +08:00
case EFAULT:
throw EfaultExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOTBLK)
2012-10-17 07:18:30 +08:00
case ENOTBLK:
throw EnotblkExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EBUSY)
2012-10-17 07:18:30 +08:00
case EBUSY:
throw EbusyExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EEXIST)
2012-10-17 07:18:30 +08:00
case EEXIST:
throw EexistExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EXDEV)
2012-10-17 07:18:30 +08:00
case EXDEV:
throw ExdevExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENODEV)
2012-10-17 07:18:30 +08:00
case ENODEV:
throw EnodevExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOTDIR)
2012-10-17 07:18:30 +08:00
case ENOTDIR:
throw EnotdirExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EISDIR)
2012-10-17 07:18:30 +08:00
case EISDIR:
throw EisdirExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EINVAL)
2012-10-17 07:18:30 +08:00
case EINVAL:
throw EinvalExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENFILE)
2012-10-17 07:18:30 +08:00
case ENFILE:
throw EnfileExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EMFILE)
2012-10-17 07:18:30 +08:00
case EMFILE:
throw EmfileExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOTTY)
2012-10-17 07:18:30 +08:00
case ENOTTY:
throw EnottyExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ETXTBSY)
2012-10-17 07:18:30 +08:00
case ETXTBSY:
throw EtxtbsyExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EFBIG)
2012-10-17 07:18:30 +08:00
case EFBIG:
throw EfbigExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOSPC)
2012-10-17 07:18:30 +08:00
case ENOSPC:
throw EnospcExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ESPIPE)
2012-10-17 07:18:30 +08:00
case ESPIPE:
throw EspipeExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EROFS)
2012-10-17 07:18:30 +08:00
case EROFS:
throw ErofsExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EMLINK)
2012-10-17 07:18:30 +08:00
case EMLINK:
throw EmlinkExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EPIPE)
2012-10-17 07:18:30 +08:00
case EPIPE:
throw EpipeExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EDOM)
2012-10-17 07:18:30 +08:00
case EDOM:
throw EdomExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ERANGE)
2012-10-17 07:18:30 +08:00
case ERANGE:
throw ErangeExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOMSG)
2012-10-17 07:18:30 +08:00
case ENOMSG:
throw EnomsgExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EIDRM)
2012-10-17 07:18:30 +08:00
case EIDRM:
throw EidrmExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ECHRNG)
2012-10-17 07:18:30 +08:00
case ECHRNG:
throw EchrngExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EL2NSYNC)
2012-10-17 07:18:30 +08:00
case EL2NSYNC:
throw El2nsyncExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EL3HLT)
2012-10-17 07:18:30 +08:00
case EL3HLT:
throw El3hltExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EL3RST)
2012-10-17 07:18:30 +08:00
case EL3RST:
throw El3rstExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ELNRNG)
2012-10-17 07:18:30 +08:00
case ELNRNG:
throw ElnrngExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EUNATCH)
2012-10-17 07:18:30 +08:00
case EUNATCH:
throw EunatchExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOSCI)
2012-10-17 07:18:30 +08:00
case ENOCSI:
throw EnocsiExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EL2HLT)
2012-10-17 07:18:30 +08:00
case EL2HLT:
throw El2hltExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EDEADLK)
2012-10-17 07:18:30 +08:00
case EDEADLK:
throw EdeadlkExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOLCK)
2012-10-17 07:18:30 +08:00
case ENOLCK:
throw EnolckExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EBADE)
2012-10-17 07:18:30 +08:00
case EBADE:
throw EbadeExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EBADR)
2012-10-17 07:18:30 +08:00
case EBADR:
throw EbadrExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EXFULL)
2012-10-17 07:18:30 +08:00
case EXFULL:
throw ExfullExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOANO)
2012-10-17 07:18:30 +08:00
case ENOANO:
throw EnoanoExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EBADRQC)
2012-10-17 07:18:30 +08:00
case EBADRQC:
throw EbadrqcExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EBADSLT)
2012-10-17 07:18:30 +08:00
case EBADSLT:
throw EbadsltExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EDEADLOCK) && defined (EDEADLK)
2012-10-17 07:18:30 +08:00
#if EDEADLOCK != EDEADLK
case EDEADLOCK:
throw EdeadlockExc (tmp);
#endif
2012-08-25 04:31:49 +08:00
#elif defined (EDEADLOCK)
2012-10-17 07:18:30 +08:00
case EDEADLOCK:
throw EdeadlockExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EBFONT)
2012-10-17 07:18:30 +08:00
case EBFONT:
throw EbfontExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOSTR)
2012-10-17 07:18:30 +08:00
case ENOSTR:
throw EnostrExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENODATA)
2012-10-17 07:18:30 +08:00
case ENODATA:
throw EnodataExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ETIME)
2012-10-17 07:18:30 +08:00
case ETIME:
throw EtimeExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOSR)
2012-10-17 07:18:30 +08:00
case ENOSR:
throw EnosrExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENONET)
2012-10-17 07:18:30 +08:00
case ENONET:
throw EnonetExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOPKG)
2012-10-17 07:18:30 +08:00
case ENOPKG:
throw EnopkgExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EREMOTE)
2012-10-17 07:18:30 +08:00
case EREMOTE:
throw EremoteExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOLINK)
2012-10-17 07:18:30 +08:00
case ENOLINK:
throw EnolinkExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EADV)
2012-10-17 07:18:30 +08:00
case EADV:
throw EadvExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ESRMNT)
2012-10-17 07:18:30 +08:00
case ESRMNT:
throw EsrmntExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ECOMM)
2012-10-17 07:18:30 +08:00
case ECOMM:
throw EcommExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EPROTO)
2012-10-17 07:18:30 +08:00
case EPROTO:
throw EprotoExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EMULTIHOP)
2012-10-17 07:18:30 +08:00
case EMULTIHOP:
throw EmultihopExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EBADMSG)
2012-10-17 07:18:30 +08:00
case EBADMSG:
throw EbadmsgExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENAMETOOLONG)
2012-10-17 07:18:30 +08:00
case ENAMETOOLONG:
throw EnametoolongExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EOVERFLOW)
2012-10-17 07:18:30 +08:00
case EOVERFLOW:
throw EoverflowExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOTUNIQ)
2012-10-17 07:18:30 +08:00
case ENOTUNIQ:
throw EnotuniqExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EBADFD)
2012-10-17 07:18:30 +08:00
case EBADFD:
throw EbadfdExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EREMCHG)
2012-10-17 07:18:30 +08:00
case EREMCHG:
throw EremchgExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ELIBACC)
2012-10-17 07:18:30 +08:00
case ELIBACC:
throw ElibaccExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ELIBBAD)
2012-10-17 07:18:30 +08:00
case ELIBBAD:
throw ElibbadExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ELIBSCN)
2012-10-17 07:18:30 +08:00
case ELIBSCN:
throw ElibscnExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ELIBMAX)
2012-10-17 07:18:30 +08:00
case ELIBMAX:
throw ElibmaxExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ELIBEXEC)
2012-10-17 07:18:30 +08:00
case ELIBEXEC:
throw ElibexecExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EILSEQ)
2012-10-17 07:18:30 +08:00
case EILSEQ:
throw EilseqExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOSYS)
2012-10-17 07:18:30 +08:00
case ENOSYS:
throw EnosysExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ELOOP)
2012-10-17 07:18:30 +08:00
case ELOOP:
throw EloopExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ERESTART)
2012-10-17 07:18:30 +08:00
case ERESTART:
throw ErestartExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ESTRPIPE)
2012-10-17 07:18:30 +08:00
case ESTRPIPE:
throw EstrpipeExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOTEMPTY)
2012-10-17 07:18:30 +08:00
case ENOTEMPTY:
throw EnotemptyExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EUSERS)
2012-10-17 07:18:30 +08:00
case EUSERS:
throw EusersExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOTSOCK)
2012-10-17 07:18:30 +08:00
case ENOTSOCK:
throw EnotsockExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EDESTADDRREQ)
2012-10-17 07:18:30 +08:00
case EDESTADDRREQ:
throw EdestaddrreqExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EMSGSIZE)
2012-10-17 07:18:30 +08:00
case EMSGSIZE:
throw EmsgsizeExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EPROTOTYPE)
2012-10-17 07:18:30 +08:00
case EPROTOTYPE:
throw EprototypeExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOPROTOOPT)
2012-10-17 07:18:30 +08:00
case ENOPROTOOPT:
throw EnoprotooptExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EPROTONOSUPPORT)
2012-10-17 07:18:30 +08:00
case EPROTONOSUPPORT:
throw EprotonosupportExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ESOCKTNOSUPPORT)
2012-10-17 07:18:30 +08:00
case ESOCKTNOSUPPORT:
throw EsocktnosupportExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EOPNOTSUPP)
2012-10-17 07:18:30 +08:00
case EOPNOTSUPP:
throw EopnotsuppExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EPFNOSUPPORT)
2012-10-17 07:18:30 +08:00
case EPFNOSUPPORT:
throw EpfnosupportExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EAFNOSUPPORT)
2012-10-17 07:18:30 +08:00
case EAFNOSUPPORT:
throw EafnosupportExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EADDRINUSE)
2012-10-17 07:18:30 +08:00
case EADDRINUSE:
throw EaddrinuseExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EADDRNOTAVAIL)
2012-10-17 07:18:30 +08:00
case EADDRNOTAVAIL:
throw EaddrnotavailExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENETDOWN)
2012-10-17 07:18:30 +08:00
case ENETDOWN:
throw EnetdownExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENETUNREACH)
2012-10-17 07:18:30 +08:00
case ENETUNREACH:
throw EnetunreachExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENETRESET)
2012-10-17 07:18:30 +08:00
case ENETRESET:
throw EnetresetExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ECONNABORTED)
2012-10-17 07:18:30 +08:00
case ECONNABORTED:
throw EconnabortedExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ECONNRESET)
2012-10-17 07:18:30 +08:00
case ECONNRESET:
throw EconnresetExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOBUFS)
2012-10-17 07:18:30 +08:00
case ENOBUFS:
throw EnobufsExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EISCONN)
2012-10-17 07:18:30 +08:00
case EISCONN:
throw EisconnExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOTCONN)
2012-10-17 07:18:30 +08:00
case ENOTCONN:
throw EnotconnExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ESHUTDOWN)
2012-10-17 07:18:30 +08:00
case ESHUTDOWN:
throw EshutdownExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ETOOMANYREFS)
2012-10-17 07:18:30 +08:00
case ETOOMANYREFS:
throw EtoomanyrefsExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ETIMEDOUT)
2012-10-17 07:18:30 +08:00
case ETIMEDOUT:
throw EtimedoutExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ECONNREFUSED)
2012-10-17 07:18:30 +08:00
case ECONNREFUSED:
throw EconnrefusedExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EHOSTDOWN)
2012-10-17 07:18:30 +08:00
case EHOSTDOWN:
throw EhostdownExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EHOSTUNREACH)
2012-10-17 07:18:30 +08:00
case EHOSTUNREACH:
throw EhostunreachExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EALREADY)
2012-10-17 07:18:30 +08:00
case EALREADY:
throw EalreadyExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EINPROGRESS)
2012-10-17 07:18:30 +08:00
case EINPROGRESS:
throw EinprogressExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ESTALE)
2012-10-17 07:18:30 +08:00
case ESTALE:
throw EstaleExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EIORESID)
2012-10-17 07:18:30 +08:00
case EIORESID:
throw EioresidExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EUCLEAN)
2012-10-17 07:18:30 +08:00
case EUCLEAN:
throw EucleanExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOTNAM)
2012-10-17 07:18:30 +08:00
case ENOTNAM:
throw EnotnamExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENAVAIL)
2012-10-17 07:18:30 +08:00
case ENAVAIL:
throw EnavailExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EISNAM)
2012-10-17 07:18:30 +08:00
case EISNAM:
throw EisnamExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EREMOTEIO)
2012-10-17 07:18:30 +08:00
case EREMOTEIO:
throw EremoteioExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EINIT)
2012-10-17 07:18:30 +08:00
case EINIT:
throw EinitExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EREMDEV)
2012-10-17 07:18:30 +08:00
case EREMDEV:
throw EremdevExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ECANCELED)
2012-10-17 07:18:30 +08:00
case ECANCELED:
throw EcanceledExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOLIMFILE)
2012-10-17 07:18:30 +08:00
case ENOLIMFILE:
throw EnolimfileExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EPROCLIM)
2012-10-17 07:18:30 +08:00
case EPROCLIM:
throw EproclimExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EDISJOINT)
2012-10-17 07:18:30 +08:00
case EDISJOINT:
throw EdisjointExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOLOGIN)
2012-10-17 07:18:30 +08:00
case ENOLOGIN:
throw EnologinExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ELOGINLIM)
2012-10-17 07:18:30 +08:00
case ELOGINLIM:
throw EloginlimExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EGROUPLOOP)
2012-10-17 07:18:30 +08:00
case EGROUPLOOP:
throw EgrouploopExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOATTACH)
2012-10-17 07:18:30 +08:00
case ENOATTACH:
throw EnoattachExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOTSUP) && defined (EOPNOTSUPP)
2012-10-17 07:18:30 +08:00
#if ENOTSUP != EOPNOTSUPP
case ENOTSUP:
throw EnotsupExc (tmp);
#endif
2012-08-25 04:31:49 +08:00
#elif defined (ENOTSUP)
2012-10-17 07:18:30 +08:00
case ENOTSUP:
throw EnotsupExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOATTR)
2012-10-17 07:18:30 +08:00
case ENOATTR:
throw EnoattrExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EDIRCORRUPTED)
2012-10-17 07:18:30 +08:00
case EDIRCORRUPTED:
throw EdircorruptedExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EDQUOT)
2012-10-17 07:18:30 +08:00
case EDQUOT:
throw EdquotExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENFSREMOTE)
2012-10-17 07:18:30 +08:00
case ENFSREMOTE:
throw EnfsremoteExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ECONTROLLER)
2012-10-17 07:18:30 +08:00
case ECONTROLLER:
throw EcontrollerExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOTCONTROLLER)
2012-10-17 07:18:30 +08:00
case ENOTCONTROLLER:
throw EnotcontrollerExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EENQUEUED)
2012-10-17 07:18:30 +08:00
case EENQUEUED:
throw EenqueuedExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOTENQUEUED)
2012-10-17 07:18:30 +08:00
case ENOTENQUEUED:
throw EnotenqueuedExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EJOINED)
2012-10-17 07:18:30 +08:00
case EJOINED:
throw EjoinedExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOTJOINED)
2012-10-17 07:18:30 +08:00
case ENOTJOINED:
throw EnotjoinedExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOPROC)
2012-10-17 07:18:30 +08:00
case ENOPROC:
throw EnoprocExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EMUSTRUN)
2012-10-17 07:18:30 +08:00
case EMUSTRUN:
throw EmustrunExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOTSTOPPED)
2012-10-17 07:18:30 +08:00
case ENOTSTOPPED:
throw EnotstoppedExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ECLOCKCPU)
2012-10-17 07:18:30 +08:00
case ECLOCKCPU:
throw EclockcpuExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EINVALSTATE)
2012-10-17 07:18:30 +08:00
case EINVALSTATE:
throw EinvalstateExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOEXIST)
2012-10-17 07:18:30 +08:00
case ENOEXIST:
throw EnoexistExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EENDOFMINOR)
2012-10-17 07:18:30 +08:00
case EENDOFMINOR:
throw EendofminorExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EBUFSIZE)
2012-10-17 07:18:30 +08:00
case EBUFSIZE:
throw EbufsizeExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EEMPTY)
2012-10-17 07:18:30 +08:00
case EEMPTY:
throw EemptyExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ENOINTRGROUP)
2012-10-17 07:18:30 +08:00
case ENOINTRGROUP:
throw EnointrgroupExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EINVALMODE)
2012-10-17 07:18:30 +08:00
case EINVALMODE:
throw EinvalmodeExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (ECANTEXTENT)
2012-10-17 07:18:30 +08:00
case ECANTEXTENT:
throw EcantextentExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EINVALTIME)
2012-10-17 07:18:30 +08:00
case EINVALTIME:
throw EinvaltimeExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
#if defined (EDESTROYED)
2012-10-17 07:18:30 +08:00
case EDESTROYED:
throw EdestroyedExc (tmp);
2012-08-25 04:31:49 +08:00
#endif
}
throw ErrnoExc (tmp);
}
void throwErrnoExc (const std::string &text)
{
throwErrnoExc (text, errno);
}
} // namespace Iex