epoc32/include/tools/stlport/stl/_csetjmp.h
author William Roberts <williamr@symbian.org>
Tue, 16 Mar 2010 16:12:26 +0000
branchSymbian2
changeset 2 2fe1408b6811
permissions -rw-r--r--
Final list of Symbian^2 public API header files
     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 #ifndef _STLP_INTERNAL_CSETJMP
    17 #define _STLP_INTERNAL_CSETJMP
    18 
    19 // if the macro is on, the header is already there
    20 #if !defined (setjmp)
    21 #  if defined (_STLP_USE_NEW_C_HEADERS)
    22 #    include _STLP_NATIVE_CPP_C_HEADER(csetjmp)
    23 #  else
    24 #    define _STLP_NATIVE_SETJMP_H_INCLUDED
    25 #    include _STLP_NATIVE_C_HEADER(setjmp.h)
    26 #  endif
    27 #endif
    28 
    29 #if defined (_STLP_IMPORT_VENDOR_CSTD)
    30 
    31 #  if defined (__BORLANDC__) && defined (_STLP_USE_NEW_C_HEADERS)
    32 /* For Borland, even if stdjmp.h is included symbols won't be in global namespace
    33  * so we need to reach them in vendor namespace:
    34  */
    35 #    undef _STLP_NATIVE_SETJMP_H_INCLUDED
    36 #  endif
    37 
    38 _STLP_BEGIN_NAMESPACE
    39 #  if !defined (_STLP_NATIVE_SETJMP_H_INCLUDED)
    40 using _STLP_VENDOR_CSTD::jmp_buf;
    41 #  else
    42 // if setjmp.h was included first, this is in global namespace, not in
    43 // vendor's std.  - 2005-08-04, ptr
    44 using ::jmp_buf;
    45 #  endif
    46 #  if !defined (_STLP_NO_CSTD_FUNCTION_IMPORTS)
    47 #    if !defined (setjmp)
    48 #      if !defined (__MSL__) || ((__MSL__ > 0x7001) && (__MSL__ < 0x8000))
    49 #        ifndef _STLP_NATIVE_SETJMP_H_INCLUDED
    50 using _STLP_VENDOR_CSTD::setjmp;
    51 #        else
    52 using ::setjmp;
    53 #        endif
    54 #      endif
    55 #    endif
    56 #    if !defined (_STLP_NATIVE_SETJMP_H_INCLUDED)
    57 using _STLP_VENDOR_CSTD::longjmp;
    58 #    else
    59 using ::longjmp;
    60 #    endif
    61 #  endif
    62 _STLP_END_NAMESPACE
    63 #endif /* _STLP_IMPORT_VENDOR_CSTD */
    64 
    65 #endif