]> git.buserror.net Git - polintos/scott/priv.git/blob - include/c++/stl/typeinfo.h
minor doc updates
[polintos/scott/priv.git] / include / c++ / stl / typeinfo.h
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_OLDSTD_typeinfo
17 #define _STLP_OLDSTD_typeinfo
18
19 #ifndef _STLP_OUTERMOST_HEADER_ID
20 #  define _STLP_OUTERMOST_HEADER_ID 0x874
21 #  include <stl/_prolog.h>
22 #endif
23
24 #ifndef _STLP_NO_TYPEINFO
25
26 #  if defined (__GNUC__)
27 #    undef _STLP_OLDSTD_typeinfo
28 #    include <typeinfo>
29 #    define _STLP_OLDSTD_typeinfo
30 #  else
31 #    if !defined (__BORLANDC__) || (__BORLANDC__ < 0x580)
32 #      include _STLP_NATIVE_CPP_RUNTIME_HEADER(typeinfo.h)
33 #    else
34 #      include _STLP_NATIVE_CPP_C_HEADER(typeinfo.h)
35 #    endif
36 #    if defined (__BORLANDC__) && (__BORLANDC__ >= 0x580) || \
37         defined (__DMC__)
38 using std::type_info;
39 using std::bad_typeid;
40 using std::bad_cast;
41 #    endif
42 #  endif
43
44 // if <typeinfo> already included, do not import anything
45
46 #  if defined (_STLP_USE_OWN_NAMESPACE) && !(defined (_STLP_TYPEINFO) && !defined (_STLP_NO_NEW_NEW_HEADER))
47
48 _STLP_BEGIN_NAMESPACE
49
50 using /*_STLP_VENDOR_EXCEPT_STD */ :: type_info;
51 #    if !(defined(__MRC__) || (defined(__SC__) && !defined(__DMC__)))
52 using /* _STLP_VENDOR_EXCEPT_STD */ :: bad_typeid;
53 #    endif
54
55 using /* _STLP_VENDOR_EXCEPT_STD */ :: bad_cast;
56
57 _STLP_END_NAMESPACE
58
59 #  endif /* _STLP_OWN_NAMESPACE */
60
61 #endif /* _STLP_NO_TYPEINFO */
62
63 #if (_STLP_OUTERMOST_HEADER_ID == 0x874)
64 #  include <stl/_epilog.h>
65 #  undef _STLP_OUTERMOST_HEADER_ID
66 #endif
67
68 #endif /* _STLP_OLDSTD_typeinfo */
69
70 // Local Variables:
71 // mode:C++
72 // End: