xref: /reactos/sdk/include/c++/stlport/setjmp.h (revision 8a978a17)
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_SETJMP_H
17 
18 #if !defined (_STLP_OUTERMOST_HEADER_ID)
19 #  define _STLP_OUTERMOST_HEADER_ID 0x256
20 #  include <stl/_cprolog.h>
21 #elif (_STLP_OUTERMOST_HEADER_ID == 0x256) && !defined (_STLP_DONT_POP_HEADER_ID)
22 #  define _STLP_DONT_POP_HEADER_ID
23 #  define _STLP_SETJMP_H
24 #endif
25 
26 #if defined(_STLP_WCE_EVC3)
27 struct _exception;
28 #endif
29 
30 #if !defined (setjmp)
31 #  define _STLP_NATIVE_SETJMP_H_INCLUDED
32 #  if defined (_STLP_HAS_INCLUDE_NEXT)
33 #    include_next <setjmp.h>
34 #  else
35 #    include _STLP_NATIVE_C_HEADER(setjmp.h)
36 #  endif
37 #endif
38 
39 #if !defined (_STLP_NATIVE_SETJMP_H_INCLUDED)
40 /* See errno.h file for a description of this problem. */
41 #  error setjmp has been defined before inclusion of setjmp.h header.
42 #endif
43 
44 #if (_STLP_OUTERMOST_HEADER_ID == 0x256)
45 #  if ! defined (_STLP_DONT_POP_HEADER_ID)
46 #    include <stl/_epilog.h>
47 #    undef  _STLP_OUTERMOST_HEADER_ID
48 #  else
49 #    undef  _STLP_DONT_POP_HEADER_ID
50 #  endif
51 #endif
52 #endif /* _STLP_SETJMP_H */
53