Ne.app NeANT
The Ne.app NeANT User module of the NeANT distribution.
_config-msvcrt.h
Go to the documentation of this file.
1
33#if _MSC_VER <= 1300 // MSVC <= 7.0
34# define _RWSTD_EXCEPTION_HANDLER_IN_STD
35# define _RWSTD_NO_STATIC_DEF3
36#endif // MSVC <= 7.0
37
38 // enable the <cxxx> form of libc headers
39 // we can only use the rw version in include/ansi
40#ifndef _RWSTD_NO_PURE_C_HEADERS
41# define _RWSTD_NO_PURE_C_HEADERS
42#endif // _RWSTD_NO_PURE_C_HEADERS
43
44#if defined _RWSTD_NO_NEW_HEADER
45# undef _RWSTD_NO_NEW_HEADER
46#endif // _RWSTD_NO_NEW_HEADER
47
48 // our <cxxx> libc headers put the libc functions in namespace std
49#ifdef _RWSTD_NO_LIBC_IN_STD
50# undef _RWSTD_NO_LIBC_IN_STD
51#endif // _RWSTD_NO_LIBC_IN_STD
52
53#ifndef _RWSTD_NO_DEPRECATED_C_HEADERS
54# define _RWSTD_NO_DEPRECATED_C_HEADERS
55#endif // _RWSTD_NO_DEPRECATED_C_HEADERS
56
57#ifndef _RWSTD_NO_WCSTOK
58// MSVC CRT has incorrect prototype of the wcstok()
59# define _RWSTD_NO_WCSTOK
60#endif // _RWSTD_NO_WCSTOK
61
62#ifndef _RWSTD_NO_WCSTOK_IN_LIBC
63# define _RWSTD_NO_WCSTOK_IN_LIBC
64#endif // _RWSTD_NO_WCSTOK_IN_LIBC
65
66 // operator new and delete is not reliably replaceable across
67 // shared library boundaries, which includes the shared library
68 // version of the language support library
69#define _RWSTD_NO_REPLACEABLE_NEW_DELETE
70
71 // names of (most) extern "C" libc symbols begin with an underscore
72#define _RWSTD_LIBC_SYM(name) _ ## name
73
74#ifdef _DLL
75 // the _DLL macro is defined by the compiler when building a shared
76 // library, i.e., in response to either of the /MD and /MDd options
77 // _RWSTD_DLLIMPORT is used when declaring libc functions that need
78 // to be "imported" into the shared library
79# define _RWSTD_DLLIMPORT __declspec (dllimport)
80#endif // _DLL
81
82#ifndef _RWSTD_NO_STATIC_CONST_MEMBER_DEFINITION
83 // both MSVC 7.x and Intel C++/Windows allow "inline" initializers
84 // for static const integral data members but out-of-line definitions
85 // cause multiply defined symbol errors (see PR #26562 and #30260)
86 // disable their definitions in source files (the members are still
87 // declared)
88# define _RWSTD_NO_STATIC_CONST_MEMBER_DEFINITION
89#endif // _RWSTD_NO_STATIC_CONST_MEMBER_DEFINITION
90
91 // enable iostream and locale support for long long integers
92#if _MSC_VER <= 1300 || defined (_RWSTD_NO_LONG_LONG)
93# define _RWSTD_LONG_LONG __int64
94#endif // _MSC_VER <= 1300 || _RWSTD_NO_LONG_LONG
95
96#if defined (WIN32) && !defined(_WIN32)
97# define _WIN32
98#endif
99
100#if defined (_MT) && !defined (_RWSTD_NO_REENTRANT)
101# ifndef _RWSTD_REENTRANT
102# define _RWSTD_REENTRANT 1
103# endif // _RWSTD_REENTRANT
104
105# ifndef _RWSTD_NO_TLS
106 // thread-local stoprage declaration specifier
107# ifndef _RWSTD_THREAD
108# define _RWSTD_THREAD __declspec (thread)
109# endif // _RWSTD_THREAD
110# endif // _RWSTD_NO_TLS
111#else // if !defined (_MT) || defined (_RWSTD_NO_REENTRANT)
112# ifdef _RWSTD_REENTRANT
113# undef _RWSTD_REENTRANT
114# endif // _RWSTD_REENTRANT
115# ifndef _RWSTD_THREAD
116# define _RWSTD_THREAD /* empty */
117# endif // _RWSTD_THREAD
118#endif // _MT && !_RWSTD_NO_REENTRANT
119
120#if defined (_CPPRTTI)
121 // override in case library was configured with -GR-
122 // (i.e., with RTTI disabled)
123# undef _RWSTD_NO_DYNAMIC_CAST
124#elif !defined (_RWSTD_NO_DYNAMIC_CAST)
125 // override in case library was configured with -GR
126 // (i.e., with RTTI enabled)
127# define _RWSTD_NO_DYNAMIC_CAST
128#endif // _CPPRTTI
129
130#ifndef _NATIVE_WCHAR_T_DEFINED
131 // define wchar_t if it is not a keyword recognized by the compiler
132 // (use the /Zc:wchar_t compiler option to enable wchar_t as a keyword)
133typedef unsigned short wchar_t;
134
135#endif // _NATIVE_WCHAR_T_DEFINED
136
137#if _RWSTD_VER_MAJOR < 5 && defined (_DLL)
138 // defined for binary compatibility with stdcxx 4.1.x
139 // (for all versions of MSVC and Intel C++)
140# define _RWSTD_NO_BAD_CAST_ASSIGNMENT
141# define _RWSTD_NO_BAD_CAST_COPY_CTOR
142# define _RWSTD_NO_BAD_CAST_DTOR
143# define _RWSTD_NO_BAD_TYPEID_ASSIGNMENT
144# define _RWSTD_NO_BAD_TYPEID_COPY_CTOR
145# define _RWSTD_NO_BAD_TYPEID_DTOR
146# define _RWSTD_NO_EXCEPTION_ASSIGNMENT
147# define _RWSTD_NO_EXCEPTION_COPY_CTOR
148# define _RWSTD_NO_EXCEPTION_DEFAULT_CTOR
149# define _RWSTD_NO_EXCEPTION_DTOR
150# define _RWSTD_NO_EXCEPTION_WHAT
151#endif // _RWSTD_VER_MAJOR < 5 && _DLL
unsigned short wchar_t