/home/ntakagi/work/STLport-5.1.5/stlport/errno.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 1999
00003  * Boris Fomitchev
00004  *
00005  * This material is provided "as is", with absolutely no warranty expressed
00006  * or implied. Any use is at your own risk.
00007  *
00008  * Permission to use or copy this software for any purpose is hereby granted
00009  * without fee, provided the above notices are retained on all copies.
00010  * Permission to modify the code and to distribute modified code is granted,
00011  * provided the above notices are retained, and a notice that the code was
00012  * modified is included with the above copyright notice.
00013  *
00014  */
00015 
00016 #if !defined (_STLP_OUTERMOST_HEADER_ID)
00017 #  define _STLP_OUTERMOST_HEADER_ID 0x205
00018 #  include <stl/_prolog.h>
00019 #elif (_STLP_OUTERMOST_HEADER_ID == 0x205) && !defined (_STLP_DONT_POP_HEADER_ID)
00020 #  define _STLP_DONT_POP_HEADER_ID
00021 #endif
00022 
00023 #ifdef _STLP_WCE
00024 // only show message when directly including this file in a non-library build
00025 #  if !defined(__BUILDING_STLPORT) && (_STLP_OUTERMOST_HEADER_ID == 0x205)
00026 #    pragma message("eMbedded Visual C++ 3 and .NET don't have a errno.h header; STLport won't include native errno.h here")
00027 #  endif
00028 #else
00029 #  ifndef errno
00030 /* We define the following macro first to guaranty the header reentrancy: */
00031 #    define _STLP_NATIVE_ERRNO_H_INCLUDED
00032 #    include _STLP_NATIVE_C_HEADER(errno.h)
00033 #  endif /* errno */
00034 
00035 #  if !defined (_STLP_NATIVE_ERRNO_H_INCLUDED)
00036 /* If errno has been defined before inclusion of native errno.h including it from STLport errno.h
00037  * becomes impossible because if:
00038  * #define errno foo
00039  * then
00040  * #include _STLP_NATIVE_C_HEADER(errno.h)
00041  * becomes:
00042  * #include _STLP_NATIVE_C_HEADER(foo.h)
00043  *
00044  * To fix this problem you have to find where this definition comes from and include errno.h before it.
00045  */
00046 #    error errno has been defined before inclusion of errno.h header.
00047 #  endif
00048 
00049 #  ifdef __cplusplus
00050 #    ifndef errno /* errno still not defined */
00051 _STLP_BEGIN_NAMESPACE
00052 #      if !defined (__BORLANDC__)
00053 using ::errno;
00054 #      else
00055 using _STLP_VENDOR_CSTD::errno;
00056 #      endif
00057 _STLP_END_NAMESPACE
00058 #   endif /* errno */
00059 #  endif /* __cplusplus */
00060 
00061 #endif
00062 
00063 #if (_STLP_OUTERMOST_HEADER_ID == 0x205)
00064 #  if ! defined (_STLP_DONT_POP_HEADER_ID)
00065 #    include <stl/_epilog.h>
00066 #    undef  _STLP_OUTERMOST_HEADER_ID
00067 #  endif
00068 #  undef  _STLP_DONT_POP_HEADER_ID
00069 #endif
00070 
00071 /* Local Variables:
00072  * mode:C++
00073  * End:
00074  */



Generated on Mon Mar 10 15:32:17 2008 by  doxygen 1.5.1