2  * Copyright (c) 1996,1997
 
     3  * Silicon Graphics Computer Systems, Inc.
 
     8  * This material is provided "as is", with absolutely no warranty expressed
 
     9  * or implied. Any use is at your own risk.
 
    11  * Permission to use or copy this software for any purpose is hereby granted
 
    12  * without fee, provided the above notices are retained on all copies.
 
    13  * Permission to modify the code and to distribute modified code is granted,
 
    14  * provided the above notices are retained, and a notice that the code was
 
    15  * modified is included with the above copyright notice.
 
    18 // This header exists solely for portability.  Normally it just includes
 
    19 // the native header <exception>.
 
    21 #ifndef _STLP_EXCEPTION
 
    23 #if !defined (_STLP_OUTERMOST_HEADER_ID)
 
    24 #  define _STLP_OUTERMOST_HEADER_ID 0x423
 
    25 #  include <stl/_prolog.h>
 
    26 #elif (_STLP_OUTERMOST_HEADER_ID == 0x423)
 
    27 #  define _STLP_DONT_POP_HEADER_ID
 
    28 #  define _STLP_EXCEPTION
 
    31 #if (_STLP_OUTERMOST_HEADER_ID != 0x423) || defined (_STLP_DONT_POP_HEADER_ID)
 
    32 /* If we are here it means that we are in an include called 
 
    33  * from the native lib which means that we can simply forward this
 
    34  * call to the native exception header:
 
    36 #  include _STLP_NATIVE_CPP_RUNTIME_HEADER(exception)
 
    38 #  include <stl/_exception.h>
 
    41 #if (_STLP_OUTERMOST_HEADER_ID == 0x423)
 
    42 #  if !defined(_STLP_DONT_POP_HEADER_ID)
 
    43 #    include <stl/_epilog.h>
 
    44 #    undef  _STLP_OUTERMOST_HEADER_ID
 
    46 #    undef  _STLP_DONT_POP_HEADER_ID
 
    50 #endif /* _STLP_EXCEPTION */