Ne.app NeANT
The Ne.app NeANT User module of the NeANT distribution.
Main Page
Related Pages
Topics
Namespaces
Data Structures
Files
File List
Globals
EXTERNAL_HEADERS
RSL
include
rw
_config-msvc.h
Go to the documentation of this file.
1
32
#include "
_config-msvcrt.h
"
33
34
#if _MSC_VER <= 1300
// MSVC <= 7.0
35
# define _RWSTD_NO_PTR_VALUE_TEMPLATE_OVERLOAD
36
# define _RWSTD_NO_PRAGMA_INSTANTIATE
37
// disable explicit instantiation extensions if building
38
// optimized client code (all templates still explicitly
39
// instantiated in the library);
40
// *** Not currently done for MSVC 7, since an implicit
41
// instantiation bug causes multiply defined symbols
42
// in downstream libraries
43
# ifndef _RWSTD_NO_STRING_NPOS_TYPE
44
// define basic_string::npos to be of type size_t
45
// instead of basic_string::size_type to work around
46
// an MSVC 7.0 bug (PR #26549)
47
# define _RWSTD_NO_STRING_NPOS_TYPE
48
# endif
// _RWSTD_NO_STRING_NPOS_TYPE
49
#endif
// MSVC <= 7.0
50
51
// disable "Same type qualifier used more than once"
52
#pragma warning (disable: 4114)
53
54
// disable "return type for operator->' is not a UDT"
55
#pragma warning (disable: 4284)
56
57
// disable "nonstandard extension used :"
58
// "'extern' before template explicit instantiation"
59
#pragma warning (disable: 4231)
60
61
// RWDLL - defined for all Rogue Wave(R) products built as shared libs
62
// _RWSHARED - defined for libstd built/used as a shared lib
63
#if defined (RWDLL) || defined (_RWSHARED)
64
65
// disable "class needs to have dll-interface to be used by cliens"
66
# pragma warning (disable: 4251)
67
68
// disable "non dll-interface class used as base for dll-interface class"
69
# pragma warning (disable: 4275)
70
71
#endif
// RWDLL || _RWSHARED
72
73
// disable "decorated name length exceeded"
74
#pragma warning (disable: 4503)
75
76
// convert warning "'identifier' used on polymorphic type 'type' with /GR-;"
77
// "unpredictable behavior may result" to error
78
#pragma warning (error: 4541)
79
80
// disable "'identifier' : no suitable definition"
81
// "provided for explicit template instantiation request"
82
#pragma warning (disable: 4661)
83
84
// disable "identifier was truncated to 255 characters"
85
#pragma warning (disable: 4786)
86
87
// disable "'function': was declared deprecated"
88
#pragma warning (disable: 4996)
89
90
// type trait helpers provided by msvc
91
#if defined (_MSC_FULL_VER) && (_MSC_FULL_VER >= 140050215)
92
# define _RWSTD_TT_HAS_NOTHROW_ASSIGN(T) __has_nothrow_assign(T)
93
# define _RWSTD_TT_HAS_NOTHROW_CTOR(T) __has_nothrow_constructor(T)
94
# define _RWSTD_TT_HAS_NOTHROW_COPY(T) __has_nothrow_copy(T)
95
96
# define _RWSTD_TT_HAS_TRIVIAL_ASSIGN(T) __has_trivial_assign(T)
97
# define _RWSTD_TT_HAS_TRIVIAL_CTOR(T) __has_trivial_constructor(T)
98
# define _RWSTD_TT_HAS_TRIVIAL_COPY(T) __has_trivial_copy(T)
99
# define _RWSTD_TT_HAS_TRIVIAL_DTOR(T) __has_trivial_destructor(T)
100
101
# define _RWSTD_TT_HAS_VIRTUAL_DTOR(T) __has_virtual_destructor(T)
102
103
# define _RWSTD_TT_IS_ABSTRACT(T) __is_abstract(T)
104
# define _RWSTD_TT_IS_BASE_OF(T,U) __is_base_of(T,U)
105
# define _RWSTD_TT_IS_CLASS(T) __is_class(T)
106
# define _RWSTD_TT_IS_POD(T) __is_pod(T)
107
# define _RWSTD_TT_IS_CONVERTIBLE(T,U) __is_convertible_to(T,U)
108
# define _RWSTD_TT_IS_EMPTY(T) __is_empty(T)
109
# define _RWSTD_TT_IS_ENUM(T) __is_enum(T)
110
# define _RWSTD_TT_IS_POLYMORPHIC(T) __is_polymorphic(T)
111
# define _RWSTD_TT_IS_UNION(T) __is_union(T)
112
113
# define _RWSTD_TT_ALIGN_OF(T) __alignof(T)
114
# define _RWSTD_TT_ALIGNED_POD(N) \
115
struct {__declspec(align(N)) unsigned char _C_align; }
116
117
# define _RWSTD_TT_MAX_ALIGNMENT 8192
118
#endif
// _MSC_FULL_VER >= 140050215
119
_config-msvcrt.h
Generated by
1.9.8