1.1 --- a/epoc32/include/stdapis/stlport/config/stl_msvc.h Tue Nov 24 13:55:44 2009 +0000
1.2 +++ b/epoc32/include/stdapis/stlport/config/stl_msvc.h Tue Mar 16 16:12:26 2010 +0000
1.3 @@ -1,1 +1,246 @@
1.4 -stl_msvc.h
1.5 +// STLport configuration file
1.6 +// It is internal STLport header - DO NOT include it directly
1.7 +// Microsoft Visual C++ 4.0, 4.1, 4.2, 5.0, 6.0, 7.0, 7.1, ICL
1.8 +
1.9 +
1.10 +// Common features for VC++ 4.0 and higher
1.11 +# ifdef _M_IA64
1.12 +# define _STLP_NATIVE_HEADER(x) <../crt/##x>
1.13 +# define _STLP_NATIVE_C_HEADER(x) <../crt/##x>
1.14 +# define _STLP_NATIVE_CPP_C_HEADER(x) <../crt/##x>
1.15 +# define _STLP_NATIVE_OLD_STREAMS_HEADER(x) <../crt/##x>
1.16 +# define _STLP_NATIVE_CPP_RUNTIME_HEADER(header) <../crt/##header>
1.17 +# define _STLP_GLOBAL_NEW_HANDLER
1.18 +# else
1.19 +# define _STLP_NATIVE_HEADER(x) <../include/##x>
1.20 +# define _STLP_NATIVE_C_HEADER(x) <../include/##x>
1.21 +# define _STLP_NATIVE_CPP_C_HEADER(x) <../include/##x>
1.22 +# define _STLP_NATIVE_OLD_STREAMS_HEADER(x) <../include/##x>
1.23 +# define _STLP_NATIVE_CPP_RUNTIME_HEADER(header) <../include/##header>
1.24 +# endif
1.25 +
1.26 +# define _STLP_CALL __cdecl
1.27 +
1.28 +# ifndef _STLP_LONG_LONG
1.29 +# define _STLP_LONG_LONG __int64
1.30 +# endif
1.31 +
1.32 +# define _STLP_PRAGMA_ONCE
1.33 +
1.34 +// these switches depend on compiler flags
1.35 +# ifndef _CPPUNWIND
1.36 +# define _STLP_HAS_NO_EXCEPTIONS 1
1.37 +# endif
1.38 +
1.39 +# define _STLP_VENDOR_UNEXPECTED_STD
1.40 +
1.41 +# if defined ( _MT ) && !defined (_STLP_NO_THREADS) && !defined (_REENTRANT) && !defined(__WINS__)
1.42 +# define _REENTRANT 1
1.43 +# endif
1.44 +
1.45 +# if !defined (_NATIVE_WCHAR_T_DEFINED)
1.46 +# define _STLP_WCHAR_T_IS_USHORT 1
1.47 +# endif
1.48 +
1.49 +# define _STLP_MINIMUM_IMPORT_STD
1.50 +
1.51 +# ifdef _STLP_MSVC
1.52 +
1.53 +# ifndef _STLP_MSVC50_COMPATIBILITY
1.54 +# define _STLP_MSVC50_COMPATIBILITY 1
1.55 +# endif
1.56 +
1.57 +# define _STLP_DLLEXPORT_NEEDS_PREDECLARATION 1
1.58 +# define _STLP_HAS_SPECIFIC_PROLOG_EPILOG
1.59 +
1.60 +// # ifndef __BUILDING_STLPORT
1.61 +// # define _STLP_USE_TEMPLATE_EXPORT 1
1.62 +// # endif
1.63 +
1.64 +# if (_STLP_MSVC >= 1310)
1.65 +# define _STLP_NO_METHOD_SPECIALIZATION 1
1.66 +# endif // (_STLP_MSVC >= 1310)
1.67 +
1.68 +# if (_STLP_MSVC > 1100)
1.69 + typedef char __stl_char;
1.70 +# define _STLP_DEFAULTCHAR __stl_char
1.71 +# endif /* (_STLP_MSVC < 1100 ) */
1.72 +
1.73 +# if (_STLP_MSVC <= 1310)
1.74 +# define _STLP_STATIC_CONST_INIT_BUG 1
1.75 +# endif // (_STLP_MSVC <= 1310)
1.76 +
1.77 +# if (_STLP_MSVC <= 1300)
1.78 +# define _STLP_DEFAULT_CONSTRUCTOR_BUG 1
1.79 +
1.80 +# define _STLP_NO_TYPENAME_IN_TEMPLATE_HEADER
1.81 +// fails to properly resolve call to sin() from within sin()
1.82 +# define _STLP_SAME_FUNCTION_NAME_RESOLUTION_BUG
1.83 +# define _STLP_NO_TYPENAME_ON_RETURN_TYPE 1
1.84 +// boris : not defining this macro for SP5 causes other problems
1.85 +// # if !defined (_MSC_FULL_VER) || (_MSC_FULL_VER < 12008804 )
1.86 +# define _STLP_NO_USING_FOR_GLOBAL_FUNCTIONS 1
1.87 +//# endif
1.88 +# define _STLP_NO_FUNCTION_TMPL_PARTIAL_ORDER 1
1.89 +# define _STLP_NO_CLASS_PARTIAL_SPECIALIZATION 1
1.90 +# define _STLP_NO_FRIEND_TEMPLATES
1.91 +// VC++ cannot handle default allocator argument in template constructors
1.92 +# define _STLP_NEEDS_EXTRA_TEMPLATE_CONSTRUCTORS
1.93 +// there is no partial spec, and MSVC breaks on simulating it for iterator_traits queries
1.94 +# define _STLP_USE_OLD_HP_ITERATOR_QUERIES
1.95 +// # define _STLP_NO_EXPLICIT_FUNCTION_TMPL_ARGS 1
1.96 +# define _STLP_NO_QUALIFIED_FRIENDS 1
1.97 +# define _STLP_DONT_USE_BOOL_TYPEDEF 1
1.98 +# endif /* _STLP_MSVC <= 1300 */
1.99 +
1.100 +# endif /* _STLP_MSVC */
1.101 +
1.102 +# if (_MSC_VER <= 1310)
1.103 +# define _STLP_VENDOR_GLOBAL_CSTD
1.104 +// They included the necessary coding,
1.105 +// but the beta still has an issue with template classes
1.106 +// ok: class a { static const int v = 2; };
1.107 +// error: template <class _Tp> class a { static const int v = 2; };
1.108 +# if !defined (_STLP_WHOLE_NATIVE_STD) && ! defined (_STLP_REDEFINE_STD)
1.109 +# define _STLP_REDEFINE_STD
1.110 +# endif
1.111 +# endif /* (_MSC_VER <= 1310) */
1.112 +
1.113 +# if (_MSC_VER <= 1200) // including MSVC 6.0
1.114 +// these work, as long they are inline
1.115 +# define _STLP_INLINE_MEMBER_TEMPLATES 1
1.116 +# define _STLP_NO_MEMBER_TEMPLATE_KEYWORD 1
1.117 +# define _STLP_GLOBAL_NEW_HANDLER
1.118 +# define _STLP_DONT_RETURN_VOID 1
1.119 +# define _STLP_DONT_USE_NESTED_TCLASS_THROUGHT_TPARAM 1
1.120 +# endif /* (_MSC_VER <= 1200) */
1.121 +
1.122 +# if ( _MSC_VER<=1010 )
1.123 +// "bool" is reserved in MSVC 4.1 while <yvals.h> absent, so :
1.124 +// # define _STLP_USE_ABBREVS 1
1.125 +# define _STLP_NO_BAD_ALLOC
1.126 +# define _STLP_HAS_NO_NEW_C_HEADERS 1
1.127 +# define _STLP_NO_NEW_NEW_HEADER 1
1.128 +# elif (_MSC_VER < 1100)
1.129 +// VC++ 4.2 and higher
1.130 +# define _STLP_YVALS_H 1
1.131 +# define _STLP_HAS_NO_NEW_IOSTREAMS 1
1.132 +# endif /* 1010 */
1.133 +
1.134 +# if defined (_STLP_MSVC) && ( _STLP_MSVC < 1200 ) /* VC++ 6.0 */
1.135 +// # define _STLP_NO_MEMBER_TEMPLATES 1
1.136 +// # define _STLP_NO_EXPLICIT_FUNCTION_TMPL_ARGS 1
1.137 +# define _STLP_NON_TYPE_TMPL_PARAM_BUG 1
1.138 +# define _STLP_THROW_RETURN_BUG 1
1.139 +# define _STLP_NO_MEMBER_TEMPLATE_CLASSES 1
1.140 +# endif
1.141 +
1.142 +# if defined (_STLP_MSVC) && ( _STLP_MSVC < 1100 )
1.143 +# ifndef _STLP_NO_OWN_IOSTREAMS
1.144 +# define _STLP_NO_OWN_IOSTREAMS
1.145 +# undef _STLP_OWN_IOSTREAMS
1.146 +# endif
1.147 +// # define _STLP_NESTED_TYPE_PARAM_BUG 1
1.148 +// Debug mode does not work for 4.2
1.149 +# ifdef _STLP_DEBUG
1.150 +# pragma message ("STLport debug mode does not work for VC++ 4.2, turning _STLP_DEBUG off ...")
1.151 +# undef _STLP_DEBUG
1.152 +# endif
1.153 +# define _STLP_NO_BOOL 1
1.154 +# define _STLP_NEED_TYPENAME 1
1.155 +# define _STLP_NEED_EXPLICIT 1
1.156 +# define _STLP_NEED_MUTABLE 1
1.157 +# define _STLP_NO_PARTIAL_SPECIALIZATION_SYNTAX
1.158 +# define _STLP_LIMITED_DEFAULT_TEMPLATES 1
1.159 +
1.160 +// up to 4.2, library is in global namespace
1.161 +# define _STLP_VENDOR_GLOBAL_STD
1.162 +# define _STLP_NONTEMPL_BASE_MATCH_BUG 1
1.163 +# define _STLP_BROKEN_USING_DIRECTIVE 1
1.164 +# define _STLP_NO_ARROW_OPERATOR
1.165 +# define _STLP_NO_SIGNED_BUILTINS 1
1.166 +# define _STLP_NO_EXCEPTION_SPEC 1
1.167 +# undef _STLP_DEFAULT_TYPE_PARAM
1.168 +# undef _STLP_HAS_NO_NAMESPACES
1.169 +# undef _STLP_NO_AT_MEMBER_FUNCTION
1.170 +# undef _STLP_NO_MEMBER_TEMPLATES
1.171 +# undef _STLP_NO_MEMBER_TEMPLATE_CLASSES
1.172 +# define _STLP_HAS_NO_NAMESPACES 1
1.173 +# define _STLP_NO_AT_MEMBER_FUNCTION 1
1.174 +# define _STLP_NO_MEMBER_TEMPLATES
1.175 +# define _STLP_NO_MEMBER_TEMPLATE_CLASSES
1.176 +# endif /* 1100 */
1.177 +
1.178 +// If we are under Windows CE, include appropriate config
1.179 +
1.180 +# ifdef UNDER_CE
1.181 +# include <config/stl_wince.h>
1.182 +# endif
1.183 +
1.184 +# ifdef __ICL
1.185 +# define _STLP_LIB_BASENAME "stlport_icl"
1.186 +# else
1.187 +# if (_MSC_VER >= 1310)
1.188 +# define _STLP_LIB_BASENAME "stlport_vc71"
1.189 +# elif (_MSC_VER >= 1300)
1.190 +# define _STLP_LIB_BASENAME "stlport_vc7"
1.191 +# elif (_MSC_VER >= 1200)
1.192 +# define _STLP_LIB_BASENAME "stlport_vc6"
1.193 +//# endif
1.194 +# elif (_MSC_VER >= 1100)
1.195 +//# ifdef _UNICODE
1.196 +//# define _STLP_LIB_BASENAME "stlport_vc5_unicode"
1.197 +//# else
1.198 +# define _STLP_LIB_BASENAME "stlport_vc5"
1.199 +//# endif
1.200 +# endif /* (_MSC_VER >= 1200) */
1.201 +# endif /* __ICL */
1.202 +
1.203 +
1.204 +# if (defined (__ICL) && (__ICL < 450)) || (_MSC_VER < 1200)
1.205 +// only static STLport lib now works for ICL and VC 5.0
1.206 +# undef _STLP_USE_STATIC_LIB
1.207 +# define _STLP_USE_STATIC_LIB
1.208 +// disable hook which makes template symbols to be searched for in the library
1.209 +# undef _STLP_NO_CUSTOM_IO
1.210 +# endif
1.211 +
1.212 +#if defined (__WINS__)
1.213 +
1.214 +# ifdef _PTHREADS
1.215 +# undef _PTHREADS
1.216 +# endif
1.217 +# ifdef _STLP_PTHREADS
1.218 +# undef _STLP_PTHREADS
1.219 +# endif
1.220 +# ifdef _STLP_THREADS
1.221 +# undef _STLP_THREADS
1.222 +# endif
1.223 +
1.224 +# undef _STLP_NATIVE_C_HEADER
1.225 +# define _STLP_NATIVE_C_HEADER(x) <libc/##x>
1.226 +
1.227 +# define _STLP_NO_NEW_HEADER
1.228 +# define _STLP_HAS_NO_NEW_C_HEADERS 1
1.229 +# define _STLP_NO_THREADS
1.230 +# define _STLP_NO_EXCEPTIONS
1.231 +# define _STLP_USE_TRAP_LEAVE
1.232 +# define _STLP_NO_EXCEPTION_HEADER
1.233 +// # define _STLP_NO_WCHAR_T
1.234 +# define _STLP_NO_IOSTREAMS
1.235 +# define _STLP_NO_OWN_IOSTREAMS
1.236 +# undef _STLP_OWN_IOSTREAMS
1.237 +# define _NOTHREADS
1.238 +# define _STLP_USE_NEWALLOC
1.239 +# define _STLP_NO_NODE_ALLOC
1.240 +# define _STLP_LITTLE_ENDIAN
1.241 +# define _STLP_NO_LONG_DOUBLE
1.242 +# define _STLP_LABS
1.243 +# define _STLP_LDIV
1.244 +# define _STLP_NO_NAMESPACES
1.245 +# define _STLP_CONST_CONSTRUCTOR_BUG
1.246 +//# define _STLP_IMPLICIT_STRING_TO_DESC
1.247 +// # define _STLP_MULTI_CONST_TEMPLATE_ARG_BUG
1.248 +#endif
1.249 +
1.250 +# include <config/vc_select_lib.h>