2 * © Portions copyright (c) 2006-2007 Nokia Corporation. All rights reserved.
5 * Moscow Center for SPARC Technology
10 * This material is provided "as is", with absolutely no warranty expressed
11 * or implied. Any use is at your own risk.
13 * Permission to use or copy this software for any purpose is hereby granted
14 * without fee, provided the above notices are retained on all copies.
15 * Permission to modify the code and to distribute modified code is granted,
16 * provided the above notices are retained, and a notice that the code was
17 * modified is included with the above copyright notice.
22 * Purpose of this file :
24 * A list of COMPILER-SPECIFIC portion of STLport settings.
25 * This file is provided to help in manulal configuration
26 * of STLport. This file is being included by stlcomp.h
27 * when STLport is unable to identify your compiler.
28 * Please remove the error diagnostic below before adjusting
38 # pragma warning ( disable : 4018 4097 4100 4127 4244 4284 4511 4512 4514 4786 4800 ) //4355 4284 4231 4511 4512 4097 4786 4800 4018 4146 4244 4514 4127 4100 4663)
39 # define _STLP_NO_FUNCTION_TMPL_PARTIAL_ORDER 1
40 // Uncomment if partial order of template functions is not available
41 # define _STLP_NO_FUNC_PARTIAL_ORDERING 1
44 #ifndef _STLP_NO_IOSTREAMS
45 # define _STLP_NO_IOSTREAMS 1
48 # undef _STLP_OWN_IOSTREAMS
49 # define _STLP_NO_NATIVE_MBSTATE_T 1
50 //# define _NOTHREADS 1
51 # define _STLP_NO_TYPEINFO 1
53 #ifndef __PLACEMENT_NEW_INLINE
55 inline void * operator new(unsigned int, void *_P) { return (_P); }
56 #define __PLACEMENT_NEW_INLINE
60 //==========================================================
62 // the values choosen here as defaults try to give
63 // maximum functionality on the most conservative settings
65 // Mostly correct guess, change it for Alpha (and other environments
66 // that has 64-bit "long")
67 # define _STLP_UINT32_T unsigned long
69 // Disables wchar_t functinality
70 # define _STLP_NO_WCHAR_T 1
72 // Define if wchar_t is not a unique type, and is actually a typedef to unsigned short.
73 // # define _STLP_WCHAR_T_IS_USHORT 1
75 // Uncomment if long long is available
76 // # define _STLP_LONG_LONG long long
78 // Uncomment if long double is not available
79 // # define _STLP_NO_LONG_DOUBLE 1
81 // Uncomment this if your compiler does not support namespaces
82 # define _STLP_HAS_NO_NAMESPACES 1
84 // Uncomment if "using" keyword does not work with template types
85 // # define _STLP_BROKEN_USING_DIRECTIVE 1
87 // Uncomment this if your compiler does not support exceptions
88 # define _STLP_HAS_NO_EXCEPTIONS 1
90 // Header <new> that comes with the compiler
91 // does not define bad_alloc exception
92 //#if defined(__WINS__)
93 // Possibly required ???
94 # define _STLP_NO_BAD_ALLOC 1
97 // Uncomment if member template methods are not available
98 // # define _STLP_NO_MEMBER_TEMPLATES 1
100 // Uncomment if member template classes are not available
101 #if defined(__WINS__)
102 # define _STLP_NO_MEMBER_TEMPLATE_CLASSES 1
105 // Uncomment if friend member templates are not available
106 #if defined(__WINS__)
107 // Possibly required ???
108 //# define _STLP_NO_FRIEND_TEMPLATES 1
111 // Compiler does not accept friend declaration qualified with namespace name.
112 // # define _STLP_NO_QUALIFIED_FRIENDS 1
114 // Uncomment if partial specialization is not available
115 #if defined(__WINS__)
116 # define _STLP_NO_CLASS_PARTIAL_SPECIALIZATION 1
119 // Define if class being partially specialized require full name (template parameters)
120 // of itself for method declarations
121 // # define _STLP_PARTIAL_SPEC_NEEDS_TEMPLATE_ARGS
123 // Compiler has problems specializing members of partially
125 // # define _STLP_MEMBER_SPECIALIZATION_BUG
127 // Compiler requires typename keyword on outline method definition
128 // explicitly taking nested types/typedefs
129 // #define _STLP_TYPENAME_ON_RETURN_TYPE
131 // * _STLP_STATIC_CONST_INIT_BUG: defined if the compiler can't handle a
132 // constant-initializer in the declaration of a static const data member
133 // of integer type. (See section 9.4.2, paragraph 4, of the C++ standard.)
134 #if defined(__WINS__)
135 # define _STLP_STATIC_CONST_INIT_BUG
138 // Define if default constructor for builtin integer type fails to initialize it to 0
139 // # define _STLP_DEFAULT_CONSTRUCTOR_BUG 1
141 // Defined if constructor
142 // required to explicitly call member's default constructors for const objects
143 // # define _STLP_CONST_CONSTRUCTOR_BUG 1
145 // Define this if compiler lacks <exception> header
146 # define _STLP_NO_EXCEPTION_HEADER 1
148 // Uncomment if native new-style C library headers lile <cstddef>, etc are not available.
149 # define _STLP_HAS_NO_NEW_C_HEADERS 1
151 // uncomment if new-style headers <new> is available
152 // # define _STLP_HAS_NEW_NEW_HEADER 1
154 // uncomment this if <iostream> and other STD headers put their stuff in ::namespace,
156 // # define _STLP_VENDOR_GLOBAL_STD
158 // uncomment this if <cstdio> and the like put stuff in ::namespace,
160 # define _STLP_VENDOR_GLOBAL_CSTD
162 // Edit relative path below (or put full path) to get native
163 // compiler headers included. Default is "../include".
164 // C headers may reside in different directory, so separate macro is provided.
165 // Hint : never install STLport in the directory that ends with "include"
166 // # define _STLP_NATIVE_INCLUDE_PATH ../include
167 # define _STLP_NATIVE_C_INCLUDE_PATH libc
168 # define _STLP_NATIVE_INCLUDE_PATH libc
170 //==========================================================