epoc32/include/tools/stlport/stdlib.h
author William Roberts <williamr@symbian.org>
Wed, 31 Mar 2010 12:33:34 +0100
branchSymbian3
changeset 4 837f303aceeb
permissions -rw-r--r--
Current Symbian^3 public API header files (from PDK 3.0.h)
This is the epoc32/include tree with the "platform" subtrees removed, and
all but a selected few mbg and rsg files removed.
     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 */