genericopenlibs/cppstdlib/stl/stlport/stdlib.h
changeset 0 e4d67989cc36
equal deleted inserted replaced
-1:000000000000 0:e4d67989cc36
       
     1 /*
       
     2  * Copyright (c) 1999
       
     3  * Boris Fomitchev
       
     4  *
       
     5  * This material is provided "as is", with absolutely no warranty expressed
       
     6  * or implied. Any use is at your own risk.
       
     7  *
       
     8  * Permission to use or copy this software for any purpose is hereby granted
       
     9  * without fee, provided the above notices are retained on all copies.
       
    10  * Permission to modify the code and to distribute modified code is granted,
       
    11  * provided the above notices are retained, and a notice that the code was
       
    12  * modified is included with the above copyright notice.
       
    13  *
       
    14  */
       
    15 
       
    16 /* Workaround for a "misbehaviour" when compiling resource scripts using
       
    17  * eMbedded Visual C++. The standard .rc file includes windows header files,
       
    18  * which in turn include stdlib.h, which results in warnings and errors
       
    19  */
       
    20 #if !defined (RC_INVOKED)
       
    21 
       
    22 #  if !defined (_STLP_OUTERMOST_HEADER_ID)
       
    23 #    define _STLP_OUTERMOST_HEADER_ID 0x265
       
    24 #    include <stl/_prolog.h>
       
    25 #  elif (_STLP_OUTERMOST_HEADER_ID == 0x265) && !defined (_STLP_DONT_POP_HEADER_ID)
       
    26 #    define _STLP_DONT_POP_HEADER_ID
       
    27 #  endif
       
    28 
       
    29 #  if defined (_MSC_VER) || (defined (__GNUC__) && defined (__MINGW32__)) || \
       
    30       defined (__BORLANDC__) || defined (__DMC__) || \
       
    31       (defined (__HP_aCC) && defined (_REENTRANT))
       
    32 /* Native stdlib.h contains errno macro definition making inclusion of native
       
    33  * errno.h in STLport errno.h impossible. We are then forced to include errno.h
       
    34  * first.
       
    35  */
       
    36 #    include "errno.h"
       
    37 #  endif
       
    38 
       
    39 /*
       
    40  forward-declaration for _exception struct; prevents warning message
       
    41  ../include/stdlib.h(817) : warning C4115: '_exception' : named type definition in parentheses
       
    42 */
       
    43 #  if defined(_STLP_WCE_EVC3)
       
    44 struct _exception;
       
    45 #  endif
       
    46 
       
    47 #  include _STLP_NATIVE_C_HEADER(stdlib.h)
       
    48 
       
    49 /* on evc3/evc4 including stdlib.h also defines setjmp macro */
       
    50 #  if defined (_STLP_WCE)
       
    51 #    define _STLP_NATIVE_SETJMP_H_INCLUDED
       
    52 #  endif
       
    53 
       
    54 #  if (_STLP_OUTERMOST_HEADER_ID == 0x265)
       
    55 #    if ! defined (_STLP_DONT_POP_HEADER_ID)
       
    56 #      include <stl/_epilog.h>
       
    57 #      undef  _STLP_OUTERMOST_HEADER_ID
       
    58 #    else
       
    59 #      undef  _STLP_DONT_POP_HEADER_ID
       
    60 #    endif
       
    61 #  endif
       
    62 
       
    63 #endif /* RC_INVOKED */
       
    64 
       
    65 /*
       
    66   Local Variables:
       
    67   mode:C++
       
    68   End:
       
    69 */