1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/os/ossrv/genericopenlibs/cppstdlib/stl/etc/ChangeLog-5.1 Fri Jun 15 03:10:57 2012 +0200
1.3 @@ -0,0 +1,8339 @@
1.4 +2007-10-05 Francois Dumont <dums@users.sourceforge.net>
1.5 +
1.6 + * stlport/stl/debug/_iterator.h, _string.h, src/string.cpp:
1.7 + Removed useless and even invalid workaround used when
1.8 + _STLP_USE_MSVC6_MEM_T_BUG_WORKAROUND is defined. There is now
1.9 + only one construct check class __construct_checker,
1.10 + __msvc6_construct_checker has been removed.
1.11 +
1.12 +2007-09-28 Petr Ovtchenkov <complement@users.sourceforge.net>
1.13 +
1.14 + * Platform tested: gcc 4.1.2 20060928 (prerelease)
1.15 + (Ubuntu 4.1.1-13ubuntu5), i686 GNU/Linux, glibc 2.4;
1.16 +
1.17 + * release-shared: fail on list_test.cpp:392
1.18 + [CPPUNIT_ASSERT(lint1.size() == 20)], suspected compiler's bug;
1.19 + 1 fail from 395 tests;
1.20 +
1.21 + * stldbg-shared: passed 395 tests;
1.22 +
1.23 + * Platform tested: gcc 4.1.2, i686 GNU/Linux, glibc 2.4;
1.24 +
1.25 + * release-shared: fail on list_test.cpp:392
1.26 + [CPPUNIT_ASSERT(lint1.size() == 20)], suspected compiler's bug;
1.27 + 1 fail from 395 tests;
1.28 +
1.29 + * stldbg-shared: passed 395 tests;
1.30 +
1.31 + * Platform tested: gcc 4.2.1, i686 GNU/Linux, glibc 2.4;
1.32 +
1.33 + * release-shared: passed 395 tests;
1.34 +
1.35 + * stldbg-shared: passed 395 tests;
1.36 +
1.37 + * Platform tested: gcc 4.1.1, i686 athlon-4 i386 GNU/Linux,
1.38 + glibc 2.3.6;
1.39 +
1.40 + * release-shared: passed 395 tests;
1.41 +
1.42 + * stldbg-shared: passed 395 tests;
1.43 +
1.44 + * src/c_locale_glibc/c_locale_glibc2.c: this is a C, so
1.45 + decl allowd only on top of block;
1.46 +
1.47 + * Platform tested: gcc 2.95.4 (debian), i686 GNU/Linux,
1.48 + glibc 2.3.2;
1.49 +
1.50 + * release-shared: build success, as library as unit tests,
1.51 + but run unit tests fail---stalling on spinlock during library
1.52 + load; looks like problem with correct initialization of
1.53 + statics;
1.54 +
1.55 + * stldbg-shared: fail build library, stlport/stl/debug/_hashtable.h:49:
1.56 + declaration of `operator ==' as non-function
1.57 +
1.58 +2007-09-27 Francois Dumont <dums@users.sourceforge.net>
1.59 +
1.60 + * src/facets_byname.cpp: In collate::do_transform, consider
1.61 + low == high as a special case, returns empty string in this
1.62 + case.
1.63 +
1.64 +2007-09-27 Petr Ovtchenkov <complement@users.sourceforge.net>
1.65 +
1.66 + * test/unit/find_test.cpp: array initialization missed.
1.67 +
1.68 +2007-09-17 Francois Dumont <dums@users.sourceforge.net>
1.69 +
1.70 + * stlport/stl/_num_get.h: Add _STLP_DECLSPEC specification to
1.71 + several functions that might be access by external code when
1.72 + num_get facet is instantiated with something else than the
1.73 + Standard required instantiation.
1.74 +
1.75 +2007-09-11 Francois Dumont <dums@users.sourceforge.net>
1.76 +
1.77 + * src/c_locale_glibc/c_locale_glibc.c, c_locale_glibc2.c: Fix
1.78 + _Locale_strxfrm and _Locale_wcxfrm implementation to take
1.79 + into account strings that are not zero terminated.
1.80 +
1.81 + * test/unit/locale_test.cpp: Add check that collate.tranform
1.82 + method build a key only for chars in the range pass to method.
1.83 +
1.84 +2007-09-10 Francois Dumont <dums@users.sourceforge.net>
1.85 +
1.86 + * src/facets_byname.cpp: John Maddock bug report 1788618 fix.
1.87 + Moreover remove use of an intermediate buffer to get result
1.88 + of _Locale_strxfrm.
1.89 +
1.90 + * test/unit/locale_test.cpp: Add tests for collate::transform
1.91 + facet method.
1.92 +
1.93 + * src/c_locale_win32/c_locale_win32.c: Small modification,
1.94 + _Locale_strxfrm is supposed to return the number of chars
1.95 + required to store the generated sorted key without the trailing
1.96 + zero.
1.97 +
1.98 + * src/c_locale_glibc/c_locale_glibc.c, c_locale_glibc2.c: Fix
1.99 + implementation of _Locale_strxfrm, it should never return -1.
1.100 +
1.101 +2007-09-10 Petr Ovtchenkov <complement@users.sourceforge.net>
1.102 +
1.103 + * stlport/stl/_string.c: fix bugs in string rfind, find_last_of,
1.104 + find_last_not_of [bug #1788700, position 0 was wrongly excluded];
1.105 +
1.106 + * test/unit/string_test.cpp: test for problems above. Thanks
1.107 + to Bred Bored for bug report and initial test.
1.108 +
1.109 + * unit tests: Linux 2.6.16.26 (athlon-4), gcc 4.1.1, glibc 2.3.6
1.110 + "OK 395 tests" for release-shared and stldbg-shared targets.
1.111 +
1.112 +2007-09-09 Petr Ovtchenkov <complement@users.sourceforge.net>
1.113 +
1.114 + * test/unit/rope_test.cpp, stlport/stl/_rope.h: test for
1.115 + bug #1788615 [bug during copy of rope's iterator] and fix;
1.116 + suggested by John Maddock.
1.117 +
1.118 + * stlport/stl/_algobase.c: symmetry not required for
1.119 + comparator in case of two different sequences comparison or
1.120 + searching; symmetrical comparator just may not exist;
1.121 +
1.122 + * stlport/stl/debug/_hashtable.h: symmetry not required for
1.123 + comparator in hashtable in case of containers extention;
1.124 + symmetrical comparator just may not exist;
1.125 +
1.126 + * test/unit/alg_test.cpp: test for problem above, thanks
1.127 + Oleg Obolenskiy.
1.128 +
1.129 +2007-09-06 Francois Dumont <dums@users.sourceforge.net>
1.130 +
1.131 + * test/unit/strstream_buffer_read_test.cpp: Remove useless
1.132 + strdup call that was moreover introducing a memory leak.
1.133 +
1.134 +2007-09-04 Francois Dumont <dums@users.sourceforge.net>
1.135 +
1.136 + * src/allocators.cpp: Fix implementation of _S_chunk_dealloc when
1.137 + lock free implementation is not in use. Thanks bug report 1787636
1.138 + from Sergej Zagursky.
1.139 +
1.140 +2007-08-31 Francois Dumont <dums@users.sourceforge.net>
1.141 +
1.142 + * stlport/stl/_cstdio.h, _ctime.h: Add missing macro definition
1.143 + test before using _WIN32_WCE thanks bug report 1784174.
1.144 +
1.145 + * stlport/stl/_bitset.h: Change macro tests in order to check
1.146 + macro definition before using it thanks bug report 1785679.
1.147 +
1.148 + * test/unit/bitset_test.cpp: Bitset::iostream new test to check
1.149 + correct input/output of bitset class.
1.150 +
1.151 + * build/Makefiles/gmake/gcc.mak: Add -Wundef gcc option when building
1.152 + with gcc under Cygwin MinGW, it is an interesting option to detect
1.153 + macro check errors.
1.154 +
1.155 +2007-08-26 Francois Dumont <dums@users.sourceforge.net>
1.156 +
1.157 + * stlport/stl/config/user_config.h, host.h: Moved the administrative
1.158 + _STLP_USE_DEFAULT_FILE_OFFSET macro from user_config.h to host.h.
1.159 +
1.160 + * stlport/stl/config/_gcc.h: Under MinGW we now use C symbols in
1.161 + global namespace. Tests with 4.2.1 gcc version shows that C symbols
1.162 + are not necessarily put in std namespace.
1.163 +
1.164 +2007-08-23 Francois Dumont <dums@users.sourceforge.net>
1.165 +
1.166 + * stlport/stl/_complex.h: As in _iosfwd.h, removed useless
1.167 + _STLP_CLASS_DECLSPEC attribute on complex class declaration.
1.168 +
1.169 +2007-08-23 Petr Ovtchenkov <complement@users.sourceforge.net>
1.170 +
1.171 + * stlport/stl/debug/_vector.h: only random access iterators
1.172 + allow operations 'less-than' and distance; for bidirectional
1.173 + iterators removed usage of 'less-than', and for others
1.174 + [like forward and input iterators] removed as usage of 'less-than'
1.175 + as distance; thanks Oleg Obolenskiy for bug report;
1.176 +
1.177 + * test/unit/ioiter_test.cpp: test for problem above.
1.178 +
1.179 +2007-08-18 Francois Dumont <dums@users.sourceforge.net>
1.180 +
1.181 + * stlport/stl/_iosfwd.h: Removed useless _STLP_CLASS_DECLSPEC attribute
1.182 + on class declaration. Latest gcc versions are reporting a warning about
1.183 + it.
1.184 +
1.185 +2007-08-16 Francois Dumont <dums@users.sourceforge.net>
1.186 +
1.187 + * src/dll_main.cpp: Removed useless _Atomic_swap_struct explicit
1.188 + instantiation, moreover, MSVC 2005 do not support it.
1.189 +
1.190 +2007-08-15 Petr Ovtchenkov <complement@users.sourceforge.net>
1.191 +
1.192 + * Repository: bump lib version to 5.1.4;
1.193 +
1.194 + * stlport/stl/char_traits.h, src/fstream.cpp: use 64-bits
1.195 + file operations calls, if available on system; streamoff is
1.196 + always off64_t, if _LARGEFILE_SOURCE or _LARGEFILE64_SOURCE
1.197 + defined, i.e. if 64-bits file operations present;
1.198 +
1.199 + * stlport/stl/config/user_config.h: add _STLP_USE_DEFAULT_FILE_OFFSET,
1.200 + force use off_t for streamoff and appropriate file operations calls;
1.201 + note, that this may lead to problems, for example if _FILE_OFFSET_BITS
1.202 + defined as 64 somewhere in user's code;
1.203 +
1.204 + * test/unit/fstream_test.cpp: test 64 bits type for filesize and
1.205 + file offset.
1.206 +
1.207 +2007-07-22 Petr Ovtchenkov <complement@users.sourceforge.net>
1.208 +
1.209 + * src/fstream.cpp: force use lseek64/mmap64 for HP-UX, if _LARGEFILE64_SOURCE
1.210 + defined; thanks for Michael Klein.
1.211 +
1.212 +2007-07-17 Petr Ovtchenkov <complement@users.sourceforge.net>
1.213 +
1.214 + * stlport/stl/_algo.c, stlport/stl/_algobase.c: search, the __tmp and
1.215 + __p1 iterators always point at the same position, hence one of them
1.216 + is redundant;
1.217 +
1.218 + * stlport/stl/_algobase.c: in the main-loop of search there are two
1.219 + successive while-loops doing exactly the same thing; one of them is
1.220 + redundant and, since it is inside the main-loop, it slows down
1.221 + the algorithm significantly;
1.222 +
1.223 + * stlport/stl/_algo.c, stlport/stl/_algobase.c: in the search the main-loop
1.224 + condition "while (__first1 != __last1)" is always true and consequently
1.225 + redundant; this is because the initial adn in-loop conditions virtually
1.226 + act as guards and will never let the main-loop condition to fail; since
1.227 + this condition is evaluated in every main-loop iteration, its removal
1.228 + will also improve the performance of the algorithm; thanks for
1.229 + Jim Xochellis for this suggestions.
1.230 +
1.231 +2007-07-15 Petr Ovtchenkov <complement@users.sourceforge.net>
1.232 +
1.233 + * src/strstream.cpp: "get end" pointer should be initialized
1.234 + to the "begin of get + N" in obsolete strstream; bug #1536503,
1.235 + thanks for Jean-Eric Cuendet;
1.236 +
1.237 + * test/unit/strstream_buffer_read_test.cpp, build/test/unit/Makefile.inc:
1.238 + test for bug above; [submitted by Jean-Eric Cuendet].
1.239 +
1.240 +2007-04-02 Francois Dumont <dums@stlport...>
1.241 +
1.242 + * 5.1.3 released based on revision 2983. STLport-5.1.3 tag created.
1.243 +
1.244 +2007-03-30 Francois Dumont <dums@stlport...>
1.245 +
1.246 + * build/lib/configure.bat: Restore TARGET_PROC_SUBTYPE definition
1.247 + to distinguish between ARM architectures.
1.248 +
1.249 +2007-03-22 Francois Dumont <dums@stlport...>
1.250 +
1.251 + * stlport/stl/config/_msvc.h, _deque.h, _bvector.h: Portage from
1.252 + Ulrich Echkardt to EVC 8.
1.253 +
1.254 + * doc/README.evc8, README.wince: New documentations about Windows
1.255 + CE and EVC 8 from Ulrich Echkardt.
1.256 +
1.257 + * doc/evc_workaround.txt, doc/README.evc3, First file merged to the
1.258 + second one.
1.259 +
1.260 + * stlport/stl/_stlport_version.h: Bump patch level to 3.
1.261 +
1.262 +2007-03-07 Francois Dumont <dums@stlport...>
1.263 +
1.264 + * src/dll_main.cpp, stlport/stl/_stdexcept_base.h: Change strncpy_s
1.265 + invocation to pass _TRUNCATE parameter rather than number of chars
1.266 + to put in destination string. Default strncpy_s behavior is not to
1.267 + truncate string if necessary but to report the issue throught a handler
1.268 + which lead to an application crash if no handler has been set. Thanks
1.269 + Bronek Kozicki bug report 1674974.
1.270 +
1.271 + * stlport/stl/type_traits.h: Add a default constructor declaration
1.272 + in _TpWithState class to make gcc happy when class is instanciated
1.273 + with a class with no default constructor.
1.274 +
1.275 + * stlport/stl/config/_windows.h: Change definition of
1.276 + _STLP_WIN32_VERSION macro. We do not report definition inconsistency
1.277 + between WINVER and _WIN32_VERSION anymore, WINVER is prefered.
1.278 +
1.279 +2007-03-01 Francois Dumont <dums@stlport...>
1.280 +
1.281 + * test/unit/bitset_test.cpp: Add test for the to_string member
1.282 + method.
1.283 +
1.284 + * stlport/stl/config/_msvc.h, test/unit/locale_test.cpp: Change
1.285 + MSVC6 configuration that now defines _STLP_NO_EXPLICIT_FUNCTION_TMPL_ARGS.
1.286 + Even if MSVC6 supports explicit specification of function template
1.287 + parameters it do not support the explicit specification for
1.288 + template methods, unit tests are showing this problem.
1.289 +
1.290 + * stlport/stl/type_traits.h, _alloc.h: Small change in stateless
1.291 + class detection feature. Introduce _IsStateless helper struct for
1.292 + this purpose even if it can only be used with pure class type and
1.293 + not with build-in types or enum or union. It avoids MSVC8 warnings.
1.294 +
1.295 +2007-02-25 Francois Dumont <dums@stlport...>
1.296 +
1.297 + * 5.1.2 released based on revision 2937, tag STLport-5.1.2 created.
1.298 +
1.299 + * stlport/stl/config/_prolog.h, build/Makefiles/gmake/bcc.mak,
1.300 + Patch from Eric Sanford to remove empty base class optimization
1.301 + for Borland compilers.
1.302 +
1.303 + * test/unit/vector_test.cpp: Enable VectorTest::ebo test for Borland
1.304 + compilers.
1.305 +
1.306 +2007-02-22 Francois Dumont <dums@stlport...>
1.307 +
1.308 + * stlport/stl/_alloc.h: Add a workaround for compilers with buggy
1.309 + empty base class optimization which is used in _STLP_alloc_proxy
1.310 + class.
1.311 +
1.312 + * test/unit/vector_test.cpp: New test case VectorTest::ebo to show
1.313 + problem above.
1.314 +
1.315 +2007-02-21 Francois Dumont <dums@stlport...>
1.316 +
1.317 + * src/c_locale_win32/c_locale_win32.c: Fixed __ConvertDate and
1.318 + __ConvertTime to avoid potential infinite loop (bug report
1.319 + 1663604)
1.320 +
1.321 +2007-02-16 Francois Dumont <dums@stlport...>
1.322 +
1.323 + * STLport 5.1.1 released based on revision 2919. STLport-5.1.1
1.324 + tag created.
1.325 +
1.326 +2007-02-14 Francois Dumont <dums@stlport...>
1.327 +
1.328 + * stlport/stl/config/_intel.h: Configuration fix, Intel compiler
1.329 + before 8.1 have problem with template method specialization. Thanks
1.330 + Dragan Tubic.
1.331 +
1.332 +2007-02-09 Francois Dumont <dums@stlport...>
1.333 +
1.334 + * test/unit/locale_test.cpp: Enhance LocaleTest::collate_facet
1.335 + test case to reveal a bug in glibc localization portage.
1.336 +
1.337 + * src/c_locale_glibc/c_locale_glibc2.c: Fixed _Locale_strcmp
1.338 + and _Locale_strcmp and _Locale_strwcmp implementation to take
1.339 + into account buffer size, comparison used to always been done on the
1.340 + whole input strings up to the termination character.
1.341 +
1.342 + * stlport/stl/type_manips.h, test/unit/mvctor_test.cpp,
1.343 + type_traits_test.cpp: Remove relation between STLport __true_type and
1.344 + __false_type and homonyms ones in libstd++. Add workaround in the 2
1.345 + test suite requiring use of those types.
1.346 +
1.347 +2007-02-08 Francois Dumont <dums@stlport...>
1.348 +
1.349 + * stlport/stl/_threads.h, src/locale.cpp: Add missing parenthesis
1.350 + in some macro checks thanks Jan Echternash bug report 1653966.
1.351 +
1.352 + * test/unit/locale_test.cpp: Made LocaleTest::collate_facet test
1.353 + really meaningful even if it requires french locale support for
1.354 + part of it.
1.355 +
1.356 +2007-02-01 Petr Ovtchenkov <complement@users.sourceforge.net>
1.357 +
1.358 + * stlport/stl/config/_solaris.h: __LONG_MAX__ defined on
1.359 + 64-bits SPARCs. Thanks Aleksey Sanin.
1.360 +
1.361 + * stlport/stl/_sparc_atomic.h, stlport/stl/_threads.h: fixes
1.362 + for modern SPARCs. Thanks Aleksey Sanin.
1.363 +
1.364 +2007-01-28 Francois Dumont <dums@stlport...>
1.365 +
1.366 + * stlport/stl/debug/_deque.h: Fix iterator invalidation in erase
1.367 + of an iterator range thanks to Steve Lobasso indirect report (bug
1.368 + 1645657).
1.369 +
1.370 + * test/unit/deque_test.cpp: New test case for deque erase methods.
1.371 +
1.372 +2007-01-19 Francois Dumont <dums@stlport...>
1.373 +
1.374 + * stlport/stl/_locale.h, src/locale.cpp: Add throw() specification
1.375 + on locale default constructor. Add const qualifier on locale::combine
1.376 + method. Fixed combine implementation to correctly combine
1.377 + *this with other locale instance.
1.378 +
1.379 + * src/locale_impl.h: Removed _get_Locale_impl and
1.380 + _copy_Nameless_Locale_impl already defined in stlport/stl/_locale.h.
1.381 +
1.382 + * src/locale_impl.cpp: In _Locale_impl::insert add check that we
1.383 + are working on 2 different facet instances before substitution.
1.384 +
1.385 + * test/unit/locale_test.cpp: Add test case for locale::combine
1.386 + method.
1.387 +
1.388 +2007-01-12 Francois Dumont <dums@stlport...>
1.389 +
1.390 + * c_locale.h, c_locale_dummy.c, c_locale_glibc.c, c_locale_glibc2.c,
1.391 + c_locale_win32.c: Creation of 2 new functions in the localization
1.392 + framework _Locale_init and _Locale_final to allow localization
1.393 + implementations to initialize and release any necessary resources.
1.394 +
1.395 + * src/iostream.cpp: Call _Locale_init during io streams initialization
1.396 + and _Locale_final at end.
1.397 +
1.398 + * c_locale_win32/c_locale_win32.c: Add synchronization for locale
1.399 + lcid look up from name required in multithreaded environment. Two
1.400 + threads instanciating two facet instances from a given name might
1.401 + have collide resulting in an undefined behavior. Critical section
1.402 + used for synchronization is initialized in _Locale_init and freed
1.403 + in _Locale_final.
1.404 +
1.405 + * c_locale_win32/c_locale_win32.c: Add several fields in
1.406 + _Locale_time struct to avoid use of static buffers in some locale
1.407 + support functions like _Locale_d_t_fmt _Locale_long_d_t_fmt...
1.408 + Moreover time format cannot be truncated anymore.
1.409 +
1.410 + * stlport/stl/config/_windows.h: Introduce _STLP_WIN32_VERSION
1.411 + macro set to WINVER or _WIN32_WINDOWS value depending on what
1.412 + macro is defined.
1.413 +
1.414 + * stlport/stl/_threads.h, src/locale.cpp: Add _STLP_WIN32_VERSION
1.415 + checks to detect Windows 95 platform having a special
1.416 + _STLP_ATOMIC_INCREMENT and _STLP_ATOMIC_DECREMENT behavior.
1.417 +
1.418 +2007-01-08 Francois Dumont <dums@stlport...>
1.419 +
1.420 + * stlport/stl/_deque.c: Patch from Kevin Lin to fix iterator
1.421 + returned by insert at position method.
1.422 +
1.423 + * test/unit/deque_test.cpp: Add test case for the deque::insert
1.424 + methods.
1.425 +
1.426 +2006-11-27 Francois Dumont <dums@stlport...>
1.427 +
1.428 + * stlport/stl/config/_windows.h: Patch from Michael Fink to check
1.429 + inclusion of winbase.h and windows.h.
1.430 +
1.431 +2006-11-24 Francois Dumont <dums@stlport...>
1.432 +
1.433 + * stlport/stl/_fstream.h, src/fstream.cpp, iostream.cpp: Restore
1.434 + computation of the system dependant page size that was hardcoded
1.435 + to 4096. Initialisation code has been moved to a static method
1.436 + called just after Standard iostream initialisation. This code used
1.437 + to be in the _Filebuf_base constructor that might have been called
1.438 + simultaneously by several threads.
1.439 +
1.440 +2006-11-17 Francois Dumont <dums@stlport...>
1.441 +
1.442 + * stlport/stl/config/_macosx.h: Add endianess configuration.
1.443 +
1.444 +2006-11-16 Francois Dumont <dums@stlport...>
1.445 +
1.446 + * test/unit/resolve_name.cpp: Clean most of MSVC6 workaround, only
1.447 + one has been kept to have the test pass.
1.448 +
1.449 +2006-11-13 Francois Dumont <dums@stlport...>
1.450 +
1.451 + * stlport/stl/_cwchar.h: Patch from Michael Fink to fix EVC3
1.452 + missing mbstate_t definition.
1.453 +
1.454 +2006-11-07 Francois Dumont <dums@stlport...>
1.455 +
1.456 + * stlport/stl/_threads.h: Removed _Atomic_swap_struct export
1.457 + that should be useless as completely inlined. Moreover it was
1.458 + generating a compilation error using MSVC 2005 under Windows
1.459 + 64 bits.
1.460 +
1.461 +2006-10-26 Francois Dumont <dums@stlport...>
1.462 +
1.463 + * test/unit/codecvt_test.cpp: Removed try/catch blocks not
1.464 + supported by platform missing exception support and moreover
1.465 + useless as we know the code called in the try and this code
1.466 + do not throw (thanks Michael Fink report).
1.467 +
1.468 + * build/Makefiles/nmake/targetdirs.mak, lib/clean.mak, app/clean.mak:
1.469 + Complete clobber and distclean rules to really clean all generated
1.470 + stuffs.
1.471 +
1.472 + * build/Makefiles/nmake/top.mak: Patch from Gary Bartlett to make nmake
1.473 + 'all' rule the default rule.
1.474 +
1.475 +2006-10-25 Francois Dumont <dums@stlport...>
1.476 +
1.477 + * src/dll_main.cpp: Fix syntax error '>>' rather than '> >' in
1.478 + a _STLP_alloc_proxy explicit instanciation.
1.479 +
1.480 + * stlport/stl/_unordered_set.h: Fix template method for the
1.481 + associative container extension, use _KT type rather than key_type.
1.482 +
1.483 +2006-10-20 Francois Dumont <dums@stlport...>
1.484 +
1.485 + * stlport/stl/config: Removed some used macros
1.486 + _STLP_AUTOMATIC_TYPE_TRAITS
1.487 + _STLP_UNINITIALIZABLE_PRIVATE
1.488 + _STLP_STATIC_ARRAY_BUG
1.489 + _STLP_FULL_ADL_IMPLEMENTED
1.490 +
1.491 + * test/unit/codecvt_test.cpp: Ignore test when
1.492 + _STLP_NO_MEMBER_TEMPLATES defined.
1.493 +
1.494 +2006-10-20 Petr Ovtchenkov <complement@users.sourceforge.net>
1.495 +
1.496 + * stlport/stl/_cwchar.h: fix HP-UX problem with WCHAR_MIN, WCHAR_MAX
1.497 + [Boris Gubenko].
1.498 +
1.499 +2006-10-19 Petr Ovtchenkov <complement@users.sourceforge.net>
1.500 +
1.501 + * test/unit/sstream_test.cpp: check bugreport #1580020, not confirmed.
1.502 +
1.503 +2006-10-17 Francois Dumont <dums@stlport...>
1.504 +
1.505 + * stlport/stl/_cwchar.h: Restore code to define potentially missing
1.506 + WCHAR_MIN, WCHAR_MAX macros. It used to be in _mbstate_t.h but was
1.507 + missing some native includes to work, in _cwchar.h everything should
1.508 + be fine.
1.509 +
1.510 + * test/unit/codecvt_test.cpp: Fix C cast that was losing const
1.511 + qualifier.
1.512 +
1.513 + * stlport/stl/_mbstate_t.h: Avoid definition of _STLP_NO_MBSTATE_T when
1.514 + using own mbstate_t definition in _STLP_USE_NO_IOSTREAMS mode. This macro
1.515 + is not supported anymore and should be fixed or removed in future version.
1.516 + Own mbstate_t will be defined even in no iostreams mode.
1.517 +
1.518 + * stlport/stl/config/_evc.h: Now that mbstate_t situation is clear EVC3
1.519 + defines _STLP_NO_NATIVE_MBSTATE_T rather than directly defining it in
1.520 + the config file.
1.521 +
1.522 + * test/unit: Several fixes to build with _STLP_NO_EXTENSIONS and
1.523 + _STLP_NO_ANACHRONISMS.
1.524 +
1.525 +2006-10-16 Petr Ovtchenkov <complement@users.sourceforge.net>
1.526 +
1.527 + * stlport/stl/_mbstate_t.h: this header may be included from system
1.528 + stddef.h, without wchar.h---defines of wchar limits isn't good place
1.529 + here [WCHAR_MAX, etc.].
1.530 +
1.531 + * test/unit/cwchar.cpp: correct test to hilight problem above.
1.532 +
1.533 +2006-10-14 Petr Ovtchenkov <complement@users.sourceforge.net>
1.534 +
1.535 + * test/unit/cwchar.cpp, build/test/unit/Makefile.inc: test a few macros
1.536 + related to wchar. Inspired by problems in STLPORT_5_1 and boost::regex.
1.537 +
1.538 +2006-10-12 Francois Dumont <dums@stlport...>
1.539 +
1.540 + * stlport/stl/_numpunct.h, src/numpunct.cpp: numpunct facet _M_truename
1.541 + _M_falsename and _M_grouping are not static anymore. This seems useless
1.542 + and moreover was introducing static initialisation order and threading
1.543 + issues.
1.544 +
1.545 + * stlport/stl/c_locale.h, _mbstate_t.h, src/c_locale.h, c_locale.c:
1.546 + New mbstate_t policy. When no mbstate_t in native library STLport defines
1.547 + one for its own need in localisation support. This mbstate_t is simply
1.548 + an int defined in global namespace and imported to STLport namespace.
1.549 + Internal localisation framework is nt anymore in STLport namespace but
1.550 + in the global one as it is normaly a C framework.
1.551 +
1.552 + * stlport/stl/config/_bc.h: Defines _STLP_NO_NATIVE_MBSTATE_T rather
1.553 + than internal _STLP_USE_OWN_MBSTATE_T macro.
1.554 +
1.555 + * stlport/stl/config/_evc.h: Add comment for EVC3 users, this platform
1.556 + should define _STLP_NO_NATIVE_MBSTATE_T, but I have not the platform
1.557 + to check...
1.558 +
1.559 + * build/Makefiles/gmake/bcc.mak: Do not force anymore built of C sources
1.560 + as C++.
1.561 +
1.562 + * test/unit/string_test.cpp, istmit_test.cpp: Fixed macro checks to make
1.563 + tests buildable even when _STLP_NO_IOSTREAMS is defined.
1.564 +
1.565 +2006-10-09 Francois Dumont <dums@stlport...>
1.566 +
1.567 + * test/unit/codecvt_test.cpp: Fix use of mbstate_t to make it more
1.568 + portable.
1.569 +
1.570 +2006-10-06 Francois Dumont <dums@stlport...>
1.571 +
1.572 + * stlport/stl/_alloc.h, _alloc.c: Fixed __debug_alloc implementation
1.573 + to avoid unjustified assertion about wrong size of buffer to
1.574 + deallocate, thanks David Deakins and verntx on sourceforge.
1.575 +
1.576 + * test/unit/vector_test.cpp: Add test for bug above.
1.577 +
1.578 + * stlport/wchar.h, stl/_cwchar.h, _istream.h, _limits.h, _locale.h,
1.579 + _threads.h, char_traits.h, type_traits.h, _mbstate_t.h: Fix regression
1.580 + introduce by inclusion of mbstate_t.h in wchar.h. Now _mbstate_t.h is
1.581 + only included at end of wchar.h and _cwchar.h. All places where _mbstate_t.h
1.582 + was used are now including _cwchar.h.
1.583 +
1.584 +2006-10-05 Francois Dumont <dums@stlport...>
1.585 +
1.586 + * build/Makefiles/gmake/bcc.mak: Use -P compiler to force build of C
1.587 + translation as C++ because of the mbstate_t problem.
1.588 +
1.589 + * build/Makefiles/gmake/lib/bcc.mak, rules-a.mak: Fix Borland tlib call
1.590 + syntax thanks mbkenny.
1.591 +
1.592 + * stlport/stl/wchar.h: Add include of internal _mbstate_t.h file to
1.593 + know STLport status regarding mbstate_t configuration.
1.594 +
1.595 + * stlport/stl/c_locale.h: When building platform localisation support
1.596 + as C++ struct declaration are done in STLport namespace.
1.597 +
1.598 + * src/c_locale.h: Removed _mbstate_t.h include that is now included
1.599 + from wchar.h or _cwchar.h depending on C or C++ build. Removed #error
1.600 + done too early (see next comment).
1.601 +
1.602 + * src/c_locale.c: Add #error statement when building STLport on a platform
1.603 + having real localisation support but no native mbstate_t definition. In this
1.604 + case c_locale.c must be built as a C++ translation unit.
1.605 +
1.606 + * src/c_locale_win32/c_locale_win32.c: Add Borland workaround to avoid
1.607 + compilation error now that it is build as a C++ translation unit.
1.608 +
1.609 + * stlport/stl/_mbstate_t.h: Now that this file is not included from outside
1.610 + world we can include internal _cwchar.h rather than cwchar. Removed
1.611 + a wint_t workaround already existing in _cwchar.h. Removed Borland workaround
1.612 + that was defining mbstate_t when using this file in a C context, it was
1.613 + moreover different than the definition in C++ ! Ad a pure C declaration of
1.614 + mbstate_t when in C.
1.615 +
1.616 +2006-10-04 Francois Dumont <dums@stlport...>
1.617 +
1.618 + * src/c_locale.h: Add #error to signal issue when building c_locale.c
1.619 + as a C source when STLport uses its own mbstate_t definition.
1.620 +
1.621 + * src/num_put_float.cpp: Modification in Cygwin native lib headers
1.622 + revealed that we were missing ieeefp.h include.
1.623 +
1.624 + * src/dll_main.cpp, stlport/stl/_threads.h: Fix export of
1.625 + _Atomic_swap_struct for compilers supporting export of templates.
1.626 +
1.627 + * stlport/stl/config/_hpacc.h: Some cleanup (unknown _STLP_NO_KOENIG_LOOKUP
1.628 + macro) and formating fixes.
1.629 +
1.630 + * stlport/stl/_bvector.h: Use _STLP_DECLARE_RANDOM_ACCESS_REVERSE_ITERATORS
1.631 + rather than reproducing the workaround hidden by this macro.
1.632 +
1.633 + * test/unit/vector_test.cpp: Add test case to check iterators comparisons.
1.634 +
1.635 +2006-09-26 Francois Dumont <dums@stlport...>
1.636 +
1.637 + * src/allocators.cpp: Reorder code blocks to fix build when using
1.638 + _STLP_LEAKS_PEDANTIC.
1.639 +
1.640 + * stlport/stl/_num_put.c: Restore __len >= 2 check in
1.641 + __copy_integer_and_fill function. It has been removed on the
1.642 + 2006-07-11, at this time STLport always add the base information
1.643 + even for 0 value. This modification has been rollback but not this
1.644 + check.
1.645 +
1.646 + * test/unit/num_put_get_test.cpp: Add check for above fix.
1.647 +
1.648 +2006-09-26 Francois Dumont <dums@stlport...>
1.649 +
1.650 + * src/c_locale_win32/c_locale_win32.c: Add check of code page when
1.651 + specified in locale name.
1.652 +
1.653 + * src/c_locale_win32/c_locale_win32.c: Add checks in __ConvertDate
1.654 + and _Locale_t_fmt to avoid potential buffer overflow.
1.655 +
1.656 + * src/c_locale_win32/c_locale_win32.c: Create __GetLocaleInfoUsingACP
1.657 + function that merge a call to GetLocaleInfoA and a call to
1.658 + __ConvertFromACP in one call, the latter function has been removed.
1.659 +
1.660 + * src/c_locale.h: Restore _STLP_BEGIN_NAMESPACE when STLport use
1.661 + its own mbstate_t definition which is only available in STLport
1.662 + namespace. Fix Borland regression.
1.663 +
1.664 + * stlport/stl/_mbstate_t.h: Replace stl/_cwchar.h include with
1.665 + a cwchar one as this file is included from the outside world when
1.666 + building STLport lib.
1.667 +
1.668 +2006-09-25 Francois Dumont <dums@stlport...>
1.669 +
1.670 + * test/unit/codecvt_test.cpp: New test case for the codecvt
1.671 + facet.
1.672 +
1.673 + * test/unit/unordered_test.cpp: size_t replace by int to avoid
1.674 + 64bits issue warning.
1.675 +
1.676 +2006-09-21 Francois Dumont <dums@stlport...>
1.677 +
1.678 + * stlport/stl/c_locale.h: Patch from Boris Gubenko to avoid
1.679 + direct inclusion of internal header from this header that is
1.680 + access from the outside world when building STLport lib.
1.681 +
1.682 +2006-09-20 Francois Dumont <dums@stlport...>
1.683 +
1.684 + * test/unit/allocator_test.cpp: Add new test case for allocation of
1.685 + empty buffer.
1.686 +
1.687 + * test/unit/fstream_test.cpp: Use a variable to always point to the same
1.688 + test file and adopt a 'Standard' file name 'test_file.txt'.
1.689 +
1.690 + * stlport/stl/_hash_fun.h: Rollback 2006-08-26 Petr modification that
1.691 + was introducing a regression with MSVC compilers.
1.692 +
1.693 + * stlport/stl/_fstream.c: First attempt to fix seekoff basic_filebuf
1.694 + implementation when dealing with a codecvt facet having variable
1.695 + encoding. This fix is surely not complete, discussion with Uli is not
1.696 + over.
1.697 +
1.698 +2006-09-13 Francois Dumont <dums@stlport...>
1.699 +
1.700 + * stlport/stl/_exception.h: Made a previously general Windows 64 bits
1.701 + workaround specific to the cross compiler coming with PSDK. Thanks
1.702 + Igor Pavlov.
1.703 +
1.704 +2006-09-11 Francois Dumont <dums@stlport...>
1.705 +
1.706 + * stlport/stl/_num_put.c: Modification in __do_put_integer to avoid
1.707 + a Hp aCC workaround.
1.708 +
1.709 +2006-09-11 Petr Ovtchenkov <complement@users.sourceforge.net>
1.710 +
1.711 + * stlport/stl/_algo.c: search_n with predicate fail in case
1.712 + when subsequence size is 1; thanks Timmie Smith.
1.713 +
1.714 + * test/unit/alg_test.cpp: test for problem.
1.715 +
1.716 +2006-09-08 Francois Dumont <dums@stlport...>
1.717 +
1.718 + * src/c_locale_win32/c_locale_win32.c: Modification in __GetLCIDFromName
1.719 + to support the Chinese_Taiwan locale. Add of a __GetLCID call when first
1.720 + call to it using non NLS mapping fails.
1.721 +
1.722 + * src/c_locale_win32/c_locale_win32.c: Change __ParseLocaleString
1.723 + implementation to correctly handle locale with a name having '.' in
1.724 + the language or country part like in 'Chinese_Hong Kong S.A.R..950'.
1.725 +
1.726 +2006-09-05 Francois Dumont <dums@stlport...>
1.727 +
1.728 + * build/lib/configure.bat: Fixed comment for --rtl-dynamic and
1.729 + --rtl-static options, impact on macros to uncomment in hosts.h
1.730 + config file was inversed. Thanks Igor Pavlov.
1.731 +
1.732 + * build/lib/configure.bat, doc/FAQ, doc/README.msvc,
1.733 + stlport/stl/config/user_config.h, _hpacc.h: Replaced references to
1.734 + _site_config.h by hosts.h. Thanks Igor Pavlov.
1.735 +
1.736 +2006-08-30 Francois Dumont <dums@stlport...>
1.737 +
1.738 + * stlport/stl/_cmath.h, _cstdlib.h: Patch from Boris Gubenko, Hp aCC
1.739 + native Standard lib already define math functions in global namespace.
1.740 +
1.741 + * stlport/stl/_num_put.c: Patch from Boris Gubenko, Hp aCC before version
1.742 + 60000 do not consider 'const ptrdiff_t' as const enough to be used in a
1.743 + static buffer declaration.
1.744 +
1.745 +2006-08-26 Petr Ovtchenkov <complement@users.sourceforge.net>
1.746 +
1.747 + * stlport/stl/_hashtable.c: allow smaller bucket counts for
1.748 + hashtable. Thanks Herbert Duerr.
1.749 +
1.750 + * stlport/stl/_hash_fun.h: use primary types for hasher, not
1.751 + typedefs.
1.752 +
1.753 + * stlport/stl/type_manips.h: workaround for __true_type/__false_type
1.754 + for various versions gcc (oh, yes, gcc, it's real pain to detect
1.755 + real version of libstdc++)
1.756 +
1.757 +2006-08-10 Petr Ovtchenkov <complement@users.sourceforge.net>
1.758 +
1.759 + * stlport/stdlib.h: include errno.h for aCC, in case of -mt option in force.
1.760 + This solve errno problem on HP-UX. Thanks Boris Gubenko.
1.761 +
1.762 +2006-08-09 Francois Dumont <dums@stlport...>
1.763 +
1.764 + * stlport/stl/config/_msvc.h: Add _STLP_NORETURN_FUNCTION for MSVC
1.765 + compilers.
1.766 +
1.767 + * stlport: Move place of _STLP_FUNCTION_THROWS in function declaration to
1.768 + make msvc compiler happier, gcc do not care about position of this
1.769 + attribute.
1.770 +
1.771 + * stlport/stl/_ioserr.h: Fixed specification of STLport configuration file
1.772 + in #error statement.
1.773 +
1.774 +2006-08-04 Francois Dumont <dums@stlport...>
1.775 +
1.776 + * stlport: Create _STLP_FUNCTION_THROWS depending on _STLP_NORETURN_FUNCTION
1.777 + and also taking into account exception handling configuration.
1.778 +
1.779 + * test/unit/alg_test.cpp, istmit_test.cpp: Fixes to make test buildable with
1.780 + native compiler Standard library.
1.781 +
1.782 +2006-08-03 Francois Dumont <dums@stlport...>
1.783 +
1.784 + * build/Makefiles/nmake/evc8.mak: Patch from Ulrich Echkardt to activate
1.785 + whole program optimization.
1.786 +
1.787 +2006-07-31 Francois Dumont <dums@stlport...>
1.788 +
1.789 + * Patch from Michael Fink to fix EVC emulator build.
1.790 +
1.791 +2006-07-26 Francois Dumont <dums@stlport...>
1.792 +
1.793 + * src/fstream.cpp: Fixed MMAP_CHUNK definition, an offset type is signed.
1.794 +
1.795 + * Creation of the 5.1.0 RC2 package.
1.796 +
1.797 + * Creation of STLPORT_5_1_RC2 tag
1.798 +
1.799 +2006-07-25 Francois Dumont <dums@stlport...>
1.800 +
1.801 + * stlport/stl/config/_system.h, _windows.h: Fixed MinGW config that also
1.802 + need _windows.h.
1.803 +
1.804 + * stlport/stl/config/_mingw.h: Removed, conflict with platform system
1.805 + header.
1.806 +
1.807 +2006-07-22 Francois Dumont <dums@stlport...>
1.808 +
1.809 + * stlport/stl/config: Add _STLP_PLATFORM and _STLP_COMPILER repectively
1.810 + containing STLport detected platform and compiler names. Some names
1.811 + are surely not accurate and will be fixed but introducing those macros,
1.812 + especially _STLP_COMPILER, help to report detection issue.
1.813 +
1.814 + * stlport/stl/config/_system.h: Change macro checks in order to guaranty
1.815 + that only one platform and only one compiler configuration file will be
1.816 + included.
1.817 +
1.818 + * stlport/stl/config/_cygwin.h, _mingw.h: Added
1.819 +
1.820 + * stlport/stl/config/features.h: Removed _STLP_NO_MEMBER_TEMPLATE_CLASSES
1.821 + check when _STLP_USE_TEMPLATE_EXPRESSION is activated.
1.822 +
1.823 + * stlport/stl/config/_gcc.h, features.h: Add _STLP_NORETURN_FUNCTION
1.824 + to signal function not returning, under gcc we use __attribute__((noreturn)).
1.825 +
1.826 + * src/locale_impl.h, stlport/stl/_ios_base.h, _locale.h, _range_errors.h,
1.827 + _rope.h, _string_base.h, _vector.h, debug/_debug.h: Add
1.828 + _STLP_NORETURN_FUNCTION to function that encapsulate raising of exceptions.
1.829 + This help to limit warnings about uninitialized variable before use under
1.830 + gcc.
1.831 +
1.832 +2006-07-18 Francois Dumont <dums@stlport...>
1.833 +
1.834 + * test/unit/unordered_test.cpp: Change Key data type from size_t
1.835 + to the more portable int. Fix what seems to be a bad code generation
1.836 + of gcc under Linux 64 bits resulting in a test failure.
1.837 +
1.838 +2006-07-17 Francois Dumont <dums@stlport...>
1.839 +
1.840 + * test/unit/alg_test.cpp: New test for find_first_of algo.
1.841 +
1.842 + * stlport/stl/config/user_config.h, features.h: string template
1.843 + expressions is not a transparent feature, some compilers (VC6)
1.844 + are experimenting ICE with it or some other (gcc) do not accept
1.845 + it when extending string class (see mystring in
1.846 + test/unit/string_test.cpp). So default STLport configuration will
1.847 + be without string template expression, _STLP_DONT_USE_TEMPLATE_EXPRESSION
1.848 + has been replaced by _STLP_USE_TEMPLATE_EXPRESSION.
1.849 +
1.850 +2006-07-16 Francois Dumont <dums@stlport...>
1.851 +
1.852 + * test/unit/mvctor_test.cpp: Patch from Michael Fink to avoid a EVC
1.853 + ARM crash.
1.854 +
1.855 +2006-07-13 Francois Dumont <dums@stlport...>
1.856 +
1.857 + * stlport/stl/_num_put.c: Rollback modif above, according C printf doc
1.858 + 0 value shouldn't show their base.
1.859 +
1.860 + * stlport/stl/type_traits.h: Avoid instanciation of _IsCVConvertible if
1.861 + not dealing with pointers. Systematical instanciation was giving
1.862 + compilation error as soon as type had a special memory alignment, such
1.863 + types cannot be pass by value in function calls. Thanks andy2222 from
1.864 + sourceforge.
1.865 +
1.866 + * build/Makefiles/nmake/evc3.mak, evc4.mak, evc8.mak: Patch from Ulrich
1.867 + Eckhardt to remove commctrl.lib dependency, for the moment evc3 and evc4
1.868 + only contains a note about this potentially useless dependency.
1.869 +
1.870 + * stlport/stl/debug/_string.h: Add missing copy methods in the debug
1.871 + string implementation thanks Patrick Bennett report.
1.872 +
1.873 + * test/unit/string_test.cpp: New copy test case for string::copy.
1.874 +
1.875 + * stlport/stl/_algo.h: Add missing _STLP_PRIV namespace scope in calls
1.876 + to __find_first_of thanks Patrick Bennett report.
1.877 +
1.878 +2006-07-11 Francois Dumont <dums@stlport...>
1.879 +
1.880 + * stlport/stl/debug/_deque.h, _list.h, _slist.h, _string.h, _vector.h:
1.881 + Extend use of _Non_Dbg_iter function in all template methods dealing
1.882 + with iterator range.
1.883 +
1.884 + * _num_put.c: Fix to show base in octal or hexadecimal mode even for
1.885 + 0 value.
1.886 +
1.887 + * stlport/stl/_istream.c: Avoid modification of value to extract in
1.888 + formatted input of short and int when value would overflow.
1.889 +
1.890 + * test/unit/num_put_get_test.cpp: Add some tests for above fixes.
1.891 +
1.892 + * test/unit/iostream_test.cpp: New tests for general stream
1.893 + manipulations.
1.894 +
1.895 + * stlport/stl/_istream.h: Fix ws iostream function, it do not set failbit
1.896 + anymore when stream is in eof state.
1.897 +
1.898 + * build/lib/msvc.mak: Generation of config.mak is not mandatory anymore
1.899 + as Intel compiler do not need it for the moment. Only a COMPILER_NAME
1.900 + is mandatory which is given by icl.mak for Intel compilers and by
1.901 + config.mak for Microsoft ones.
1.902 +
1.903 +2006-07-10 Francois Dumont <dums@stlport...>
1.904 +
1.905 + * stlport/stl/debug/_iterator.h: Creation of _Non_Dbg_iter function
1.906 + returning native iterator of special debug iterator with
1.907 + compilers supporting partial template function ordering. Fix
1.908 + a MSVC .Net 2003 issue that seems to be related to a too important
1.909 + template depth.
1.910 +
1.911 + * stlport/stl/debug/_deque.h, _list.h, _slist.h, _string.h, _vector.h:
1.912 + Use new _Non_Dbg_iter function in constructors from iterator
1.913 + range.
1.914 +
1.915 +2006-07-07 Petr Ovtchenkov <complement@users.sourceforge.net>
1.916 +
1.917 + * build/lib/configure: rollback changes 4 Jul 2006 19:42:55,
1.918 + it's definitely wrong (phrase with quotes ['] requires double
1.919 + quotes ["]).
1.920 +
1.921 +2006-07-06 Francois Dumont <dums@stlport...>
1.922 +
1.923 + * stlport/stl/_num_put.c: Small refactoring with introduction
1.924 + of the __do_put_integer function for integer types output. Moreover
1.925 + static buffer size used for formating is now based on output
1.926 + type sizeof.
1.927 +
1.928 + * stlport/stl/_ostream.c: Add some assertion before cast to check that
1.929 + no significant digit is lost. Add cast to long in int and short output
1.930 + in order to make type of expression more explicit and correct. This
1.931 + fix the bug report from Geoffrey Bache on sourceforge about output of
1.932 + -1 ont value on 64bits linux.
1.933 +
1.934 + * test/unit/floatio_test.cpp: Removed, all code moved to NumPutGetTest
1.935 + test fixture.
1.936 +
1.937 + * test/unit/num_put_get_test.cpp: New, contains all tests regarding
1.938 + input/output of numeric values (locale independant).
1.939 +
1.940 + * test/unit/locale_test.cpp: locale independant tests of numeric input/
1.941 + output moved to NumPutGetTest test fixture.
1.942 +
1.943 +2006-07-04 Francois Dumont <dums@stlport...>
1.944 +
1.945 + * stlport/stl/_rope.h, _rope.c: Patch from Peter Hercek to fix a
1.946 + missing null termination in rope constructor from a character
1.947 + and a buffer overrun.
1.948 +
1.949 + * stlport/stl/_rope.h: Removed special _S_rounded_up implementation
1.950 + for other types than char and wchar_t. rope implementation is
1.951 + expecting this method to always return a size > to the given size in
1.952 + order to store the terminating null character.
1.953 +
1.954 + * stlport/stl/_rope.c: Fix reference counter management to avoid memory
1.955 + leak in _S_destr_concat_char_iter.
1.956 +
1.957 +2006-06-30 Francois Dumont <dums@stlport...>
1.958 +
1.959 + * src/num_put.cpp, num_put_float.cpp: Patch from Glen Summers
1.960 + to fix float output using locale with grouping and float value
1.961 + has no decimal.
1.962 +
1.963 + * test/unit/locale_test.cpp: Add some tests showing above bug.
1.964 +
1.965 +2006-06-29 Francois Dumont <dums@stlport...>
1.966 +
1.967 + * stlport/stl/_algo.h, _algo.c, _algobase.h, _algobase.c,
1.968 + _hashtable.c: Patch from Andriy Syrovenko to fix implementation
1.969 + of __equal_range, __lower_bound, __upper_bound when dealing with
1.970 + a key whom type is different from the value_type of the iterator.
1.971 +
1.972 + * test/unit/equal_test.cpp: Add some tests to show above bug.
1.973 +
1.974 +2006-06-28 Francois Dumont <dums@stlport...>
1.975 +
1.976 + * stlport/stl/_string_sum_methods.h, debug/_string_sum_methods.h:
1.977 + Small refactoring and simplification of code to avoid a parameter
1.978 + with default value. This fixing an ICE using MSVC6.
1.979 +
1.980 + * test/unit/string_test.cpp: Ignore the newly introduce te_tmp
1.981 + test using MSVC6.
1.982 +
1.983 +2006-06-27 Petr Ovtchenkov <complement@users.sourceforge.net>
1.984 +
1.985 + * stlport/stl/_list.h: fix bug in list.swap, thanks Viktor Govako.
1.986 +
1.987 + * test/unit/list_test.cpp: test for bug above.
1.988 +
1.989 +2006-06-27 Francois Dumont <dums@stlport...>
1.990 +
1.991 + * build/lib/configure: Add --with-lib_motif option to grant STLport
1.992 + users the possibility of tweaking the generated libraries name.
1.993 +
1.994 + * build/Makefiles/gmake/unix/lib.mak: Add code to take into account
1.995 + configured lib motif in generated library name.
1.996 +
1.997 + * build/Makefiles/gmake/netware/lib.mak: Looks like it needs same
1.998 + defines as the ones in cygming/lib.mak so we simply include this
1.999 + file.
1.1000 +
1.1001 + * stlport/stl/config/_evc.h: Patch from Michael Fink to fix a
1.1002 + compilation error.
1.1003 +
1.1004 + * test/unit/cppunit/cppunit_mini.h: Patch from Michael Fink to
1.1005 + avoid unused parameter warning.
1.1006 +
1.1007 +2006-06-23 Francois Dumont <dums@stlport...>
1.1008 +
1.1009 + * stlport/stl/_pair.h, _bvector.h, config/_evc.h: Patch from
1.1010 + Ulrich Eckhardt to extend an evc4 MIPS workaround for eVC8
1.1011 + and to generalize little endian configuration.
1.1012 +
1.1013 + * DMC patch from Eric Sanford. Define _STLP_NO_FUNTION_TMPL_PARTIAL_ORDER
1.1014 + so that many ignored unit test could be now passed. Also specify
1.1015 + Intel 386 instruction set during compilation to limit link errors.
1.1016 +
1.1017 +2006-06-22 Francois Dumont <dums@stlport...>
1.1018 +
1.1019 + * stlport/stl/_algobase.c: Removed check of equivalent predicate
1.1020 + commutativity in find algorithm. In this case, equivalence relation
1.1021 + might have been implemented using a member operator == which is
1.1022 + not commutative thanks Grisha Spivak report. Other checks that are
1.1023 + using an explicit predicate parameter has been kept even if it forces
1.1024 + STLport users to implement commutative functor.
1.1025 +
1.1026 + * test/unit/find_test.cpp: Add test to show above issue.
1.1027 +
1.1028 + * stlport/stl/_hashtable.c: Removed equivalent predicate checks
1.1029 + that are useless as in _STLP_DEBUG mode the debug wrapping add this
1.1030 + check in the functor used to instanciate the non debug hashtable
1.1031 + implementation.
1.1032 +
1.1033 +2006-06-19 Francois Dumont <dums@stlport...>
1.1034 +
1.1035 + * STLport 5.1.0 candidate released. STLPORT_5_1 branch created in
1.1036 + CVS. Version tagged STLPORT_5_1_RC1.
1.1037 +
1.1038 +2006-06-17 Francois Dumont <dums@stlport...>
1.1039 +
1.1040 + * test/unit/type_traits_test.cpp, uninitialized_test.cpp: Add
1.1041 + explicit public inheritance relation to avoid an ICL warning.
1.1042 +
1.1043 + * stlport/stl/config/features.h: Add definition of
1.1044 + _STLP_DEBUG_LEVEL to _STLP_STLPORT_DBG_LEVEL when _STLP_DEBUG
1.1045 + is defined but _STLP_DEBUG_LEVEL hasn't been set.
1.1046 + (thanks an ICL warning report)
1.1047 +
1.1048 + * stlport/stl/config/_intel.h: Remove undef of
1.1049 + _STLP_NO_UNEXPECTED_EXCEPT_SUPPORT, even if the linker complains
1.1050 + about not finding unexpected_exception it looks like it finally do
1.1051 + not use it.
1.1052 +
1.1053 + * test/unit/cppunit/test_main.cpp: Filter definition of
1.1054 + unexpected_exception when building unit test with static STLport
1.1055 + lib.
1.1056 +
1.1057 +2006-06-15 Francois Dumont <dums@stlport...>
1.1058 +
1.1059 + * stlport/stl/config/features.h: Several macro renamed:
1.1060 + - _STLP_LONG_DOUBLE -> _STLP_LONGEST_FLOAT_TYPE
1.1061 + - __DFL_TMPL_PARAM -> _STLP_DFL_TMPL_PARAM
1.1062 + - __DFL_TYPE_PARAM -> _STLP_DFL_TYPE_PARAM
1.1063 + - __DFL_NON_TYPE_PARAM -> _STLP_DFL_NON_TYPE_PARAM
1.1064 + __DFL_TYPE_ARG removed.
1.1065 +
1.1066 + * stlport/stl: Add char_traits template parameter in all
1.1067 + istreambuf_iterator and ostreambuf_iterator instanciation where it
1.1068 + was missing as some compiler might not have supported it.
1.1069 +
1.1070 + * stlport/stl/_time_facets.h, src/locale_impl.cpp: Finaly adopt a
1.1071 + specific gcc workaround for definition of _Locale_time_extract_hint
1.1072 + as friend of time_get_byname facet. Gcc 2.95 prefers to see a template
1.1073 + method otherwise it emits a warning, we want to avoid STLport users
1.1074 + to have to disable this warning. Other compilers will use a simple
1.1075 + function which seems to be more portable.
1.1076 +
1.1077 + * stlport/stl/_vector.h, _pair.h: Patch from Eric Sanford for a
1.1078 + really weird Borland compiler workaround that consists in adding
1.1079 + a _Ret typedef in __move_traits or __type_traits traits struct
1.1080 + that do not normally contain it.
1.1081 +
1.1082 + * stlport/stl/config/_bc.h: Borland free compiler do not support
1.1083 + STLport container extension of template methods.
1.1084 +
1.1085 +2006-06-14 Francois Dumont <dums@stlport...>
1.1086 +
1.1087 + * test/unit: Patch from Ulrich Eckhardt to fix storage of string
1.1088 + literals to const char* rather than simple char*.
1.1089 +
1.1090 + * build/Makefiles/nmake: Ulrich Eckhardt patch:
1.1091 + - /MACHINE:IX86 is obsolete and only supported for backward
1.1092 + compatibility as alias for X86. Replaced all cases of IX86
1.1093 + with X86.
1.1094 + - /NODEFAULTLIB:OLDNAMES.lib seems to also be universal so I
1.1095 + moved it to the base, too.
1.1096 + - In order to use main() as entry point under CE, use linker
1.1097 + option /ENTRY:mainACRTStartup. This was already done for
1.1098 + evc3,4,8 but I moved it to app/evc-common.mak and documented
1.1099 + it.
1.1100 +
1.1101 + * stlport/stl/_cmath.h, config/_evc.h: Uli patch to activate long
1.1102 + double support for EVC and use _hypot to implement STLport
1.1103 + overload.
1.1104 +
1.1105 + * src/complex.cpp: Remove internal __stlp_hypot that is not necessary
1.1106 + anymore now that STLport always define a hypot function (thanks Uli
1.1107 + remark).
1.1108 +
1.1109 + * stlport/stl/config: Ulrich Eckhardt VC8/CE patch:
1.1110 + - Adapt the code to construct the paths to the native includes
1.1111 + so that it matches the changed structure. This is currently
1.1112 + only for ARM and might need more work for other targets (x86
1.1113 + works though).
1.1114 + - Make a distinction between the desktop and CE variants concerning
1.1115 + the exception support functions. These now use the same compiler
1.1116 + versions so that can't be used anymore.
1.1117 + - MS' safe string functions are not available under CE - I think,
1.1118 + need to take a closer look at Platform Builder.
1.1119 +
1.1120 + * stlport/stl: Ulrich Eckhardt to adapt STLport to VC8/CE limited
1.1121 + native C library.
1.1122 +
1.1123 +2006-06-13 Francois Dumont <dums@stlport...>
1.1124 +
1.1125 + * stlport/stl/pointers/_tools.h: Add partial specialization for
1.1126 + _IteWrapper helper struct so that when type to store and stored
1.1127 + type are identical input iterators are not wrapped. Otherwise input
1.1128 + iterators are wrapped to perform necessary casts between pointer type
1.1129 + and void*.
1.1130 +
1.1131 + * stlport/stl/_cmath.h: Fixed macros definition used to define all
1.1132 + math functions for compilers supporting long double but not having
1.1133 + float nor long double C math functions. Thanks Ulrich Eckhardt report.
1.1134 +
1.1135 +2006-06-12 Francois Dumont <dums@stlport...>
1.1136 +
1.1137 + * test/unit/set_test.cpp, map_test.cpp: Replace size_t with the
1.1138 + more portable int type when possible.
1.1139 +
1.1140 + * stlport/stl/pointers/_tools.h: Check that type to store is a
1.1141 + pointer type before modifying predicate type for set container.
1.1142 + Wrapping less functor in all cases was making move semantic tests
1.1143 + to fail as predicate is not then detected as being the STLport
1.1144 + less predicate.
1.1145 +
1.1146 + * stlport/stl: DMC patch from Eric Sanford. DMC do not like __ss
1.1147 + variable that is a reserved keyword.
1.1148 +
1.1149 +2006-06-11 Francois Dumont <dums@stlport...>
1.1150 +
1.1151 + * build/Makefiles/nmake: Patch from Ulrich Eckhardt to use
1.1152 + main rather than WinMain for EVC platform.
1.1153 +
1.1154 + * build/test/unit/gcc.mak: Removed redondant macro definition
1.1155 + _STLP_USE_STATIC_LIB under cygwin/mingw as those definition
1.1156 + are part of base make files.
1.1157 +
1.1158 + * stlport/stl/type_manips.h, _hashtable.h: Eric Sanford workaround
1.1159 + for Borland.
1.1160 +
1.1161 +2006-06-09 Francois Dumont <dums@stlport...>
1.1162 +
1.1163 + * test/unit/cppunit: Patch from Ulrich Eckhardt to
1.1164 + - Removed a few superfluous semicolons.
1.1165 + - Made some constructors explicit.
1.1166 + - Documented the meaning of FileReporter::_myStream.
1.1167 + - Reformatted some things to not exceed 100 chars per
1.1168 + line or use several expressions/statements in one line.
1.1169 +
1.1170 + * build/Makefiles/nmake: Patch from Ulrich Eckhardt to
1.1171 + - adds support for x86 (running on e.g. a PC, so-called CEPC).
1.1172 + - adds support for MIPS or more specifically MIPSII, other MIPS
1.1173 + subtypes can easily be added.
1.1174 + - removes a line "DEFS_COMMON = /D%TARGETCPU%" from the config.mak
1.1175 + file generated for MIPS, the same functionality was moved to the
1.1176 + CPU-specific setups where it is done for other CPUs.
1.1177 + - adds an additional compiler flag so that diagnostics better
1.1178 + match what the VC8 IDE expects.
1.1179 +
1.1180 + * stlport/stl: Patch from Ulrich Eckhardt to
1.1181 + - removes several unnecessary semicolons (typically, when
1.1182 + inlining functions like "void foo() {};" where it in fact doesn't
1.1183 + hurt (due to something I consider an oversight in the standard)
1.1184 + but also doesn't make sense.
1.1185 + - fixes inconsistent indentation in three cases, one with the
1.1186 + preprocessor and two with memberfunction bodies.
1.1187 +
1.1188 + * stlport/stl/pointers/_tools.h: Add missing template method
1.1189 + in _CastTraits helper struct used on compiler with no partial
1.1190 + template specialization support.
1.1191 +
1.1192 +2006-06-08 Francois Dumont <dums@stlport...>
1.1193 +
1.1194 + * stlport/stl/pointers/_tools.h, _set.h: Fix problems reported by
1.1195 + gcc that seems to do more check that MSVC on explicit
1.1196 + instanciation of templates. Especially fixed problem introduce
1.1197 + by STLport extension of set template methods.
1.1198 +
1.1199 + * build/Makefiles/gmake/aCC.mak, lib/aCC.mak: Patch from Boris
1.1200 + Gubenko for Hp aCC build.
1.1201 +
1.1202 +2006-06-07 Francois Dumont <dums@stlport...>
1.1203 +
1.1204 + * stlport/stl/pointers: Restore pointer specialization feature.
1.1205 + Major modifications are:
1.1206 +
1.1207 + - vector specialization is done using a qualified void pointer
1.1208 + in order to keep optimization oportunities when working on
1.1209 + pointers. Using a strict void* was forcing wrapping of iterators
1.1210 + in template method making _BothPtrTypes struct helper failing to
1.1211 + detect both pointer types.
1.1212 +
1.1213 + - Fixed set specialization thanks to explicit instanciation added
1.1214 + in ptrspec_test.cpp.
1.1215 +
1.1216 + - Refactoring of algorithm to find storage type from value type.
1.1217 +
1.1218 +2006-06-02 Francois Dumont <dums@stlport...>
1.1219 +
1.1220 + * build/Makefiles/nmake: Patch from Ulrich Eckhardt for
1.1221 + cleanup. Some script refactoring, wrong OPT_STLDBG_STATIC references
1.1222 + replaced by OPT_STATIC_STLDBG.
1.1223 +
1.1224 + * src: Patch from Ulrich Eckhardt to cleanup locale implementation
1.1225 + and fix time facet creation when using dummy locale implementation.
1.1226 +
1.1227 + * stlport/stl/config/_evc.h: Patch from Ulrich Eckhardt to fix
1.1228 + endianess definition.
1.1229 +
1.1230 + * stlport/stl/debug/_hashtable.h: Create a _DbgEqual functor to
1.1231 + check correct equivalent predicate implementation. Add also
1.1232 + missing hash_func and key_eq methods in this mode.
1.1233 +
1.1234 + * stlport/stl/debug/_tree.h: Small refactoring in _DbgCompare
1.1235 + functor.
1.1236 +
1.1237 + * stlport/stl/type_traits.h, boost_type_traits.h: Restore boost
1.1238 + support.
1.1239 +
1.1240 +2006-06-01 Francois Dumont <dums@stlport...>
1.1241 +
1.1242 + * stlport/stl/_tree.h, _set.h, _map.h, debug/_tree.h: Removed
1.1243 + erase template method extension, might conflict with erase
1.1244 + overload taking an iterator. User workaround will be to use
1.1245 + erase(find(key)).
1.1246 +
1.1247 + * stlport/stl/_hashtable.h, _map.h, _set.h, _unordered_set.h,
1.1248 + _unordered_map.h, debug/_hastable.h: Add template methods extension.
1.1249 +
1.1250 + * stlport/stl/config/features.h: Add management of containers template
1.1251 + method extension.
1.1252 +
1.1253 + * stlport/stl/config/_apple.h, _symantec.h: Config update based on
1.1254 + config that used to be in _tree.h and _hashtable.h to remove
1.1255 + container template methods extensions.
1.1256 +
1.1257 +2006-05-31 Francois Dumont <dums@stlport...>
1.1258 +
1.1259 + * stlport/stl/config/_evc.h: Patch from Michael Fink to add ptrdiff_t
1.1260 + definition and forbid use of _STLP_DEBUG mode for evc 3/4 on ARM.
1.1261 +
1.1262 + * build: Ulrich Eckhardt patch for Microsoft Visual Studio 2005 for
1.1263 + Embedded C++ portage.
1.1264 +
1.1265 +2006-05-30 Francois Dumont <dums@stlport...>
1.1266 +
1.1267 + * stlport/stl/type_traits.h: Rename _Is_Integer<_Tp>::_Integral and
1.1268 + _Is_Rational<_Tp>::_Rational in respectively _IsIntegral<_Tp>::_Ret
1.1269 + and _IsRational<_Tp>::_Ret for naming convention coherency.
1.1270 +
1.1271 + * stlport/stl/type_traits.h: Add _TrivialNativeTypeCopy helper to
1.1272 + handle a number of oportunities to use memcpy/memmove in
1.1273 + uninitialized_* or copy algorithms that was not cover by simply
1.1274 + checking type_traits has_trivial* features.
1.1275 +
1.1276 + * stlport/stl/type_traits.h, boost_type_traits.h: Refactor _BothPtrType
1.1277 + implementation, only one version is necessary as it uses _IsPtr that
1.1278 + has a variable implementation depending on config.
1.1279 +
1.1280 + * stlport/stl/_vector.h: Add _DefaultZeroValue specialization for
1.1281 + vector container so that a vector of vector is simply initialized
1.1282 + using a memset to set everything to 0.
1.1283 +
1.1284 + * test/unit/vector_test.cpp: Add check that previous optimization
1.1285 + works as expected.
1.1286 +
1.1287 + * stlport/typeinfo.h: Borland patch from Eric Sanford.
1.1288 +
1.1289 + * DMC patch from Eric Sanford
1.1290 +
1.1291 + * stlport/stl/debug/_tree.h: Patch from Ulrich Eckhardt to add missing
1.1292 + count template method.
1.1293 +
1.1294 + * src/dll_main.cpp: Patch from Ulrich Eckhardt to fix strncpy
1.1295 + usage.
1.1296 +
1.1297 +2006-05-23 Francois Dumont <dums@stlport...>
1.1298 +
1.1299 + * stlport/stl/_deque.h, _deque.c: Change implementation to use
1.1300 + _TrivialInit new feature.
1.1301 +
1.1302 + * stlport/stl/boost_type_traits.h: Add _TrivialInit implementation
1.1303 + using boost type traits.
1.1304 +
1.1305 +2006-05-22 Francois Dumont <dums@stlport...>
1.1306 +
1.1307 + * stlport/stl/type_traits.h: Add _TrivialInit helper struct to
1.1308 + report if a type is trivial to initialize or not that is to say
1.1309 + if the type has a trivial default constructor. Handle native types
1.1310 + exception that are consider as having a trivial default constructor
1.1311 + but that required a 0 initialization on explicit constructor
1.1312 + call.
1.1313 +
1.1314 + * stlport/stl/_uninitialize.h: Add a helper function
1.1315 + __uninitialize_init that result in a no-op if _TrivialInit returns
1.1316 + __true_type.
1.1317 +
1.1318 + * stlport/stl/_vector.h: Modification of vector constructor to
1.1319 + destect when it is called without an explicit default value so
1.1320 + that we can call __uninitialized_init.
1.1321 +
1.1322 + * test/unit/uninitialized_test.cpp: Add test to check correct
1.1323 + detection of useless initialization.
1.1324 +
1.1325 +2006-05-19 Francois Dumont <dums@stlport...>
1.1326 +
1.1327 + * test/unit/uninitialized_test.cpp: Patch from Ulrich Eckhardt
1.1328 + to replace vector instance in uninitialized_copy_test by static
1.1329 + array so that we are always working on pointers iterator.
1.1330 +
1.1331 + * stlport/stl/_string_operators.h: Patch from Ulrich Eckhardt to
1.1332 + add missing != operators when using string template expression.
1.1333 +
1.1334 + * stlport/stl/ctype.h, config/_evc.h, _msvc.h, _windows.h,
1.1335 + features.h: Patch from Michael Fink for evc3/4 platform.
1.1336 +
1.1337 + * test/unit/mvctor_test.cpp: Add of a specific Borland test case
1.1338 + to report what seems to be a compiler bug but that is only
1.1339 + revealed when using STLport.
1.1340 +
1.1341 + * stlport/stl/_tree.h, _set.h, _map.h, debug/_tree.h,
1.1342 + pointer/_set.h: Generalized already existing extension of template
1.1343 + find method on associative containers to all look up methods:
1.1344 + count, erase, lower_bound, upper_bound, equal_range.
1.1345 +
1.1346 + * test/unit/set_test.cpp: Add test case for set template methods
1.1347 + extension.
1.1348 +
1.1349 + * stlport/stl/_tree.c, debug/_tree.h: Removed debug check from
1.1350 + non debug implementation, now debug check is injected in tree
1.1351 + implementation from the tree debug implementation thanks to
1.1352 + a wrapping of the predicate.
1.1353 +
1.1354 +2006-05-18 Francois Dumont <dums@stlport...>
1.1355 +
1.1356 + * stlport/stl/c_locale.h: Fix declaration of _Locale_name_hint
1.1357 + struct so that compilers do not think that this struct is in
1.1358 + the STLport namespace because of friend declaration.
1.1359 +
1.1360 +2006-05-17 Francois Dumont <dums@stlport...>
1.1361 +
1.1362 + * stlport/stl/_abbrevs.h: Update list of abbreviations.
1.1363 +
1.1364 + * stlport/stl/_hashtable.c: Removed _Node macro and fixed
1.1365 + macros defined when _STLP_NESTED_TYPE_PARAM_BUG is defined.
1.1366 +
1.1367 +2006-05-16 Francois Dumont <dums@stlport...>
1.1368 +
1.1369 + * test/unit/type_traits_test.cpp: Add test case to check
1.1370 + _TrivialUCopy helper metaprogramming class behavior.
1.1371 +
1.1372 + * stlport/stl/_vector.h, _vector.c: Replaced _TrivialAss by
1.1373 + _TrivialCopy and _TrivialUCpy by _TrivialUCopy for coherency
1.1374 + with type_traits.h names.
1.1375 +
1.1376 + * test/unit/type_traits_test.cpp: Add small test for correct
1.1377 + impact of trivial_destructor meta info in vector implementation.
1.1378 +
1.1379 + * build/lib/configure.bat: Add comment to explain weird TARGETCPU
1.1380 + check.
1.1381 +
1.1382 +2006-05-15 Francois Dumont <dums@stlport...>
1.1383 +
1.1384 + * stlport/stl/_hashtable.h, _list.h, _deque.h, _slist.h,
1.1385 + _string.h, _vector.h, _move_construct_fwk.h, _rope.h:
1.1386 + Fix impact of _STLP_NO_MOVE_SEMANTIC macro on library. Now,
1.1387 + if defined, no move will ever happen.
1.1388 +
1.1389 + * stlport/stl/_uninitialized.h: Simplified __uninitialized_copy_fill
1.1390 + prototype, only one type of iterator is allowed. It also fix
1.1391 + implementation as this one was not taking into account both
1.1392 + iterator value_type to consider if the operation was trivial
1.1393 + or not.
1.1394 +
1.1395 + * stlport/stl/_uninitialized.h: Major code review. Remove use of
1.1396 + _OKToMemcpy, remove dependency on std::copy of std::fill, all
1.1397 + implementation is now similar to the one of std::copy algorithms
1.1398 + except that uninitialized algo are using
1.1399 + __type_traits::has_trivial_copy_constructor meta information and
1.1400 + copy __type_traits::has_trivial_assign_operator.
1.1401 +
1.1402 + * test/unit/deque_test.cpp, vector_test.cpp: New test case for
1.1403 + over optimization problem.
1.1404 +
1.1405 + * test/unit/map_test.cpp, locale_test.cpp, list_test.cpp, slist_test.cpp,
1.1406 + unordered_test.cpp, fstream_test.cpp, stack_allocator.h: Fixed
1.1407 + implementation to build with _STLP_NO_MEMBER_TEMPLATES.
1.1408 +
1.1409 + * stlport/stl/debug/_vector.h, _list.h: Add non template assign
1.1410 + methods used when _STLP_NO_MEMBER_TEMPLATES is defined.
1.1411 +
1.1412 + * stlport/stl/_slist.c: Fixed sort _Slist_sort implementation, now
1.1413 + call _Slist_merge template function rather than slist::merge method
1.1414 + as this method do not take any predicate when _STLP_NO_MEMBER_TEMPLATES
1.1415 + is defined.
1.1416 +
1.1417 + * build/test/unit/Makefile.inc, test/unit/uninitialized_test.cpp:
1.1418 + New test for uninitialized_copy algo.
1.1419 +
1.1420 + * stlport/stl/type_traits.h: OKToMemCpy rename in _TrivialCopy for
1.1421 + coherency with _TrivialUCopy. Moreover, thanks to refactoring in
1.1422 + uninitialized_* algorithms, _TrivialUCopy now only takes into account
1.1423 + __type_traits::has_trivial_copy_constructor meta information and
1.1424 + not has_trivial_assign_operator.
1.1425 +
1.1426 + * stlport/stl/boost_type_traits.h: Fixed to reflect STLport
1.1427 + __type_traits modifications.
1.1428 +
1.1429 + * stlport/stl/_uninitialized.h: Major code review proposed by
1.1430 + Ulrich Eckhardt
1.1431 +
1.1432 + * stlport/stl/_algobase.h, _deque.h, _deque.c, _vector.h, _vector.c,
1.1433 + _rope.h, _rope.c, _string.h, _string.c: Impact of previous point.
1.1434 +
1.1435 +2006-05-05 Francois Dumont <dums@stlport...>
1.1436 +
1.1437 + * test/unit/iter_test.cpp: Removed unreachable code.
1.1438 +
1.1439 + * Introduction of a new configuration macro _STLP_MSVC_LIB
1.1440 +
1.1441 + This macro is set to _MSC_VER value but can be overloaded to
1.1442 + an other value. First intension was to make STLport more flexible
1.1443 + for Intel C++ compiler. This compiler comes without any native
1.1444 + lib and you have to bind it to a MSVC install, Intel compiler
1.1445 + generate MSVC compatible code so that MSVC linker can correctly
1.1446 + generate final exe or dll. To mimic MSVC compiler ICL also defines
1.1447 + _MSC_VER. The problem is that definition of this macro is based
1.1448 + on a compiler option and do not necessarily reflect the MSVC lib
1.1449 + version ICL is binded to. Fortunately the compiler options
1.1450 + responsible of _MSC_VER definition (/Qvc6, /Qvc7...) is also
1.1451 + responsible of name mangling so asking for a MSVC compiler
1.1452 + compatibility different than the library ICL is binded to is
1.1453 + not easy. But _STLP_MSVC_LIB has been kept as it makes STLport
1.1454 + configuration more clean. Now MSVC compiler version is given
1.1455 + by _STLP_MSVC macro and library version by _STLP_MSVC_LIB.
1.1456 + All occurences of _MSC_VER in STLport code has been replaced
1.1457 + by those macros.
1.1458 +
1.1459 + * _STLP_USE_SECURIZED_BUF_FUNCTIONS replaced by the more
1.1460 + intuitive _STLP_USE_SAFE_STRING_FUNCTIONS.
1.1461 +
1.1462 + * stlport/stl/config/_msvc.h: Major refactoring to isolate
1.1463 + MSVC compiler config and MSVC native library config.
1.1464 +
1.1465 +2006-05-04 Francois Dumont <dums@stlport...>
1.1466 +
1.1467 + * build/lib/configure.bat: And information to the --lib-motif
1.1468 + option as advised by Ulrich Eckhardt. Add option parameter and
1.1469 + relation with _STLP_LIB_NAME_MOTIF.
1.1470 +
1.1471 + * src/messsage_facets.h: Removed implementation of private copy
1.1472 + constructor and assignment operator.
1.1473 +
1.1474 + * src/c_locale_win32/c_locale_win32.c: Made
1.1475 + _Locale_extract_category_name locale function static.
1.1476 +
1.1477 + * src/vc_warning_disable.h renamed in warning_disable.h as it is
1.1478 + used by other compilers too (ICL)
1.1479 +
1.1480 + * build/lib/msvc.mak, evc.mak: Removed forced inclusion of
1.1481 + vc_warning_disable.h file. Now this file is included from
1.1482 + stlport_prefix.h.
1.1483 +
1.1484 + * build/test/unit/msvc.mak, evc.mak: Replace vc_warning_disable.h
1.1485 + reference by warning_disable.h.
1.1486 +
1.1487 + * src/stlport_prefix.h: Add inclusion of warning_disable.h.
1.1488 +
1.1489 +2006-05-01 Francois Dumont <dums@stlport...>
1.1490 +
1.1491 + * test/unit/vector_test.cpp, deque_test.cpp, string_test.cpp:
1.1492 + Removed unreachable code, reported by ICL 9.0.
1.1493 +
1.1494 + * test/unit/mvctor_test.cpp: Removed variable declaration hiding
1.1495 + previous one + made local functions static.
1.1496 +
1.1497 + * stlport/stl/config/_msvc.h: Only use abbreviate symbols for
1.1498 + MSVC compiler and not for all compilers defining _MSC_VER. Also
1.1499 + removed some ICL specific configuration.
1.1500 +
1.1501 + * src/lock_free_slist.h: Removed 'no return statement' warning
1.1502 + for ICL too.
1.1503 +
1.1504 + * src/message_facets.h: Made _Message_impl copy constructor and
1.1505 + assignment operator private to avoid warning as _M_cat member
1.1506 + data has private copy constructor and assignment operator too.
1.1507 +
1.1508 + * stlport/stl/_cstdlib.h: Made additional definition of
1.1509 + div(long, long) based on native library (_MSC_VER) rather than on
1.1510 + compiler used (_STLP_MSVC).
1.1511 +
1.1512 + * stlport/stl/config/_intel.h: Fix Intel C++ 9.0 compiler
1.1513 + configuration with and without /Qvc6 option.
1.1514 +
1.1515 + * src/dll_main.cpp: Add std::unexpected implementation that ICL
1.1516 + need but that is not part of MSVC6 native lib library.
1.1517 +
1.1518 + * test/unit/test_main.cpp: Add std::unexpected implementation that
1.1519 + ICL need but that is not part of MSVC6 native lib library.
1.1520 +
1.1521 +2006-04-30 Francois Dumont <dums@stlport...>
1.1522 +
1.1523 + * stlport/stl/_alloc.h: Moved __type_traits specialization for
1.1524 + std::allocator class before use in _STLP_alloc_proxy
1.1525 + instanciation.
1.1526 +
1.1527 + * test/unit/istmit_test.cpp: Fixed macro checks to correctly
1.1528 + report ignored test.
1.1529 +
1.1530 +2006-04-27 Francois Dumont <dums@stlport...>
1.1531 +
1.1532 + * test/unit/full_streambuf.h, deque_test.cpp, vector_test.cpp:
1.1533 + Add STLPORT macro check when checking _STLP_USE_EXCEPTION macro.
1.1534 +
1.1535 + * test/unit/string_test.cpp: Fix some macro checks to correctly
1.1536 + report ignored tests.
1.1537 +
1.1538 + * test/unit/mvctor_test.cpp: Fix tests to build it with native
1.1539 + MSVC 2005 Standard library. Looks like this implementation do
1.1540 + not follow atmortized constant time vector::push_back complexity.
1.1541 +
1.1542 + * stlport/stl/config/_msvc.h: Clearly report status regarding build
1.1543 + of STLport using the MSVC /clr option.
1.1544 +
1.1545 + * stlport/stl/_threads.h: Remove MSVC .Net 2002 annoying warning.
1.1546 +
1.1547 +2006-04-26 Francois Dumont <dums@stlport...>
1.1548 +
1.1549 + * src/ctype.cpp: Fix ctype::scan_is and scan_not method behavior as
1.1550 + required by C++ Standard 22.2.1.1.2.
1.1551 +
1.1552 + * test/unit/locale_test.cpp: Fix ctype facet test according
1.1553 + modifications above.
1.1554 +
1.1555 +2006-04-25 Francois Dumont <dums@stlport...>
1.1556 +
1.1557 + * stlport/stl/_istream.c: Small refactoring to avoid a uninitialized
1.1558 + warning for __do_handle_exceptions local variable.
1.1559 +
1.1560 + * stlport/stl/_deque.h: Ditto with __cur_node variable in
1.1561 + _M_range_initialize method.
1.1562 +
1.1563 + * stlport/stl/_deque.c: Ditto with __cur in _M_fill_initialize.
1.1564 +
1.1565 + * stlport/stl/config/_auto_link.h: Removed auto link feature when
1.1566 + building a C translation unit thanks Michael Fink.
1.1567 +
1.1568 + * src/time_facets.cpp: Add missing calling convention on
1.1569 + __write_formatted_time internal function.
1.1570 +
1.1571 +2006-04-24 Francois Dumont <dums@stlport...>
1.1572 +
1.1573 + * test/unit/cppunit/cppunit_mini.h: Limit scope of try/catch block to
1.1574 + the test case call so that CppUnit function methods are correctly
1.1575 + called.
1.1576 +
1.1577 + * test/unit/type_traits_test.cpp: Fix use of
1.1578 + CPPUNIT_IGNORE/CPPUNIT_STOP_IGNORE macros so that ignored tests are
1.1579 + correctly reported as ignored.
1.1580 +
1.1581 +2006-04-20 Francois Dumont <dums@stlport...>
1.1582 +
1.1583 + * stlport/stl/config/_solaris.h: Replace C++ style comment
1.1584 + in C style.
1.1585 +
1.1586 + * stlport/stl/_cmath.h: Add macro definition for environment
1.1587 + having long double but no float neither long double math functions
1.1588 + This is a Solaris configuration.
1.1589 +
1.1590 + * src/acquire_release.h, c_locale.h, locale.cpp,
1.1591 + locale_catalog.cpp, locale_impl.cpp, locale_impl.h,
1.1592 + message_facets.h, facets_byname.cpp: Add a locale hint feature
1.1593 + to improve locale construction from name. This is used by
1.1594 + Win32 locale implementation that broadcast the locale lcid
1.1595 + thanks to this hint. With this modification, LocaleTest fixture
1.1596 + runs 5 times faster.
1.1597 +
1.1598 + * stlport/stl/_collate.h, _ctype.h, _monetary.h, _numpunct.h,
1.1599 + _time_facets.h: Add _Locale_extract_hint function as friend
1.1600 + to some locale facet in order to access locale implementation
1.1601 + specific structure and potentially extract the hint.
1.1602 +
1.1603 + * stlport/stl/_codecvt.h, _collate.h, _ctype.h, _messages_facets.h,
1.1604 + _monetary.h, _numpunct.h, _time_facets.h: Add _Locale_name_hint pointer
1.1605 + parameter to facet by name constructor.
1.1606 +
1.1607 + * build/Makefiles/nmake/lib/clean.mak, rules-so.mak, rules-install-so.mak:
1.1608 + Based on Dr Dobb's Richard Grimes article, change management of
1.1609 + manifest file for STLport shared library. According this article
1.1610 + .manifest file is not taken into account for a library, only .exe one is.
1.1611 + Solution is to integrate .manifest file into the .dll as an unmanaged
1.1612 + ressource with id 2. We now do so thanks to the mt manifest tool.
1.1613 +
1.1614 + * stlport/stl/_pair.h: Remove __move_traits partial specialization for
1.1615 + Borland free compiler, it was introducing weird compilation error.
1.1616 +
1.1617 + * stlport/stl/_move_construct_fwk.h: Add a helper struct for __move_traits
1.1618 + feature.
1.1619 +
1.1620 + * build/test/unit/msvc.mak: Prepare makefile to easily build unit tests
1.1621 + without STLport.
1.1622 +
1.1623 +2006-04-15 Francois Dumont <dums@stlport...>
1.1624 +
1.1625 + * stlport/stl/config/host.h, compat.h, debug/_debug.c: Removed
1.1626 + _STLP_NO_DEBUG_EXCEPTIONS configuration macro that is similar
1.1627 + to the new _STLP_DEBUG_MODE_THROWS except that new thrown macro
1.1628 + is catchable (std::runtime_error exception) and contained message
1.1629 + is more explicit.
1.1630 +
1.1631 + * stlport/stl/debug/_tree.h: Add find template method STLport
1.1632 + extension to the debug version of binary tree thanks Mike Flamming.
1.1633 +
1.1634 +2006-04-11 Francois Dumont <dums@stlport...>
1.1635 +
1.1636 + * src/complex_io_w.cpp: Removed, content moved to src/complex_io.cpp
1.1637 + to avoid build of an empty translation unit that can generate linker
1.1638 + warning (noticed with MSVC 2005 express)
1.1639 +
1.1640 + * build/lib/Makefile.inc: Updated before of above modification.
1.1641 +
1.1642 + * test/unit: Ignore many tests rather than hide it depending on
1.1643 + build configuration.
1.1644 +
1.1645 + * test/unit/cppunit/file_reporter.h: Restored output existing before
1.1646 + introduction of monitoring feature.
1.1647 +
1.1648 +2006-04-10 Francois Dumont <dums@stlport...>
1.1649 +
1.1650 + * test/unit/cppunit/cppunit_timer.h, test_main.cpp, file_reporter.h:
1.1651 + Add -m option to activate monitoring of unit tests. This option add
1.1652 + timing for each test and a global timing information. Timer class has
1.1653 + been created for Win32 API.
1.1654 +
1.1655 + * stlport/stl/_bitset.h: Hide STLport bitset extensions _Find_first
1.1656 + and _Find_next.
1.1657 +
1.1658 + * test/unit/bitset_test.cpp: Adapt tests to previous modification.
1.1659 +
1.1660 + * stlport/stl/_string.h: Replace memory include with stl/_alloc.h
1.1661 + to limit header dependencies. Also add include of stl/_uninitialized.h.
1.1662 +
1.1663 + * test/unit/fstream_test.cpp: Add missing memory include.
1.1664 +
1.1665 + * test/unit/locale_test.cpp: Ditto.
1.1666 +
1.1667 + * stlport/stl/_queue.h, _string.h, _rope.h, debug/_tree.h: Replace
1.1668 + stl/_function.h include with the smaller _function_base.h include.
1.1669 +
1.1670 +2006-04-07 Francois Dumont <dums@stlport...>
1.1671 +
1.1672 + * stlport/stl/_new.h: Fixed management of _STLP_NO_BAD_ALLOC
1.1673 + and _STLP_NEW_DONT_THROW_BAD_ALLOC macros.
1.1674 +
1.1675 + * stlport/stl/config/_dm.h: Change DMC configuration, use STLport
1.1676 + own namespace rather than std so that STLport can check config.
1.1677 +
1.1678 + * stlport/typeinfo.h: Fix DMC configuration now that it uses own
1.1679 + STLport namespace.
1.1680 +
1.1681 +2006-04-05 Francois Dumont <dums@stlport...>
1.1682 +
1.1683 + * stlport/stl/_tree.h, _list.h: Fixed swap implementation to
1.1684 + correctly swap allocators instance. Moreover list swap implementation
1.1685 + was wrong since list splice has been modified to correctly handled
1.1686 + allocators with state.
1.1687 +
1.1688 + * test/unit/slist_test.cpp, list_test.cpp, set_test.cpp: Add tests for
1.1689 + above fix.
1.1690 +
1.1691 + * stlport/stl/_deque.h: Fix swap method as deque has 2 allocator
1.1692 + instances, this should perhaps be modified one day to only keep 1...
1.1693 +
1.1694 + * stlport/stl/_rope.h: Fix swap method and removed assertion for
1.1695 + equivalent allocator instances even if there are still other assertions
1.1696 + in the implementation.
1.1697 +
1.1698 + * stlport/stl/_function_base.h: Add swap method for less functor if
1.1699 + partial template workaround is activated. This is for surprising
1.1700 + compilers supporting partial template specialization but no template
1.1701 + function partial ordering.
1.1702 +
1.1703 + * stlport/stl/_algobase.h: Add Borland workaround for swap function
1.1704 + thanks Eric Sanford.
1.1705 +
1.1706 + * test/unit/type_traits_test.cpp: Borland workaround for is_convertible
1.1707 + function thanks Eric Sanford.
1.1708 +
1.1709 + * stlport/stl/config/_bc.h: Borland compilers do not support template
1.1710 + function partial ordering thanks Eric Sanford.
1.1711 +
1.1712 + * test/unit/stack_allocator.h: Add Borland workaround to correctly
1.1713 + call StackAllocator::swap method when swaping STL containers in
1.1714 + allocator_with_state tests.
1.1715 +
1.1716 + * test/unit/config_test.cpp: New test
1.1717 + ConfigTest::template_function_partial_ordering.
1.1718 +
1.1719 + * test/unit/slist_test.cpp, list_test.cpp, set_test.cpp: Add swap tests
1.1720 + with empty containers.
1.1721 +
1.1722 + * src/vc_warning_disable.h: Remove deprecated comments.
1.1723 +
1.1724 + * stlport/stl/_pair.h: Removed Borland checks thanks Eric Sanford.
1.1725 +
1.1726 + * Patch from Michael Fink to remove Windows CE support that is
1.1727 + no more supported by Microsoft.
1.1728 +
1.1729 + * stlport/stl/config/_native_headers.h: New, contains all macros
1.1730 + relative to native headers access that used to be in features.h.
1.1731 +
1.1732 + * stlport/stl/config/_evc.h, _como.h: Add include of _native_headers.h
1.1733 + as those compilers need to include native headers for correct
1.1734 + configuration.
1.1735 +
1.1736 + * stlport/stl/config/features.h: Use _native_headers.h.
1.1737 +
1.1738 + * test/unit/locale_test.cpp: Made LocaleTest::facet_id test STLport
1.1739 + specific rather than Borland specific. Moreover, without STLport, test
1.1740 + is ignored rather than hidden.
1.1741 +
1.1742 + * stlport/stl/_num_put.h, _num_put.c: Removed useless export of
1.1743 + num_put<char, char*>, num_put<wchar_t, wchar_t*> not required by
1.1744 + the Standard.
1.1745 +
1.1746 + * stlport/stl/_num_get.h, _num_get.c: Ditto for
1.1747 + num_get<char, const char*>, num_get<wchar_t, const wchar_t*>
1.1748 +
1.1749 + * stlport/stl/_moneytary.h, _moneytary.c: Ditto for
1.1750 + money_get<char, const char*>, money_get<wchar_t, const wchar_t*>,
1.1751 + money_put<char, char*>, money_put<wchar_t, wchar_t*>
1.1752 +
1.1753 + * stlport/stl/_time_facets.h, _time_facets.c: Ditto for
1.1754 + time_get<char, const char*>, time_get<wchar_t, const wchar_t*>,
1.1755 + time_put<char, char*>, time_put<wchar_t, wchar_t*>
1.1756 +
1.1757 + * src/locale_impl.cpp: Removed id initialization of useless facets
1.1758 + no more exported.
1.1759 +
1.1760 + * stlport/new, stl/_new.h: Moved all STLport code in _new.h and
1.1761 + modified new header so that it forwards include to native new
1.1762 + when include comes from inside STLport.
1.1763 +
1.1764 + * cppunit/file_reporter.h, cppunit_mini.h: Change support of
1.1765 + CPPUNIT_CHECK macro, only report error once for all failures
1.1766 + in a single test case.
1.1767 +
1.1768 +2006-03-28 Francois Dumont <dums@stlport...>
1.1769 +
1.1770 + * stlport/stl/_prolog.h: Fix macro check before inclusion of
1.1771 + features.h.
1.1772 +
1.1773 + * stlport/stl/char_traits.h: Fixed include of cstddef, in STLport
1.1774 + code, Standard headers should never be included directly, their
1.1775 + stlport/stl/_xxx.h counterpart should be used.
1.1776 +
1.1777 + * stlport/stl/type_traits.h, type_manip.h: Patch from Eric Sanford
1.1778 + for Borland compiler to fix _OKToMemCpy feature.
1.1779 +
1.1780 + * stlport/stl/_alloc.h: Replace swap function for _STLP_alloc_proxy
1.1781 + by a member method, it is more portable.
1.1782 +
1.1783 + * stlport/stl/_bvector.h, _deque.h, _list.h, _slist.h, _string_base.h
1.1784 + _tree.h: Replaced called to std::swap for _STLP_alloc_proxy instances
1.1785 + by calls to member swap method.
1.1786 +
1.1787 + * test/unit/hash_test.cpp: Ignore test rather than hide it.
1.1788 +
1.1789 + * test/unit/map_test.cpp: Fixed StackAllocator instanciation.
1.1790 +
1.1791 + * test/unit/stack_allocator.h: Add std::swap overload for
1.1792 + StackAllocator<pair<const int, int>>.
1.1793 +
1.1794 + * test/unit/string_test.cpp: Ignore tests rather than hide it.
1.1795 +
1.1796 + * test/unit/unordered_test.cpp: Ditto.
1.1797 +
1.1798 +2006-03-27 Francois Dumont <dums@stlport...>
1.1799 +
1.1800 + * stlport/stl/_stdexcept_base.h: New internal header with
1.1801 + __Named_exception implementation, improve segregation between
1.1802 + <locale> and <stdexcept> Standard headers.
1.1803 +
1.1804 + * test/unit/locale_test.cpp: Add missing <stdexcept> header include.
1.1805 +
1.1806 + * stlport/stl/_function_base.h, _function.h: Move as many functor as
1.1807 + possible from _function_base.h to _function.h to improve
1.1808 + segregation between <functional> and <algorithm> Standard headers.
1.1809 +
1.1810 + * test/unit: Add many missing references to <functional> header.
1.1811 +
1.1812 + * test/unit: Made unit tests available for build without STLport, this
1.1813 + will be a good way to compare Standard library implementations.
1.1814 +
1.1815 + * stlport/stl/_string_base.h: Remove additional space for terminating
1.1816 + null character, it was actually already reserved in the return
1.1817 + expression.
1.1818 +
1.1819 + * stlport/stl/_string.h: Restored basic_string capacity implementation
1.1820 + that do not depend on use of the short string optimization or not. It
1.1821 + might be hiding a real issue somewhere else in code even if unit tests
1.1822 + are not showing any problem.
1.1823 +
1.1824 + * stlport/stl/_alloc.h: Add swap overload for _STLP_alloc_proxy class
1.1825 + in order to correctly call swap on the maybe rebound allocator as user
1.1826 + that implement an allocator with a state might have implement a
1.1827 + special swap function for it to correctly handle STL containers swap
1.1828 + operation.
1.1829 +
1.1830 +2006-03-24 Francois Dumont <dums@stlport...>
1.1831 +
1.1832 + * build/lib/configure.bat: Removed script for defining INCLUDE
1.1833 + environment variable for Borland ressource compiler as it depends
1.1834 + on where STLport is install.
1.1835 +
1.1836 + * build/lib/bcc.mak: Add check for INCLUDE environment variable
1.1837 + definition.
1.1838 +
1.1839 + * test/unit/string_test.cpp: Change basic_string::reserve test to
1.1840 + check length_error exception rather than bad_alloc.
1.1841 +
1.1842 +2006-03-22 Petr Ovtchenkov <complement@users.sourceforge.net>
1.1843 +
1.1844 + * stlport/stl/_string.c: a bit code clean
1.1845 +
1.1846 + * stlport/stl/_string_base.h: max_size should keep space for
1.1847 + allocation of terminating null.
1.1848 +
1.1849 +2006-03-19 Francois Dumont <dums@stlport...>
1.1850 +
1.1851 + * stlport/stl/_alloc.h, _function_base.h, type_manips.h,
1.1852 + type_traits.h, test/unit/type_traits_test.cpp: Patch for
1.1853 + Eric Sanford for __bool2type Borland use.
1.1854 +
1.1855 + * build/Makefiles/gmake/lib/clean.mak: Patch from Eric Sanford
1.1856 + to fix files generated by dbg-shared and stldbg-shared rules.
1.1857 +
1.1858 + * build/Makefiles/gmake/lib/bcc.mak: Patch from Eric Sanford to
1.1859 + increase Borland page size to 64.
1.1860 +
1.1861 +2006-03-16 Francois Dumont <dums@stlport...>
1.1862 +
1.1863 + * stlport/stl/config/_evc.h, _msvc.h: Add some condition for
1.1864 + definition of _STLP_MSVC macro which should only be defined for
1.1865 + real Microsoft compilers and not for compiler emulating it.
1.1866 +
1.1867 + * src/allocators.cpp: Use _STLP_STATIC_MUTEX macro in place
1.1868 + of _STLP_mutex_base for mutex definition in per_thread_allocator
1.1869 + implementation.
1.1870 +
1.1871 + * stlport/stl/_pthread_alloc.h: Modified deallocate methods of
1.1872 + pthread_allocator and per_thread_allocator implementation to accept
1.1873 + null pointers.
1.1874 +
1.1875 +2006-03-15 Francois Dumont <dums@stlport...>
1.1876 +
1.1877 + * stlport/stl/_string_base.h, _string.c: Force call to
1.1878 + _M_allocate_block even in short string optim mode in order
1.1879 + to detect lenght error. Based basic_string max size implementation
1.1880 + on allocator max_size.
1.1881 +
1.1882 +2006-03-15 Petr Ovtchenkov <complement@users.sourceforge.net>
1.1883 +
1.1884 + * stlport/stl/config/_system.h, _msvc.h, _evc.h: move _STLP_MSVC
1.1885 + definition in proper place.
1.1886 +
1.1887 +2006-03-14 Francois Dumont <dums@stlport...>
1.1888 +
1.1889 + * src/allocators.cpp: Fixed thread safety issue in
1.1890 + per_thread_allocator implementation thanks a very old William
1.1891 + Power report.
1.1892 +
1.1893 + * test/unit/allocator_test.cpp: Attempt to write a test case for
1.1894 + previous bug but not yet complete as I need a better debugging
1.1895 + environment than gdb under cygwin...
1.1896 +
1.1897 + * stlport/stl/config/_system.h: Patch from Michael Fink to add
1.1898 + missing _STLP_MSVC define for evc++ compilers.
1.1899 +
1.1900 +2006-03-13 Francois Dumont <dums@stlport...>
1.1901 +
1.1902 + * stlport/stl/_alloc.h, src/allocators.cpp: Hide declaration of
1.1903 + malloc based allocator handler in library. Also limit scope of
1.1904 + declspec to expose static members rather than the whole class.
1.1905 +
1.1906 + * stlport/stl/_cstdlib.h: For Borland compiler add include of
1.1907 + native process.h header, for reason see comment next to include
1.1908 + in file.
1.1909 +
1.1910 + * stlport/stl/_alloc.h: Add a new STLport extension to the
1.1911 + std::allocator class: allocate(size_type, size_type&). This new
1.1912 + overload of allocate returns in an output parameter, the real
1.1913 + size of the allocated buffer that can be larger than the requested
1.1914 + one. _STLP_alloc_proxy expose this new overload only for the
1.1915 + STLport allocator and not for user defined allocators.
1.1916 +
1.1917 + * stlport/stl/_vector.h, _vector.c, _string.h, _string.c: Use of the
1.1918 + allocate overload extension method to set end of storage reference
1.1919 + to the real memory block end rather than to the requested one.
1.1920 +
1.1921 + * stlport/stl/_alloc.c: Adapt __debug_alloc::allocate method in order
1.1922 + to return the real allocated memory block. Also add check on computed
1.1923 + __real_n to allocate as it might roll on size_t and hide a case that
1.1924 + should result in a bad_alloc exception.
1.1925 +
1.1926 + * stlport/stl/_threads.h, src/allocators.cpp: Add WINVER macro
1.1927 + check in addition to _WIN32_VERSION, according PSDK documentation
1.1928 + WINVER is more generaly used accross different Windows platforms.
1.1929 +
1.1930 + * test/unit/string_test.cpp: Add constructor test case to correctly
1.1931 + handle build of a string with string::max_size elements which should
1.1932 + result in a bad_alloc exception. Idem for reserve method.
1.1933 +
1.1934 + * stlport/stl/_alloc.h, src/allocators.cpp: Add check of malloc
1.1935 + result in __malloc_alloc implementation to throw an exception when
1.1936 + result is NULL.
1.1937 +
1.1938 + * src/locale_impl.cpp: Patch from Eric Sanford for Borland BDS 2006
1.1939 + support. Mostly fix locale facet index issues.
1.1940 +
1.1941 +2006-02-28 Petr Ovtchenkov <complement@users.sourceforge.net>
1.1942 +
1.1943 + * stlport/stl/_string.h: capacity may return wrong value in case
1.1944 + of no _STLP_USE_SHORT_STRING_OPTIM in use; thanks Rusty Koonce
1.1945 + for report.
1.1946 +
1.1947 + * test/unit/string_test.cpp: test for capacity issue.
1.1948 +
1.1949 + * src/cxa.c: don't use cxa workaround for FreeBSD 6.0---it fine;
1.1950 + this is rollback of changes 2006-01-24 [bad compiler was in use].
1.1951 +
1.1952 +2006-02-15 Petr Ovtchenkov <complement@users.sourceforge.net>
1.1953 +
1.1954 + * stlport/stl/_string.h: _STLP_FORCE_STRING_TERMINATION mode become
1.1955 + default and only mode due to performance issue.
1.1956 +
1.1957 + * stlport/stl/config/user_config.h: ditto.
1.1958 +
1.1959 + * stlport/stl/config/features.h: ditto.
1.1960 +
1.1961 +2006-02-14 Francois Dumont <dums@stlport...>
1.1962 +
1.1963 + * stlport/stl/_hashtable.h, _hashtable.c: Add check in _STLP_DEBUG
1.1964 + that equivalent key have same hash code. Fix _M_rehash method
1.1965 + implementation that used to change elements order thanks Big Muscle
1.1966 + effort to report this issue.
1.1967 +
1.1968 + * build/lib/configure: Fix reference to STLport configuration file
1.1969 + in --no-cygwin option description.
1.1970 +
1.1971 +2006-02-13 Francois Dumont <dums@stlport...>
1.1972 +
1.1973 + * stlport: Patch from Eric Sanford to remove many now useless
1.1974 + Borland workaround.
1.1975 +
1.1976 + * src/fstream.cpp: ditto
1.1977 +
1.1978 + * stlport/stl/_monetary.h, _cwchar.h, _algobase.h: ditto
1.1979 +
1.1980 +2006-02-10 Francois Dumont <dums@stlport...>
1.1981 +
1.1982 + * stlport/stl/_iosfwd.h, _locale.h: Removed type attributes on type
1.1983 + declaration, only useful on type definition.
1.1984 +
1.1985 + * src/message_facets.h: Removed unused parameter in _Catalog_nl_catd_map
1.1986 + erase method to avoid warning.
1.1987 +
1.1988 + * src/num_put_float.cpp: Use more macro technique to avoid unused parameters
1.1989 + in *_cvt functions.
1.1990 +
1.1991 + * test/unit/cppunit/cppunit_mini.h: Comment unused parameter.
1.1992 +
1.1993 + * test/unit/cppunit/file_reporter.h: Add base class initialization
1.1994 + in FileReporter copy constructor definition.
1.1995 +
1.1996 +2006-02-10 Petr Ovtchenkov <complement@users.sourceforge.net>
1.1997 +
1.1998 + * src/num_put_float.cpp: remove usage of static buffers
1.1999 + [potential vulnerabilities]; directly use __iostring instead.
1.2000 +
1.2001 + * test/unit/floatio_test.cpp: test for fixed float output;
1.2002 + cases when fixed float fail on Linux and Solaris, related
1.2003 + with fcvt_r and fconvert calls respectivly commented.
1.2004 +
1.2005 + * build/Makefiles/gmake/gcc.mak: workaround for bug in make 3.79.1
1.2006 + on Solaris [not pass -D_STLP_DEBUG to CPPFLAGS].
1.2007 +
1.2008 + * stlport/stl/_string.h: rollback 2006-01-25.
1.2009 +
1.2010 +2006-02-08 Francois Dumont <dums@stlport...>
1.2011 +
1.2012 + * build/Makefiles: Removed all references to BUILD=r in parameters
1.2013 + to ressource compiler in release as there is no more 'r' appended
1.2014 + to the library name in this mode.
1.2015 +
1.2016 + * src/stlport.rc: Fix support for Borland and add check for BUILD
1.2017 + definition before injecting it in original library file name.
1.2018 +
1.2019 + * doc/README.borland: Update doc to signal new prerequisite for
1.2020 + Borland ressource compiler.
1.2021 +
1.2022 + * test/unit/unordered_test.cpp: Add test for unordered_multiset
1.2023 + equal_range method.
1.2024 +
1.2025 + * test/unit/partial_test.cpp: Add test for strict weak ordering
1.2026 + predicate good behavior check.
1.2027 +
1.2028 +2006-02-07 Francois Dumont <dums@stlport...>
1.2029 +
1.2030 + * src/allocators.cpp: New simplification for _Node_Alloc_Lock,
1.2031 + it do not have to be a template class anymore.
1.2032 +
1.2033 + * stlport/stl/debug/_debug.c: Implement
1.2034 + __stl_debug_engine<_Dummy>::_Message even when specifying
1.2035 + _STLP_DEBUG_MESSAGE in order to have explicit instanciation correctly
1.2036 + generated.
1.2037 +
1.2038 + * stlport/stl/_heap.c, _tree.c, _list.c, _slist.c: Add strict
1.2039 + weak ordering checks.
1.2040 +
1.2041 + * stlport/stl/_debug.h, _debug.c: Add new error type: bad equivalent
1.2042 + functor that has to be used in hash container implementation or in
1.2043 + algorithm like find. Check for this functor is:
1.2044 + if (pred(a, b)) assert(pred(b, a)
1.2045 +
1.2046 + * stlport/stl/_hashtable.c: Add equivalent functor checks.
1.2047 +
1.2048 + * stlport/stl/_debug.h, _debug.c: Check _STLP_DEBUG_MODE_THROW in
1.2049 + __debug_engine::_Message method. Now thrown exception will contain
1.2050 + description of the assertion rather than a generic message.
1.2051 +
1.2052 + * build/Makefiles/gmake/bcc.mak: Fix Borland ressource compiler name,
1.2053 + brcc32 not brc32.
1.2054 +
1.2055 + * stlport/stl/_range_errors.h, src/dll_main.cpp: Add
1.2056 + __stl_throw_runtime_error function used to throw exception in
1.2057 + _STLP_DEBUG_MODE_THROW.
1.2058 +
1.2059 +2006-02-06 Francois Dumont <dums@stlport...>
1.2060 +
1.2061 + * build/Makefiles/nmake: Fixed regression generated by a side
1.2062 + effect of Uli patch below.
1.2063 +
1.2064 +2006-02-02 Francois Dumont <dums@stlport...>
1.2065 +
1.2066 + * stlport/config/_stl_evc.h, stl/_config.h: Patch from Ulrich
1.2067 + Eckhardt to signal endianess detection problem and set EVC
1.2068 + endianess for MIPS SDK.
1.2069 +
1.2070 + * src/allocators.cpp: Clean up _Node_Alloc_Lock definition, only
1.2071 + specialization are now available for thread safe and not thread
1.2072 + safe builds. Make easier definition of internal static mutex.
1.2073 +
1.2074 + * stlport/float.h: Patch from Eric Sanford for Borland NaN management
1.2075 +
1.2076 + * stlport/cfloat: Include STLport float.h rather than native one in
1.2077 + order to use potential internal workaround.
1.2078 +
1.2079 + * stlport/stl/config/_ibm.h: Replace all C++ comment by C comments.
1.2080 +
1.2081 + * stlport/errno.h: For Borland, when building for a single threaded
1.2082 + contex, errno is not a macro and is defined in std namespace so using
1.2083 + have to get the symbol in this namespace.
1.2084 +
1.2085 +2006-01-31 Francois Dumont <dums@stlport...>
1.2086 +
1.2087 + * src/allocators.cpp: Reinforce move of allocators implementation
1.2088 +
1.2089 + * stlport/stl/_alloc.h: Removed include of internal _thread.h no
1.2090 + more necessary now that allocator implementation is in allocators.cpp.
1.2091 +
1.2092 + * stlport/stl/_pthread_alloc.h: Removed pthread.h include.
1.2093 +
1.2094 + * stlport/stl/_rope.h: Adopt classic macro check before inclusion
1.2095 + of _threads.h.
1.2096 +
1.2097 + * build/Makefiles/gmake/gcc.mak: Add -fno-inline option for debug
1.2098 + builds.
1.2099 +
1.2100 + * stlport/stl/_threads.h: Remove lock free singly linked list, avoid
1.2101 + include of windows.h when using Win32 API lock free slist
1.2102 + implementation.
1.2103 +
1.2104 + * src/lock_free_slist.h: New place for the lock free singly linked
1.2105 + list implementation.
1.2106 +
1.2107 + * test/unit/mvctor_test.cpp, type_traits_test.cpp: Small workaround
1.2108 + for gcc 4.0.1 build, looks like there is a conflict between glibc++
1.2109 + __true_type and STLport one.
1.2110 +
1.2111 +2006-01-30 Francois Dumont <dums@stlport...>
1.2112 +
1.2113 + * Patch from Ulrich Eckhardt for EVC4 ICE + some documentation
1.2114 + updates and fixes.
1.2115 +
1.2116 +2006-01-29 Francois Dumont <dums@stlport...>
1.2117 +
1.2118 + * stlport/stl/_hashtable.h, _limits.h: Add missing calling
1.2119 + convention to static methods thanks Petr Supina
1.2120 +
1.2121 +2006-01-28 Francois Dumont <dums@stlport...>
1.2122 +
1.2123 + * stlport/stl/debug/_iterator.h: Fix Hp Acc configuration thanks
1.2124 + Boris Gubenko.
1.2125 +
1.2126 +2006-01-27 Francois Dumont <dums@stlport...>
1.2127 +
1.2128 + * stlport/stl/_alloc.h, _old_alloc.h, _pthread_alloc.h,
1.2129 + test/unit/rope_test.cpp: Fixed reference to _STLP_NO_IOSTREAMS,
1.2130 + replaced by _STLP_USE_NO_IOSTREAMS.
1.2131 +
1.2132 + * stlport/stl/_alloc.h: Move _MAX_BYTES definition out of
1.2133 + _STLP_USE_NO_IOSTREAMS check scope as it is also used in deque
1.2134 + implementation.
1.2135 +
1.2136 + * stlport/stl/_algo.c, debug/_debug.h, _debug.c: Add check for
1.2137 + bad predicate in safe STL mode (_STLP_DEBUG).
1.2138 +
1.2139 + * test/unit/sort_test.cpp: Add test for correct invalid strict weak
1.2140 + ordering predicate detection. Active only when STL safe mode throws
1.2141 + exception rather than terminating application.
1.2142 +
1.2143 + * test/unit/sort_test.cpp: Add a check that stable_sort is really
1.2144 + stable.
1.2145 +
1.2146 +2006-01-26 Francois Dumont <dums@stlport...>
1.2147 +
1.2148 + * stlport/stl/_alloc.h, _alloc.c, _pthread_alloc.h: Many code moved
1.2149 + to allocators.cpp.
1.2150 +
1.2151 + * stlport/stl/_pthread_alloc.c: Removed, content moved to
1.2152 + allocators.cpp.
1.2153 +
1.2154 + * src/allocators.cpp: New, contains STLport node and per thread
1.2155 + allocator implementation.
1.2156 +
1.2157 + * src/dll_main.cpp: Remove references to former __node_alloc
1.2158 + class.
1.2159 +
1.2160 + * build/lib/Makefile.inc: Add allocators.cpp translation unit.
1.2161 +
1.2162 + * stlport/stl/_alloc_old.h: Modified based on allocator classes new
1.2163 + interface.
1.2164 +
1.2165 + * stlport/stl/config/feature.h: Default allocator in _STLP_NO_IOSTREAMS
1.2166 + mode is now the new/delete allocator, user can still use malloc/free
1.2167 + one using config swtich in host.h.
1.2168 +
1.2169 + * stlport/stl/config/_gcc.h: Cygwin/MinGW can now use default node
1.2170 + allocator implementation without memory leak.
1.2171 +
1.2172 +2006-01-25 Francois Dumont <dums@stlport...>
1.2173 +
1.2174 + * test/unit/stream_test.cpp: Add check for ptrdiff_t output
1.2175 + in streams operator when 64 bits portability issue detection
1.2176 + feature is activated with MSVC compilers.
1.2177 +
1.2178 +2006-01-25 Eric Sanford <...@comp...>
1.2179 +
1.2180 + * stlport/stl/_exception.h: Delete obsolete workaround for
1.2181 + legacy Borland compilers.
1.2182 +
1.2183 + * stlport/stl/_string.h: Use an other implementation for the
1.2184 + const_reference operator[](size_type _n) const
1.2185 +
1.2186 + * stlport/stl/config/_bc.h: Restore unexpected exception handler
1.2187 + (static and dynamic) and uncaught_exception handler (static only)
1.2188 +
1.2189 + * build/Makefiles/gmake/lib/bcc.mak: Typo fix in linker flags.
1.2190 +
1.2191 +2006-01-24 Petr Ovtchenkov <complement@users.sourceforge.net>
1.2192 +
1.2193 + * test/unit/bind_test.cpp: add test for member function
1.2194 + binding that show workaround for const function call.
1.2195 +
1.2196 + * src/cxa.c: __cxa_finalize and __cxa_atexit present in libc
1.2197 + in FreeBSD 5.3, but again absent in 6.0
1.2198 +
1.2199 + * build/Makefiles/gmake/app/gcc.mak,
1.2200 + build/Makefiles/gmake/lib/gcc.mak: detect whether gcc
1.2201 + was builded with --disable-shared and use correct libgcc.
1.2202 +
1.2203 + * build/lib/configure: add --use-static-gcc option to show
1.2204 + that STLport should use static language support libraries from
1.2205 + gcc if it was build with --enable-shared.
1.2206 +
1.2207 +2006-01-23 Francois Dumont <dums@stlport...>
1.2208 +
1.2209 + * build/Makefiles/gmake/app/clean.mak: Fix distclean rule for
1.2210 + windows thanks Eric Sanford.
1.2211 +
1.2212 + * stlport/stl/_cstddef.h, _cstdlib.h: When no new header support,
1.2213 + include STLport C header rather than native one to use errno
1.2214 + workaround.
1.2215 +
1.2216 + * stlport/stddef.h: DMC also define errno in native stddef.h file.
1.2217 +
1.2218 +2006-01-22 Francois Dumont <dums@stlport...>
1.2219 +
1.2220 + * src/locale_impl.cpp, stlport/stl/_codecvt.h, _monetary.c,
1.2221 + _num_get.c, _num_put.c, _time_facets.c: Borland workaround for
1.2222 + locale facet id instanciation that were duplicated. Now static
1.2223 + instances are no more defined from .c files but only from the
1.2224 + .cpp and only for facets that are implemented by STLport. Users
1.2225 + implementing facet inheriting from the STLport one will have to
1.2226 + defined the static instance themself in their translation units.
1.2227 +
1.2228 + * stlport/stl/type_manips.h: Fixed _UnCVType wrong implementation
1.2229 + reported by Digital Mars compiler.
1.2230 +
1.2231 + * stlport/stl/boost_type_traits.h: Fixed _OKMemCpy implementation
1.2232 + remove_pointer call was wrong.
1.2233 +
1.2234 + * src/dll_main.cpp: Hide force_link definition to MSVC compilers,
1.2235 + was useless and producing a warning.
1.2236 +
1.2237 + * build/Makefiles/gmake/cygming/rules-so.mak: Workaround for DMC
1.2238 + linker weird behavior. Linker create the dll file even if link
1.2239 + fail which confuse make dependency feature. As lib file is not
1.2240 + generated, dll now depends on lib that depends on build files.
1.2241 +
1.2242 + * stlport/stl/config/_warning_off.h: Disabled this used in initialization
1.2243 + list warning, used in rope implementation.
1.2244 +
1.2245 + * build/lib/configure: Fix --with-boost interpretation.
1.2246 +
1.2247 + * build/Makefiles/gmake/dmc.mak: Use dm_link command for linker rather
1.2248 + than link that is rather the MSVC like wrapper.
1.2249 +
1.2250 + * build/Makefiles/gmake/cygming/targetsys.mak: Ditto for dm_lib rather
1.2251 + than lib command.
1.2252 +
1.2253 + * build/Makefiles/gmake/app/rules.mak: Use same linker command invocation
1.2254 + for DMC and Borland.
1.2255 +
1.2256 + * doc/README.borland: Documentation update about limitation on locale
1.2257 + facets id instanciation.
1.2258 +
1.2259 + * stlport/stdlib.h: DMC, like Borland and EVC, defines errno macro
1.2260 + in stdlib.h
1.2261 +
1.2262 + * stlport/stl/config/user_config.h, features.h: Inverse
1.2263 + _STLP_FORCE_STRING_TERMINATION macro switch in
1.2264 + _STLP_DONT_FORCE_STRING_TERMINATION. This is less dangerous for
1.2265 + existing code.
1.2266 +
1.2267 + * stlport/stl/_string.h: When _STLP_FORCE_STRING_TERMINATION
1.2268 + is defined operator[] implementation is simpler.
1.2269 +
1.2270 + * stlport/stl/debug/_string.h: Based implementation of []
1.2271 + operator on the non STL safe internal instance, avoid duplication
1.2272 + of check for access to the element of index size().
1.2273 +
1.2274 + * test/unit/fstream_test.cpp: Add custom facet id definition for
1.2275 + Borland.
1.2276 +
1.2277 + * test/unit/hash_test.cpp: Now Borland support correctly hash container
1.2278 + implementation.
1.2279 +
1.2280 + * test/unit/rope_test.cpp: Fixed test implementation to build in
1.2281 + _STLP_NO_IOSTREAMS mode.
1.2282 +
1.2283 +2006-01-18 Francois Dumont <dums@stlport...>
1.2284 +
1.2285 + * stlport/stl/_ostream.h, _ostream.c: Use size_t rather than
1.2286 + unsigned int for MSVC compilers after VC6 in IO output operator
1.2287 + to avoid 64 bits warning when trying to display a size_t type.
1.2288 +
1.2289 + * test/unit/sstream_test.cpp: Add test that reveal the 64 bits
1.2290 + warning.
1.2291 +
1.2292 + * test/unit/string_test.cpp: Fixed unused variable warning.
1.2293 +
1.2294 +2006-01-17 Petr Ovtchenkov <complement@users.sourceforge.net>
1.2295 +
1.2296 + * src/c_locale_glibc/c_locale_glibc2.c: really implemented
1.2297 + getting default locale categories from environment; replace
1.2298 + a few strcpy by strncpy to protect from possible buffer overflow
1.2299 + attack.
1.2300 +
1.2301 + * stlport/new.h, stlport/stl/_typeinfo.h: few workarounds for ICC 9
1.2302 + [suggested by Lim Hwan Cheol].
1.2303 +
1.2304 +2006-01-14 Eric Sanford <...@comp...>
1.2305 +
1.2306 + * build/test/eh/bcc.mak: Copied from build/test/unit/bcc.mak.
1.2307 +
1.2308 + * stlport/stl/_rope.c: Restore Borland support for _Rope_rotate.
1.2309 +
1.2310 + * stlport/stl/_rope.h: Fix Borland 5.5.1 internal compiler errors
1.2311 + in _M_path_end and _M_tmp_buf structs. Restore Borland support for
1.2312 + _Rope_rotate.
1.2313 +
1.2314 + * test/eh/test_rope.cpp: Restore Borland exception test for rope.
1.2315 +
1.2316 + * test/unit/rope_test.cpp: Restore Borland unit test for rope.
1.2317 +
1.2318 +2006-01-13 Petr Ovtchenkov <complement@users.sourceforge.net>
1.2319 +
1.2320 + * stlport/stl/_string.h, stlport/stl/debug/_string.h:
1.2321 + const operator [n] should return CharT() in case of
1.2322 + n == size(), ISO/IEC 14882:2003(E), 21.3.4; thanks Russ Miller.
1.2323 +
1.2324 + * test/unit/string_test.cpp: test for fixed bug above.
1.2325 +
1.2326 + * build/lib/configure: change --use-boost= onto --with-boost=
1.2327 +
1.2328 +2006-01-13 Francois Dumont <dums@stlport...>
1.2329 +
1.2330 + * test/unit/type_traits_test.cpp: Add boost specialization for
1.2331 + any_pod_type in order to reproduce STLport behavior when using
1.2332 + boost type traits.
1.2333 +
1.2334 + * src/dll_main.cpp: Remove now invalid template explicit
1.2335 + instanciation of _Bs_G that is no more a template.
1.2336 +
1.2337 + * stlport/stl/config/_detect_dll_or_lib.h: When no iostreams mode,
1.2338 + consider that we are in a static lib mode.
1.2339 +
1.2340 + * stlport/stl/_limits.c, _hashtable.c: Add _STLP_CALL specification
1.2341 + to _LimG and _Stl_prime methods implementation.
1.2342 +
1.2343 + * stlport/stl/_limits.c: Put _Stl_prime methods implementation in
1.2344 + a _STLP_EXPOSE_GLOBALS_IMPLEMENTATION macro check block. Those
1.2345 + methods are supposed to come from libs when using iostreams.
1.2346 +
1.2347 + * stlport/stl/_num_put.h, _num_get.h, _time_facets.h, _ios.h,
1.2348 + _ios_base.h: Cleanup Borland workaround now useless.
1.2349 +
1.2350 + * stlport/stl/boost_type_traits.h: Fixed _OKToMemCpy implementation
1.2351 + using boost type traits to be closer to the STLport behavior.
1.2352 +
1.2353 + * build/lib/configure.bat: Fixed reference to STLport user
1.2354 + configuration file.
1.2355 +
1.2356 + * build/lib/configure: Add --use-boost option to inject boost
1.2357 + path during build process.
1.2358 +
1.2359 +2006-01-12 Petr Ovtchenkov <complement@users.sourceforge.net>
1.2360 +
1.2361 + * stlport/stl/_rope.h, stlport/stl/_rope.c: pass CharConsumer
1.2362 + via reference, to take into account CharConsumer modifications.
1.2363 + This has relation to find(char) in rope. Thanks Cristian Vlasceanu.
1.2364 +
1.2365 + * test/unit/rope_test.cpp: test for fixed bug above.
1.2366 +
1.2367 +2006-01-11 Francois Dumont <dums@stlport...>
1.2368 +
1.2369 + * src/bitset.cpp: Add stlport_prefix.h include.
1.2370 +
1.2371 + * stlport/stl/_bitset.h: Add an inline implementation for _S_count
1.2372 + and _S_first_one static methods for _STLP_NO_IOSTREAMS mode. Should
1.2373 + be slower than version coming with library but avoid link trouble.
1.2374 +
1.2375 +2006-01-11 Petr Ovtchenkov <complement@users.sourceforge.net>
1.2376 +
1.2377 + * stlport/stl/_bitset.h, stlport/stl/_bitset.c, src/bitset.cpp:
1.2378 + make helper structure _Bs_G non-template [it used only as instance
1.2379 + with unused bool argument only], and put static tables into library
1.2380 + to avoid possible static instances duplication.
1.2381 +
1.2382 + * build/lib/Makefile.inc: idem.
1.2383 +
1.2384 +2006-01-10 Francois Dumont <dums@stlport...>
1.2385 +
1.2386 + * stlport/stl/type_traits.h, config/_msvc.h, _mwerks.h: Integrate
1.2387 + intrinsic type traits support for Visual 2005 and Metrowerk. Code
1.2388 + based on boost library information and not tested for Metrowerk.
1.2389 +
1.2390 + * test/unit/bind_test.cpp: Fix BindTest::bind2nd3 test case, had
1.2391 + never been used.
1.2392 +
1.2393 + * stlport/stl/boost_type_traits.h: Change boost type traits wrapping
1.2394 + implementation to use meta programming operation on types rather
1.2395 + than on numerical constant, MSVC6 prefer it.
1.2396 +
1.2397 + * build/test/unit/msvc.mak: Systematically add /Zm800 for MSVC
1.2398 + compilers, useful in a number of case and transparent in others.
1.2399 +
1.2400 + * test/unit/type_traits_test.cpp: Add is_POD test case. Add dummy
1.2401 + constructors, assignment operator and destructor to any_type struct
1.2402 + to make the tests pass even with compilers having intrinsic type
1.2403 + traits support.
1.2404 +
1.2405 +2006-01-09 Francois Dumont <dums@stlport...>
1.2406 +
1.2407 + * stlport/stl/debug: Fix move constructor to keep the container
1.2408 + move constructor complete. When STLport user do no require no
1.2409 + extension or Standard debug safe mode, iterators are also move
1.2410 + with the container contents.
1.2411 +
1.2412 + * stlport/stl/_list.h, _slist.h, _tree.h: Made iterator struct
1.2413 + constructor from base class pointer explicit to forbid expression
1.2414 + like: list.begin() == 0.
1.2415 +
1.2416 + * stlport/stl/pointers/_slist.h, _list.h, _set.h: Fix implementation
1.2417 + that was using former implicit contructor from pointer to base class.
1.2418 +
1.2419 + * src/c_locale_win32/c_locale_win32.c: Fix implementation for
1.2420 + compilers coming with a native lib implementing secure C functions
1.2421 + like strncpy_s.
1.2422 +
1.2423 + * src/iostream.cpp: Hide I/O streams declaration when defining
1.2424 + them when compiler has no support for removing I/O streams
1.2425 + from static global variable initialization segment. Avoid the
1.2426 + stdio_istreambuf using directive when we do not use STLport
1.2427 + private namespace.
1.2428 +
1.2429 + * stlport/stl/_rope.h, _rope.c: Use internal, not _STLP_NO_EXTENSIONS
1.2430 + dependant functions for implementation.
1.2431 +
1.2432 + * stlport/rope, hash_map, hash_set: Add _STLP_NO_EXTENSIONS check
1.2433 + that generate a #error if defined as those headers are STLport
1.2434 + extensions.
1.2435 +
1.2436 + * stlport/_uninitialized.h: Add __uninitialized_copy_n no dependant
1.2437 + against _STLP_NO_EXTENSIONS for rope implementation.
1.2438 +
1.2439 + * test/unit: Made tests ok to build even when _STLP_NO_EXTENSIONS or
1.2440 + _STLP_NO_ANACHONISM or _STLP_NO_CUSTOM_IO is defined.
1.2441 +
1.2442 + * stlport/stl/_num_put.h, _num_get.h: Fix definition scope of
1.2443 + _STLP_MOVE_TO_STD_NAMESPACE that was wrong when _STLP_NO_CUSTOM_IO
1.2444 + is defined.
1.2445 +
1.2446 + * stlport/stl/boost_type_traits.h: Fixed _IsRef implementation based
1.2447 + on boost type traits feature.
1.2448 +
1.2449 + * build/nmake/extern.mak, lib/msvc.mak, test/unit/msvc.mak,
1.2450 + test/eh/msvc.mak: Moved injection of boost include path for all targets
1.2451 + in extern.mak. Also removed a useless double quote as make variable already
1.2452 + contains it.
1.2453 +
1.2454 + * stlport/stl/config/_bc.h, test/unit/floatio_test.cpp, cmath_test.cpp,
1.2455 + limit_test.cpp: Borland patch from Eric Sanford.
1.2456 +
1.2457 + * test/unit/string_test.cpp: Add template_wexpression test to check
1.2458 + wstring template expression.
1.2459 +
1.2460 +2006-01-05 Francois Dumont <dums@stlport...>
1.2461 +
1.2462 + * stlport/stl/_stdexcept.h: Fix __Named_exception destructor
1.2463 + implementation when _STLP_NO_IOSTREAMS is defined or when
1.2464 + securized C function strcpy_s exists.
1.2465 +
1.2466 + * stlport/stl/pointers/_set.h: Fixed implementation as _Identity
1.2467 + is now in private namespace and const_reverse_* functions must
1.2468 + return const_reverse_* iterators and not simply reverse_*.
1.2469 +
1.2470 + * test/unit/bcompos_test.cpp, bind_test.cpp: Made the tests usable
1.2471 + when _STLP_NO_EXTENSIONS is defined.
1.2472 +
1.2473 + * build/lib/configure.bat: Fix name of msvc8 compiler.
1.2474 +
1.2475 + * test/unit/mfunptr_test.cpp: Ignore find test when no class
1.2476 + partial template specialization rather than commenting it.
1.2477 +
1.2478 + * test/unit/type_traits_test.cpp: Ditto for reference_type test.
1.2479 +
1.2480 + * build/Makefiles/nmake/top.mak: Fixed install-shared definition.
1.2481 +
1.2482 + * build/Makefiles/gmake/gcc.mak: Add _STLP_USE_STATIC_LIB when
1.2483 + building and using STLport static lib under MinGW/Cygwin.
1.2484 +
1.2485 +2006-01-04 Francois Dumont <dums@stlport...>
1.2486 +
1.2487 + * src/acquire_release.h: New file, expose __acquire_*
1.2488 + functions used in different translation unit.
1.2489 +
1.2490 + * src/num_put.h: Removed, content moved to num_put.cpp that
1.2491 + was the only translation unit using exposed functions.
1.2492 +
1.2493 + * src/*: Build with Intel C++ 9 compiler reveal that many
1.2494 + static specification was missing.
1.2495 +
1.2496 + * src/ctype.cpp: Filter out _WCharIndexT specialization for
1.2497 + Intel compiler that consider wchar_t as unsigned, fixed a
1.2498 + warning.
1.2499 +
1.2500 + * _STLP_STATIC_ASSERT is now called without trailing ';' that
1.2501 + is already in the macro definition.
1.2502 +
1.2503 + * src/*: Removed reference to _SgI namespace replaced by the
1.2504 + STLport private namespace.
1.2505 +
1.2506 + * src/iostream.cpp: Add iostream include to expose cout, cin, cerr
1.2507 + definition to declaration.
1.2508 +
1.2509 +2006-01-03 Francois Dumont <dums@stlport...>
1.2510 +
1.2511 + * stlport/stl/config/_gcc.h: Force use of new/delete based
1.2512 + allocator under Cygwin/MinGW, default node allocator has
1.2513 + problem because __node_allocator static datas are sometimes
1.2514 + duplicated in a dll context.
1.2515 +
1.2516 +2006-01-01 Francois Dumont <dums@stlport...>
1.2517 +
1.2518 + * build/Makefiles/gmake/lib/gcc.mak, stlport/stl/config/_gcc.h:
1.2519 + Change way of building dll with Cygwin/MinGW. No more export of
1.2520 + all symbols, we use dllexport specification, makes import lib
1.2521 + really shorter and dll too. Moreover use of the
1.2522 + enable-auto-image-base linker option to make load of dll faster.
1.2523 +
1.2524 + * stlport/stl/_time_facets.c, _num_put.c, _num_get.c, _monetary.c,
1.2525 + debug/_debug.c: Adapt existing Cygwin/MinGW workaround for new
1.2526 + way of generating dlls.
1.2527 +
1.2528 +2005-12-31 Francois Dumont <dums@stlport...>
1.2529 +
1.2530 + * doc: Add Borland doc and update cygwin, mingw and msvc.
1.2531 +
1.2532 + * build/lib/README.options: Removed, replaced by configrure
1.2533 + script.
1.2534 +
1.2535 + * build/test/eh/bcc.mak: Added to build EH tests for Borland.
1.2536 +
1.2537 +2005-12-29 Francois Dumont <dums@stlport...>
1.2538 +
1.2539 + * src/c_locale_win32/c_locale_win32.c: Hide _Locale_mbtowc and
1.2540 + _Locale_wctomb when no wchar_t support is detected thanks Eric
1.2541 + Sanford.
1.2542 +
1.2543 + * src/c_locale_win32/c_locale_win32.c: Add mapping from Borland
1.2544 + facet macros to STLport associated string representation array index
1.2545 + thanks Eric Sanford.
1.2546 +
1.2547 + * stlport/stl/config/_evc.h: Patch from Michael Fink to generalized
1.2548 + use of OutputDebugString for Windows CE when we need to trace
1.2549 + information.
1.2550 +
1.2551 + * build/Makefiles/gmake/bcc.mak, lib/bcc.mak, app/bcc.mak: Fix
1.2552 + definition of START_OBJ thanks armpit33
1.2553 +
1.2554 + * build/Makefiles/*: Generalize use of install-shared rather than
1.2555 + list of all shared rules, idem for install-static.
1.2556 +
1.2557 +2005-12-27 Francois Dumont <dums@stlport...>
1.2558 +
1.2559 + * stlport/stl/_string_io.c: Generalized use of _STLP_STATIC_ASSERT
1.2560 + macro rather that hand writen static assertion.
1.2561 +
1.2562 + * stlport/stl/_fstream.c, _istream.c, src/fstream.cpp, strstream.cpp:
1.2563 + Add some cast to avoid Borland suspicious pointer arithmetic warnings
1.2564 + thanks Eric Sanford.
1.2565 +
1.2566 + * stlport/stl/_limits.c: Fix Borland definition of NaNs and infinity
1.2567 + for long double thanks Eric Sanford.
1.2568 +
1.2569 + * stlport/stl/config/_system.h, _gcc.h: Fix config for Windows, MinGW
1.2570 + and Cygwin platforms.
1.2571 +
1.2572 + * stlport/stl/config/_windows.h: Can now be included by a pure C
1.2573 + compiler.
1.2574 +
1.2575 + * stlport/stl/config/_warning_off.h: Removed suspicious pointer
1.2576 + arithmetic warning for Borland thanks Eric Sanford.
1.2577 +
1.2578 + * stlport/stl/_construct.h: Removed now useless Borland workaround.
1.2579 +
1.2580 + * src/stdio_streambuf.cpp: Ditto.
1.2581 +
1.2582 + * stlport/stl/_alloc.h: Now allocator is tagged as an STLport class
1.2583 + even without partial template specialization support. This is
1.2584 + necessary because type_traits is specialized for allocator<char>,
1.2585 + allocator<wchar_t> and allocator<void*> when partial template
1.2586 + specialization is not available.
1.2587 +
1.2588 + * test/unit/bitset_test.cpp: Add tests for the STLport
1.2589 + bitset::_Find_first extension.
1.2590 +
1.2591 +2005-12-27 Petr Ovtchenkov <complement@users.sourceforge.net>
1.2592 +
1.2593 + * src/initial_mak: obsolete makes removed (sync with STLPORT_5_0
1.2594 + branch).
1.2595 +
1.2596 +2005-12-24 Petr Ovtchenkov <complement@users.sourceforge.net>
1.2597 +
1.2598 + * stlport/stl/config/_gcc.h: gcc, builded by Apple is differ
1.2599 + in behavior from original; in particular, in path to includes;
1.2600 +
1.2601 + * build/Makefiles/gmake/app/gcc.mak: fix gcc options on MacOS X;
1.2602 + STLport is free from libstdc++ on MacOS now;
1.2603 +
1.2604 + * build/Makefiles/gmake/gcc.mak: fix gcc options on MacOS X; gcc,
1.2605 + builded by Apple is differ in behavior from original;
1.2606 + detect this;
1.2607 +
1.2608 + * build/Makefiles/gmake/lib/gcc.mak: fix gcc on MacOS X;
1.2609 + differentiate gcc from Apple and original;
1.2610 + STLport is free from libstdc++ on MacOS X now;
1.2611 +
1.2612 + * build/Makefiles/gmake/darwin/rules-so.mak: use
1.2613 + gcc instead of c++ for linkage, if only C sources present.
1.2614 +
1.2615 + * build/lib/gcc.mak, build/test/unit/gcc.mak: remove duplication
1.2616 + of stlport includes.
1.2617 +
1.2618 +2005-12-22 Petr Ovtchenkov <complement@users.sourceforge.net>
1.2619 +
1.2620 + * stlport/stl/config/_windows.h: all system specific configuration
1.2621 + in one place [moved from stlport/stl/_windows.h]
1.2622 +
1.2623 + * stlport/stl/_windows.h: deleted; all system specific configuration
1.2624 + in one place [moved to stlport/stl/config/_windows.h]
1.2625 +
1.2626 + * stlport/stl/debug/_debug.c, stlport/stl/_threads.h:
1.2627 + _windows.h included via _prolog.h [i.e. via stl/config/_system.h],
1.2628 + see changes above.
1.2629 +
1.2630 + * stlport/stl/config/_sunprocc.h: remove include of _solaris.h---it
1.2631 + already included from _system.h
1.2632 +
1.2633 + * stlport/stl/config/_kai.h: remove include of os configuration files,
1.2634 + it should be included from _system.h
1.2635 +
1.2636 + * stlport/stl/config/_intel.h: fix path after config headers
1.2637 + reorganization.
1.2638 +
1.2639 + * stlport/stl/config/_evc.h: idem
1.2640 +
1.2641 + * stlport/stl/_exception.h: idem
1.2642 +
1.2643 + * stlport/stl/config/_prolog.h: idem
1.2644 +
1.2645 + * test/unit/fstream_header_test.cpp: idem
1.2646 +
1.2647 + * test/unit/iomanip_header_test.cpp: idem
1.2648 +
1.2649 + * test/unit/ios_header_test.cpp: idem
1.2650 +
1.2651 + * test/unit/iostream_header_test.cpp: idem
1.2652 +
1.2653 + * test/unit/istream_header_test.cpp: ditto
1.2654 +
1.2655 + * test/unit/locale_header_test.cpp: idem
1.2656 +
1.2657 + * test/unit/ostream_header_test.cpp: idem
1.2658 +
1.2659 + * test/unit/sstream_header_test.cpp: idem
1.2660 +
1.2661 + * test/unit/strstream_header_test.cpp: idem
1.2662 +
1.2663 +2005-12-21 Francois Dumont <dums@stlport...>
1.2664 +
1.2665 + * stlport/stl/debug/_debug.h, _debug.c, _string_sum_methods.h:
1.2666 + Removed some unused parameters reported by Borland compiler.
1.2667 +
1.2668 + * stlport/stl/config/_warnings_off.h: Disable unused parameters
1.2669 + warning for Borland compiler.
1.2670 +
1.2671 + * build/Makefiles/gmake/targetdirs.mak: Change config in order to
1.2672 + have each generated application in a different bin folder.
1.2673 +
1.2674 + * stlport/stl/_threads.h: Used _STLP_STATIC_ASSERT macro for a
1.2675 + static assertion.
1.2676 +
1.2677 +2005-12-19 Petr Ovtchenkov <complement@users.sourceforge.net>
1.2678 +
1.2679 + * build/Makefiles/gmake/lib/gcc.mak: move LDSEARCH flags after
1.2680 + possible -nostdlib
1.2681 +
1.2682 + * build/lib/gcc.mak: don't add include path, it already included.
1.2683 +
1.2684 + * src/c_locale.h: include stlport_prefix.h to add STLport's
1.2685 + definitions that used below.
1.2686 +
1.2687 + * stlport/stl_user_config.h, stlport/stl/_config.h: moved
1.2688 + to stlport/stl/config catalog and renamed.
1.2689 +
1.2690 + * stlport/stl/_config_compat.h, stlport/stl/_site_config.h: ditto.
1.2691 +
1.2692 + * stlport/config: headers moved to stlport/stl/config catalog,
1.2693 + renamed and reorganized.
1.2694 +
1.2695 + * stlport/stl/_prolog.h, stlport/stl/_epilog.h, src/stlport_prefix.h:
1.2696 + reflect changes in configuration files.
1.2697 +
1.2698 +2005-12-17 Francois Dumont <dums@stlport...>
1.2699 +
1.2700 + * stlport/stl/_config.h: Removed ';' in _STLP_STATIC_ASSERT
1.2701 + definition.
1.2702 +
1.2703 + * stlport/stl/_cwctype.h: Fix native namespace of wide char functions
1.2704 + for MinGW runtime <= 3.0. Also fix a typo for FreeBDS.
1.2705 +
1.2706 + * src/stdio_streambuf.cpp: Add missing 'defined' when checking
1.2707 + __OS400__ macro existance.
1.2708 +
1.2709 + * test/unit/resolve_name.cpp, set_test.cpp: Removed useless ';'
1.2710 + reported by remarks from Intel C++ compiler.
1.2711 +
1.2712 +2005-12-16 Francois Dumont <dums@stlport...>
1.2713 +
1.2714 + * stlport/stl/_rope.h: Moved overload of __identity_element for
1.2715 + _Rope_Concat_fn in STLport private namespace where orginal function
1.2716 + declaration is. Also moved _Rope_Concat_fn at the same time, much more
1.2717 + many elements of _rope.h should be moved to this namespace...
1.2718 +
1.2719 + * stlport/stl/_monetary.c: Change implementation of __money_do_put for
1.2720 + Borland compiler, looks like this compiler do not like ternary operator.
1.2721 +
1.2722 + * src/c_locale_win32/c_locale_win32.c: Replace check of category in
1.2723 + __Extract_locale_name from > LC_ALL by != LC_ALL, there is no reason
1.2724 + for LC_ALL to be upper or lower to all other categories.
1.2725 +
1.2726 + * build/Makefiles/gmake/cygming/rules-so.mak: Segregate different
1.2727 + compilers linker calls and add reference to START_OBJ in Borland
1.2728 + linker invocation.
1.2729 +
1.2730 + * build/Makefiles/gmake/lib/rules-a.mak, cygming/targetsys.mak: Borland
1.2731 + archiver add option is now '+', before being invocated archive is always
1.2732 + deleted to avoid warnings because the Borland archiver do not have a
1.2733 + real add or replace module option.
1.2734 +
1.2735 + * stlport/stl/type_traits.h: Fix for compiler simulating partial
1.2736 + template specialization (VC6)
1.2737 +
1.2738 + * test/eh/test_rope.cpp: Removed rope test for Borland.
1.2739 +
1.2740 + * test/unit/exception_test.cpp: Commented tests are now ignored.
1.2741 +
1.2742 + * test/unit/locale_test.cpp, string_test.cpp: No more ignored test
1.2743 + for Borland.
1.2744 +
1.2745 +2005-12-14 Petr Ovtchenkov <complement@users.sourceforge.net>
1.2746 +
1.2747 + * build/Makefiles/gmake/sysid.mak: parse two-token target
1.2748 + system identification string along with three-token one
1.2749 + [useful when vendor is omitted]; thanks Jonathan Sprinkle.
1.2750 +
1.2751 + * stlport/cwctype, stlport/stl/_cwctype.h: wctype_t and
1.2752 + others are in global namespace on FreeBSD.
1.2753 +
1.2754 + * build/Makefiles/gmake/app/gcc.mak, lib/gcc.mak: use build
1.2755 + with -nostdlib on Solaris.
1.2756 +
1.2757 + * src/cxa.c: fix for Solaris
1.2758 +
1.2759 + * stlport/config/stl_solaris.h, stlport/stl/_cmath.h:
1.2760 + hmm, strange... sometimes MATH_L and MATH_F present on Solaris,
1.2761 + sometimes not...
1.2762 +
1.2763 +2005-12-14 Francois Dumont <dums@stlport...>
1.2764 +
1.2765 + * test/unit/cppunit/cppunit_mini.h, file_reporter.h: Add ignore
1.2766 + test feature, now tests should be ignored rather than commented.
1.2767 + 2 new macros for that CPPUNIT_IGNORE to add in tests declaration,
1.2768 + all test following this macro won't be run; CPPUNIT_STOP_IGNORE
1.2769 + optional macro to stop ignoring tests.
1.2770 +
1.2771 + * test/unit/fstream_test.cpp: Ignore custom_facet test when not
1.2772 + supported rather than comment it.
1.2773 +
1.2774 + * test/unit/hash_test.cpp: Ignore hmap1 test for Borland and Digital
1.2775 + Mars compilers, looks like rope class is too complicated for those
1.2776 + compilers.
1.2777 +
1.2778 + * test/unit/locale_test.cpp: Ignore locale_by_name test for compiler
1.2779 + without exceptions support. Ignore money facet tests for Borland.
1.2780 +
1.2781 + * test/unit/mvctor_test.cpp, rope_test.cpp: Some tests ignored
1.2782 + depending on various configuration settings.
1.2783 +
1.2784 + * test/unit/type_traits.cpp: Add test for _IsSTLportClass metaprogramming
1.2785 + tool. Ignored for Borland.
1.2786 +
1.2787 + * test/unit/unordered_test.cpp: Fix test for Digital Mars, unordered
1.2788 + containers value_type are not necessarily with an immutable key, it is
1.2789 + more portable to use value type rather than redefining it in the test.
1.2790 +
1.2791 + * test/unit/string_test.cpp: Removed Windows CE macro check replaced
1.2792 + by WaitForMultipleObjects returned code check, more portable and
1.2793 + maintenable. Ignore a test for Digital Mars compiler.
1.2794 +
1.2795 + * stlport/stl/type_manips.h, type_traits.h: Simplified metaprograming
1.2796 + tools implementation; now avoid compilation constant replaced by
1.2797 + type, Borland compiler has problem with constants.
1.2798 +
1.2799 + * stlport/config/stl_bc.h: Made supported compiler check more accurate
1.2800 + free compiler is 5.5.1 so it is the oldest supported version. Borland
1.2801 + compiler do not support IEC559 specifications.
1.2802 +
1.2803 + * build/Makefiles/gmake/bcc.mak: Put startup .obj to link with in
1.2804 + START_OBJ rather than LDLIBS, thanks Eric Sanford.
1.2805 +
1.2806 + * src/c_locale_win32/c_locale_win32.c: Temporarily removed category
1.2807 + check in __Extract_locale_name function for Borland, looks like LC_ALL
1.2808 + or LC_MAX has not the right value.
1.2809 +
1.2810 +2005-12-13 Francois Dumont <dums@stlport...>
1.2811 +
1.2812 + * src/cxa.c: Add include of stlport_prefix.h first, this file
1.2813 + should be always included first in STLport translation units,
1.2814 + it prepares some compilers config and define important for Wins
1.2815 + __BUILDING_STLPORT macro.
1.2816 +
1.2817 +2005-12-13 Petr Ovtchenkov <complement@users.sourceforge.net>
1.2818 +
1.2819 + * build/Makefiles/gmake/targetdirs.mak: built-in
1.2820 + test in /bin/sh on Solaris has no -e, use external instead.
1.2821 +
1.2822 +2005-12-11 Francois Dumont <dums@stlport...>
1.2823 +
1.2824 + * build/Makefiles/gmake/bcc.mak : Add -w-eff to disable 'useless'
1.2825 + code warning, we had to chose between this warning and the 'used
1.2826 + parameter' one.
1.2827 +
1.2828 + * build/Makefiles/gmake/targetdirs.mak: Removed comment about folder
1.2829 + creation action under windows platform. The action is identical to
1.2830 + the one used in the nmake build system and no one complains about it
1.2831 + so current situation is not so bad. Only users of Windows before Windows
1.2832 + 98 should eperiment troubles, this is a known limitation.
1.2833 +
1.2834 + * build/Makefiles/gmake/dmc.mak, cygming/rules-so.mak: Change config,
1.2835 + now we directly invoke the linker, we do not use a compiler call for it.
1.2836 +
1.2837 + * build/Makefiles/gmake/app/bcc.mak: Fix linker option in order to generate
1.2838 + a windows executable and not a dll, thanks Eric Sanford.
1.2839 +
1.2840 + * build/Makefiles/gmake/app/rules-install.mak: Add install dir dependency
1.2841 + rather than doing a folder existence check in rules actions.
1.2842 +
1.2843 + * build/Makefiles/gmake/app/rules.mak: Restore slash rotation for Borland
1.2844 + linker invocation and fix static rules dependencies to guaranty folder
1.2845 + creations.
1.2846 +
1.2847 + * build/Makefiles/gmake/lib/bcc.mak: Add missing archiver page size parameters.
1.2848 +
1.2849 + * build/test/unit/bcc.mak: Add _STLP_DEBUG_UNINITIALIZED for static
1.2850 + debug rules.
1.2851 +
1.2852 + * build/Makefiles/gmake/lib/rules-a.mak: Segregate each archiver invocation.
1.2853 +
1.2854 +2005-12-09 Francois Dumont <dums@stlport...>
1.2855 +
1.2856 + * build/lib/configure.bat: Add Borland compiler to compilers
1.2857 + able to mix a dll build with a static native runtime.
1.2858 +
1.2859 + * build/Makefiles/gmake/bcc.mak, dmc.mak: Complete libs to link
1.2860 + depending on STLport configuration.
1.2861 +
1.2862 + * build/Makefiles/gmake/targetdirs.mak: roll back modif from Petr
1.2863 + 2005-12-08
1.2864 +
1.2865 + * build/Makefiles/gmake/targets.mak: ditto
1.2866 +
1.2867 + * build/Makefiles/gmake/cygming/lib.mak: Fix for static libs build
1.2868 + with compiler different than gcc.
1.2869 +
1.2870 + * build/Makefiles/gmake/cygming/targetsys.mak: Add missing info for
1.2871 + static libs build with Borland and Digital Mars compilers.
1.2872 +
1.2873 + * build/Makefiles/gmake/lib/rules-a.mak: Fix static builds commands
1.2874 + to use info of above point.
1.2875 +
1.2876 + * build/Makefiles/gmake/lib/rules-install-a.mak: Add install rule
1.2877 + for windows and missing catalog in dependency tree.
1.2878 +
1.2879 + * build/Makefiles/gmake/windows/rules-install-so.mak: Add missing
1.2880 + catalog dependency.
1.2881 +
1.2882 +2005-12-09 Petr Ovtchenkov <complement@users.sourceforge.net>
1.2883 +
1.2884 + * build/lib/Makefile.inc: add cxa.c into compilation; this
1.2885 + is useful for FreeBSD 4.11 C++ ABI workaround.
1.2886 +
1.2887 + * src/cxa.c: use _cxa_atexit and related functions on
1.2888 + FreeBSD 4.11 [workaround for missed C++ ABI functions].
1.2889 +
1.2890 +2005-12-08 Francois Dumont <dums@stlport...>
1.2891 +
1.2892 + * stlport/stl/_auto_ptr.h: Add missing Standard throw() specification
1.2893 + on all auto_ptr members.
1.2894 +
1.2895 + * stlport/config/stl_mycomp.h: Removed recently introduce macro
1.2896 + _STLP_DFLT_PARAM_INSTANCIATION_BUG, already existing _STLP_DONT_SUP_DFLT_PARAM
1.2897 + is enough for the moment.
1.2898 +
1.2899 + * stlport/stl/_stream_iterator.h: Small implementation change to make
1.2900 + Digital Mars compiler happy.
1.2901 +
1.2902 + * stlport/stl/_unordered_map.h: Digital Mars compiler do not like
1.2903 + immutable keys in associative containers.
1.2904 +
1.2905 +2005-12-08 Petr Ovtchenkov <complement@users.sourceforge.net>
1.2906 +
1.2907 + * stlport/ctype.h: forward-declaration for _exception struct
1.2908 + for WinCE/eVC3; prevents warning message
1.2909 + ../include/stdlib.h(817) : warning C4115:
1.2910 + '_exception' : named type definition in parentheses
1.2911 + [Michael Fink's suggestion]
1.2912 +
1.2913 + * stlport/float.h, stlport/limits.h, stlport/setjmp.h: idem.
1.2914 +
1.2915 + * stlport/stdarg.h, stlport/string.h, stlport/stdio.h: idem.
1.2916 +
1.2917 + * build/Makefiles/gmake/gcc.mak: check configuration macro
1.2918 + WITHOUT_STLPORT [useful for tests]; force usage of stlport
1.2919 + headers first otherwise.
1.2920 +
1.2921 + * build/Makefiles/gmake/targetdirs.mak: fix catalogs creation
1.2922 + procedure [loop through catalogs required]; comment problematic
1.2923 + code when we have no good tools.
1.2924 +
1.2925 + * build/Makefiles/gmake/lib/gcc.mak: fix typo [FreeBSD]; fix
1.2926 + set of libraries when link for FreeBSD; fix typo in macro name
1.2927 + [FreeBSD again].
1.2928 +
1.2929 + * build/Makefiles/gmake/app/gcc.mak: fix set of libraries when
1.2930 + link for FreeBSD; insert stlport lib in STDLIB set [when STLPORT
1.2931 + in force], to avoid set one in application's makefile.
1.2932 +
1.2933 + * build/test/unit/gcc.mak: explicit refrence to libstlport in
1.2934 + this makefile not required more [see message above].
1.2935 +
1.2936 + * build/Makefiles/gmake/lib/gcc.mak: remove names inherited from
1.2937 + Complement project.
1.2938 +
1.2939 + * build/Makefiles/gmake/*/rules-install-so.mak: installation
1.2940 + catalog was missed in dependency tree; ident string removed
1.2941 + to simplify merge/diff
1.2942 +
1.2943 + * Build: building library and unit tests with cross [gcc 3.4.5]
1.2944 + on Linux for FreeBSD 5.3 (except cwctype_test).
1.2945 +
1.2946 + * build/Makefiles/gmake/targets.mak: rotate slashes for BCC.
1.2947 +
1.2948 + * build/Makefiles/gmake/app/macro.mak: remove name contruction
1.2949 + for program; rotate slashes for wins.
1.2950 +
1.2951 + * build/Makefiles/gmake/app/rules-install.mak: remove name
1.2952 + contruction for program.
1.2953 +
1.2954 + * build/Makefiles/gmake/app/rules.mak: remove name contruction
1.2955 + for program; objects for static and for dynamic are the same.
1.2956 +
1.2957 +2005-12-04 Francois Dumont <dums@stlport...>
1.2958 +
1.2959 + * src/num_put_float.cpp: Filter inclusion of stdint.h, required for
1.2960 + Digital Mars compiler, forbidden for Sun platform.
1.2961 +
1.2962 + * stlport/stl/_cwctype.h: wide types and function are in global
1.2963 + namespace.
1.2964 +
1.2965 + * build/test/unit/gcc.mak: Modify cygwin/mingw config now that
1.2966 + default settings for those platform is shared library.
1.2967 +
1.2968 + * build/Makefiles/gmake: Add support of static targets, used
1.2969 + especially for Borland C++ Compiler and Digital Mars Compiler.
1.2970 +
1.2971 + * build/Makefiles/gmake/app/gcc.mak: Fix typo in FreeBSD
1.2972 + configuration.
1.2973 +
1.2974 +2005-12-02 Francois Dumont <dums@stlport...>
1.2975 +
1.2976 + * stlport/config/stl_msvc.h: Fixed configuration detection when building
1.2977 + STLport dll based on a static native runtime.
1.2978 +
1.2979 + * stlport/stl/_locale.h: Fix warning convertion from size_t to
1.2980 + __stl_atomic_t that can be of lower size.
1.2981 +
1.2982 + * stlport/config/stl_gcc.h, doc/README.mingw, README.cygwin: Made dll
1.2983 + default settings under cygwin/mingw.
1.2984 +
1.2985 +2005-12-01 Francois Dumont <dums@stlport...>
1.2986 +
1.2987 + * stlport/stl/_mbstate_t.h: Add workaround for alpha bad WCHAR_MIN and
1.2988 + WCHAR_MAX definition.
1.2989 +
1.2990 + * stlport/config/stl_gcc.h: Configure STLport for alpha platform as not
1.2991 + supporting iec559 specification as quiet nan is not correct. If someone
1.2992 + find the right value then this config will have to be rollbacked.
1.2993 +
1.2994 + * build/Makefiles/gmake/gcc.mak: Restored Sun OS support that use the
1.2995 + -pthreads option and not -pthread
1.2996 +
1.2997 + * build/Makefiles/nmake/lib/macro.mak: Fixed library name generation
1.2998 + when using cross runtime version thanks Alexey Ivanov report.
1.2999 +
1.3000 +2005-11-29 Francois Dumont <dums@stlport...>
1.3001 +
1.3002 + * stlport/stl_user_config.h: Add _STLP_LIB_NAME_MOTIF macro to give
1.3003 + users a point of customization of the automatic linking feature.
1.3004 +
1.3005 + * build/Makefiles/nmake/lib/macro.mak, gmake/cygming/lib.mak: Use
1.3006 + STLP_BUILD_LIB_MOTIF in library name generation algorithm. Also take
1.3007 + into account cross builds in library name generation.
1.3008 +
1.3009 + * build/lib/configure.bat: Add --lib-motif option to give users a
1.3010 + way to customize the generated library names.
1.3011 +
1.3012 + * test/eh: Generalized use of msvc.mak rather than all the nmake-vc??.mak
1.3013 + files. Idem for evc.mak instead of nmake-evc?.mak and icl.mak instead of
1.3014 + nmake-icl.mak.
1.3015 +
1.3016 + * stlport/stl/_exception.h: Change _msvc_warnings_off.h include in
1.3017 + _warnings_off.h as this file now also turn off Borland warnings.
1.3018 +
1.3019 + * stlport/config/_detect_dll_or_lib.h: Mutualization of code used to
1.3020 + detect current STLport type of build or usage (dll or static lib).
1.3021 +
1.3022 + * stlport/config/stl_msvc.h, stl_bc.h, stl_dmc.h: Integration of
1.3023 + _detect_dll_or_lib.h
1.3024 +
1.3025 + * stlport/config/_auto_link.h: Change auto link algo when we detect
1.3026 + cross STLport usage that is to say use of STLport as a dll link with
1.3027 + static native runtime or opposite.
1.3028 +
1.3029 +2005-11-29 Petr Ovtchenkov <complement@users.sourceforge.net>
1.3030 +
1.3031 + * src/cxa.c: mutex should be recursive-safe, due to __cxa_finalize
1.3032 + may be called recursive.
1.3033 +
1.3034 +2005-11-28 Francois Dumont <dums@stlport...>
1.3035 +
1.3036 + * stlport/stl/_threads.h: Simplified expression used to instanciate
1.3037 + _Atomic_swap_struct, gcc 2.95 had trouble with the one line expression.
1.3038 +
1.3039 + * src/dll_main.cpp: Fix instanciation of _Swap_lock_struct that has been
1.3040 + changed and renamed in _Atomic_swap_struct.
1.3041 +
1.3042 + * test/unit/map_test.cpp, set_test.cpp: Simplified call to map constructor
1.3043 + taking a functor and allocator instance, split it in a creation of a les<int>
1.3044 + instance then passed to the constructor; gcc 2.95 had trouble with previous
1.3045 + version.
1.3046 +
1.3047 + * stlport/stl/_cmath.h, _cstdlib.h: Now those files includes each other to
1.3048 + make sure that all abs overloads are defined when it is imported in STLport
1.3049 + namespace. gcc 2.95 is very strict on this point and only consider the abs
1.3050 + overloads existing at the first import calls, all overloads added after that
1.3051 + are discarded silently.
1.3052 +
1.3053 + * stlport/stl/_cmath.h: Removed unjustified abs function overloads done
1.3054 + directly in STLport namespace for gcc 2.95 and before. Those overloads
1.3055 + clashed on a Linux with gcc 2.95 from the sourceforge compiler farm.
1.3056 +
1.3057 + * build/Makefiles/gmake/gcc.mak: Generalized definition of _REENTRANT under
1.3058 + Linux to make detection of a multithreaded build from STLport code easier.
1.3059 + Problem meet on an alpha linux platform from the sourceforge compiler farm.
1.3060 +
1.3061 + * stlport/stl/_locale.h: Removed _M_delete locale::facet member variable,
1.3062 + useless if facet instance reference counter is right.
1.3063 +
1.3064 + * src/locale_impl.cpp, message.cpp: Change classic facets initialization code
1.3065 + to simply set initial counter to 1 rather than incrementing it after construction.
1.3066 +
1.3067 + * test/unit/evc.mak fix path to config file in existance check.
1.3068 +
1.3069 + * stlport/stl/_move_construct_fwk.h, type_manips.h: Add workaround to use
1.3070 + move constructor with Borland compiler.
1.3071 +
1.3072 +2005-11-28 Petr Ovtchenkov <complement@users.sourceforge.net>
1.3073 +
1.3074 + * build/Makefiles/gmake/targetdirs.mak: change names of .o output dirs
1.3075 + to make bcc happy (bug with passing name that contain '-' from
1.3076 + compiler to linker). Replacement: 'shared' -> 'so', 'static' -> 'ar',
1.3077 + '-' -> '_' (i.e. obj/gcc/shared-stlg -> obj/gcc/so_stlg, a bit shorter)
1.3078 + [Suggested by Francois Dumont].
1.3079 +
1.3080 +2005-11-27 Petr Ovtchenkov <complement@users.sourceforge.net>
1.3081 +
1.3082 + * build/Makefiles/gmake/targets.mak, app/rules.mak, linux/rules-so.mak:
1.3083 + use gcc instead of c++ as linker if there are no C++ objects.
1.3084 +
1.3085 + * src/cxa.c, build/misc/cxa_atexit/Makefile.inc, build/misc/cxa_atexit/gcc.mak:
1.3086 + workaround for bugged __cxa_finalize; use builded libcxa.so in LD_PRELOAD or
1.3087 + /etc/ld.so.preload in Linux system with bugged glibc. See also
1.3088 + http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24189
1.3089 +
1.3090 +2005-11-27 Francois Dumont <dums@stlport...>
1.3091 +
1.3092 + * stlport/stl/type_manips.h: Add import of __true_type and
1.3093 + __false_type in STLport private namespace as the using namespace
1.3094 + directive do not seems to be enough for latest gcc version.
1.3095 +
1.3096 + * src/time_facets.cpp: Fix buffer size decrementation in __write_formatted_time
1.3097 + function thanks Petr Ovtchenkov
1.3098 +
1.3099 +2005-11-26 Francois Dumont <dums@stlport...>
1.3100 +
1.3101 + * stlport/stl/_complex.h: Move implementation of generic abs, arg and polar
1.3102 + after definition of double overload used in implementation. Thanks Kees de
1.3103 + Bruin
1.3104 +
1.3105 + * stlport/stl/_threads.h, _alloc.h, _alloc.c: Fix lock free node allocator
1.3106 + implementation thanks Weis.
1.3107 +
1.3108 + * stlport/stl/wrappers: Removed, no more maintained and complicated to fix
1.3109 + with the debug and pointer specialization implementations.
1.3110 +
1.3111 + * test/unit/stack_allocator.h: Creation of an allocator using a stack buffer.
1.3112 + This allocator specificity is to not be stateless and not default constructible.
1.3113 +
1.3114 + * test/unit/list_test.cpp, stlport/stl/_list.h, _list.c: Add of a test with the
1.3115 + StackAllocator. Fix list implementation to correctly handle allocator state
1.3116 + in the methods moving elements from a list instance to an other.
1.3117 +
1.3118 + * stlport/stl/_carray.h: Creation of a new internal struct _CArray that mimic a C
1.3119 + array with the additionnal feature of being able to be instanciated with a type
1.3120 + without default constructor.
1.3121 +
1.3122 + * stlport/stl/debug/_list.h: Adapt iterator invalidation according allocators
1.3123 + compare result.
1.3124 +
1.3125 + * test/unit/slist_test.cpp, stlport/stl/_slist.h, _slist.c: idem list.
1.3126 +
1.3127 + * stlport/stl/_slist.h: Modification of the splice_after methods signature. Users
1.3128 + now have to pass the source slist instance, this is mandatory in order to compare
1.3129 + the 2 slists allocator instance before moving an element from a slist instance to
1.3130 + an other.
1.3131 +
1.3132 + * stlport/stl/_string_base.h: Fix _M_swap implementation for basic_string instanciation
1.3133 + with allocator having a state.
1.3134 +
1.3135 + * stlport/stl/_list.c, _slist.c: sort methods now throw an overflow exception when lists
1.3136 + are too long to be sorted with the current algorithm. This is preferable to a buffer
1.3137 + overrun.
1.3138 +
1.3139 + * stlport/stl/_alogobase.c: Small equal_range optimization, upper_bound is not called
1.3140 + anymore when lower_bound returned value is already not equivalent to the search value.
1.3141 +
1.3142 + * build/Makefiles/gmake: Add build system for Digital Mars and Borland C++ compilers
1.3143 +
1.3144 + * build/lib/configure.bat: Add following options
1.3145 + --use-boost
1.3146 + --not-thread-safe
1.3147 + --no-rtti
1.3148 + see script for explanation. --mingw removed, detected with --compiler option, if
1.3149 + gcc, dmc or bcc then we are using MinGW tools.
1.3150 +
1.3151 + * build/lib/configure: Add --not-thread-safe option
1.3152 +
1.3153 + * build/Makefiles: Add build options to generate not thread safe libs and no rtti libs,
1.3154 + all compilers option has not been updated.
1.3155 +
1.3156 + * stlport/c*: Modification of C++ headers wrapping C ones. All code moved to internal
1.3157 + headers in stlport/stl folder. Internal headers are only included if include comes from
1.3158 + user code otherwise only native header is included. Limit dependency between STLport
1.3159 + headers relations and native library once. Reported by problem building with Borland
1.3160 + compiler.
1.3161 +
1.3162 + * test/unit/cppunit/cppunit_mini.h: Replace cstring include with string.h to avoid
1.3163 + references to std namespace in headers, should be more portable. Add typedef Base
1.3164 + definition in CPPUNIT_TEST_SUITE macro, used in calls to base class methods, help
1.3165 + Borland.
1.3166 +
1.3167 + * Generalize use of secure string functions (strcpy_s for instance) for MSVC compilers
1.3168 + supporting it and tagging former versions like deprecated. The pragma warning that used
1.3169 + to disable this warning has been removed.
1.3170 +
1.3171 + * stlport/BC50: Removed, no necassry anymore for supported Borland compiler versions.
1.3172 +
1.3173 + * stlport/stl/debug: Implementation modification, now debug wrapper agregate a non debug
1.3174 + instance rather than inheriting from it. Makes debug implementation clearer as we are now
1.3175 + forced to implement the complete containers interfaces.
1.3176 +
1.3177 + * stlport/stl/pointers: Fix implementation in order to support Standard compilers
1.3178 + not accepting cast from function pointer to void*.
1.3179 +
1.3180 + * *: Reinforce use of STLport private namespace (stlp_priv or stlport::priv) for all
1.3181 + internals algorithms.
1.3182 +
1.3183 +2005-11-21 Francois Dumont <dums@stlport...>
1.3184 +
1.3185 + * Fix classic locale facet initial reference counter thanks
1.3186 + Cabal
1.3187 +
1.3188 +2005-11-20 Petr Ovtchenkov <complement@users.sourceforge.net>
1.3189 +
1.3190 + * src/num_put.h: check that incoming string has enough
1.3191 + digits for fractional part processing. This check includes
1.3192 + check for empty incoming string. (Thanks Leonardo [leoapsilva]
1.3193 + for the bug report).
1.3194 +
1.3195 + * stlport/stl/_monetary.c: fix processing the case when
1.3196 + number of digits in value less then number of digits in fraction.
1.3197 +
1.3198 + * src/facets_byname.cpp: international currency symbol should
1.3199 + be the first (not depends upon where currency symbol situated in
1.3200 + the national format).
1.3201 +
1.3202 + * test/unit/locale_test.cpp: tests for reproducing this problems.
1.3203 +
1.3204 +2005-11-20 Gail Baker <baker88@users.sourceforge.net>
1.3205 +
1.3206 + * build/Makefiles/gmake/CC.mak: Updated compiler option
1.3207 + to compile larger inline functions inline.
1.3208 +
1.3209 + * build/Makefiles/gmake/lib/CC.mak: Changed how the header
1.3210 + file linking is done to only do it once instead of with
1.3211 + every compile.
1.3212 +
1.3213 + * build/lib/README: include instructions for SunPro compiler.
1.3214 +
1.3215 + * build/test/unit/CC.mak: allow the STLP_DEBUG version to compile.
1.3216 +
1.3217 +2005-11-19 Petr Ovtchenkov <complement@users.sourceforge.net>
1.3218 +
1.3219 + * stlport/stdlib.h: replace C++ comments by C, to satisfy -ansi
1.3220 + option of compiler.
1.3221 +
1.3222 +2005-11-18 Francois Dumont <dums@stlport...>
1.3223 +
1.3224 + * build/Makefiles/nmake/lib/rules-install-so.mak,
1.3225 + app/rules-install-so.mak: Add copy of manifest file when exist
1.3226 + rather than when compiler is Visual Studio 2005.
1.3227 +
1.3228 + * src/stdio_streambuf.cpp: Removed warning for EVC 3 and 4 thanks
1.3229 + Michael Fink patch.
1.3230 +
1.3231 + * stlport/stl/math.h, stdlib.h: Fix EVC3 warning thanks Michael Fink
1.3232 + patch.
1.3233 +
1.3234 + * doc/README.evc3: doc update from Michael Fink.
1.3235 +
1.3236 + * stlport/*, stlport/*, tests/*: Clean up of trailing blank charaters
1.3237 + in all source files.
1.3238 +
1.3239 +2005-11-17 Gail Baker <baker88@users.sourceforge.net>
1.3240 +
1.3241 + * build/Makefiles/gmake/CC.mak, depend.mak, app/CC.mak, lib/CC.mak:
1.3242 + support of SunPro 5.7 compiler.
1.3243 +
1.3244 + * build/lib/CC.mak: ditto
1.3245 +
1.3246 + * stlport/stl/_rope.c: Removed extra semi-colons.
1.3247 +
1.3248 + * stlport/stl/_rope.h: Sunpro compiler had a problem with
1.3249 + the __ROPE_DEPTH_SIZE macro doing an addition. Changed to
1.3250 + a fixed value instead.
1.3251 +
1.3252 + * stlport/cstdlib: Updated to allow the compiler to find abs and div
1.3253 +
1.3254 + * stlport/config/stl_sunpro.h: Disabled _STLP_LINK_TIME_INSTANTIATION
1.3255 + since this nolonger works with current files. The issue here is that
1.3256 + a number of defines that are required in the C versions of the files
1.3257 + use defines that are undefed at the end of the include. So, when
1.3258 + the compiler finally compiles the C version at link time the defines
1.3259 + are lost and the files don't compile. Also added a minor change
1.3260 + to allow files that are compiled with cc to include stl_sunpro.h
1.3261 + without bailing out.
1.3262 +
1.3263 + * stlport/stl/_bvector.h: Added stl/_range_errors.h required by
1.3264 + an exception that can be called.
1.3265 +
1.3266 + * stlport/stl/_cmath.h: Changed to pull all math functions from std
1.3267 + namespace for SunPro compiles only.
1.3268 +
1.3269 + * test/unit/fstream_test.cpp: Added SunPro compile to the list
1.3270 + of compilers that don't use the DO_CUSTOM_FACET_TEST.
1.3271 +
1.3272 + * test/unit/string_test.cpp: Added Sun UI Threads to the list
1.3273 + of supported thread types in the test.
1.3274 +
1.3275 + * test/unit/valarray_test.cpp: The compiler was having trouble
1.3276 + finding abs(). Added a "using std::abs" for the SunPro compiler
1.3277 + which solved the problem.
1.3278 +
1.3279 + * test/unit/cppunit/cppunit_mini.h: Added additional using statements
1.3280 + for the str* commands.
1.3281 +
1.3282 + * test/unit/cppunit/test_main.cpp: Added "using namespace std;"
1.3283 + for the SunPro compiler.
1.3284 +
1.3285 + * build/test/unit/CC.mak: support of SunPro 5.7 compiler
1.3286 +
1.3287 +2005-11-17 Francois Dumont <dums@stlport...>
1.3288 +
1.3289 + * stlport/stl/_messages_facets.h, src/messages.cpp: Move message facet
1.3290 + constructor private to guaranty that it is only called from the _Locale_impl
1.3291 + class for classic locale facets creation. Change constructor implementation
1.3292 + as now passed _Message instance is dynamically instanciated so needs to be
1.3293 + destroy on facet destruction; moreover the facet is also dynamically allocated
1.3294 + and has to be destroyed when reference counter reach 0.
1.3295 +
1.3296 + * src/locale_impl.cpp: Removed call to now useless free_classic_locale function.
1.3297 + Change make_classic_locale implementation, now classic locale facets are
1.3298 + allocated on the heap and have to be destroyed like any ordinary facets
1.3299 + when reference counter reach 0.
1.3300 +
1.3301 +2005-11-15 Petr Ovtchenkov <complement@users.sourceforge.net>
1.3302 +
1.3303 + * stlport/stl/_tree.h: check iterator returned from lower_bound
1.3304 + in equal_range_unique for end, to avoid increment [useful when
1.3305 + key not available].
1.3306 +
1.3307 + * test/unit/map_test.cpp: test for problem above.
1.3308 +
1.3309 +2005-11-09 Francois Dumont <dums@stlport...>
1.3310 +
1.3311 + * build/test/eh/gcc.mak: Fix build system for Cygwin/MinGW systems that
1.3312 + was broken since library naming convention modification.
1.3313 +
1.3314 +2005-11-07 Michael Fink <vividos@users.sourceforge...>
1.3315 +
1.3316 + * build/lib/configure.bat: Fixed configuring for Visual Studio .NET 2003.
1.3317 + Fixed jump target names for Win9x OSes: they must be 8 characters or
1.3318 + shorter.
1.3319 +
1.3320 +2005-11-07 Michael Fink <vividos@users.sourceforge...>
1.3321 +
1.3322 + * build/Makefiles/nmake/evc3.mak, build/Makefiles/nmake/evc4.mak,
1.3323 + build/lib/configure.bat, stlport/config/stl_evc.h: Added check if
1.3324 + using x86 emulator configuration; using of proper include paths in
1.3325 + case.
1.3326 +
1.3327 + * doc/README.evc4: Documentation update
1.3328 +
1.3329 +2005-11-01 Petr Ovtchenkov <complement@users.sourceforge.net>
1.3330 +
1.3331 + * Repository: STLport 5.0, tag STLPORT_5_0_RELEASE
1.3332 +
1.3333 + * Repository: merge HEAD and STLPORT_5_0 branch.
1.3334 +
1.3335 + * build/Makefiles/gmake/app/rules-install.mak: install-shared rule
1.3336 + added (patch by Michael Fink).
1.3337 +
1.3338 + * build/Makefiles/gmake/lib/rules-install-a.mak: install-static rule
1.3339 + added (patch by Michael Fink).
1.3340 +
1.3341 +2005-10-12 Francois Dumont <dums@stlport...>
1.3342 +
1.3343 + * stlport/stl/_threads.h, _threads.c: Fix regression for some platforms
1.3344 + introduce by modification of _Atomic_swap_ptr implementation thanks
1.3345 + Albrecht Fritzche.
1.3346 +
1.3347 +2005-10-09 Petr Ovtchenkov <complement@users.sourceforge.net>
1.3348 +
1.3349 + * repository: RC6, tag STLPORT_5_0_RC6
1.3350 +
1.3351 +2005-10-09 Francois Dumont <dums@stlport...>
1.3352 +
1.3353 + * stlport/config/stl_gcc.h: DEC alpha has not *l math functions
1.3354 +
1.3355 +2005-10-08 Francois Dumont <dums@stlport...>
1.3356 +
1.3357 + * stlport/stl/_config.h: Add endianess specification for DEC alpha thanks
1.3358 + sourceforge compiler farm.
1.3359 +
1.3360 + * stlport/config/stl_intel.h: Remove reference to _STLP_GLOBAL_NEW_HANDLER
1.3361 + in this file as this macro depends on native Standard library which is
1.3362 + the back end MSVC compiler one so macro set in stl_msvc.h.
1.3363 +
1.3364 +2005-10-07 Francois Dumont <dums@stlport...>
1.3365 +
1.3366 + * build/Makefiles/gmake/darwin/sys.mak, freebsd/sys.mak: Fix EXT_TEST
1.3367 + definition to test rather than /usr/bin/test thanks sourceforge
1.3368 + compiler farm.
1.3369 +
1.3370 +2005-10-05 Francois Dumont <dums@stlport...>
1.3371 +
1.3372 + * build/Makefiles/nmake/vc-common.mak: Remove /Fd option for the icl
1.3373 + compiler that do not know it.
1.3374 +
1.3375 +2005-10-04 Francois Dumont <dums@stlport...>
1.3376 +
1.3377 + * stlport/stl/debug/_list.h: Fix resize method implementation in safe
1.3378 + STL mode thanks Ethan Fenn report.
1.3379 +
1.3380 + * test/unit/list_test.cpp: Add test case for list::resize method.
1.3381 +
1.3382 + * build/Makefiles/nmake/lib/rules-install-a.mak, app/rules-install-a.mak:
1.3383 + Install .pdb files only if exist, Intel C++ compiler do not generate them
1.3384 + when building static libraries. Thanks Albrecht Fritzsche
1.3385 +
1.3386 + * stlport/stl/_ostream.h, _ostream.c: Move _M_init function implementation
1.3387 + from .c to .h as .c is not included when _STLP_NO_CUSTOM_IO is defined
1.3388 + but _M_init might not be exported if compiler fully inline it.
1.3389 +
1.3390 +2005-10-03 Francois Dumont <dums@stlport...>
1.3391 +
1.3392 + * stlport/stl/_tree.h: Fix _S_value method definition that returns
1.3393 + a value_type& rather than the reference typedef as reference might be,
1.3394 + depending on the traits used to instanciate _Rb_tree, equivalent to
1.3395 + a const_reference.
1.3396 +
1.3397 +2005-09-30 Francois Dumont <dums@stlport...>
1.3398 +
1.3399 + * INSTALL, README, doc/FAQ, doc/README.msvc: Documentation updates.
1.3400 +
1.3401 + * doc/stlport_namespaces.txt: Small doc about STLport namespaces and how
1.3402 + STLport replace native Standard library.
1.3403 +
1.3404 +2005-09-26 Francois Dumont <dums@stlport...>
1.3405 +
1.3406 + * build/*: Finished _STLP_LEAKS_PEDANTIC clean up from all make files.
1.3407 +
1.3408 +2005-09-25 Francois Dumont <dums@stlport...>
1.3409 +
1.3410 + * build/test/unit/gcc.mak: Remove _STLP_LEAKS_PEDANTIC option when building
1.3411 + unit tests as this option is not defined when building the libs.
1.3412 +
1.3413 +2005-09-22 Petr Ovtchenkov <complement@users.sourceforge.net>
1.3414 +
1.3415 + * build/Makefiles/gmake/sysid.mak: add underscore in architecture recognition,
1.3416 + to parse targets like x86_64-unknown-linux-gnu.
1.3417 +
1.3418 +2005-09-21 Francois Dumont <dums@stlport...>
1.3419 +
1.3420 + * src/locale.cpp, facets_byname.cpp: Use of _STLP_ATOMIC_INCREMENT rather than
1.3421 + a lock on a mutex when the macro is available.
1.3422 +
1.3423 +2005-09-21 Petr Ovtchenkov <complement@users.sourceforge.net>
1.3424 +
1.3425 + * src/locale_impl.cpp: some internal functions used before declared.
1.3426 + Thanks Thomas Kho for report.
1.3427 +
1.3428 +2005-09-20 Francois Dumont <dums@stlport...>
1.3429 +
1.3430 + * stlport/stl/_string.h, _string_workaround.h: code refactoring, substr method
1.3431 + now use string constructor taking same parameters rather than the range
1.3432 + constructor, thanks Felix Wyss report. Also add missing allocator parameter
1.3433 + for non stateless allocators.
1.3434 +
1.3435 + * build/Makefiles/gmake: Restore resource build for Cygwin and MinGW, add
1.3436 + it for Windows.
1.3437 +
1.3438 + * build/lib/configure.bat: Add --extra-cxxflag to inject additional compilation
1.3439 + option in the nmake build system.
1.3440 +
1.3441 +2005-09-20 Petr Ovtchenkov <complement@users.sourceforge.net>
1.3442 +
1.3443 + * test/unit/ptrspec_test.cpp: gcc 2.95 fail to roll out template instantiation
1.3444 + for pointers to member function, skip this test for gcc 2.95.
1.3445 +
1.3446 + * build/Makefiles/gmake/gcc.mak: gcc 2.95 has no -fuse-cxa-atexit option.
1.3447 +
1.3448 + * build/lib/gcc.mak: don't use LEAK_PEDANTIC with gcc 2.95 [but this not help,
1.3449 + segfault at program termination still happens].
1.3450 +
1.3451 + * stlport/config/stl_gcc.h: gcc 2.95 has problem with llabs, so force to use
1.3452 + _STLP_NO_VENDOR_STDLIB_L; 2.95 fails to initialize builtin types.
1.3453 +
1.3454 + * stlport/stl/_cmath.h: workaround for gcc 2.95---it has problem with 'using'
1.3455 + directive [problem with 'abs' with float types as argument].
1.3456 +
1.3457 + * stlport/stl/type_traits.h: workaround for gcc 2.95 [parentheses around
1.3458 + template argument]. Thanks Thomas Kho.
1.3459 +
1.3460 + * test/unit/fstream_test.cpp: custom facet test compilation fail for gcc 2.95
1.3461 +
1.3462 + * build/Makefiles/gmake/icc.mak, build/test/unit/icc.mak: support icc 9.0,
1.3463 + thanks John Fisher-Ogden and Thomas Kho.
1.3464 +
1.3465 + * src/c_locale_glibc/c_locale_glibc2.c: use newlocale/freelocale for
1.3466 + glibc 2.3.x, and __newlocale/__freelocale for glibc 2.2.x. Thanks Gail Baker.
1.3467 +
1.3468 +2005-09-19 Francois Dumont <dums@stlport...>
1.3469 +
1.3470 + * build/Makefiles/nmake/clean.mak, lib/clean.mak, app/clean.mak: Add check
1.3471 + for file or folder existance before calling del or rd to avoid error
1.3472 + messages that give a bad feed back to STLport users.
1.3473 +
1.3474 + * build/Makefiles/gmake: Add support to use the GNU make tool in a Windows
1.3475 + cmd console. For the moment it is used to build STLport using a simple
1.3476 + MinGW distrib.
1.3477 +
1.3478 + * stlport/stl/type_traits.h: Simplified code removing the _IsConvertibleIfNot
1.3479 + that has never proved of being useful, it only introduces problem with some
1.3480 + limited compilers.
1.3481 +
1.3482 + * stlport/stl/_string_workaround.h, _string.h, debug/_string.h: Fix string
1.3483 + range constructor bug in the VC6 specific workaround implementation that was
1.3484 + resulting in a memory leak. Thanks Felix Wyss report.
1.3485 +
1.3486 +2005-09-18 Petr Ovtchenkov <complement@users.sourceforge.net>
1.3487 +
1.3488 + * stlport/stl/_hash_fun.h: add hash function for void *.
1.3489 +
1.3490 + * src/facets_byname.cpp, src/message_facets.h: introduce map between
1.3491 + nl_catd type [that is void * on Linux] and messages_base::catalog
1.3492 + [that is int by Standard]; this should remove problems on platforms
1.3493 + where sizeof(int) < sizeof(void *).
1.3494 +
1.3495 +2005-09-16 Francois Dumont <dums@stlport...>
1.3496 +
1.3497 + * stlport/cwchar: Add MinGW 3.8 runtime wide-char to multi-byte functions
1.3498 + import within STLport namespace thanks Rene Riviera.
1.3499 +
1.3500 +2005-09-14 Francois Dumont <dums@stlport...>
1.3501 +
1.3502 + * stlport/config/stl_gcc.h: Mingw support string wide functions thanks
1.3503 + Rene Riviera report.
1.3504 +
1.3505 +2005-09-13 Petr Ovtchenkov <complement@users.sourceforge.net>
1.3506 +
1.3507 + * stlport/stl/_thread.h: fix return type specification
1.3508 + [volatile void * -> void *].
1.3509 +
1.3510 +2005-09-12 Francois Dumont <dums@stlport...>
1.3511 +
1.3512 + * stlport/stl/_thread.h: Fix _Atomic_swap_ptr implementation in single
1.3513 + threaded mode and when there is no pointer atomic swap operation.
1.3514 +
1.3515 + * stlport/stl/_site_config.h: Add _STLP_NO_CYGWIN macro to signal use
1.3516 + of the -mno-cygwin cygwin option.
1.3517 +
1.3518 + * build/lib/configure: Remove automatic generation of stlport/script_config.h.
1.3519 +
1.3520 +2005-09-11 Petr Ovtchenkov <complement@users.sourceforge.net>
1.3521 +
1.3522 + * build/Makefiles/gmake/sysid.mak: provide identification hosted platform.
1.3523 +
1.3524 + * build/Makefiles/gmake/targetdirs.mak: CygWin/MinGW has no /usr/bin/test,
1.3525 + but built-in test support -e; see record 2005-09-04.
1.3526 +
1.3527 + * build/Makefiles/top.mak: separate hosted platform and target platform
1.3528 + file extentions, tools, utilites.
1.3529 +
1.3530 + * build/Makefiles/gmake/?/sys.mak, build/Makefiles/gmake/?/targetsys.mak:
1.3531 + ditto.
1.3532 +
1.3533 +2005-09-09 Francois Dumont <dums@stlport...>
1.3534 +
1.3535 + * src/c_locale_win32.c: Fix _Locale_wchar_[tolower,toupper] implementation
1.3536 + which was wrong when wint_t was not the same typedef as wchar_t.
1.3537 +
1.3538 + * build/lib/configure: Removed obsolete configure options --with-msvc and
1.3539 + --with-mssdk. And --no-cygwin option to make build of STLport using -mno-cygwin
1.3540 + option easier.
1.3541 +
1.3542 + * stlport/script_config.h: New header used to put additionnal macros defined
1.3543 + by the configure script.
1.3544 +
1.3545 + * stlport/stl/_config.h: Add script_config.h include.
1.3546 +
1.3547 + * stlport/config/stl_gcc.h: Use of the new _STLP_NO_CYGWIN macro to set
1.3548 + the right _STLP_NATIVE_INCLUDE_PATH macro value.
1.3549 +
1.3550 + * build/Makefiles/gmake/gcc.mak: Change CC and CXX assignment from := to
1.3551 + ?= to take into account an already existing definition.
1.3552 +
1.3553 +2005-09-07 Francois Dumont <dums@stlport...>
1.3554 +
1.3555 + * build/Makefiles/gmake: Adopt a more traditionnal unixes naming
1.3556 + convention for cygwin and mingw.
1.3557 +
1.3558 + * build/Makefiles/nmake: Attempt to make STLport library names more
1.3559 + coherent between unixes and windows systems. Now windows use the 5.0
1.3560 + extension like under unixes even if under unixes the file extension
1.3561 + is before the 5.0 and under windows it will be after. The other
1.3562 + difference is that the debug suffix is 'g' when using gcc and 'd' for
1.3563 + the other compilers. This modification comes from a work to improve
1.3564 + STLport integration within boost build system, bjam.
1.3565 +
1.3566 + * stlport/config/stl_msvc.h: Modify MSVC auto link feature to reflect
1.3567 + above modifications.
1.3568 +
1.3569 +2005-09-06 Francois Dumont <dums@stlport...>
1.3570 +
1.3571 + * stlport/config/stl_gcc.h: Fix cygwin config that do have native
1.3572 + mbstate_t definition.
1.3573 +
1.3574 +2005-09-05 Petr Ovtchenkov <complement@users.sourceforge.net>
1.3575 +
1.3576 + * repository: RC5, tag STLPORT_5_0_RC5
1.3577 +
1.3578 +2005-09-04 Petr Ovtchenkov <complement@users.sourceforge.net>
1.3579 +
1.3580 + * build/Makefiles/gmake/targetdirs.mak: in sh's built-in 'test' no -e
1.3581 + option on Solaris, use external 'test' instead.
1.3582 +
1.3583 + * build/test/unit/gcc.mak: Fix LDSEARCH recursive problem; fix
1.3584 + options for ld search path for some platforms.
1.3585 +
1.3586 + * stlport/cstdlib, stlport/stl/_cmath.h: fix usage of native
1.3587 + ?f and ?l math functions on Solaris; hypot for long double should't
1.3588 + loose precision, if no native C function present.
1.3589 +
1.3590 +2005-09-02 Francois Dumont <dums@stlport...>
1.3591 +
1.3592 + * stlport/config/stl_msvc.h, stl/_move_construct_fwk.h: Add the
1.3593 + _STLP_NO_MOVE_SEMANTIC configuration macro to remove move semantic
1.3594 + support for MSVC .Net 2002 that seems to be unable to support it.
1.3595 + Maybe we should rather remove this compiler version support...
1.3596 +
1.3597 + * test/unit/mvctor_test.cpp: Add _STLP_NO_MOVE_SEMANTIC check.
1.3598 +
1.3599 +2005-08-31 Francois Dumont <dums@stlport...>
1.3600 +
1.3601 + * build/Makefiles/nmake: Enhance nmake build system to correctly take
1.3602 + into account the .manifest files generated by VS 2005 Beta.
1.3603 +
1.3604 +2005-08-29 Petr Ovtchenkov <complement@users.sourceforge.net>
1.3605 +
1.3606 + * CVS repository: CVS repository master copied from cvs.stlport.com to SourceForge.
1.3607 + All history preserved!
1.3608 +
1.3609 +2005-08-27 Francois Dumont <dums@stlport...>
1.3610 +
1.3611 + * stlport/stl/_hashtable.h: Fix move feature integration for the hash_multimap
1.3612 + container.
1.3613 +
1.3614 + * stlport/stl/_deque.h: Fix _Deque_base move constructor implementation.
1.3615 +
1.3616 + * test/unit/mvctor_test.cpp: Change move constructor tests to use dynamically
1.3617 + allocated string rather than static ones.
1.3618 +
1.3619 + * build/test/unit/nmake-vc6.mak: Increase compiler maximum heap size to allow
1.3620 + compilation with stldbg rules.
1.3621 +
1.3622 + * build/test/unit/nmake-evc4.mak: Fix macro typo OPT_STLDBG_STATIC ->
1.3623 + OPT_STATIC_STLDBG
1.3624 +
1.3625 + * build/Makefiles/gmake/gcc.mak: Filter out the newly added -fuse-cxa-atexit
1.3626 + compilation option for Cygwin and Mingw, the granted libc is not compatible
1.3627 + with it.
1.3628 +
1.3629 +2005-08-26 Petr Ovtchenkov <ptr@island...>
1.3630 +
1.3631 + * stlport/config/stl_solaris.h: C++ comments replaced by C ones,
1.3632 + this file may be included by C sources. Thanks Matti Rintala.
1.3633 +
1.3634 +2005-08-25 Francois Dumont <dums@stlport...>
1.3635 +
1.3636 + * stlport/stl/_config.h, _epilog.h: Move of stlport namespace alias
1.3637 + definition from _epilog.h to _config.h to avoid redefinition as _epilog.h
1.3638 + is reentrant. This is a workaround for a HPUX aCC compiler bug reported
1.3639 + by Baker.
1.3640 +
1.3641 +2005-08-25 Petr Ovtchenkov <ptr@island...>
1.3642 +
1.3643 + * build/Makefiles/gmake/gcc.mak: usage of -fuse-cxa-atexit strongly
1.3644 + required for correct order of static objects dtors calls. This is
1.3645 + used in deinitialization of locale-related objects. Thanks Matti Rintala.
1.3646 +
1.3647 + * stlport/stl/_config.h: use different namespaces for mulithreaded
1.3648 + and non-multithreaded builds to avoid usage of non-multithreaded
1.3649 + application with multithreaded libstlport and vice versa;
1.3650 + [combination non-mt & mt lead to crash due to different instances
1.3651 + and sizes of allocators for non-mt and mt cases].
1.3652 +
1.3653 +2005-08-23 Francois Dumont <dums@stlport...>
1.3654 +
1.3655 + * stlport/stl/_config_compat.h: Add check of _STLP_NO_OWN_IOSTREAMS
1.3656 + macro to make remove of its support more explicit thanks to a #error
1.3657 + directive.
1.3658 +
1.3659 + * stlport/stl/_tree.h, _hashtable.h: Now reference and pointer types
1.3660 + are taken from the _Traits template parameter used to instanciate
1.3661 + the class. Doing so now set::reference and hash_set::reference are
1.3662 + const_reference which is coherent with respective iterators that are
1.3663 + immutable. Moreover it fixes a VC6 bug in reverse_iterator implementation
1.3664 + that was trying to transform a const reference to a simple reference
1.3665 + thanks Russell Miller report.
1.3666 +
1.3667 + * test/unit/set_test.cpp: New test case for set reverse_iterator.
1.3668 +
1.3669 +2005-08-23 Petr Ovtchenkov <ptr@island...>
1.3670 +
1.3671 + * stlport/config/stl_gcc.h: seems HP-UX has no *f variants of math
1.3672 + functions [ceilf, fabsf, etc.]
1.3673 +
1.3674 +2005-08-21 Francois Dumont <dums@stlport...>
1.3675 +
1.3676 + * stlport/stl/_string.h, _rope.h: Removed __move_traits specialization
1.3677 + for string wstring crope and wrope. There is no reason to believe that
1.3678 + its move construtor will be complete as an STLport user has the right
1.3679 + to specialized the std::allocator<> with char or wchar_t.
1.3680 +
1.3681 + * stlport/stl/_function_base.h, _alloc.h: Generalized use of the
1.3682 + __stlport_class struct rather than introducing a new helper type
1.3683 + (__stlport_less or __stlport_alloc) when we need to recognize STLport
1.3684 + implementation from a user one.
1.3685 +
1.3686 +2005-08-20 Francois Dumont <dums@stlport...>
1.3687 +
1.3688 + * stlport/stl/_list.h, _slist.h: Fix move constructor implementation
1.3689 + thanks Henrik Goldman (www.x-formation.com) report.
1.3690 +
1.3691 + * stlport/stl/_alloc.h: Fix type_traits specialization for allocator
1.3692 + type. Now specialization is only apply for the default STLport allocator
1.3693 + implementation and not for potential user specialization.
1.3694 +
1.3695 + * stlport/stl/_deque.h, _hashtable.h, _string.h, _tree.h, _vector.h:
1.3696 + Simplification of the move framework application especially in the
1.3697 + definition of the containers __move_traits specialization. Many
1.3698 + _AsMoveSource call replaced by explicit call to the move constructor
1.3699 + when we are sure that there is one.
1.3700 +
1.3701 + * test/unit/mvctor_test.cpp: Add many tests to check move contructor
1.3702 + implementations.
1.3703 +
1.3704 + * stlport/stl/_function_base.h: Add type_traits specialization for the
1.3705 + less functor to help the move framework when dealing with associative
1.3706 + containers.
1.3707 +
1.3708 + * test/unit/mvctor_test.cpp: Add a new test case checking correct move
1.3709 + semantic support for all STL containers.
1.3710 +
1.3711 + * stlport/stl/_rope.h: Add move semantic support to the rope class.
1.3712 +
1.3713 +2005-08-19 Petr Ovtchenkov <ptr@island...>
1.3714 +
1.3715 + * build/Makefiles/gmake/gcc.mak: fix extraction of gcc version.
1.3716 + Thanks Thomas Kho.
1.3717 +
1.3718 +2005-08-18 Francois Dumont <dums@stlport...>
1.3719 +
1.3720 + * stlport/stl/_deque.c: Fix _M_erase range for movable types method
1.3721 + implementation, same bug as below in vector.
1.3722 +
1.3723 + * test/unit/mvctor.cpp: Improve test case on vector to reveal bug
1.3724 + below and add same tests for deque which is the other container that
1.3725 + use the move contructor feature.
1.3726 +
1.3727 +2005-08-18 Petr Ovtchenkov <ptr@island...>
1.3728 +
1.3729 + * INSTALL: add some words about multithread options and libraries.
1.3730 +
1.3731 + * stlport/stl/_fstream.c: some code clean to reduce bogus compiler
1.3732 + warnings with -Wall.
1.3733 +
1.3734 + * stlport/config/stl_gcc.h: seems HP-UX has no llabs and lldiv.
1.3735 +
1.3736 +2005-08-17 Francois Dumont <dums@stlport...>
1.3737 +
1.3738 + * stlport/stl/_vector.h: Fix _M_erase range for movable types
1.3739 + implementation thanks Sergej Zagursky.
1.3740 +
1.3741 + * build/Makefiles/nmake/vc8.mak: removed /RTC1 compiler option, the platform
1.3742 + SDK compiler do not support it. STLport users will just have to activate it
1.3743 + by themself if they want to.
1.3744 +
1.3745 + * stlport/stl/_complex.h: Fix some floating point literals thanks
1.3746 + Ulrich Eckhardt report.
1.3747 +
1.3748 + * stlport/stl/_time_facets.c: Complete integration of the '#' MS extension
1.3749 + in the date/time format string, reported thanks to the recent locale time_get
1.3750 + new test case.
1.3751 +
1.3752 +2005-08-14 Francois Dumont <dums@stlport...>
1.3753 +
1.3754 + * stlport/config/stl_msvc.h: Fix platform SDK compiler config, even latest
1.3755 + version that announce to be similar to .Net 2005 beta do not throw bad_alloc
1.3756 + from the new operator.
1.3757 +
1.3758 + * stlport/cstdio, cstdlib: Replaced some _WIN64 checks by a
1.3759 + _STLP_USING_PLATFORM_SDK_COMPILER check.
1.3760 +
1.3761 + * test/unit/cmath_test.cpp: Complete test filtering for Microsoft platform SDK
1.3762 + compiler.
1.3763 +
1.3764 +2005-08-14 Petr Ovtchenkov <ptr@island...>
1.3765 +
1.3766 + * test/unit/locale_test.cpp: tests for time_get facet.
1.3767 +
1.3768 + * stlport/stl/_time_facets.c: fix processing of %p format
1.3769 + [12:00 PM ~ 12:00, 12:00 AM ~ 00:00].
1.3770 +
1.3771 + * src/time_facets.cpp: substitute expanded equivalent format strings
1.3772 + instead of %T, %R, %r.
1.3773 +
1.3774 + * stlport/pthread.h: Fix C++ comment in a potentially C header. Thanks Ali
1.3775 +
1.3776 +2005-08-11 Francois Dumont <dums@stlport...>
1.3777 +
1.3778 + * stlport/stl_user_config.h: Add _STLP_USING_PLATFORM_SDK_COMPILER so that
1.3779 + STLport user can signal they are using platform SDK compiler.
1.3780 +
1.3781 + * stlport/config/stl_msvc.h: Add use of _STLP_USING_PLATFORM_SDK_COMPILER.
1.3782 +
1.3783 + * test/unit/cmath_test.cpp, valarray_test.cpp: Removed tanh calls when using
1.3784 + AMD 64 platform SDK compiler, looks like they miss something...
1.3785 +
1.3786 +2005-08-09 Francois Dumont <dums@stlport...>
1.3787 +
1.3788 + * src/fstream.cpp: Final fix of basic_filebuf::open method. Now when open
1.3789 + from a Win32 handle the file will be considered as in binary access with no
1.3790 + append action.
1.3791 +
1.3792 +2005-08-08 Francois Dumont <dums@stlport...>
1.3793 +
1.3794 + * src/fstream.cpp: Fix annoying 64 warning and basic_filebuf::open method
1.3795 + from a low level file descriptor or from an HANDLE (not yet complete).
1.3796 + Thanks Yves Maliet report.
1.3797 +
1.3798 +2005-08-07 Francois Dumont <dums@stlport...>
1.3799 +
1.3800 + * test/unit/inner_product.cpp: Fix 64 bits portability warning.
1.3801 +
1.3802 + * test/unit/cmath_test.cpp: Removed modf tests for Windows 64 platform
1.3803 + as the SDK is missing the underlying modff implementation.
1.3804 +
1.3805 + * stlport/cstdlib: Add a div function definition which is missing in the
1.3806 + Windows 64 SDK.
1.3807 +
1.3808 + * stlport/cstdio: Add vsnprintf definition which is missing in Windows
1.3809 + 64 SDK.
1.3810 +
1.3811 + * stlport/exception: Add flexibility for definition of vendor terminate
1.3812 + and uncaught_exception function namespace. Can now be defined independantly
1.3813 + of the unexpected_exception namespace.
1.3814 +
1.3815 + * src/dll_main.cpp: Removed explicit turn off of optimization for Microsoft
1.3816 + compilers after .Net 2003. There were no comment to explain why optimizations
1.3817 + were turned off so I guess it was a compiler bug. .Net 2003 being a major
1.3818 + new version I hope this bug has vanish with this version.
1.3819 +
1.3820 + * src/fstream.cpp: Removed static assertion for windows file handle to be 32
1.3821 + bits. Under Windows 64, even if the API is still 32 bits handles are still
1.3822 + defined as void*. We will see when code will run under a real Windows 64 platform
1.3823 + if it is a problem.
1.3824 +
1.3825 + * stlport/config/stl_msvc.h: Add configuration for Windows 64 Platform SDK.
1.3826 + Expecially add automatic link to bufferoverflowU.lib to avoid modification
1.3827 + of STLport build system and STLport users projects.
1.3828 +
1.3829 +2005-08-06 Petr Ovtchenkov <ptr@island...>
1.3830 +
1.3831 + * src/c_locale_glibc/c_locale_glibc2.c: add explicit type conversion
1.3832 + to avoid warnings on 64-bits platforms; thanks Thomas Kho and
1.3833 + Karol Szkudlarek for report.
1.3834 +
1.3835 +2005-08-05 Francois Dumont <dums@stlport...>
1.3836 +
1.3837 + * stlport/stl/_valarray.h: Add missing _debug.h header inclusion for
1.3838 + _STLP_ASSERT macro definition.
1.3839 +
1.3840 + * stlport/stl/debug/_hashtable.h: Fix typo in hashtable move constructor.
1.3841 + Thanks arabesc report.
1.3842 +
1.3843 +2005-08-05 Petr Ovtchenkov <ptr@island...>
1.3844 +
1.3845 + * doc/FAQ: some words about cross-compilation.
1.3846 +
1.3847 +2005-08-04 Francois Dumont <dums@stlport...>
1.3848 +
1.3849 + * stlport/stl/_hashtable.c: Fix erase(range) implementation thanks
1.3850 + arabesc.
1.3851 +
1.3852 + * test/unit/hash_test.cpp: Add new test for previous fix.
1.3853 +
1.3854 +2005-08-04 Petr Ovtchenkov <ptr@island...>
1.3855 +
1.3856 + * stlport/csetjmp: sometimes, if native setjmp.h was included first,
1.3857 + the setjmp functions situated in global namespace, not in vendor's
1.3858 + std. This may confuse following csetjmp.
1.3859 +
1.3860 + * test/unit/setjmp_header_test2.cpp: test for this.
1.3861 +
1.3862 + * build/test/unit/Makefile.inc: ditto.
1.3863 +
1.3864 +2005-08-03 Francois Dumont <dums@stlport...>
1.3865 +
1.3866 + * INSTALL document updated to signal no longer support of the
1.3867 + 'wrapper' mode.
1.3868 +
1.3869 +2005-08-02 Petr Ovtchenkov <ptr@island...>
1.3870 +
1.3871 + * stlport/stl_user_config.h, stlport/stl/_site_config.h:
1.3872 + fix some obsolete comments.
1.3873 +
1.3874 +2005-07-31 Petr Ovtchenkov <ptr@island...>
1.3875 +
1.3876 + * test/unit/math_aux.h, cmath_test.cpp: are_equals moved into
1.3877 + math_aux.h to reuse in other tests.
1.3878 +
1.3879 + * test/unit/sstream_test.cpp: check input to float, inspired by
1.3880 + Jeff Williams.
1.3881 +
1.3882 +2005-07-27 Francois Dumont <dums@stlport...>
1.3883 +
1.3884 + * stlport/iomanip, stl/_algo.h: Removed some persistent occurences
1.3885 + of __in and __out keywords reserved by Microsoft.
1.3886 +
1.3887 + * stlport/stl/_pthread_alloc.c: Fix annoying warning reported by gcc.
1.3888 +
1.3889 + * stlport/config/stl_msvc.h: Fix _STLP_VENDOR_UNEXPECTED_STD macro
1.3890 + definition to empty rather than '1'. Could have produce a compilation
1.3891 + error with compilers like Intel C++ used with the VC6 native Standard
1.3892 + library.
1.3893 +
1.3894 + * stlport/queue, stl/_ctraits_fns.h, _hashtable.h, _numeric.h, _string.h
1.3895 + _tree.h: Fix macro guards used to avoid inclusion of _function.h or
1.3896 + _function_base.h or functional thanks Dinesh Monga report.
1.3897 +
1.3898 +2005-07-26 Petr Ovtchenkov <ptr@island...>
1.3899 +
1.3900 + * doc/FAQ: description of pseudo-leaks, thanks Michael Fink.
1.3901 +
1.3902 + * STLport (repository): STLport 5.0 RC4
1.3903 +
1.3904 +2005-07-25 Francois Dumont <dums@stlport...>
1.3905 +
1.3906 + * stlport/config/stl_evc.h: Move _DEBUG definition fix up before
1.3907 + stl_msvc.h inclusion to have correct library link automatically.
1.3908 + Thanks Michael Fink.
1.3909 +
1.3910 +2005-07-24 Francois Dumont <dums@stlport...>
1.3911 +
1.3912 + * stlport/stl/_string.c, _rope.c: Add instanciation of npos for all
1.3913 + compilers thanks Simon.
1.3914 +
1.3915 + * test/unit/string_test.cpp: Add creation of a reference to string::npos
1.3916 + to force compiler to generate memory for it. Used to reveal a link error.
1.3917 +
1.3918 + * test/unit/cppunit/cppunit_mini.h: Removed redondant semi column in
1.3919 + CPPUNIT_TEST_SUITE_REGISTRATION macro definition.
1.3920 +
1.3921 + * stlport/config/stl_msvc.h, stl_intel.h: Concidering that compilers
1.3922 + emulating MSVC compilers use the same native Standard Library headers
1.3923 + macros _STLP_NEW_PLATFORM_SDK and _STLP_NO_VENDOR_STDLIB_L has been moved
1.3924 + outside the _STLP_MSVC scope. _STLP_GLOBAL_NEW_HANDLER is now defined
1.3925 + only for Intel compiler versions before 9.0.
1.3926 +
1.3927 + * stlport/cstdlib, stl/_cmath.h: Because of the previous remark about
1.3928 + emulators of MSVC using MSVC headers, macro checks for global definition
1.3929 + of C math functions has been changed from _STLP_MSVC to _MSC_VER.
1.3930 +
1.3931 +2005-07-23 Michael Fink <vividos@users.sourceforge...>
1.3932 +
1.3933 + * test/unit/locale_test.cpp: Added creating locale pointer in
1.3934 + test_supported_locale() when no exception handling is available.
1.3935 +
1.3936 + * src/stlport.rc: Added version info defines when not available through
1.3937 + windows.h. Happens on evc3 MIPS and evc3 SH3.
1.3938 +
1.3939 +2005-07-23 Francois Dumont <dums@stlport...>
1.3940 +
1.3941 + * stlport/stl/_string_sum.h: Fix missing return statement in a compare
1.3942 + method.
1.3943 +
1.3944 +2005-07-22 Francois Dumont <dums@stlport...>
1.3945 +
1.3946 + * stlport/stl/_algo.c: Fix search_n implementation for random access
1.3947 + iterator thanks Jim Xochellis
1.3948 +
1.3949 + * test/unit/algo_test.cpp: Add test case for the previous bug thanks
1.3950 + Michael Fink.
1.3951 +
1.3952 + * src/num_get_float.cpp: Fix gcc Mingwin and Cygwin special version with
1.3953 + building with -O2 option.
1.3954 +
1.3955 + * build/Makefiles/gmake/gcc.mak: Add -D_REENTRANT definition for cygwin and
1.3956 + -mthreads for mingwin platform to make STLport thread safe like under the
1.3957 + other supported platforms.
1.3958 +
1.3959 +2005-06-30 Petr Ovtchenkov <ptr@island...>
1.3960 +
1.3961 + * stlport/wchar.h, src/c_locale.c, stlport/stl/_threads.h: fix Netware
1.3962 + wcs... functions.
1.3963 +
1.3964 +2005-06-30 Francois Dumont <dums@stlport...>
1.3965 +
1.3966 + * stlport/stl/_rope.h, _rope.c: Duplicate basic_string::npos definition code
1.3967 + in rope implementation to use a "Standard" static const npos definition when
1.3968 + possible depending on the compiler features. Thanks caldwed report.
1.3969 +
1.3970 +2005-06-30 Michael Fink <vividos@users.sourceforge...>
1.3971 +
1.3972 + * stlport/cstdlib, stdlib.h: Fixed issue with including stdlib.h after
1.3973 + setjmp.h; fix from 2005-06-23 wasn't solving the problem.
1.3974 +
1.3975 +2005-06-28 Francois Dumont <dums@stlport...>
1.3976 +
1.3977 + * stlport/stl/_hash_func.h: For MSVC .Net compiler we grant the hash<size_t>
1.3978 + specialization rather than the hash<unsigned int> one to avoid 64 bits
1.3979 + warnings when instanciating a hashed container with the size_t key.
1.3980 +
1.3981 + * stlport/stl/_istream_iterator.h: Modify istream_iterator implementation
1.3982 + to avoid the default read from the istream even if the istream_iterator
1.3983 + instance is not used.
1.3984 +
1.3985 + * test/unit/istmit_test.cpp: Add many tests for the copy_n/istream_iterator
1.3986 + combination. Those tests are no active for the moment as they are failing,
1.3987 + will be fixed after 5.0 release.
1.3988 +
1.3989 + * build/test/unit/nmake-vc-common.mak: Tests are no more built with the
1.3990 + _STLP_NO_CUSTOM_IO option, see reason below.
1.3991 +
1.3992 + * test/unit/fstream_test.cpp: Add custom_facet test to check that STLport
1.3993 + support instanciation of basic_fstream with something else that the std::char_traits
1.3994 + For the moment the test fail when we try to use the stream for I/O operations
1.3995 + should be fixed after 5.0 release.
1.3996 +
1.3997 +2005-06-27 Francois Dumont <dums@stlport...>
1.3998 +
1.3999 + * src/locale_impl.cpp: Fix locale implementation to avoid to call facet
1.4000 + destructor when user explicitely required not to do so.
1.4001 +
1.4002 + * stlport/stl/_fstream.c: Fix _M_setup_codecvt method implementation to avoid
1.4003 + a bad_cast exception on basic_filebuf construction. At this point the locale
1.4004 + used to instanciate it is the classic locale that might not have the necessary
1.4005 + codecvt facet. The user is then force to call imbue after basic_filebuf
1.4006 + construction otherwise I/O operations will fail. When imbue is invoked, if
1.4007 + the locale still do not have the necesary facet, the stream is put in the fail
1.4008 + state. Thanks Alexander Pototskiy
1.4009 +
1.4010 +2005-06-26 Francois Dumont <dums@stlport...>
1.4011 +
1.4012 + * stlport/stl/_config_compat.h: Add _STLP_OWN_IOSTREAMS macro for backward
1.4013 + compatibility with library checking it.
1.4014 +
1.4015 +2005-06-23 Francois Dumont <dums@stlport...>
1.4016 +
1.4017 + * src/complex.cpp, complex_trig.cpp, complex_exp.cpp: Removed code
1.4018 + duplication between float, double and long double version thanks to
1.4019 + some template functions. Thanks an Ulrich Eckhardt idear.
1.4020 +
1.4021 + * stlport/cstdlib, stl/stdlib.h: Michael Fink patch to avoid setjmp.h
1.4022 + inclusion problem as stdlib.h contains a setjmp macro definition.
1.4023 +
1.4024 + * test/eh/main.cpp: Redirection of std::cout and std::cerr for WinCE
1.4025 + thanks Michael Fink
1.4026 +
1.4027 + * stlport/config/stl_evc.h: Restore long double support for WinCE, there
1.4028 + is just no *l math functions. Only define _STLP_NATIVE_INCLUDE_PATH
1.4029 + if not already defined, giving the user a chance to override the defaults
1.4030 + for yet unknown SDKs. Thanks Michael Fink and Ulrich Eckhardt.
1.4031 +
1.4032 + * build/Makefiles/nmake/evc3.mak, evc4.mak: removed unneeded set of CC
1.4033 + for SHx; already done by setup batch. Thanks Michael Fink.
1.4034 +
1.4035 +2005-06-21 Francois Dumont <dums@stlport...>
1.4036 +
1.4037 + * stlport/stl/_ios.h, _ios_base.h, _num_get.c, _num_put.c, _complex.c,
1.4038 + _istream.c, _time_facets.c: Fix cast expression for the cached facets,
1.4039 + C casts replaced by static_cast and const added when missing.
1.4040 + Thanks Oliver Stoeneberg report.
1.4041 +
1.4042 + * test/unit/unary.h: Replaced old STLport with new style ones. Get sqrt
1.4043 + function in global namespace rather than forcing use of the one in std
1.4044 + namespace, avoids ambiguity with VC6.
1.4045 +
1.4046 + * test/unit/resolve_name.cpp: Add _STLP_DO_IMPORT_CSTD_FUNCTIONS definition
1.4047 + at the top of it to force import of C symbols in std even for limited
1.4048 + compilers like VC6.
1.4049 +
1.4050 + * stlport/stl/_valarray.h: Add global namespace scope to C function calls
1.4051 + to avoid VC6 ambiguity problem.
1.4052 +
1.4053 +2005-06-20 Francois Dumont <dums@stlport...>
1.4054 +
1.4055 + * stlport/config/stl_gcc.h: Fix gcc 3.4.4 detection under cygwin thanks
1.4056 + Ulrich Eckhardt report.
1.4057 +
1.4058 + * stlport/stl/c_locale.h: Fix _Locale_mask_t definition for Mingwin.
1.4059 +
1.4060 + * src/c_locale_win32/c_locale_win32.c: Add static assertion to check
1.4061 + _Locale_mask_t size.
1.4062 +
1.4063 + * src/complex_exp.cpp: Replaced complex log10 function static variables
1.4064 + with global constant, avoid multithreaded init problem. Thanks Ulrich
1.4065 + Eckhardt report.
1.4066 +
1.4067 +2005-06-17 Francois Dumont <dums@stlport...>
1.4068 +
1.4069 + * stlport/stl/_alloc.h: Add initialization of the memory buffer in
1.4070 + allocator::allocate function and reset in allocator::deallocate to
1.4071 + the _STLP_SHRED_BYTE motif when _STLP_DEBUG_UNINITIALIZED is defined
1.4072 + to help track missing initialization issue.
1.4073 +
1.4074 + * src/dll_main.cpp: Removed now useless _Node_alloc_helper class.
1.4075 +
1.4076 + * stlport/stl/_alloc.c: Add complete cleanup of the __node_alloc static
1.4077 + datas in the _S_chunk_dealloc method, this is important if the clean up
1.4078 + occur before STLport shared lib is unloaded.
1.4079 +
1.4080 + * stlport/stl/_alloc.c: Add a static instance of __node_alloc_cleaner in the
1.4081 + _S_alloc_call method and change init number of allocation to 1 to force
1.4082 + release of memory pool only on shared library unload.
1.4083 +
1.4084 +2005-06-11 Francois Dumont <dums@stlport...>
1.4085 +
1.4086 + * stlport/cstdlib, stl/_cmath.h: Add _STLP_NO_CSTD_FUNCTION_IMPORTS macro
1.4087 + check before import of global C functions in STLport namespace. Required
1.4088 + for VC6 compiler to avoid ambiguity issue.
1.4089 +
1.4090 + * src/complex.cpp, complex_epx.cpp, complex_trig.cpp: Scope math function
1.4091 + call with the global namespace to avoid VC6 ambiguity issue. It is safe
1.4092 + for the other compilers as STLport do define those function in global
1.4093 + namespace.
1.4094 +
1.4095 +2005-06-10 Francois Dumont <dums@stlport...>
1.4096 +
1.4097 + * stlport/stl/c_locale.h: Fix Cygwin configuration, separate alpha mask
1.4098 + from lower and upper one to avoid all lower character to also be upper
1.4099 + and opposite.
1.4100 +
1.4101 + * src/ctype.cpp: Add static assertion to detect platform where
1.4102 + alpha = lower | upper which is wrong for STLport use.
1.4103 +
1.4104 +2005-06-10 Francois Dumont <dums@stlport...>
1.4105 +
1.4106 + * stlport/stl/_hashtable.c: Fix max_load_factor management, Standard says
1.4107 + that load_factor <= max_load_factor and not <; the function detecting need
1.4108 + for rehash used to launch one even if the number of bucket do not change which
1.4109 + was counter performant. Fix the _M_insert_noresize method that was breaking
1.4110 + element order inserting elements in the middle of 2 equal elements.
1.4111 + Thanks Dieter Freismuth report.
1.4112 +
1.4113 + * stlport/config/stl_gcc.h: Fix relative include path for latest gcc cygwin
1.4114 + package.
1.4115 +
1.4116 +2005-06-10 Petr Ovtchenkov <ptr@island...>
1.4117 +
1.4118 + * build/Makefiles/gmake/mwccnlm.mak: fix compiler version collection.
1.4119 +
1.4120 + * build/Makefiles/gmake/netware/extern.mak: fix useful paths.
1.4121 +
1.4122 + * src/c_locale.c: put here wrappers for some wfuncs, due to bogus
1.4123 + system libs in Netware.
1.4124 +
1.4125 + * stlport/cwchar: use STLport's wchar.h to take wchar_t/wint_t for
1.4126 + Netware.
1.4127 +
1.4128 + * stlport/wchar.h: use correct C declaration of some wfuncs, thanks
1.4129 + again to ugly Netware libs.
1.4130 +
1.4131 + * stlport/ciso646, stlport/iso646.h, stlport/wctype.h: headers absent
1.4132 + for Novell Netware.
1.4133 +
1.4134 + * stlport/cwctype: Metrowerks define __MSL__, but we don't use MSL libs
1.4135 + if we have STLport for Netware.
1.4136 +
1.4137 + * stlport/cstdlib: div function from Novell Netware clib and libc lead to
1.4138 + system crash.
1.4139 +
1.4140 +2005-06-08 Francois Dumont <dums@stlport...>
1.4141 +
1.4142 + * build/test/unit: Removed references to the now useless CPPUNIT_MINI
1.4143 + macro.
1.4144 +
1.4145 + * test/unit/type_traits_test.cpp: Add new test case for trivial destructor
1.4146 + detection.
1.4147 +
1.4148 + * stlport/stl/_fstream.h: Add missing basic_fstream construction from a
1.4149 + Win32 file handle, was already done for basic_ifstream and basic_ofstream,
1.4150 + thanks Alex Cosealin report.
1.4151 +
1.4152 +2005-06-07 Francois Dumont <dums@stlport...>
1.4153 +
1.4154 + * build/test/unit/Makefile.inc: Fix syntax error at last line.
1.4155 +
1.4156 +2005-06-06 Petr Ovtchenkov <ptr@island...>
1.4157 +
1.4158 + * build/lib/configure: add config options for Metrowerks compiler for
1.4159 + Novell NetWare platform [references to root of MW headers/libs and to Novell's
1.4160 + SDK headers/libs].
1.4161 +
1.4162 + * build/Makefiles/gmake/mwccnlm.mak: fixes for Metrowerk/NetWare.
1.4163 +
1.4164 + * build/Makefiles/gmake/app/mwccnlm.mak: idem.
1.4165 +
1.4166 + * build/Makefiles/gmake/netware/extern.mak: idem.
1.4167 +
1.4168 + * build/lib/mwccnlm.mak: idem.
1.4169 +
1.4170 + * build/test/unit/mwccnlm.mak: idem.
1.4171 +
1.4172 +2005-06-03 Francois Dumont <dums@stlport...>
1.4173 +
1.4174 + * test/unit/locale_test.cpp: Remove the very platform dependent LColl
1.4175 + class that was listing supported locales. STLport already do so and
1.4176 + report it using a runtime_error exception when not supported. When
1.4177 + compiler do not support exception only the C locale is checked.
1.4178 +
1.4179 + * build/Makefiles/nmake: Patches from Michael Fink to
1.4180 + - check platform before linking to crtrtti.lib
1.4181 + - check right configuration when using a nmake-evc?.mak file
1.4182 + - update STATUS file.
1.4183 +
1.4184 +2005-06-02 Francois Dumont <dums@stlport...>
1.4185 +
1.4186 + * src/c_locale_win32/c_locale_win32.c: Add workaround for a Windows PSDK bug
1.4187 + concerning currency international symbol, the separation character is missing.
1.4188 +
1.4189 + * src/locale_impl.h, locale_impl.cpp: Fix implementation to make classic locale
1.4190 + implementation a normal instance that is released when the counter reach 0, the
1.4191 + only difference is that no delete is performed on this instance. Idem for classic
1.4192 + locale implementation facets.
1.4193 +
1.4194 + * stlport/cwctype: And _GLIBCPP_USE_WCHAR_T check when using GLibC as in this
1.4195 + case wide char functions are not imported in std and must be imported from the
1.4196 + global namespace.
1.4197 +
1.4198 +2005-06-01 Francois Dumont <dums@stlport...>
1.4199 +
1.4200 + * src/locale_impl.h, locale_impl.cpp: Change classic locale initialization
1.4201 + implementation for limited compiler like MSVC6.
1.4202 +
1.4203 +2005-06-01 Petr Ovtchenkov <ptr@island...>
1.4204 +
1.4205 + * stlport/stl/c_locale.h: check gcc on MacOS X. Patch by Zdenek Nemec
1.4206 +
1.4207 + * build/Makefiles/nmake/evc3.mak, evc4.mak, targets.mak:
1.4208 + support SH3/SH4 platform. Patch by Michael Fink.
1.4209 +
1.4210 + * build/Makefiles/nmake/app/evc3.mak, evc4.mak: ditto.
1.4211 +
1.4212 + * build/Makefiles/nmake/lib/evc3.mak, evc4.mak: ditto.
1.4213 +
1.4214 + * build/lib/configure.bat, src/stlport.rc: ditto.
1.4215 +
1.4216 +2005-05-30 Francois Dumont <dums@stlport...>
1.4217 +
1.4218 + * src/locale_impl.h, locale_impl.cpp, stlport/stl/_locale.h: An other pass
1.4219 + throught the classic locale initialization. Now all needed static variables
1.4220 + are in _Locale_impl::make_classic_locale method. Removed useless _Stl_aligned_buffer
1.4221 + union use in this locale initialization. Removed now useless _Locale_impl::free_classic_locale
1.4222 + method.
1.4223 +
1.4224 +2005-05-30 Petr Ovtchenkov <ptr@island...>
1.4225 +
1.4226 + * stlport/stl/_windows.h: worry about Windows CE when check Interlocked
1.4227 + API for MIPS. Patch by Michael Fink.
1.4228 +
1.4229 + * build/lib/configure.bat: remove the -p option by autodetecting platform.
1.4230 + Patch by Michael Fink.
1.4231 +
1.4232 + * build/Makefiles/nmake/evc3.mak, evc4.mak: corrects the evc4 makefiles
1.4233 + to always use the /GF switch [string pooling]. Patch by Michael Fink.
1.4234 +
1.4235 + * doc/README.evc3, doc/README.evc4: reflect changes above.
1.4236 + Patch by Michael Fink.
1.4237 +
1.4238 + * stlport/errno.h, stlport/time.h: when building for evc, including
1.4239 + errno.h and time.h often outputs the message in the #pragma statement
1.4240 + that including this file won't include the native one, since there is no
1.4241 + native include file. Now the text is only output when not building the library
1.4242 + and when the file is included directly, not via another STLport header file.
1.4243 + [Patch by Michael Fink.]
1.4244 +
1.4245 +2005-05-29 Francois Dumont <dums@stlport...>
1.4246 +
1.4247 + * test/unit/locale_test.cpp: Add opendir returned value when listing
1.4248 + installed locale under linux.
1.4249 +
1.4250 + * build/Makefiles/gmake: Patch from Zdenek Nemec for Mac OS X support.
1.4251 +
1.4252 +2005-05-27 Francois Dumont <dums@stlport...>
1.4253 +
1.4254 + * src/locale_impl.cpp: Add an initialization segment specification to make
1.4255 + global static variable ios_base::Init instance initialization prioritized
1.4256 + compare to STLport static global variable. iostreams like cout can be used
1.4257 + in global static variable initialization.
1.4258 +
1.4259 +2005-05-26 Francois Dumont <dums@stlport...>
1.4260 +
1.4261 + * build/Makefiles/nmake/evc4.mak: Patch from Ulrich Eckhardt to use CC
1.4262 + environment variable defined by WCE*.bat script rather than redefining
1.4263 + it.
1.4264 +
1.4265 + * src/locale.cpp, locale_impl.cpp, locale_catalog.cpp: New pass to move
1.4266 + static global variable in function to make initialization order clear.
1.4267 +
1.4268 +2005-05-25 Francois Dumont <dums@stlport...>
1.4269 +
1.4270 + * stlport/ciso646: Creation of this missing C++ standard header STLport
1.4271 + wrapper.
1.4272 +
1.4273 + * stlport/stl/_istream.h, _num_get.c, _algo.c, _monetary.c, _time_facets.h,
1.4274 + _time_facets.c: Replaced occurences of __in and __out reserved by Microsoft.
1.4275 +
1.4276 +2005-05-24 Francois Dumont <dums@stlport...>
1.4277 +
1.4278 + * stlport/headers: Patch from Michael Fink to avoid inclusion of headers
1.4279 + not available under evc3.
1.4280 +
1.4281 + * test/unit/*_header_test.cpp: Fix tests for no iostreams mode.
1.4282 +
1.4283 + * src/locale_impl.cpp, locale_impl.cpp: Modify implementation to force
1.4284 + correct initialization order of static instances.
1.4285 +
1.4286 + * stlport/strstream: Add _ioserr.h file to avoid inclusion in no iostreams
1.4287 + mode.
1.4288 +
1.4289 +2005-05-23 Petr Ovtchenkov <ptr@island...>
1.4290 +
1.4291 + * stlport/stl/_config.h: detect endianness for Intel's 64bit Pentium and
1.4292 + Itanium processors. Thanks Albrecht Fritzsche for contribution.
1.4293 +
1.4294 +2005-05-20 Francois Dumont <dums@stlport...>
1.4295 +
1.4296 + * build/test/eh: Patch from Michael Fink to add EVC4 support for this test
1.4297 + suite.
1.4298 +
1.4299 + * src/fstream.cpp: Use of Wlodek Szafran implementation for the _Filebuf_base::_M_read
1.4300 + method which is more performant than the previous one.
1.4301 +
1.4302 + * test/unit/fstream_test.cpp: Add of a test for the special Win32 file format.
1.4303 +
1.4304 + * test/unit: Add of many test to check Standard C/C++ headers independancy
1.4305 + and correct C header implementation.
1.4306 +
1.4307 +2005-05-18 Francois Dumont <dums@stlport...>
1.4308 +
1.4309 + * src/fstream.cpp: Fix buffer overflow in _Filebuf_base::_M_read method
1.4310 + for the Win32 platform implementation thanks Wlodek Szafran report.
1.4311 +
1.4312 + * src/c_locale_dummy/c_locale_dummy.c: Patch from Michael Fink for wrong C
1.4313 + prototype.
1.4314 +
1.4315 +2005-05-17 Petr Ovtchenkov <ptr@island...>
1.4316 +
1.4317 + * test/unit/locale_test.cpp: some fixes in moneypunct test, related
1.4318 + to international currency format; some problems still remains, due to
1.4319 + unclear specifications---if international currency 3-chars abbreviation
1.4320 + used in suffix form, additional space will be appended
1.4321 + ['1 234.56 RUR ']. This is due to intl_fmp.curr_symbol() == "RUR ",
1.4322 + and the last is conform to OpenGroup spec.
1.4323 +
1.4324 +2005-05-16 Petr Ovtchenkov <ptr@island...>
1.4325 +
1.4326 + * src/c_locale_stub.cpp: "stub" implemntation moved into
1.4327 + c_locale_dummy/c_locale_dummy.c, this file removed
1.4328 +
1.4329 + * src/c_locale.c: include c_locale_dummy/c_locale_dummy.c, in case of
1.4330 + no real locale implementation.
1.4331 +
1.4332 + * src/c_locale_dummy/c_locale_dummy.c: This is a "stub" implementation
1.4333 + of the "c_locale.h" interface, intended for operating systems where
1.4334 + we have not yet written a real implementation. A C++ library using
1.4335 + this stub implementation is still standard-conforming, since
1.4336 + the C++ standard does not require that any locales other
1.4337 + than "C" be supported.
1.4338 +
1.4339 + * build/lib/Makefile.inc: src/c_locale_stub.cpp removed.
1.4340 +
1.4341 + * src/facets_by_name.cpp: add comments in the _Init_monetary_formats.
1.4342 +
1.4343 + * src/c_locale_glibc/c_locale_glibc2.c: annotate some monetary-related
1.4344 + functions.
1.4345 +
1.4346 +2005-05-14 Petr Ovtchenkov <ptr@island...>
1.4347 +
1.4348 + * build/Makefiles/gmake/aCC.mak: HP's aCC compiler and HP-UX os support.
1.4349 + This isn't really checked and should be fixed on real system.
1.4350 +
1.4351 + * build/Makefiles/gmake/app/aCC.mak, gmake/lib/aCC.mak: ditto.
1.4352 +
1.4353 + * build/Makefiles/gmake/hp-ux/extern.mak, lib.mak: ditto.
1.4354 +
1.4355 + * build/Makefiles/gmake/hp-ux/rules-install-so.mak, rules-so.mak: ditto.
1.4356 +
1.4357 + * build/Makefiles/gmake/hp-ux/gmake/hp-ux/sys.mak: ditto.
1.4358 +
1.4359 + * build/lib/aCC.mak: ditto.
1.4360 +
1.4361 + * build/test/unit/aCC.mak: ditto.
1.4362 +
1.4363 + * build/test/unit/gcc.mak: remove dbg-shared tag from default build;
1.4364 + if you need unit tests with debug info and without _STLP_DEBUG, make this
1.4365 + tag explicitly.
1.4366 +
1.4367 +2005-05-14 Francois Dumont <dums@stlport...>
1.4368 +
1.4369 + * stlport/stl/_config.h, _config_compat_post.h, _cwchar.h, _epilog.h:
1.4370 + Patch from Albrecht Fritzsche to remove C++ comment from files accessible
1.4371 + by a pure C compiler.
1.4372 +
1.4373 + * stlport/stl/c_locale.h: idem.
1.4374 +
1.4375 + * src/c_locale.h, c_locale_glibc/c_locale_glibc2.h: idem.
1.4376 +
1.4377 + * src/gcc_localeinfo.h, c_locale_win32/c_locale_win32.c: idem.
1.4378 +
1.4379 + * build/Makefiles/gmake/gcc.mak: Add the -ansi option to the C compiler
1.4380 + command to know if any regression occur concerning use of C++ comment
1.4381 + in C files.
1.4382 +
1.4383 +2005-05-13 Francois Dumont <dums@stlport...>
1.4384 +
1.4385 + * src/c_locale_win32/c_locale_win32.c: Improve the locale name recognition
1.4386 + system to be more unix compliant. Now you can pass locale name like
1.4387 + lang_country[.codepage] with lang being one of the ISO 639 values and
1.4388 + country one of the ISO 3166 ones.
1.4389 +
1.4390 + * test/unit/locale_test.cpp: Add a test case for the ctype facet.
1.4391 +
1.4392 + * test/unit/locale_test.cpp: Now list all the installed locales under
1.4393 + Win32 to test more locale than the simple french one.
1.4394 +
1.4395 + * stlport/config/stl_msvc.h: Removed _WINDLL macro check when trying
1.4396 + to guess what type of library (dynamic/static) the STLport user want
1.4397 + to link with. _WINDLL is defined when generating a dll but it do not
1.4398 + imply anything on the user wish.
1.4399 +
1.4400 + * src/ctype.cpp: Improve the ctype::scan_is method, you can now scan
1.4401 + for a character conforming to several ctype_base::mask and not only to one.
1.4402 +
1.4403 + * src/ctype.cpp: Idem previous for ctype::scan_not which returns the first
1.4404 + character that do not conform to any of the passed mask.
1.4405 +
1.4406 + * test/eh: Restore exception handling test suite. Removed some equality
1.4407 + tests that is no more valid for hash containers, this kind of test
1.4408 + is better in the unit tests. Add makefiles for MSVC compilers.
1.4409 +
1.4410 + * stlport/stl/_tree.c: Fix _M_insert method that was leaking in case of
1.4411 + exception thrown by the comparison operator, reported by eh tests.
1.4412 +
1.4413 +2005-05-09 Francois Dumont <dums@stlport...>
1.4414 +
1.4415 + * stlport/stl/_ctype.h, src/ctype.cpp: Reenforce data encapsulation of the
1.4416 + ctype<char> template specialization class. class static arrays
1.4417 + _S_upper, _S_lower, _S_classic_table removed from the definition and hiden
1.4418 + in the .cpp file.
1.4419 +
1.4420 + * src/dll_main.cpp: Change _STLP_UNIX macro check in _STLP_PTHREADS check
1.4421 + as per thread allocator is only supported if the Posix pthread API is used,
1.4422 + thanks a Albrecht Fritzsche remarked.
1.4423 +
1.4424 +2005-05-07 Francois Dumont <dums@stlport...>
1.4425 +
1.4426 + * stlport/config/stl_gcc.h: Patch from John Smith for Mac OS X support.
1.4427 +
1.4428 + * test/unit/locale_test.cpp: Idem previous.
1.4429 +
1.4430 + * build/Makefiles/gmake/cygming/lib.mak, sys.mak: Import lib extension
1.4431 + change from .lib to .dll.a for Mingw like under Cygwin. ld linker
1.4432 + looks for .dll.a before .lib, avoid conflict with Cygwin lib.
1.4433 +
1.4434 +2005-05-07 Petr Ovtchenkov <ptr@island...>
1.4435 +
1.4436 + * stlport/errno.h: use C++ 'using' construction only for C++. Thanks Gary.
1.4437 +
1.4438 + * build/Makefiles/gmake/lib/gcc.mak: option for libname for Darwin.
1.4439 +
1.4440 + * build/Makefiles/gmake/app/mwccnlm.mak: build for Novell NetWare 5
1.4441 + with MetroWerks 7 and 8 compilers.
1.4442 +
1.4443 + * build/Makefiles/gmake/lib/mwccnlm.mak: ditto
1.4444 +
1.4445 + * build/lib/mwccnlm.mak: ditto
1.4446 +
1.4447 + * build/Makefiles/gmake/mwccnlm.mak: ditto
1.4448 +
1.4449 + * build/Makefiles/gmake/netware/extern.mak: ditto
1.4450 +
1.4451 + * build/Makefiles/gmake/netware/lib.mak, sys.mak: ditto
1.4452 +
1.4453 + * src/_stdio_file.h, num_get_float.cpp, num_put_float.cpp: ditto
1.4454 +
1.4455 + * stlport/cstdio, cwchar, cwctype, stdio.h, wchar.h: ditto
1.4456 +
1.4457 + * stlport/config/stl_mwerks.h: ditto
1.4458 +
1.4459 + * stlport/stl/_config.h, _fstream.h, _hashtable.c, _sstream.c: ditto
1.4460 +
1.4461 + * stlport/stl/_threads.h, c_locale.h, char_traits.h: ditto
1.4462 +
1.4463 + * build/Makefiles/gmake/sysid.mak: treat mwccnlm as cross-compiler,
1.4464 + set correct TARGET_OS and OS-related macros.
1.4465 +
1.4466 + * stlport/stl/_valarray.h: remove exhaustive this->.
1.4467 +
1.4468 +2005-05-04 Francois Dumont <dums@stlport...>
1.4469 +
1.4470 + * stlport/config/stl_msvc.h: Change configuration for MSVC .Net 2003 and
1.4471 + 2005 that seems to have a bug in the namespace management.
1.4472 +
1.4473 + * stlport/stdlib.h: Add errno.h inclusion from this file for gcc mingw
1.4474 + as this compiler version do define errno macro in stdlib.h as MSVC do.
1.4475 +
1.4476 +2005-05-03 Francois Dumont <dums@stlport...>
1.4477 +
1.4478 + * stlport/stl_user_config.h, stl/_site_config.h, config/stl_gcc.h, _prolog.h,
1.4479 + _epilog.h: Use strict Ansi C comments (/**/) for headers accessible thought
1.4480 + the STLport C headers.
1.4481 +
1.4482 + * stlport/C headers: Cleaned from C++ style comments.
1.4483 +
1.4484 +2005-05-02 Francois Dumont <dums@stlport...>
1.4485 +
1.4486 + * build/Makefiles/nmake/vc-common.mak: Restore of LDFLAGS_A_REL introduce
1.4487 + the 2004-10-30 and lost the 2005-04-16, it avoids warning due to use
1.4488 + of the whole program optimization with VC.Net 2003 and 2005.
1.4489 +
1.4490 + * stlport/stl/_string_io.c: Modification of the basic_string i/o operators
1.4491 + in the way it deals with the size_type and streamsize difference; it is
1.4492 + equivalent with the former one but do not generate warning with gcc
1.4493 + (mingwin).
1.4494 +
1.4495 + * stlport/stddef.h, stdlib.h, errno.h: Fix issue under MSVC compilers where
1.4496 + native stdlib.h and stddef.h are defining errno macro without including
1.4497 + errno.h forbiding STLport to do so. Now errno.h will report this problem with
1.4498 + an explicit #error.
1.4499 +
1.4500 + * test/unit/test_errno.cpp: Improvement of the test to reveal the previous
1.4501 + issue.
1.4502 +
1.4503 +2005-05-02 Petr Ovtchenkov <ptr@island...>
1.4504 +
1.4505 + * makesystem (repository): restore experimental support of MetroWerks
1.4506 + compiler for NetWare, with help of GNU make and Cygwin environment.
1.4507 +
1.4508 +2005-04-29 Francois Dumont <dums@stlport...>
1.4509 +
1.4510 + * stlport/stl/_time_facets.c: gcc warnings reveal that we were missing some
1.4511 + ctype::widen method call to compare things like month or day names.
1.4512 + Also simplified implementation of the __match and __get_formatted_time that
1.4513 + do not really need all the template parameters passed to it.
1.4514 +
1.4515 + * stlport/stl/_num_put.c: Add a cast to make call to the function min more
1.4516 + clear, it will perhaps help EVC++ builds correctly.
1.4517 +
1.4518 + * src/strstream.cpp, stlport/stl/_sstream.c: Removed static assertion
1.4519 + replaced by modified implementation that takes into account the difference
1.4520 + between size_t and streamsize.
1.4521 +
1.4522 +2005-04-28 Francois Dumont <dums@stlport...>
1.4523 +
1.4524 + * test/unit/limits_test.cpp: Improve integral types limit test for type
1.4525 + of unknown sign. In this case we check the min value of this integral type,
1.4526 + if 0 the type is unsigned. Moreover we check, except for the bool type,
1.4527 + the sign of -1 cast to the integral type, bool is a special type that
1.4528 + generate warning when built from -1 (MSVC).
1.4529 +
1.4530 + * src/ctype.cpp: Creation of a small helper structure to check the validity
1.4531 + of a wchar_t value used as an index. This helper struct takes into account
1.4532 + the compiler representation of the wchar_t type, is it a sign type or not.
1.4533 + This helper avoids warning when wchar_t is unsigned.
1.4534 +
1.4535 + * src/num_get.cpp: Removed unused _Initialize_get_digit function and
1.4536 + associated narrow_digits and narrow_xdigits arrays.
1.4537 +
1.4538 +2005-04-28 Petr Ovtchenkov <ptr@island...>
1.4539 +
1.4540 + * stlport/stl/_sstream.h, _num_put.c: __in replaced by __imode, __out
1.4541 + by __omode or __oi due to MS privatize __in and __out. Thanks Michael Fink.
1.4542 +
1.4543 +2005-04-27 Francois Dumont <dums@stlport...>
1.4544 +
1.4545 + * src/fstream.cpp: Fix Win32-64 file stream implementation. _M_read and
1.4546 + _M_write can now correctly handle respectively read and write of really
1.4547 + big buffers ( > 2Go)
1.4548 +
1.4549 + * using/iosfwd.h, stlport/strstream.h, stl/_rope.h, _rope.c, _complex.h: Removed
1.4550 + references to the _STLP_USE_NEW_IOSTREAMS macro, STLport only support "new"
1.4551 + iostreams.
1.4552 +
1.4553 + * test/unit/max_test.cpp, min_test.cpp: Add tests to check that min and
1.4554 + max are not defined as macros.
1.4555 +
1.4556 + * test/fstream_test.cpp: Add check in creation of test_file.txt
1.4557 + as following tests depends on its content.
1.4558 +
1.4559 + * src/strstream.cpp, stdio_streambuf.cpp: Fix potential issue because of
1.4560 + the difference between streamsize and size_t of ptrdiff_t.
1.4561 + Add static assertion to clearly specify how streamsize must be to have
1.4562 + a correct behavior.
1.4563 +
1.4564 + * stlport/stl/_num_put.c, _num_get.c, _fstream.c, _moneraty.c: ditto.
1.4565 +
1.4566 + * src/ctype.cpp: Restore check on wchar_t positivity as according
1.4567 + 2005-02-22 Petr Ovtchenkov reports wchar_t can be signed.
1.4568 +
1.4569 +2005-04-26 Francois Dumont <dums@stlport...>
1.4570 +
1.4571 + * src/num_get_float.cpp: Fix mingwin support for 64bits integer type
1.4572 + thanks Wlodek Szafran
1.4573 +
1.4574 +2005-04-25 Francois Dumont <dums@stlport...>
1.4575 +
1.4576 + * stlport/stl/_time_facets.c: Fix __pos type in __match function and removed
1.4577 + unused __max_pos definition and initialisation.
1.4578 +
1.4579 + * src/c_locale_win32/c_locale_win32.c: Add some cast to remove warnings.
1.4580 +
1.4581 + * stlport/stl/_moneraty.c: Fix __witdh definition to use streamsize rather
1.4582 + than size_t to avoid warnings.
1.4583 +
1.4584 +2005-04-25 Petr Ovtchenkov <ptr@island...>
1.4585 +
1.4586 + * build/test/gcc.mak: workaround for [bug?] gmake, that sometimes lose
1.4587 + increment of target-specific macro and, may be, under condition.
1.4588 + Thanks Jeff Williams.
1.4589 +
1.4590 + * build/Makefiles/gmake/icc.mak: add icc 8.1 compiler-specific libs
1.4591 +
1.4592 + * build/Makefiles/gmake/icc.mak: detect icc version; add includes
1.4593 + from compiler to include path
1.4594 +
1.4595 + * test/unit/cppunit/test_main.cpp, cppunit_mini.h: add option -x, run all
1.4596 + except specified CLASS::TEST.
1.4597 +
1.4598 +2005-04-23 Francois Dumont <dums@stlport...>
1.4599 +
1.4600 + * stlport/stl/_ioerr.h: #error message modification thanks Michael Fink.
1.4601 +
1.4602 +2005-04-22 Francois Dumont <dums@stlport...>
1.4603 +
1.4604 + * stlport/stl/_istream.c: Fix _M_read_buffered function implementation,
1.4605 + there used to be a wrong implicit conversion from streamsize to ptrdiff_t,
1.4606 + which fail when sizeof(streamsize) > sizeof(ptrdiff_t).
1.4607 + See 2005-04-21 Petr report.
1.4608 +
1.4609 + * test/unit/: Replaced all _STLP_NO_IOSTREAMS occurences with the STLport
1.4610 + internal equivalent _STLP_USE_NO_IOSTREAMS. The first one is defined
1.4611 + by the client while the second depends on the first and on the compiler
1.4612 + abilities, makes the unit tests more portable.
1.4613 +
1.4614 + * stlport/stl/_cmath.h: Fix for Intel C++ compiler that also have all
1.4615 + C math functions in global namespace.
1.4616 +
1.4617 +2005-04-21 Francois Dumont <dums@stlport...>
1.4618 +
1.4619 + * stlport/stl/_hashtable.h: Extend the hashtable template methods extension
1.4620 + to the method computing the bucket from the key thanks Dominik Siatkowski.
1.4621 +
1.4622 + * stlport/stl/_threads.h: Disable 64 bits portability warning for
1.4623 + MSVC compilers. MSVC do not see that the called function comes from
1.4624 + a macro that is different under Win32 and Win64.
1.4625 +
1.4626 +2005-04-21 Petr Ovtchenkov <ptr@island...>
1.4627 +
1.4628 + * test/unit/sstream_test.cpp, fstream_test.cpp: integral type for
1.4629 + ptrdiff_t shorter than for streamsize; this cause problem on
1.4630 + Win32 platform, that support files larger than 4GB.
1.4631 + Thanks Timothy Tenebekov for report.
1.4632 +
1.4633 +2005-04-20 Francois Dumont <dums@stlport...>
1.4634 +
1.4635 + * stlport/stl/debug/_debug.c: Small Borland compiler fix to avoid call to
1.4636 + vsnprintf before version 0x550 thanks esanfo.
1.4637 +
1.4638 + * src/dll_main.cpp: Fix bug reported by Intel C++ (icl) compiler.
1.4639 +
1.4640 +2005-04-20 Petr Ovtchenkov <ptr@island...>
1.4641 +
1.4642 + * src/num_get_float.c: use uint64_t for 64-bit, but unsigned long long
1.4643 + for constants. This fix problem on linux x86_64 [amd64].
1.4644 +
1.4645 +2005-04-16 Francois Dumont <dums@stlport...>
1.4646 +
1.4647 + * test/unit/cppunit/test_main.cpp: Patch from Michael Fink to improve
1.4648 + the macro filter for including windows.h (UNDER_CE rather than WIN32).
1.4649 +
1.4650 + * build/test/unit/STATUS: Update from Michael Fink and myself.
1.4651 +
1.4652 + * build/Makefiles/nmake: Apply Michael Fink patch to generate .pdb file
1.4653 + even in release mode and to install them in bin and lib folders next to
1.4654 + the .dll and .lib files.
1.4655 +
1.4656 + * stlport/stl/_algobase.c: Add missing const in return type of the const
1.4657 + version of find specialized for const char*.
1.4658 +
1.4659 +2005-04-16 Petr Ovtchenkov <ptr@island...>
1.4660 +
1.4661 + * stlport/stl/_algobase.c: memchr return NULL if value not found,
1.4662 + while find() [specialization for char *] should return last
1.4663 + [see record 2005-02-27 below]. Thanks Joshua Berne for report.
1.4664 +
1.4665 + * test/unit/find_test.cpp: if char not found, char specialization of
1.4666 + find() should return last, not NULL.
1.4667 +
1.4668 +2005-04-14 Petr Ovtchenkov <ptr@island...>
1.4669 +
1.4670 + * stlport/stl/_list.h, _slist.h: add this-> resolution to get_allocator
1.4671 + [required in the member templates to resolve possible ambiguity]
1.4672 +
1.4673 +2005-04-13 Francois Dumont <dums@stlport...>
1.4674 +
1.4675 + * stlport/stl/_list.h, _slist.h: Add missing get_allocator() call when
1.4676 + building temporary list or slist instances in insert methods.
1.4677 +
1.4678 +2005-04-12 Petr Ovtchenkov <ptr@island...>
1.4679 +
1.4680 + * stlport/errno.h: solution 2005-04-12 not useful. Simplified schema,
1.4681 + semantically equivalent to Francois', but without extra function definition
1.4682 + [see records 2005-03-31 and 2005-04-01]
1.4683 +
1.4684 +2005-04-12 Petr Ovtchenkov <ptr@island...>
1.4685 +
1.4686 + * stlport/errno.h: check if we undefine previously defined errno
1.4687 +
1.4688 +2005-04-11 Petr Ovtchenkov <ptr@island...>
1.4689 +
1.4690 + * stlport/errno.h: save original errno definition
1.4691 +
1.4692 +2005-04-10 Petr Ovtchenkov <ptr@island...>
1.4693 +
1.4694 + * STLport (repository): STLport 5.0 RC3
1.4695 +
1.4696 +2005-04-08 Francois Dumont <dums@stlport...>
1.4697 +
1.4698 + * test/unit/locale_test.cpp: Add __FreeBSD__ macro check for the workaround
1.4699 + announced as Free BSD specific by the comment next to it.
1.4700 +
1.4701 + * stlport/stl/_config.h: Add undef of _STLP_USE_DYNAMIC_LIB when in
1.4702 + NO_IOSTREAMS mode, this macro was generating buggy code in this case
1.4703 + for some commpilers (gcc mingwin).
1.4704 +
1.4705 +2005-04-07 Francois Dumont <dums@stlport...>
1.4706 +
1.4707 + * build/lib/nmake-vc-common.mak: Removed useless add of STLport/lib to
1.4708 + library paths when building STLport lib.
1.4709 +
1.4710 + * build/Makefiles/nmake/*: Removed useless specification of the MSVC default
1.4711 + install directory, all the job is done by the vcvcars32.bat script that sets
1.4712 + the LIB env variable to the real MSVC install directory.
1.4713 +
1.4714 + * test/unit/unordered_test.cpp, locale_test.cpp: Removed gcc mingw warnings.
1.4715 +
1.4716 + * build/Makefiles/nmake/icl.mak, app/icl.mak, lib/icl.mak: Removed the
1.4717 + whole program optimization option, looks like it is confusing icl.
1.4718 +
1.4719 + * stlport/stl/debug/*.h: Removed useless _Get_base non-const overload.
1.4720 + In addition to being useless Intel compiler emit compilation error about it.
1.4721 +
1.4722 +2005-04-06 Petr Ovtchenkov <ptr@island...>
1.4723 +
1.4724 + * test/unit/cppunit/test_main.cpp: windows.h required here
1.4725 + [see 2005-04-04; patch by Michael Fink].
1.4726 +
1.4727 + * stlport/stl/_istream.h: __is replaced by __istr, due
1.4728 + to MS privatize __is.
1.4729 +
1.4730 + * stlport/stl/_num_get.h: __in replaced by __ii, due to MS
1.4731 + privatize __in too.
1.4732 +
1.4733 + * stlport/stl/_config.h: Visual C++ 8 uses _M_AMD64 to identify
1.4734 + EM64T and AMD64 platforms [thanks Mike Roberts].
1.4735 +
1.4736 +2005-04-05 Francois Dumont <dums@stlport...>
1.4737 +
1.4738 + * stlport/config/stl_evc.h: apply patch from Michael Fink to add support for
1.4739 + various EVC SDK.
1.4740 +
1.4741 + * stlport/stl/_cmath.h: An other adaptation to the Intel C++ compiler.
1.4742 +
1.4743 + * build/lib/nmake-vc-common.mak, test/unit/nmake-vc-common.mak: Removed check
1.4744 + of STLP_BUILD_FORCE_[STATIC,DYNAMIC]_RUNTIME environment variables,
1.4745 + moved in a common build system file.
1.4746 +
1.4747 + * build/Makefiles/nmake/vc-common.mak: Add checks of
1.4748 + STLP_BUILD_FORCE_[STATIC,DYNAMIC]_RUNTIME variables.
1.4749 +
1.4750 + * build/lib/configure.bat: Add a clean option to remove the hidden
1.4751 + Makefiles/config.mak file.
1.4752 +
1.4753 + * stlport/stdexcept: Disable 'non dll-interface class used as base' warning
1.4754 + when building STLport dll linked with the static runtime.
1.4755 +
1.4756 +2005-04-04 Francois Dumont <dums@stlport...>
1.4757 +
1.4758 + * test/unit/mfunptr_test.cpp: Add necessary macro checks for a test
1.4759 + that require partial template specialization compiler support.
1.4760 +
1.4761 +2005-04-04 Petr Ovtchenkov <ptr@island...>
1.4762 +
1.4763 + * errno.h, time.h, test_errno.cpp: evc3 and evc4 has no errno.h
1.4764 + and time.h headers [patch by Michael Fink].
1.4765 +
1.4766 + * stl_evc.h, _windows.h, test_main.cpp: workaround to not include
1.4767 + <windows.h> in STLport headers (it is still needed for building
1.4768 + the lib and the unit tests, but that should be no problem).
1.4769 + Occurences of GetCurrentProcess() used in _STLP_ABORT were replaced
1.4770 + with the result of the inline function, which returns a pseudo-
1.4771 + HANDLE value. [patch by Michael Fink]
1.4772 +
1.4773 + * cwchar, wchar.h, stl/_cwchar.h: fix access to mbstate and wint_t
1.4774 + for FreeBSD.
1.4775 +
1.4776 + * build/Makefiles/gmake/sysid.mak, app/gcc.mak, lib/gcc.mak:
1.4777 + FreeBSD before 5.3 require linkage with libc_r, while 5.3 and
1.4778 + later use libpthread.
1.4779 +
1.4780 + * test/unit/locale_test.cpp: add std:: namespace qualifier for
1.4781 + gcc 3.3.2 and/or FreeBSD.
1.4782 +
1.4783 + * libstlport, test/unit: library build and most tests pass for
1.4784 + FreeBSD 5.3 and FreeBSD 4.10.
1.4785 +
1.4786 +2005-04-02 Francois Dumont <dums@stlport...>
1.4787 +
1.4788 + * stlport/cstdlib: Fix missing div taking long definition for VC71.
1.4789 +
1.4790 +2005-04-01 Francois Dumont <dums@stlport...>
1.4791 +
1.4792 + * stlport/errno.h: Add comments to explain the file code.
1.4793 +
1.4794 + * stlport/stl/_string_io.h: Yet an other fix to the i/o basic_string
1.4795 + operators that was not right under cygwin/mingwin.
1.4796 +
1.4797 + * build/Makefiles/gmake/gcc.mak: Merge the 2 distinct cygmin blocks
1.4798 + in one and add -Wall and -Wsign-promo warnings.
1.4799 +
1.4800 +2005-04-01 Petr Ovtchenkov <ptr@island...>
1.4801 +
1.4802 + * test/unit/test_errno.cpp: fix test, errno may be non-zero without
1.4803 + any error, but it reflect error code after some function fail.
1.4804 + This not the same.
1.4805 +
1.4806 + * test/unit/mfunptr_test.cpp: add step-by-step test how compiler
1.4807 + recognize bind of member function for find_if. Not all compilers may
1.4808 + understand this. Thanks Markus for test idea.
1.4809 +
1.4810 +2005-03-31 Francois Dumont <dums@stlport...>
1.4811 +
1.4812 + * stlport/errno.h: Fixed for MSVC compilers, should still be fine for
1.4813 + others.
1.4814 +
1.4815 + * test/unit/test_errno.cpp: Modified to be a real unit test. Also test
1.4816 + errno assignment.
1.4817 +
1.4818 +2005-03-30 Francois Dumont <dums@stlport...>
1.4819 +
1.4820 + * stlport/stl/_fstream.c: Try to fix ambiguous type deduction in a max
1.4821 + call under WinCE.
1.4822 +
1.4823 + * stlport/stl/_cmath.h: Fix missing non Standard hypot function under
1.4824 + WinCE thanks Michael Fink.
1.4825 +
1.4826 + * stlport/stl/_cmath.h: Attempt to fix the WinCE math function support
1.4827 + where neither *f nor *l functions are present even if the compiler
1.4828 + support the long double type.
1.4829 +
1.4830 +2005-03-30 Petr Ovtchenkov <ptr@island...>
1.4831 +
1.4832 + * stlport/assert.h, float.h, iso646.h, limits.h, errno.h:
1.4833 + added in accordance with Standard D.5 [compatibility with standard
1.4834 + C library] to prevent wrong std interpretation in ill-formed native
1.4835 + headers [definition of namespace std in C headers].
1.4836 +
1.4837 + * test/unit/test_errno.cpp: check correct processing of errno.h
1.4838 + header.
1.4839 +
1.4840 + * build/test/eh: build eh tests again.
1.4841 +
1.4842 + * test/eh/LeakCheck.h, TestClass.cpp, TestClass.h: fix and clear.
1.4843 +
1.4844 + * test/eh/test_hash_map.cpp, test_hash_set.cpp: hash_set/hash_map
1.4845 + has no == operator [no container equality]; this fix is quick-and-dirty
1.4846 +
1.4847 +2005-03-29 Petr Ovtchenkov <ptr@island...>
1.4848 +
1.4849 + * build/Makefiles/gmake/app/rules.mak, freebsd/rules-so.mak,
1.4850 + linux/rules-so.mak, openbsd/rules-so.mak, sunos/rules-so.mak:
1.4851 + fix link sequence---the end objects should be really last, i.e. after libs.
1.4852 + This affected by linkage without libstdc++.
1.4853 +
1.4854 + * stlport/stl/_cwchar.h, stlport/wchar.h: workarounds for FreeBSD.
1.4855 +
1.4856 + * due to change in link sequence most tests [including exceptions] pass
1.4857 + for uClibc.
1.4858 +
1.4859 + * stlport/mmemory.h: garbage, removed.
1.4860 +
1.4861 + * stlport/export: ditto.
1.4862 +
1.4863 +2005-03-28 Francois Dumont <dums@stlport...>
1.4864 +
1.4865 + * stlport/stl/_istream.h, _ostream.h: Fix assignment operators prototypes
1.4866 + for the sentry struct. Thanks -Weffc++ feature of gcc.
1.4867 +
1.4868 + * build/Makefiles/gmake/cygmin/rules-install-so.mak: Add missing folder
1.4869 + creation in the install process thanks Charlemagne report.
1.4870 +
1.4871 + * build/Makefiles/nmake/icl.mak: Fix Intel compiler build system under
1.4872 + Windows.
1.4873 +
1.4874 +2005-03-28 Petr Ovtchenkov <ptr@island...>
1.4875 +
1.4876 + * src/num_put_float.cpp: in FreeBSD no *cvt* functions now, use sprintf;
1.4877 +
1.4878 + * stlport/config/stl_gcc.h: in FreeBSD no math *l functions and llabs.
1.4879 +
1.4880 + * test/unit/string_test.cpp: more test with assignment.
1.4881 +
1.4882 +2005-03-25 Petr Ovtchenkov <ptr@island...>
1.4883 +
1.4884 + * stlport/stddef.h: fix typo in header id---this mistake prevent
1.4885 + inclusion _epilog.h.
1.4886 +
1.4887 + * test/unit/epilog_test.cpp: regression test for bug above.
1.4888 +
1.4889 + * stlport/cstdio: fix header id to avoid possible errors.
1.4890 +
1.4891 +2005-03-24 Petr Ovtchenkov <ptr@island...>
1.4892 +
1.4893 + * build/Makefiles/gmake/lib/gcc.mak, build/Makefiles/gmake/app/gcc.mak:
1.4894 + code reorganization to simplify platform configuration with or without
1.4895 + -nostdlib [avoid link with libstdc++ or libestdc++]; now link without
1.4896 + libstdc++/libestdc++ supported on Linux and OpenBSD.
1.4897 +
1.4898 + * build/Makefiles/gmake/openbsd/rules-so.mak: idem.
1.4899 +
1.4900 + * build/Makefiles/gmake/freebsd/rules-so.mak: idem.
1.4901 +
1.4902 + * src/num_put_float.cpp: clean float convertions for OpenBSD and FreeBSD;
1.4903 + OpenBSD and FreeBSD use STLport code instead of sprintf now.
1.4904 +
1.4905 + * stlport/stl/_cwchar.h: allow masquarade to use mbstate_t from native
1.4906 + cwchar header on OpenBSD.
1.4907 +
1.4908 + * stlport/config/slt_gcc.h: llabs and *l math functions absent in OpenBSD;
1.4909 + define __unix, that missed in OpenBSD.
1.4910 +
1.4911 +2005-03-23 Petr Ovtchenkov <ptr@island...>
1.4912 +
1.4913 + * build/Makefiles/gmake/app/gcc.mak, build/Makefiles/gmake/lib/gcc.mak:
1.4914 + incorporate gcc language support library into libstlport.so
1.4915 + [add ~100k to library], but libsupc++ don't required more in link stage
1.4916 + for applications and libraries that use stlport, as in case with
1.4917 + libstdc++.
1.4918 +
1.4919 +2005-03-22 Francois Dumont <dums@stlport...>
1.4920 +
1.4921 + * stlport/stl/_string_io.c: Fix basic_string stream output operator
1.4922 + implementation for cygwin.
1.4923 +
1.4924 + * stlport/stl/_cmath.h: Add fixes for cygwin support that handle long double
1.4925 + but do not have *l maths function per default.
1.4926 +
1.4927 + * src/complex_exp.cpp: Fix call to logl, replaced by call to log.
1.4928 +
1.4929 + * src/complex_trig.cpp: Fix mingw support by checking M_LN2l existence
1.4930 + before using it.
1.4931 +
1.4932 + * test/unit/copy_test.cpp: Change test cases to avoid use of iostreams.
1.4933 +
1.4934 + * test/unit/string_test.cpp: Add a small check to test use of istream width
1.4935 + in the input operator.
1.4936 +
1.4937 + * stlport/cstdlib, stlport/config/stl_msvc.h, stl_gcc.h: Creation of the
1.4938 + _STLP_NO_VENDOR_STDLIB_L macro to report support of the llabs and lldiv
1.4939 + function.
1.4940 +
1.4941 +2005-03-21 Petr Ovtchenkov <ptr@island...>
1.4942 +
1.4943 + * stlport/stl/_cmath.h: removed logf, expf, sinf, cosf; option
1.4944 + -fno-builtin passed to gcc compiler solve the problem with uClibc;
1.4945 + this imply same option in building uClibc, as it is in normal uClibc build.
1.4946 + This is partial rollback of changes 2005-03-16.
1.4947 +
1.4948 + * build/lib/configure, build/Makefiles/gmake/gcc.mak: add ability to pass
1.4949 + extra flags to C++ compiler
1.4950 +
1.4951 +2005-03-18 Francois Dumont <dums@stlport...>
1.4952 +
1.4953 + * test/unit: Modified some test in order to check the _STLP_NO_IOSTREAMS
1.4954 + mode. This new mode of tests reveals the following bugs:
1.4955 +
1.4956 + * stlport/stl/_rope.c: Add check of _STLP_USE_NO_IOSTREAMS macro before
1.4957 + include of iostream header.
1.4958 +
1.4959 + * src/dll_main.cpp, stlport/stl/_string_fwd.h: Removed implementation
1.4960 + of __get_c_string, moved to _string.h header, once string has been defined,
1.4961 + as an inline function.
1.4962 +
1.4963 +2005-03-18 Petr Ovtchenkov <ptr@island...>
1.4964 +
1.4965 + * src/complex_trig.cpp: avoid call log functions during static
1.4966 + initialization, if possible.
1.4967 +
1.4968 +2005-03-17 Francois Dumont <dums@stlport...>
1.4969 +
1.4970 + * stlport/stl/_string_io.h: Fix implementation that used to think that
1.4971 + size_t and streamsize was simply aliases. Thanks Jay Amin report.
1.4972 +
1.4973 + * stlport/config/_prolog.h: Add comment about the reason of alignment
1.4974 + specification when using MSVC compilers. Fix alignment for Win64 platform.
1.4975 +
1.4976 + * stlport/stl/_alloc.h: Fix _ALIGN enum definition for _Win64 platform.
1.4977 +
1.4978 + * src/string_w.cpp: Fix wrong class export under debug mode thanks
1.4979 + Charlemagne report.
1.4980 +
1.4981 + * build/Makefiles/nmake: Preparation of the build system for icl (Intel cl
1.4982 + compiler (mimic cl compiler from Microsoft).
1.4983 +
1.4984 +2005-03-16 Petr Ovtchenkov <ptr@island...>
1.4985 +
1.4986 + * stlport/stl/_cmath.h: added logf, expf, sinf, cosf---this fix
1.4987 + uClibc 0.9.27/gcc problem. Fix one macro for declaration math
1.4988 + functions in case of absent *f functions.
1.4989 +
1.4990 +2005-03-16 Francois Dumont <dums@stlport...>
1.4991 +
1.4992 + * stlport/config/*: Clean native header include path macro definition.
1.4993 + Removed many useless definition simply recreating the default behavior.
1.4994 + Removed the unreferenced _STLP_NATIVE_OLD_STREAMS_INCLUDE_PATH macro.
1.4995 +
1.4996 + * stlport/stl/_site_config.h: Update relative path headers macros
1.4997 + documentation to reflect more accurately default behavior and add
1.4998 + the unreference _STLP_NATIVE_CPP_RUNTIME_INCLUDE_PATH macro.
1.4999 +
1.5000 +2005-03-15 Francois Dumont <dums@stlport...>
1.5001 +
1.5002 + * stlport/stl/_fstream.h: Fix _Noconv_input helper class default implementation.
1.5003 + Returns traits::eof() rather than 0.
1.5004 +
1.5005 +2005-03-15 Petr Ovtchenkov <ptr@island...>
1.5006 +
1.5007 + * src/complex.cpp, complex_exp.cpp, complex_io.cpp, complex_trig.cpp:
1.5008 + use achievements in _cmath.h---use overloaded funcs; mascarade from
1.5009 + complex_impl.h not required more.
1.5010 +
1.5011 + * src/complex_impl.h: deleted.
1.5012 +
1.5013 + * test/unit/cmath_test.cpp: check nested sqrt(sqrt)---possible problem with macro
1.5014 +
1.5015 +2005-03-14 Francois Dumont <dums@stlport...>
1.5016 +
1.5017 + * stlport/config/stl_msvc.h: _STLP_SAME_FUNCTION_NAME_RESOLUTION_BUG notion
1.5018 + removed, impossible to reproduce, maybe fixed by the #pragma intrinsic/function
1.5019 + directives.
1.5020 +
1.5021 + * stlport/stl/_cmath.h, cstdlib: Fix .Net 2003 and .Net 2005 beta support.
1.5022 +
1.5023 + * stlport/stl/_cmath.h: Removed _STLP_SAME_FUNCTION_NAME_RESOLUTION_BUG notion,
1.5024 + no more _STLP_DO_* macros.
1.5025 +
1.5026 + * test/unit/valarray_test.cpp: New tests to check right compilation of
1.5027 + transcendentals valarray functions.
1.5028 +
1.5029 + * stlport/stl/_valarray.h: Replaced all the _STLP_DO_* macros by real
1.5030 + function calls.
1.5031 +
1.5032 + * src/fstream.cpp: Add INVALID_SET_FILE_POINTER definition when missing for
1.5033 + Win32 IO implementation thanks Michael Fink report. Add compilation check
1.5034 + of right STLport file descriptor definition.
1.5035 +
1.5036 +2005-03-12 Francois Dumont <dums@stlport...>
1.5037 +
1.5038 + * stlport/stl/_tree.h: Fix equal_range_unique bug thanks Gunter.
1.5039 +
1.5040 + * test/unit/map_test.cpp: Add of the test to reproduce the bug
1.5041 + above.
1.5042 +
1.5043 +2005-03-11 Petr Ovtchenkov <ptr@island...>
1.5044 +
1.5045 + * build/test/unit/gcc.mak: don't write runtime path to libstlport
1.5046 + in case of crosscompilation.
1.5047 +
1.5048 + * stlport/stl/_cmath.h: exclude *f and *l variants of math functions
1.5049 + if ones absent in system; add missed hypot function; few workarounds
1.5050 + for uClibc and for VC.
1.5051 +
1.5052 + * src/complex.cpp, complex_exp.cpp, complex_trig.cpp: workaround
1.5053 + for systems without *f and *l variants of math functions.
1.5054 +
1.5055 + * test/unit/resolve_name.cpp: exclude test line that confuse VC.
1.5056 +
1.5057 + * stlport/cstdlib: div isn't intrinsic for VC.
1.5058 +
1.5059 + * stlport/config/stl_gcc.h: don't use *f and *l math functions in
1.5060 + case of uClibc.
1.5061 +
1.5062 +2005-03-09 Petr Ovtchenkov <ptr@island...>
1.5063 +
1.5064 + * doc/FAQ: FAQ was established.
1.5065 +
1.5066 +2005-03-07 Francois Dumont <dums@stlport...>
1.5067 +
1.5068 + * stlport/stl/_bitset.h, _bitset.c: Avoid include of istream when
1.5069 + NO_IOSTREAMS mode thanks Bruno report.
1.5070 +
1.5071 + * stlport/stl/char_traits.h: Modification of the streamoff and streamsize
1.5072 + definition to take into account the 64 bits file access support.
1.5073 +
1.5074 + * test/unit/fstream.cpp: New test for big files ( > 2Go) unactivated by
1.5075 + default.
1.5076 +
1.5077 +2005-03-06 Petr Ovtchenkov <ptr@island...>
1.5078 +
1.5079 + * stlport/cstdlib, stlport/cmath, stlport/stl/_cmath.h: define
1.5080 + overloaded functions in the scope of global namespace and then import
1.5081 + all in stlp_std with 'using' directive. This is better than
1.5082 + solution from 2005-03-04 below.
1.5083 +
1.5084 + * stlport/cmath: include cstdlib, due to declarations of abs
1.5085 + with integer types required in overload and when 'using'.
1.5086 +
1.5087 + * src/complex.cpp, src/complex_exp.cpp, src/complex_trig.cpp: replace
1.5088 + macros that possibly will be removed.
1.5089 +
1.5090 +2005-03-05 Francois Dumont <dums@stlport...>
1.5091 +
1.5092 + * stlport/stl/_construct.h: Simplification of the _Copy_Construct
1.5093 + function, now only takes a single template parameter and only call
1.5094 + the strict copy constructor. Creation of the _Param_Construct function
1.5095 + that replace the former _Copy_Construct implementation.
1.5096 +
1.5097 + * cstdlib: Fix abs definition for MSVC compilers.
1.5098 +
1.5099 + * test/unit: Fixing 64 bits warnings in many tests.
1.5100 +
1.5101 + * src/c_locale_win32/c_locale_win32.c: Fixing 64 bits warnings.
1.5102 +
1.5103 + * src/fstream.cpp: Creation of the INVALID_STLP_FD constant to represent
1.5104 + a portable invalid file descriptor.
1.5105 +
1.5106 + * stlport/stl/_streambuf.c: Explicit instanciation of basic_streambuf
1.5107 + for wchar_t removed, already exists in _streambuf.h thanks
1.5108 + Charlemagne report.
1.5109 +
1.5110 + * stlport/stl/char_traits.h: Setup modification, Windows platform now
1.5111 + use ptrdiff_t to define streamoff, make the code more portable.
1.5112 +
1.5113 +2005-03-04 Petr Ovtchenkov <ptr@island...>
1.5114 +
1.5115 + * stlport/stl/_cmath.h: removed recursive include of cmath header
1.5116 +
1.5117 + * src/complex_impl.h: include cmath instead of stl/_cmath.h
1.5118 +
1.5119 + * stlport/stl/_complex.h: idem.
1.5120 +
1.5121 + * stlport/stl/_valarray.h: idem.
1.5122 +
1.5123 + * test/unit/unary.h: workaround for namespace resolution.
1.5124 +
1.5125 + * test/unit/resolve_name.cpp: test to show problem with namespace resolution.
1.5126 +
1.5127 + * stlport/cmath, stlport/stl/_cmath.h: standard require overloaded math
1.5128 + functions for double and float arguments. Import with 'using' directive
1.5129 + can't provide such overload. Removed import with 'using', used direct
1.5130 + inline wrappers in namespace stlp_std instead. Cleaning code.
1.5131 +
1.5132 + * stlport/cstdlib: complement to cmath---the same as above for abs.
1.5133 +
1.5134 + * stlport/stl/_config.h: uClibc declare pthread_spin... but ones absent
1.5135 + in the library indeed.
1.5136 +
1.5137 +2005-03-02 Petr Ovtchenkov <ptr@island...>
1.5138 +
1.5139 + * build/Makefiles/top.mak: move .PHONY target to the bottom, it work here
1.5140 + as expected
1.5141 +
1.5142 + * build/Makefiles/gmake/depend.mak, targetdirs.mak: reduce amount of dummy
1.5143 + targets; fix creation of directories for install.
1.5144 +
1.5145 + * build/Makefiles/gmake/linux/rules-install-so.mak: ditto.
1.5146 +
1.5147 + * stlport/stl/_config.h, stlport/config/stl_gcc.h: support of gcc/linux/uClibc
1.5148 +
1.5149 + * src/_stdio_file.h, num_put_float.cpp, stdio_streambuf.cpp: uClibc support
1.5150 +
1.5151 + * stlport/cwchar: ditto.
1.5152 +
1.5153 +2005-03-01 Francois Dumont <dums@stlport...>
1.5154 +
1.5155 + * stlport/stl/_threads.h, _windows.h, _rope.c: Fix of a 64 bits portage issue
1.5156 + in the rope implementation under Win64 thanks Patrick Bergeron report.
1.5157 +
1.5158 +2005-02-28 Francois Dumont <dums@stlport...>
1.5159 +
1.5160 + * stlport/stl/_hashtable.c: hashtable::erase fix thanks Patrick Bergeron.
1.5161 +
1.5162 +2005-02-27 Francois Dumont <dums@stlport...>
1.5163 +
1.5164 + * stlport/stl/_algobase.h, _algobase.c: Fix find algo overload for
1.5165 + char* and const char*. Now the overload is on the __find underlying
1.5166 + function.
1.5167 +
1.5168 + * test/unit/alg_test.cpp: Add a test case for the search_n algo.
1.5169 +
1.5170 + * stlport/stl/_algo.c: Integration of the search_n algo implementation
1.5171 + for the random access iterator from Jim Xochellis.
1.5172 +
1.5173 +2005-02-25 Francois Dumont <dums@stlport...>
1.5174 +
1.5175 + * stlport/stl/_slist.h: Fix _M_splice_after method.
1.5176 +
1.5177 + * stlport/stl/debug/_slist.h: Add of many missing checks for the special
1.5178 + slist before_begin iterator which returns true to the _Dereferenceable
1.5179 + function call but is not dereferenceable in reality. Passing this
1.5180 + iterator to method like erase or insert was invalid but was not detected
1.5181 + by the _Dereferenceable function.
1.5182 +
1.5183 + * test/unit/slist_test.cpp: Add checks for insert, insert_after, splice
1.5184 + splice_after methods.
1.5185 +
1.5186 + * Patch from Ulrich Eckhardt:
1.5187 + - Fix macro _MSC_VER macro checks, VC6 should be found using _MSC_VER < 1300
1.5188 + check rather than _MSC_VER == 1200 to take into account compilers like
1.5189 + EVC4 that is a VC6 based compiler with _MSC_VER == 1202.
1.5190 +
1.5191 +2005-02-25 Petr Ovtchenkov <ptr@island...>
1.5192 +
1.5193 + * stlport/stl/_algobase.h: wrong parameters order in call to memchr,
1.5194 + thanks Patrick Bergeron.
1.5195 +
1.5196 +2005-02-24 Francois Dumont <dums@stlport...>
1.5197 +
1.5198 + * stlport/stl/char_traits.h: Patch from Ulrich Eckhardt fixing a wrong
1.5199 + _STLP_CALL specification on member operators and some cosmetic changes.
1.5200 +
1.5201 +2005-02-22 Petr Ovtchenkov <ptr@island...>
1.5202 +
1.5203 + * test/unit/limits_test.cpp: wchar_t is treated as signed, except when it
1.5204 + equiv to unsigned short on Wins systems.
1.5205 +
1.5206 + * Repository: STLport 5.0 RC2
1.5207 +
1.5208 +2005-02-20 Francois Dumont <dums@stlport...>
1.5209 +
1.5210 + * Add many private definition of copy constructor and assignment operators
1.5211 + to avoid very anoying warnings under some compilers (MSVC 7.0 7.1).
1.5212 +
1.5213 + * build/Makefiles/gmake/cygmin/sys.mak, test/unit/string_test.cpp:
1.5214 + Mingw fixes thanks Shura Zam.
1.5215 +
1.5216 +2005-02-19 Francois Dumont <dums@stlport...>
1.5217 +
1.5218 + * stlport/stdexcept: Removal of a MSVC 7.0 and 7.1 workaround. Those compilers
1.5219 + have a bug resulting in the generation of very long compiler message as
1.5220 + soon as a simple compiler warning or error occur. Those messages are
1.5221 + template instanciation context of previous disabled warning. Warning message
1.5222 + are correctly disable but template instanciation context is kept until
1.5223 + an enable warning or an error happen. There is nothing to do against that
1.5224 + at STLport level except fixing or disabling warnings for unit tests build.
1.5225 +
1.5226 + * build/Makefiles/nmake/vc70.mak: Add missing file.
1.5227 +
1.5228 +2005-02-18 Francois Dumont <dums@stlport...>
1.5229 +
1.5230 + * stlport/stl/_hashtable.h, _unordered_set.h, _unordered_map.h: Code review
1.5231 + based on the 12 April 2004 Technical Report document. Add missing hash policy
1.5232 + and bucket_size methods. Fix of the rehash method behavior. erase method
1.5233 + bug fix.
1.5234 +
1.5235 +2005-02-14 Francois Dumont <dums@stlport...>
1.5236 +
1.5237 + * stlport/string, /stl/_string.h: Modification of the include schema.
1.5238 + _string_io.h no more included from _string.h to avoid circular headers
1.5239 + dependencies as basic_string class is used in iostream implementation.
1.5240 + This headers is now included from the Standard string header. Useless
1.5241 + cctype include removed from _string.h. _string_hash.h also moved from
1.5242 + _string.h to string for consistency.
1.5243 +
1.5244 + * stlport/stl/_complex.c: Add of the _string_io.h header include that
1.5245 + was missing after string include schema modification.
1.5246 +
1.5247 + * stlport/stl/_string_base.h, _string.h: basic_string move traits STLport
1.5248 + struct definition do not depends anymore on the _String_base struct to
1.5249 + make definition more clear.
1.5250 +
1.5251 +2005-02-08 Francois Dumont <dums@stlport...>
1.5252 +
1.5253 + * stlport/stl/_config.h: Fix endianness for AMD 64 thanks Karol
1.5254 + Szkudlarek.
1.5255 +
1.5256 +2005-02-07 Boris Fomitchev <boris@stlport...>
1.5257 +
1.5258 + * stlport/stl/_config_compat_post.h, stlport/stl/_relops_hash_cont.h
1.5259 + stlport/stl/_list.h, stlport/stl/_slist.h, stlport/stl/_map.h,
1.5260 + stlport/stl/_set.h: 4.6 compatibility fix
1.5261 +
1.5262 +2005-02-04 Francois Dumont <dums@stlport...>
1.5263 +
1.5264 + * stlport/stl/_alloc.c: Fix of the _S_refill method in the lock free
1.5265 + implementation thanks Felix Wyss.
1.5266 +
1.5267 + * stlport/stl/_hashtable.h: _M_get_elem_ite set as static when possible
1.5268 + to fix a MSVC6 problem thanks Michael Fink report.
1.5269 +
1.5270 + * stlport/new, config/stl_evc.h: EVC patch for MFC support from Michael Fink.
1.5271 +
1.5272 + * build/Makefiles/nmake/evc3.mak, evc4.mak: Warning level raised to 4
1.5273 + by Michael Fink.
1.5274 +
1.5275 + * doc/README.evc3, README.evc4 doc update from Michael Fink.
1.5276 +
1.5277 + * src/vc_warning_disable.h: Add warning 4201 and 4214 disabling for EVC.
1.5278 +
1.5279 +2005-01-31 Francois Dumont <dums@stlport...>
1.5280 +
1.5281 + * Mac OS X portage thanks Zdenek Nemec.
1.5282 +
1.5283 + * stlport/stl/_hashtable.c: Fix of the _M_copy_from method thanks Jay.
1.5284 +
1.5285 + * stlport/stl/_vector.c: Fix of the _M_insert_fill_aux method thanks
1.5286 + Mike Roberts report.
1.5287 +
1.5288 + * test/unit/unordered_test.cpp: Add of a test for the hashtable fix above.
1.5289 +
1.5290 + * src/vc_warning_disable.h: Add of the missing 4503 warning disable for MSVC6.
1.5291 +
1.5292 + * test/unit/nmake-vc-common.mak: Add of the _STLP_DEBUG_UNINITIALIZED macro
1.5293 + definition for the debug and stldebug rules.
1.5294 +
1.5295 +2005-01-28 Francois Dumont <dums@stlport...>
1.5296 +
1.5297 + * Application of a patch from Michael Fink for EVC MIPS.
1.5298 +
1.5299 +2005-01-27 Francois Dumont <dums@stlport...>
1.5300 +
1.5301 + * stlport/deque, list, map, set, slist, stack, valarray: _STLP_WHOLE_VENDOR_STD
1.5302 + replaced by the official _STLP_IMPORT_VENDOR_STD macro.
1.5303 +
1.5304 + * stlport/stl/_algobase.h: Add find algo overload for char* and const char*
1.5305 + forwarding the call to the memchr C function thanks Jim Xochellis report.
1.5306 +
1.5307 + * test/unit/find_test.cpp: Add check for the new find overload.
1.5308 +
1.5309 + * test/unit/cmath_test.cpp: Fix of the atan and atan2 tests to avoid precision
1.5310 + problems.
1.5311 +
1.5312 + * test/unit/ptrspec_test.cpp: Add check for containers of function pointers and
1.5313 + member function pointers.
1.5314 +
1.5315 + * test/unit/set_test.cpp: Add check for equal_range method when the search value
1.5316 + is not in the set.
1.5317 +
1.5318 + * stlport/stl/_tree.h: Fix equal_range implementation thanks Grisha Spivak report.
1.5319 +
1.5320 + * stlport/stl/_vector.h, _vector.c: Fix of the movable types implementation thanks
1.5321 + Mike Roberts report.
1.5322 +
1.5323 + * test/unit/mvctor_test.cpp: Add of a test case for vector class.
1.5324 +
1.5325 +2005-01-25 Francois Dumont <dums@stlport...>
1.5326 +
1.5327 + * stlport/stl_user_config.h: Pointer specialization feature is now off
1.5328 + by default as it do not handle pointer to function and pointer to member
1.5329 + methods correctly yet. Feature documentation has been updated to report
1.5330 + this limitation.
1.5331 +
1.5332 + * src/ctype.h: removal of the '>= 0' check for wchar_t variables reported
1.5333 + as a always true condition by gcc.
1.5334 +
1.5335 + * stlport/stl/_hashtable.c: Removal of an unused variable in hashtable::resize
1.5336 + method thanks Jeff Grills report.
1.5337 +
1.5338 + * stlport/stl/_algo.c: Fix of the search_n algo thanks Jim Xochellis report.
1.5339 +
1.5340 +2005-01-24 Francois Dumont <dums@stlport...>
1.5341 +
1.5342 + * Some more warning fixes. Mostly add of missing char_traits::to_char_type calls.
1.5343 +
1.5344 +2005-01-22 Francois Dumont <dums@stlport...>
1.5345 +
1.5346 + * stlport/stl/_string_workaround.h, debug/_string_workaround.h: Fix of the
1.5347 + call broadcast to the base class. Non debug workaround always call non debug
1.5348 + base class methods, debug workaround always calls debug base class methods.
1.5349 +
1.5350 + * Many fixes to avoid warnings using MSVC in level 4 warnings:
1.5351 + - while (true) replaced by for(;;) which do not produce the conditional
1.5352 + expression is constant warning
1.5353 + - removal of unused parameters
1.5354 + - modification of some template function signature to keep the character type
1.5355 + information and avoid the wchar_t to char type warning which was surely an
1.5356 + important warning for the wide streams support.
1.5357 +
1.5358 + * stlport/stl/_monetary.c: removal of the call to the ctype::widen method
1.5359 + on the result of the moneypunct<_CharT, false>::decimal_point call as this
1.5360 + method is already supposed to return a wide character.
1.5361 +
1.5362 +2005-01-19 Francois Dumont <dums@stlport...>
1.5363 +
1.5364 + * src/msvc_warning_disablers.h: unused file, removed.
1.5365 +
1.5366 + * test/unit/logic_test.cpp: Fix of the tests to avoid warning regarding int
1.5367 + to bool cast.
1.5368 +
1.5369 + * stlport/stl/pointers/_deque.h, _list.h: Fix of the exported class under MSVC
1.5370 + compiler thanks Timothy Tenebekov report.
1.5371 +
1.5372 + * build/test/unit/nmake-vc-common.mak, nmake-vc6.mak, nmake-vc70.mak: Modification
1.5373 + of the make files to avoid useless inclusion of vc_warning_disable.h file for
1.5374 + MSVC.Net 2003 and MSVC 8 compilers.
1.5375 +
1.5376 + * src/locale_impl.h: Export of the locale facets container for MSVC compilers.
1.5377 +
1.5378 + * src/vc_warning_disable.h: Modification to limit the number of disables depending
1.5379 + on the compiler.
1.5380 +
1.5381 +2005-01-18 Francois Dumont <dums@stlport...>
1.5382 +
1.5383 + * stlport/stl/_algo.c: Modification of the stable_partition implementation
1.5384 + to limit the size of the allocated temporary buffer of the begin and end
1.5385 + of the range are already at the right place thanks a Stephen Howe idear.
1.5386 +
1.5387 + * build/test/unit/nmake-vc-common.mak, nmake-evc-common.mak: Removal of the
1.5388 + _STLP_USE_AUTO_LINK macro which is now the default.
1.5389 +
1.5390 +2005-01-14 Francois Dumont <dums@stlport...>
1.5391 +
1.5392 + * stlport/stl/_windows.h, char_traits.h, src/c_locale_win32/c_locale_win32.c:
1.5393 + Patch from Patrick Bergeron to support 64 bits compilation under Windows using
1.5394 + VC8.
1.5395 +
1.5396 + * stlport/stl/boost_type_traits.h: boost support check and fixing.
1.5397 +
1.5398 +2005-01-13 Francois Dumont <dums@stlport...>
1.5399 +
1.5400 + * stlport/stl/_algobase.h: Improvment of the iter_swap algo to use the swap
1.5401 + method when possible thanks David Abrahams and Aleksey Gurtovoy great book
1.5402 + introduction.
1.5403 +
1.5404 + * stlport/stl/_alloc.h: Deactivation of the lock free allocator implementation
1.5405 + not mature enough to be release yet.
1.5406 +
1.5407 + * stlport/stl/_uninitialized.h: Fix of non Standard algo signature:
1.5408 + - uninitialized_fill_n
1.5409 +
1.5410 + * stlport/stl/_iterator_base.h: Fix of non Standard algo signature:
1.5411 + - distance
1.5412 +
1.5413 + * stlport/stl/_algobase.h: Fix of non Standard algo signature:
1.5414 + - fill_n
1.5415 +
1.5416 + * stlport/stl/_algo.h: Fix of non Standard algo signature:
1.5417 + - rotate
1.5418 + - generate_n
1.5419 +
1.5420 + * stlport/stl/_string.h, debug/_string.h: Fix of the non Standard basic_string
1.5421 + default constructor.
1.5422 +
1.5423 + * stlport/stl/_algobase.h, _function.h, _iterator_base.h, _move_construct_fwk.h,
1.5424 + _ptr_specialize.h, char_traits.h, debug/_debug.h: Fix of the macro name check
1.5425 + before including type_traits.h.
1.5426 +
1.5427 +2005-01-08 Francois Dumont <dums@stlport...>
1.5428 +
1.5429 + * stlport/stl/_codecvt.h: Add of a missing export declaration for the wchar_t
1.5430 + specialization of the codecvt_byname class.
1.5431 +
1.5432 + * src/stlport.rc: improvement of the information included in the ressource file.
1.5433 + Especially add of the compiler options.
1.5434 +
1.5435 + * stlport/stl/_stlport_version.h: Creation of a special file containing all the
1.5436 + version informations; very useful to avoid problem with the ressource compiler.
1.5437 +
1.5438 + * stlport/stl/_config.h: Removal of the unused _STLP_USING_VENDOR_STD macro.
1.5439 + Inclusion of the _stlport_version.h file. Update of the comment explaining why
1.5440 + _STLP_USE_DECLSPEC is undefined when user do not use iostreams.
1.5441 +
1.5442 + * build/Makefiles/nmake/vc-common.mak, evc-common.mak, gmake/gcc.mak: Improvement
1.5443 + of the ressource compiler options.
1.5444 +
1.5445 +2005-01-06 Francois Dumont <dums@stlport...>
1.5446 +
1.5447 + * stlport/config/stl_msvc.h: Move the _STLP_DONT_RETURN_VOID configuration
1.5448 + macro to the specific MSVC6 compiler as it is the only one that has ever
1.5449 + reveal this bug.
1.5450 +
1.5451 +2005-01-05 Francois Dumont <dums@stlport...>
1.5452 +
1.5453 + * stlport/stl/_string_sum_methods.h: Fixes reported by gcc.
1.5454 +
1.5455 +2005-01-04 Francois Dumont <dums@stlport...>
1.5456 +
1.5457 + * doc/README.evc3: patched by Michael Fink
1.5458 +
1.5459 + * build/lib/configure.bat: warning fix thanks Michael Fink.
1.5460 +
1.5461 + * build/test/unit/nmake-src-prefix.mak: fixed thanks Michael Fink.
1.5462 +
1.5463 +2005-01-02 Francois Dumont <dums@stlport...>
1.5464 +
1.5465 + * stlport/stl/_string_sum.h, _string_operators.h: Fix of an assignment bug
1.5466 + in the append method taking a C string wrapper. Modification of the __bstr_sum
1.5467 + get_allocator method to avoid a useless allocation.
1.5468 +
1.5469 + * build/lib/nmake-src-prefix.mak: Add of missing rules for .c and .rc file type.
1.5470 +
1.5471 +2004-12-29 Francois Dumont <dums@stlport...>
1.5472 +
1.5473 + * stlport/stl/_hashtable.c: Fix missing allocator argument in new slist
1.5474 + construction and bad number of buckets thanks See Wong report.
1.5475 +
1.5476 + * test/unit/unordered_test.cpp: Add of a test to report the previous
1.5477 + problem.
1.5478 +
1.5479 + * build/Makefiles/nmake/vc-common.mak, evc-common.mak: Generalization of the
1.5480 + /DMACRO compiler command rather than /D "MACRO".
1.5481 +
1.5482 + * test/unit/string_test.cpp: Creation of a new test case for string template
1.5483 + expression.
1.5484 +
1.5485 + * stlport/stl/_string_sum.h, _string_sum_methods.h: Fixing of many bugs in the
1.5486 + string template expressions implementation.
1.5487 +
1.5488 + * stlport/stl/_tree.c: Add of a comment in the _M_increment method explaining
1.5489 + a surprising checks thanks Ulrich Eckhardt.
1.5490 +
1.5491 +2004-12-24 Petr Ovtchenkov <ptr@island...>
1.5492 +
1.5493 + * build/Makefiles: makesystem moved here from src/Makefiles
1.5494 +
1.5495 + * build/lib: makefiles moved here from src catalog.
1.5496 +
1.5497 + * build/test/unit: makefiles moved here from test/unit catalog.
1.5498 +
1.5499 + * INSTALL: updated.
1.5500 +
1.5501 + * README: updated.
1.5502 +
1.5503 +2004-12-23 Francois Dumont <dums@stlport...>
1.5504 +
1.5505 + * stlport/stl/_vector.h, _vector.c: Fix of the code for movable types
1.5506 + in call to push_back or insert of a value in case of auto referencing
1.5507 + thanks Benjamin Redelings.
1.5508 +
1.5509 + * stlport/stl/_hashtable.c: Fix of the _M_copy method thanks Timothy
1.5510 + Tenebekov.
1.5511 +
1.5512 +2004-12-22 Francois Dumont <dums@stlport...>
1.5513 +
1.5514 + * stlport/stl/debug/_string.h: Fix of missing scopes thanks arabesc and
1.5515 + Benjamin Redelings
1.5516 +
1.5517 + *stlport/config/stl_gcc.h: include schema fix for gcc >= 4.0.0 thanks
1.5518 + Oliver Stoeneberg
1.5519 +
1.5520 +2004-12-21 Francois Dumont <dums@stlport...>
1.5521 +
1.5522 + * stlport/stl/_hashtable.c: Fix copy method thanks KL report.
1.5523 +
1.5524 + * stlport/stl/_vector.h, _deque.h: Fix implementation for vector of
1.5525 + movable objects when calling erase of a null range thanks to arabesc report.
1.5526 +
1.5527 + * stlport/stl/_string.h, _string_workaround.h, debug/_string.h,
1.5528 + debug/_string_workaround.h: Implementation of the MSVC6 template method bug
1.5529 + workaround exclusively for MSVC6 and not anymore for all compilers.
1.5530 +
1.5531 +2004-12-21 Petr Ovtchenkov <ptr@island...>
1.5532 +
1.5533 + * src: untested (lost support) .mak and installation files moved into
1.5534 + initial_mak catalog.
1.5535 +
1.5536 + * explore, src: explore catalog moved into src catalog. Makefiles from
1.5537 + explore catalog become main makesystem of STLport.
1.5538 +
1.5539 +2004-12-20 Francois Dumont <dums@stlport...>
1.5540 +
1.5541 + * stlport/stl/_hashtable.h: Fix of the const begin and end methods of the
1.5542 + new implementation thanks Timothy Tenebekov report.
1.5543 +
1.5544 +2004-12-17 Francois Dumont <dums@stlport...>
1.5545 +
1.5546 + * stlport/cmath, cstdlib, stl/_cmath.h, config/stl_msvc.h: Configuration
1.5547 + fixes for .Net 2002.
1.5548 +
1.5549 +2004-12-17 Boris Fomitchev <boris@stlport...>
1.5550 +
1.5551 + * char_traits.h: fixed _STLP_NO_WCHAR_T case
1.5552 +
1.5553 + * src/common_macros.mak: deleted locale.cpp
1.5554 +
1.5555 +2004-12-17 Francois Dumont <dums@stlport...>
1.5556 +
1.5557 + * src/explore/Makefiles/nmake/app/rules-install-a.mak, rules-install-so.mak
1.5558 + lib/rules-install-so.mak: Creation of the install-shared and install-static
1.5559 + from Michael Fink.
1.5560 +
1.5561 +2004-12-16 Francois Dumont <dums@stlport...>
1.5562 +
1.5563 + * stlport/stl/debug/_debug.h, _debug.c: Creation of functions to change iterators
1.5564 + list owner.
1.5565 +
1.5566 + * stlport/stl/debug/_list.h, _slist.h: Modification of the iterator owners in the
1.5567 + splice, splice_after and merge method which do not invalidate iterators but only
1.5568 + move them from a [s]list to an other.
1.5569 +
1.5570 + * stlport/stl/_relops_hash_cont.h: removal of the == operator on hashed containers
1.5571 + This operator is just impossible, or at least very complicated, to implement
1.5572 + for this container which do not require any ordering operation on the type used
1.5573 + to instanciate the container.
1.5574 +
1.5575 + * test/unit/hash_test.cpp: Addition of a commented test showing why the == operator
1.5576 + is invalid on hashed constainers.
1.5577 +
1.5578 + * stlport/stl/_hashtable.h: Modification of the hashtable implementation based
1.5579 + on a slist and a vector. Compared to the previous one the advantages are:
1.5580 + - lighter hashtable::iterator
1.5581 + - iterator increment operation do no require call to the hash function.
1.5582 + - no more special implementation for the debug mode, once validated debug/_hashtable.h
1.5583 + will be removed.
1.5584 + The drawback is a small overhead on the insert/erase methods.
1.5585 +
1.5586 + * stlport/unordered_set, unordered_map: Introduction of the almost Standard hash containers.
1.5587 + The major difference with hash_set or hash_map containers from SGI is the load factor
1.5588 + that gives the user the ability to change the container ratio of the number of elements per
1.5589 + bucket.
1.5590 +
1.5591 +2004-12-13 Francois Dumont <dums@stlport...>
1.5592 +
1.5593 + * stlport/stdio.h: patch from Michael Fink to avoid warning on the EVC platform.
1.5594 +
1.5595 + * doc/evc_workaround.txt: Documentation file from Ulrich Eckhardt about the EVC
1.5596 + workaround to avoid annoying warnings.
1.5597 +
1.5598 + * stlport/typeinfo: Patch from Ulrich Eckhardt to fix missing type_info struct
1.5599 + under MSVC6 and EVC and also identation.
1.5600 +
1.5601 +2004-12-10 Francois Dumont <dums@stlport...>
1.5602 +
1.5603 + * stlport/stl/_collate.h, _locale.h: fix of the __locale_do_operator_call internal
1.5604 + function to make traits and allocator also template parameters.
1.5605 +
1.5606 + * stlport/stl/_locale.h, _collate.h, stlport/config/stl_msvc.h, src/locale.cpp,
1.5607 + src/locale_impl.h: restoration of the MSVC6 workaround for the locale class to
1.5608 + correctly handle the member template methods.
1.5609 +
1.5610 +2004-12-09 Francois Dumont <dums@stlport...>
1.5611 +
1.5612 + * stlport/stl/_messages_facets.h: fixed messages_base::catalog from long typedef
1.5613 + to int thanks Ulrich Eckhardt report.
1.5614 +
1.5615 + * stlport/stl_user_config.h, config/stl_msvc.h: addition of the _STLP_VERBOSE_AUTO_LINK
1.5616 + config macro to make the automatic linking feature more verbose thanks Ulrich Eckhardt
1.5617 + patch.
1.5618 +
1.5619 + * stlport/exception: Add check of the _STLP_HAS_SPECIFIC_PROLOG_EPILOG macro before
1.5620 + including _msvc_warning_off.h to avoid bad resulting warning status when the _epilog.h
1.5621 + header is not included thanks Gail (baker88) report.
1.5622 +
1.5623 + * stlport/cassert, cerrno, csignal, ctype.h, cwctype, stdarg.h, stdlib.h, string.h,
1.5624 + config/stl_evc.h: Patch from Michael Fink to fix compilation problem using ressource
1.5625 + compiler for evc3 and evc4 and problems with cerrno and cassert inclusions reported
1.5626 + by Ulrich Eckhardt.
1.5627 +
1.5628 +2004-12-01 Petr Ovtchenkov <ptr@island...>
1.5629 +
1.5630 + * stlport/stdexcept: removes some warnings regarding the exception class being derived
1.5631 + from a non-dll interface class on evc4. Michael Fink contribution.
1.5632 +
1.5633 + * stlport/stl/_cmath.h: push/pop warning level for VCs. Michael Fink contribution.
1.5634 +
1.5635 + * src/_stdio_file.h: Evc4 uses an ugly hack to implement file IO using a FILECE structure
1.5636 + representing the internal FILE structure. For evc3 Michael Fink implemented a much simpler
1.5637 + way that also works for evc4.
1.5638 +
1.5639 + * stlport/config/stl_evc.h, stl_msvc.h, stlcomp.h: separate config stuff for stl_evc.h
1.5640 + and stl_msvc.h. Now all Windows CE specific defines are in stl_evc.h only.
1.5641 + Michael Fink contribution.
1.5642 +
1.5643 + * stlport/stl/_codecvt.h, _ctype.h, _messages_facets.h, _monetary.h: add friend class
1.5644 + _Locale_impl.
1.5645 +
1.5646 + * stlport/stl/_num_get.h, _num_put.h, _numpunct.h, _time_facets.h: ditto.
1.5647 +
1.5648 +2004-11-30 Petr Ovtchenkov <ptr@island...>
1.5649 +
1.5650 + * src/explore/configure.bat: added quotes. Thanks Ulrich Eckhardt and Michael Fink.
1.5651 +
1.5652 + * stlport/stl/_locale.h, src/locale_impl.h, src/locale_impl.cpp: added _STLP_DECLSPEC
1.5653 + and _STLP_CALL for some functions. Thanks Ulrich Eckhardt.
1.5654 +
1.5655 + * stlport/stl/_collate.h, _numpunct.h, _monetary.h, _codecvt.h, _time_facets.h:
1.5656 + _Locale_imp made friend without relation to _STLP_LEAKS_PEDANTIC. Thanks Ulrich Eckhardt.
1.5657 +
1.5658 + * stlport/stl/_locale.h: remove body of protected constructor to avoid warnings.
1.5659 + Thanks Kidman and Ulrich Eckhardt.
1.5660 +
1.5661 + * src/locale_impl.cpp: use simple resize of facets_vec; reserve space for facets_vec to be
1.5662 + sure that allocation don't throw exception during vector resize in insert_*_facets functions.
1.5663 + Thanks Ulrich Eckhardt.
1.5664 +
1.5665 +2004-11-29 Petr Ovtchenkov <ptr@island...>
1.5666 +
1.5667 + * stlport/stl/_cmath.h: patch from Michael Fink applied.
1.5668 +
1.5669 + * stlport/stl/_locale.h: remove enclose class spec to avoid VC confuse.
1.5670 + Thanks Ulrich Eckhardt.
1.5671 +
1.5672 + * src/locale_impl.cpp, src/locale_impl.h: remove bogus _STLP_CALL decls.
1.5673 + Thanks Ulrich Eckhardt.
1.5674 +
1.5675 +2004-11-27 Petr Ovtchenkov <ptr@island...>
1.5676 +
1.5677 + * stlport/stl/_threads.h: direct access to _M_ref_count isn't MT-safe;
1.5678 + counter value returned by _M_incr and _M_decr methods only.
1.5679 +
1.5680 + * stlport/stl/_rope.h, stlport/stl/_rope.c: adaptation to changes above;
1.5681 + removed __GC macro dependent code, that was never defined in present
1.5682 + sources.
1.5683 +
1.5684 + * src/locale.cpp, locale_impl.cpp, locale_impl.h: general revision of locale
1.5685 + implementation; code clean, corrected, concepts fixed, errors fixed,
1.5686 + new bugs added.
1.5687 +
1.5688 + * src/ctype.cpp, facets_byname.cpp, locale_catalog.cpp, messages.cpp, monetary.cpp:
1.5689 + ditto.
1.5690 +
1.5691 + * stlport/stl/_codecvt.h, _collate.h, _ctype.h, _locale.h, _messages_facets.h:
1.5692 + ditto.
1.5693 +
1.5694 + * _monetary.h, _num_get.h, _num_put.h, _numpunct.h, _time_facets.h: ditto.
1.5695 +
1.5696 + * src/locale_nonclassic.h: removed due to code revision.
1.5697 +
1.5698 + * src/explore/Makefile.inc: locale.cpp is directly included into locale_impl.cpp.
1.5699 +
1.5700 + * src/explore/gcc.mak, test/unit/gcc.mak: use _STLP_LEAKS_PEDANTIC before release
1.5701 + by default.
1.5702 +
1.5703 +2004-11-24 Francois Dumont <dums@stlport...>
1.5704 +
1.5705 + * stlport/stl/_cmath.h: Fix of the abs definition for the EVC platform
1.5706 + thanks Michael Fink.
1.5707 +
1.5708 + * stlport/stl/_cmath.h: Fix of the Internal Compiler Error from MSVC6
1.5709 + when defining math functions in the STLport namespace thanks Ulrich
1.5710 + Eckhardt and I.
1.5711 +
1.5712 + * stlport/stl/debug: Creation of a debug iterator traits used to make
1.5713 + an additional test when checking iterator deferencing status, on slist
1.5714 + before_begin iterators are not dereferenceable but were not detected
1.5715 + as so.
1.5716 +
1.5717 + * stlport/math.h, stdexcept: patches from Michael Fink to avoid warning
1.5718 + on the EVC platform.
1.5719 +
1.5720 +2004-11-22 Francois Dumont <dums@stlport...>
1.5721 +
1.5722 + * src/explore/Makefiles/nmake/evc3.mak, evc4.mak: removal of the useless
1.5723 + /DPLATFORM macro definition thanks Ulrich Eckhardt report and Michael Fink
1.5724 + patch.
1.5725 +
1.5726 + * stlport/cstdlib: extension of the div overload for long input up to MSVC7.1
1.5727 + thanks Michael Fink report.
1.5728 +
1.5729 + * test/unit/string_test.cpp: patch from Michael Fink for EVC which has limited
1.5730 + support of the WaitForMultipleObjects API function.
1.5731 +
1.5732 + * stlport/cstdlib, cwchar, using/cstring: patch from Michael Fink to remove
1.5733 + imports of missing native C functions.
1.5734 +
1.5735 +2004-11-16 Francois Dumont <dums@stlport...>
1.5736 +
1.5737 + * src/explore/configure.bat: Add of the --rtl-static and --rtl-dynamic
1.5738 + configuration options to force use of static or dynamic C runtime thanks
1.5739 + Michael Fink.
1.5740 +
1.5741 + * stlport/config/stl_msvc.h: undef of the _STLP_USING_CROSS_NATIVE_RUNTIME_LIB
1.5742 + for the evc platform that only have the static C runtime version thanks
1.5743 + Michael Fink.
1.5744 +
1.5745 + * stlport/config/stl_bc.h, stl_dmc.h, stl_solaris.h: Removal of all references
1.5746 + to the deprecated _STLP_NO_OWN_IOSTREAMS and _STLP_NO_NEW_IOSTREAMS macros.
1.5747 +
1.5748 + * stlport/cmath, stl/_cmath.h: Modification of the import of the pow function
1.5749 + for MSVC6 that has a bugged overload thanks Michael Fink report.
1.5750 +
1.5751 +2004-11-09 Francois Dumont <dums@stlport...>
1.5752 +
1.5753 + * test/unit/config_test.cpp: Creation of a test case to check correct
1.5754 + platform/compiler configuration.
1.5755 +
1.5756 + * stlport/config/stl_msvc.h: Definition of the _STLP_HAS_NATIVE_FLOAT_ABS
1.5757 + now start with MSVC6.
1.5758 +
1.5759 + * stlport/cstdlib, stl/_cmath.h: Addition of some missing math function
1.5760 + overloads for MSVC6.
1.5761 +
1.5762 +2004-11-05 Francois Dumont <dums@stlport...>
1.5763 +
1.5764 + * stlport/config/stl_msvc.h: Definition of the _STLP_HAS_NATIVE_FLOAT_ABS
1.5765 + starting with MSVC .Net 2002 thanks Kevin Bluck report.
1.5766 +
1.5767 + * test/unit/cmath_test.cpp: Creation of a test case to check correct import
1.5768 + and extensions of C functions.
1.5769 +
1.5770 +2004-11-04 Petr Ovtchenkov <ptr@island...>
1.5771 +
1.5772 + * src/explore/Makefiles: added templates CC.mak for SunPro's CC compilers;
1.5773 + ones should be checked and fixed with real compiler.
1.5774 +
1.5775 +2004-11-04 Francois Dumont <dums@stlport...>
1.5776 +
1.5777 + * stlport/stl/_function.h, _queue.h, _stack.h, _map.h, _iterator.h:
1.5778 + restoration of the Standard names of the protected datas.
1.5779 +
1.5780 + * stlport/stl/_alloc.h, _alloc.c: implementation of a lock free version
1.5781 + of the default STLport node_allocator. Supported by the Win32 platform
1.5782 + for the moment.
1.5783 +
1.5784 + * src/ios.cpp, locale.cpp, locale_impl.cpp: use of atomic operations
1.5785 + under Win32 platform rather than using synchronisation primitives.
1.5786 +
1.5787 + * stlport/stl/_tree.h, _map.h, _set.h: creation of the erase_unique and
1.5788 + equal_range_unique methods to use the unicity information of the map and
1.5789 + set containers in binary tree searches.
1.5790 +
1.5791 + * stlport/stl/_string.h: Add _STLP_USE_NO_IOSTREAMS check beforing deciding
1.5792 + not to include _string.c thanks KL
1.5793 +
1.5794 +2004-11-02 Francois Dumont <dums@stlport...>
1.5795 +
1.5796 + * stlport/stl/pointers/_deque.h: Fix for the problem of the deque<void*>
1.5797 + instanciation thanks Alex Cosealin report
1.5798 +
1.5799 + * test/unit/ptrspec_test.cpp: Add of a test for the previous problem.
1.5800 +
1.5801 +2004-10-31 Francois Dumont <dums@stlport...>
1.5802 +
1.5803 + * stlport/stl/_rope.h: Fix of the apply_to_pieces qualification thanks Leeya.
1.5804 +
1.5805 + * test/unit/rope_test.cpp: New test case for the previous fix.
1.5806 +
1.5807 +2004-10-30 Francois Dumont <dums@stlport...>
1.5808 +
1.5809 + * src/explore/Makefiles/nmake/vc-common.mak: introductions of the LDFLAGS_A_REL
1.5810 + macro to fix config problem under VC71 and VC8 beta.
1.5811 +
1.5812 +2004-10-29 Petr Ovtchenkov <ptr@island...>
1.5813 +
1.5814 + * src/explore/Makefiles/gmake/app/gcc.mak: use -fPIC for gcc 2.95.x when build
1.5815 + application---this is a workaround for bug with running code in static constructors.
1.5816 +
1.5817 + * stlport/config/stl_gcc.h, stlport/stl/_config.h: force usage of mutex instead
1.5818 + of spinlock for gcc 2.95.x, due to problems with initialization of statics.
1.5819 + Initialization of mutex has variant with structure filling, while for spinlock
1.5820 + initialization function call required.
1.5821 +
1.5822 + * test/unit/locale_test.cpp: avoid static object for gcc 2.95.x, due to problems
1.5823 + with initialization of statics.
1.5824 +
1.5825 +2004-10-27 Francois Dumont <dums@stlport...>
1.5826 +
1.5827 + * stlport/stl/_config.h, _fstream.h, _ios.h, _istream.h, _monetary.h, _num_get.h,
1.5828 + _num_put.h, _ostream.h, _sstream.h, _streambuf.h, _string.h, _time_facets.h:
1.5829 + Restoration of the _STLP_NO_CUSTOM_IO feature removed after cleanup reported
1.5830 + in 2004-09-28 post from Petr.
1.5831 +
1.5832 + * stlport/stl/stl_user_config.h, _config.h, stl_msvc.h: reactivation of the
1.5833 + auto link feature for MSVC but only if activated by the client. Moreover the
1.5834 + new implementation of this feature is more maintenable, stl_msvc.h won't have
1.5835 + to be edited at each STLport release.
1.5836 +
1.5837 + * test/unit/nmake-vc-common.mak, nmake-evc-common.mak: Adoption of the auto link
1.5838 + process.
1.5839 +
1.5840 +2004-10-25 Francois Dumont <dums@stlport...>
1.5841 +
1.5842 + * stlport/stl/_config.h: Introduction of the _STLP_DONT_USE_EXCEPTIONS which
1.5843 + means that the client do not want to use the C++ exception feature. It is
1.5844 + different from the _STLP_NO_EXCEPTIONS which means that the compiler do not
1.5845 + support exceptions at all. The distinction is important for some macros definition.
1.5846 +
1.5847 + * test/unit: Modification of the _STLP_NO_EXCEPTIONS test to the more general
1.5848 + _STLP_USE_EXCEPTION macro.
1.5849 +
1.5850 + * stlport/stl/_ios_base.h, src/ios.cpp: rollback of the modifications of the
1.5851 + 2004-10-24.
1.5852 +
1.5853 + * stlport/config/stl_msvc.h, stl_gcc.h: Those 2 compilers have a exception
1.5854 + support switch, when exceptions are unactivated they now define
1.5855 + _STLP_DONT_USE_EXCEPTIONS rather than _STLP_NO_EXCEPTIONS.
1.5856 +
1.5857 +2004-10-25 Petr Ovtchenkov <ptr@island...>
1.5858 +
1.5859 + * stlport/stl/_sstream.c: cur direction missed in seekoff. Thanks David Obermann.
1.5860 +
1.5861 + * sstream_test.cpp: test for problem above.
1.5862 +
1.5863 +2004-10-24 Francois Dumont <dums@stlport...>
1.5864 +
1.5865 + * stlport/stl/_ios_base.h, src/ios.cpp: definition of the ios_base::failure
1.5866 + nested class only when exception support is activated.
1.5867 +
1.5868 + * stlport/stl/_deque.h, _deque.c: Modification of the deque implementation
1.5869 + to use the internal move framework.
1.5870 +
1.5871 + * test/unit/mvctor_test.cpp: New test case for the use of the move
1.5872 + framework within the deque container.
1.5873 +
1.5874 +2004-10-21 Francois Dumont <dums@stlport...>
1.5875 +
1.5876 + * stlport/stl/_iostring_stream.h: Simplification of the __stl_alloc_rebind
1.5877 + overload to make it less ambiguous for the compilers using it.
1.5878 +
1.5879 +2004-10-18 Francois Dumont <dums@stlport...>
1.5880 +
1.5881 + * stlport/stl/_vector.h, _vector.c: Add of checks to know if a reference
1.5882 + is in *this before making a systematical copy of it.
1.5883 +
1.5884 +2004-10-18 Petr Ovtchenkov <ptr@island...>
1.5885 +
1.5886 + * stlport/stl/type_manips.h: replace template <> by macro.
1.5887 +
1.5888 + * stlport/stl/debug/_debug.h, _debug.c: __check_if_not_owner should return true
1.5889 + in case of incompatible types and do check different from __check_if_owner;
1.5890 + added message for check __check_if_not_owner.
1.5891 +
1.5892 + * test/unit/mvctor_test.cpp, test/unit/ptrspec_test.cpp: fix tests to satisfy
1.5893 + changes related to 23.1.1 Table 67 in stlport/stl/debug/_vector.h, _deque.h---see
1.5894 + record 2004-10-14 below.
1.5895 +
1.5896 +2004-10-14 Francois Dumont <dums@stlport...>
1.5897 +
1.5898 + * stlport/stl/debug/_iterator.h: Move of some _DBG_iter_base and _DBG_iter
1.5899 + methods implementation outside struct definition to fix call on incomplete
1.5900 + type compile error generated by the call to the _Incrementable or _Dereferenceable
1.5901 + functions passing *this as input parameter thanks Alexey Sarytchev
1.5902 +
1.5903 + * test/unit/sstream_test.cpp, fstream_test.cpp: Fix of the tests on streambuf
1.5904 + throwing exception for platform with no exception support.
1.5905 +
1.5906 + * stl/_string.h: Add of the missing compare methods on the basic_string
1.5907 + implementation used by compilers supporting template methods thanks Patrick
1.5908 + Bennett report.
1.5909 +
1.5910 + * stlport/stl/debug/_vector.h, _deque.h: Add check on the insert range method,
1.5911 + the inserted can not be pointing to the this instance where the insertion occur.
1.5912 +
1.5913 +2004-10-13 Petr Ovtchenkov <ptr@island...>
1.5914 +
1.5915 + * src/explore/Makefiles/gmake: a bit correction of compiled and installed names
1.5916 + of executables on *nix systems, see record 2004-09-29 by Francois.
1.5917 +
1.5918 +2004-10-12 Francois Dumont <dums@stlport...>
1.5919 +
1.5920 + * stlport/stl/_config.h: typo fix thanks KL
1.5921 +
1.5922 + * stlport/stl/_move_construct_fwk.h, _set.h, _map.h, _hash_set.h, _hash_map.h:
1.5923 + Extra semicolons removal thanks Wlodek Szafran reports.
1.5924 +
1.5925 +2004-10-11 Petr Ovtchenkov <ptr@island...>
1.5926 +
1.5927 + * stlport/stl/_rope.h: add typename.
1.5928 +
1.5929 +2004-10-08 Francois Dumont <dums@stlport...>
1.5930 +
1.5931 + * stlport/stl/_deque.h, _hashtable.h, _tree.h, _bvector.h: Specialization of the
1.5932 + __type_traits struct for the iterator types.
1.5933 +
1.5934 + * stlport/stl/_uninitialized.h, _vector.h: Relax of the rules to perform some
1.5935 + optimizations, no more POD check, rather use of the trivial copy constructor,
1.5936 + trivial assignment operator informations.
1.5937 +
1.5938 + * stlport/stl/_config.h, _epilog.h: Adoption of stlport as the official STLport
1.5939 + namespace when users cannot use the std namespace.
1.5940 +
1.5941 +2004-10-07 Francois Dumont <dums@stlport...>
1.5942 +
1.5943 + * stlport/stl/_list.h: Specialization of the __type_traits struct for list iterators.
1.5944 + Move of the == and != operators from the base iterator class to the iterator class
1.5945 + to make iterator of different list instanciation not comparable anymore.
1.5946 +
1.5947 + * stlport/stl/_slist.h: ditto.
1.5948 +
1.5949 +2004-10-06 Francois Dumont <dums@stlport...>
1.5950 +
1.5951 + * stlport/stl/_rope.h, _rope.c: Code review, use of general STLport tools rather
1.5952 + than specific rope ones. Use of compile time checks rather than runtime.
1.5953 +
1.5954 + * stlport/stl/_bvector.h: fix to make the vector<bool> specialization movable
1.5955 + thanks a Kelly Thompson report.
1.5956 +
1.5957 +2004-10-05 Francois Dumont <dums@stlport...>
1.5958 +
1.5959 + * src/explore/Makefiles/nmake: Application of a patch from Michael Fink to simplify
1.5960 + the evc make system.
1.5961 +
1.5962 + * doc/README.evc4: New version from Zdenek Nemec.
1.5963 +
1.5964 +2004-10-04 Francois Dumont <dums@stlport...>
1.5965 +
1.5966 + * test/unit/type_traits_test.cpp: A new test case to check behavior of
1.5967 + the numerous helper functions from type_traits.h and type_manips.h.
1.5968 +
1.5969 + * stlport/stl/type_traits.h: Fix of some bugs and addition of the __type_traits
1.5970 + specializations of const, volatile and const volatile native types.
1.5971 +
1.5972 + * stlport/stl/type_manips.h: Modification of the __bool2type default value
1.5973 + so that it consider any value as true and only the 0 value false.
1.5974 +
1.5975 + * stlport/config/stl_msvc.h, stlport/stl/_config.h: Modification of the STLport
1.5976 + std equivalent namespace to be sure that the user rebuild correctly the STLport
1.5977 + library when he forces the use of the dynamic or static library.
1.5978 +
1.5979 + * src/explore/Makefiles/nmake/lib/vc-common.mak, app/vc-common.mak: Creation
1.5980 + of the STLP_BUILD_FORCE_STATIC_RUNTIME that forces use of the static version
1.5981 + of the native runtime.
1.5982 +
1.5983 + * test/unit: fix of some tests that failed to compile using the
1.5984 + _STLP_NO_ANACHRONISMS macro.
1.5985 +
1.5986 +2004-09-30 Petr Ovtchenkov <ptr@island...>
1.5987 +
1.5988 + * test/regression: catalog removed---it obsolete and unsupported; use
1.5989 + test/unit tests instead; all tests from test/regression was moved in test/unit,
1.5990 + sometimes in redesigned form.
1.5991 +
1.5992 +2004-09-29 Francois Dumont <dums@stlport...>
1.5993 +
1.5994 + * stlport/stl/_string_io.c: Removal of the native library specific calls of
1.5995 + use_facet, only the STLport standard one is used.
1.5996 +
1.5997 + * stlport/stl/_alloc.h, _alloc.c, src/dll_main.cpp: Implementation of a clean
1.5998 + process for the node_alloc allocator. This clean is active only when
1.5999 + _STLP_LEAKS_PEDANTIC is defined and you are using STLport as a dynamic
1.6000 + library under Win32.
1.6001 +
1.6002 + * src/explore: Updates of several makefiles to conform to the new library
1.6003 + and binary naming convention.
1.6004 +
1.6005 + * src/c_locale_win32/c_locale_win32.c: fix of the message facet name management
1.6006 + that was generating a memory leak.
1.6007 +
1.6008 +2004-09-29 Petr Ovtchenkov <ptr@island...>
1.6009 +
1.6010 + * stlport/stl/char_traits.h: WinCE seems don't declare off_t; thanks Michael Fink.
1.6011 +
1.6012 +2004-09-28 Petr Ovtchenkov <ptr@island...>
1.6013 +
1.6014 + * Repository: iostreams and string wrapper mode removed, due to ones has
1.6015 + a lot of restrictions in usage and frequently lead to hard recognized problems.
1.6016 + Tonns of *_STREAMS macro replaced by _STLP_USE_NO_IOSTREAMS or _STLP_NO_IOSTREAMS
1.6017 + as configuration macro; *NATIVE_STRING macro removed by the same reasons.
1.6018 +
1.6019 +2004-09-27 Petr Ovtchenkov <ptr@island...>
1.6020 +
1.6021 + * test/unit/gcc.mak: fix stlport library name for STLP_DEBUG mode for Solaris,
1.6022 + thanks for separate namespaces in normal and STLP_DEBUG mode, see record
1.6023 + 2004-09-10 below.
1.6024 +
1.6025 +2004-09-24 Francois Dumont <dums@...>
1.6026 +
1.6027 + * stlport/config/stl_gcc.h: Fix of the relative include path used to access the
1.6028 + native gcc headers. Before version 3.4.0 the 0 patch level was not part of the
1.6029 + include path.
1.6030 +
1.6031 + * stlport/stl/type_traits.h, _vector.h, _algobase.h, _construct.h: Removal
1.6032 + of the __action_on_move type traits replaced by a generalization of the
1.6033 + already existing __move_traits.
1.6034 +
1.6035 + * test/unit/mvctor_test.cpp: New test case for the __move_traits feature.
1.6036 +
1.6037 +2004-09-24 Petr Ovtchenkov <ptr@island...>
1.6038 +
1.6039 + * src/explore/Makefiles/gmake/sunos: 'explore' makesystem adopted to work
1.6040 + under Solaris with GNU make.
1.6041 +
1.6042 + * test/unit/gcc.mak: ditto.
1.6043 +
1.6044 + * src/explore/Makefiles/gmake/app/gcc.mak: ditto.
1.6045 +
1.6046 + * src/explore/Makefiles/gmake/lib/gcc.mak: ditto.
1.6047 +
1.6048 + * stlport/cmath: fix some math calls for Solaris.
1.6049 +
1.6050 + * test/unit/list_test.cpp: add illustration for list iterator/reverse_iterator questions.
1.6051 +
1.6052 + * src/explore/Makefiles/gmake/unix/lib.mak: moved from linux/lib.mak, as
1.6053 + common rules for all *nixes.
1.6054 +
1.6055 + * src/explore/Makefiles/gmake/linux/lib.mak: use common for all *nixes rules
1.6056 + in unix/lib.mak.
1.6057 +
1.6058 + * src/explore/Makefiles/gmake/freebsd/lib.mak: ditto.
1.6059 +
1.6060 + * src/explore/Makefiles/gmake/openbsd/lib.mak: ditto.
1.6061 +
1.6062 + * src/explore/Makefiles/gmake/sunos/lib.mak: ditto.
1.6063 +
1.6064 + * src/explore/Makefiles/gmake/unix/lib.mak, test/unit/gcc.mak: changed library name;
1.6065 + libraries now named as libstlport, libstlportg, libstlportstlg for optimized, with
1.6066 + debug symbols, and with debug symbols and _STLP_DEBUG mode libraries respectivly.
1.6067 +
1.6068 +2004-09-21 Francois Dumont <dums@...>
1.6069 +
1.6070 + * stlport/stl/debug: Modification of the __check_range class in the more general
1.6071 + __check_construct. Now it also checks for null pointers in the string interface.
1.6072 +
1.6073 + * src/explore: Adoption of the new library naming convention for all Microsoft
1.6074 + compilers thanks Michael Fink
1.6075 +
1.6076 +2004-09-20 Francois Dumont <dums@...>
1.6077 +
1.6078 + * src/explore/Makefiles/gmake/cygwin, mingw: Build configuration files merges
1.6079 + within a single build system: cygming. Future portage of STLport for compilers
1.6080 + using the GNU tools will be available from both systems. Removal of the vc6 build
1.6081 + under cygwin, for mono-platform compilers we support only one build system.
1.6082 +
1.6083 + * stlport/stl/_vector.h: Modification of the destructor implementation to destroyed
1.6084 + object instances in a reverse order taking advantage of the way elements are
1.6085 + normaly added to this container.
1.6086 +
1.6087 +2004-09-16 Francois Dumont <dums@...>
1.6088 +
1.6089 + * test/unit/cppunit/cppunit_mini.h, cppunit_proxy.h: Adaptation of the CPPUNIT
1.6090 + framework to take care of the exception as failures thanks Zdenek Nemec
1.6091 +
1.6092 + * stlport/config/stl_msvc.h, stl_bc.h, stl_mwerks.h, stlport/stl_user_config.h:
1.6093 + Removal of the non intuitive and difficult to maintain automatic linking feature.
1.6094 +
1.6095 + * Fixing of the locale implementation mecanism. Classic locale implementation is
1.6096 + also managed by a reference counter to be sure when it is possible to release
1.6097 + the associated ressources. Fix of a missing locale impl ref counter decrement
1.6098 + in the template locale constructor taking a facet, it was a possible source of
1.6099 + memory leak . Addition of a static object within locale_impl.cpp in
1.6100 + _STLP_LEAKS_PEDANTIC mode to decrement the global locale impl ref counter when
1.6101 + STLport library is unloaded. Addition of all the missing classic locale facets
1.6102 + destructor in free_classic_locale.
1.6103 +
1.6104 + * src/locale_catalog.cpp: The locale by name constructor checks the "C" name
1.6105 + to simply copy (increment the ref counter) the classic locale implementation
1.6106 + rather than instanciating a new one.
1.6107 +
1.6108 +2004-09-15 Francois Dumont <dums@...>
1.6109 +
1.6110 + * stlport/stl/_list.c: Modification of the _S_sort implementation, the __carry
1.6111 + list instance is created using the __that allocator instance copy to be more
1.6112 + allocator friendly.
1.6113 +
1.6114 +2004-09-11 Francois Dumont <dums@...>
1.6115 +
1.6116 + * stlport/config/stl_intel.h: Configuration update for Win32 Intel 8.0
1.6117 + compiler thanks Charlemagne.
1.6118 +
1.6119 +2004-09-10 Francois Dumont <dums@...>
1.6120 +
1.6121 + * stlport/stl/_config.h: The new official namespace is now stlp_std. _STL is
1.6122 + just an alias. STLPORT macro still contains the STLport std namespace equivalent.
1.6123 + Moreover in _STLP_DEBUG mode, which is not binary compatible with the release
1.6124 + or debug mode, the namespace is stlpd_std to generate link error rather
1.6125 + than runtime crash.
1.6126 +
1.6127 +2004-09-09 Francois Dumont <dums@...>
1.6128 +
1.6129 + * stlport/stl/_config.h: _STLP_DONT_USE_NESTED_TCLASS_THROUGHT_TPARAM
1.6130 + renamed to the more intuitive _STLP_DONT_SUPPORT_REBIND_MEMBER_TEMPLATE.
1.6131 +
1.6132 + * stlport/stl/_config.h: Introduction of a new namespace stlp_private
1.6133 + defined in the global namespace. Everything that is STLport implementation
1.6134 + details should be in this namespace to avoid polution of the std namespace.
1.6135 +
1.6136 + * stlport/stl/_iterator_base.h: Modification of the macro used to create
1.6137 + iterator traits for all tree and hashtable based containers to move it in
1.6138 + the stlp_private namespace rather than defining it as nested struct, limits
1.6139 + the symbol size.
1.6140 +
1.6141 +2004-09-08 Francois Dumont <dums@...>
1.6142 +
1.6143 + * test/unit/fstream_test.cpp: restauration of the test added by Petr
1.6144 + the 2004-09-03, it is finaly a different test from the one in sstream_test.cpp.
1.6145 + Some more checks have also been integrated.
1.6146 +
1.6147 + * stlport/stl/_ostream.c: New fix of the _M_unbuffured_copy method that was
1.6148 + still bugged in case of a throwing output streambuf, detected thanks to the
1.6149 + test case.
1.6150 +
1.6151 +2004-09-07 Francois Dumont <dums@...>
1.6152 +
1.6153 + * stlport/config/stl_msvc.h: Add defines of the _STLP_USE_STATIC_LIB
1.6154 + or _STLP_USE_DYNAMIC_LIB depending on the current kind of build.
1.6155 +
1.6156 + * stlport/stl/_streambuf.h, _streambug.c: Fix an unresolved symbol
1.6157 + problem for MSVC6 (and before?) when STLport is used as a static library.
1.6158 +
1.6159 +2004-09-06 Francois Dumont <dums@...>
1.6160 +
1.6161 + * test/unit/nmake-evc-common.mak: Use of the dynamic runtime for the
1.6162 + *-shared rules rather than the previous static thanks Michael Fink.
1.6163 +
1.6164 + * test/unit/nmake-evc*.mak: end of build code factorisation, use of
1.6165 + nmake-evc-common.mak within all makefiles thanks Michael Fink.
1.6166 +
1.6167 + * test/unit/locale_test.cpp: Application of a patch from Michael Fink
1.6168 + to check the "C" locale on all platforms. Fix of the money_get_put test
1.6169 + case for the "C" locale.
1.6170 +
1.6171 + * test/unit/allocator_test.cpp: new test case for std::allocator checks.
1.6172 +
1.6173 +2004-09-05 Francois Dumont <dums@...>
1.6174 +
1.6175 + * stlport/stl/_string_hash.h: Performance improvement, multiplication
1.6176 + replaced by shift operations thanks Greg S.
1.6177 +
1.6178 + * stlport/config/stl_wince_4.h: removed, never used, stl_evc.h has been
1.6179 + prefered.
1.6180 +
1.6181 + * test/unit/string_test.cpp: addition of a new test short_string_optim_bug
1.6182 + to check for a compiler bugs making the short string optim invalid thanks
1.6183 + Michael Fink.
1.6184 +
1.6185 + * stlport/config/stl_evc.h: Deactivation of the short string optimization
1.6186 + because of a compiler bug thanks Michael Fink.
1.6187 +
1.6188 + * src/explore: factorisation of the evc build makefiles thanks Michael Fink.
1.6189 +
1.6190 + * src/explore/Makefiles/nmake/lib/clean.mak, macro.mak: Addition of some
1.6191 + file clean up for the clobber rule thanks Michael Fink.
1.6192 +
1.6193 +2004-09-03 Francois Dumont <dums@...>
1.6194 +
1.6195 + * test/unit/fstream_test.cpp, sstream_test.cpp: Move of the test for the
1.6196 + infinite loop from FstreamTest test case to SstreamTest, addition of some
1.6197 + checks.
1.6198 +
1.6199 + * test/unit/full_streambuf.h: streambuf implementation simulating full
1.6200 + output.
1.6201 +
1.6202 + * stlport/exception: restauration of some modification removed after the
1.6203 + rollback of the 2004-09-01.
1.6204 +
1.6205 + * stlport/config/stl_gcc.h: homogeneification of the coding standard used
1.6206 + within STLport, 2 spaces indentations even for preprocessor directives.
1.6207 + Doing so, discovered a weird configuration for Mac OS platform (__APPLE__)
1.6208 + concerning the _STLP_NATIVE_INCLUDE_PATH macro definition, fixed.
1.6209 +
1.6210 + * stlport/stl/config/stl_*.mak: removal of all references to the
1.6211 + _STLP_REDEFINED_STD macro as it is now the default and only way STLport
1.6212 + use to replace native Standard library.
1.6213 +
1.6214 + * test/unit/nmake-vc-common.mak: add inclusion of the vc_warning_disable.h
1.6215 + file to avoid warnings during build process thanks Michael Fink.
1.6216 +
1.6217 +2004-09-03 Petr Ovtchenkov <ptr@Island...>
1.6218 +
1.6219 + * stlport/stl/_ostream.c: removed infinite loop in case when outgoing stream
1.6220 + can't accept more chars. Thanks Daniel White, Ulrich Eckhardt, Francois Dumont.
1.6221 +
1.6222 + * test/unit/fstream_test.cpp: test for problem above. Thanks Ulrich Eckhardt.
1.6223 +
1.6224 +2004-09-02 Francois Dumont <dums@...>
1.6225 +
1.6226 + * stlport/exception, stlport/stl/_site_config.h, test/unit/exception_test.cpp:
1.6227 + Creation of the _STLP_NO_UNEXPECTED_EXCEPT_SUPPORT macro to signal support of
1.6228 + the unexpected exception mecanism. Related type/function are only brought to the
1.6229 + STLport namespace if correctly supported, exception_test.cpp check that.
1.6230 +
1.6231 + * New modification of the _Rb_tree and _Hashtable associated iterator structs.
1.6232 + Removal of the container_type pass through the iterator traits; iterator traits
1.6233 + is the type that will make each derived container iterator type real different
1.6234 + type making them uncomparable.
1.6235 +
1.6236 + * stlport/ctype.h: rollback of the above rollback ;-) only of course for the
1.6237 + Win CE code fix that was part of the previous commitment.
1.6238 +
1.6239 +2004-09-01 Petr Ovtchenkov <ptr@Island...>
1.6240 +
1.6241 + * Rollback include schema: code is broken.
1.6242 +
1.6243 +2004-08-31 Francois Dumont <dums@...>
1.6244 +
1.6245 + * _STLP_INCOMPLETE_EXCEPTION_HEADER replace by the more intuitive
1.6246 + _STLP_NO_UNCAUGHT_EXCEPT_SUPPORT macro.
1.6247 +
1.6248 + * Modification of the include schema of all public headers in stlport folder
1.6249 + that need to be reentrant. Now those files are fully guarded and the specific
1.6250 + STLport code is only included once at the end of the inclusion, the reentrancy
1.6251 + only concern inclusion of the native headers.
1.6252 +
1.6253 +2004-08-30 Francois Dumont <dums@...>
1.6254 +
1.6255 + * stlport/stl/_deque.c: Fix of a pseudo 'uninitialized variable used' thanks
1.6256 + Oliver Stoeneberg.
1.6257 +
1.6258 +2004-08-27 Francois Dumont <dums@...>
1.6259 +
1.6260 + * .Net 2002 (VC70) portage.
1.6261 +
1.6262 +2004-08-27 Petr Ovtchenkov <ptr@Island...>
1.6263 +
1.6264 + * src/explore/Makefiles/gmake/gcc.mak, app/gcc.mak, lib/gcc.mak: buggy C++
1.6265 + language support in libsupc++ in gcc before 3.3 not allow to use it;
1.6266 + link with libstdc++ instead.
1.6267 +
1.6268 + * stlport/config/stl_icc.h: fix features for icc 7.1; fix features for Linux
1.6269 + platforms.
1.6270 +
1.6271 +2004-08-24 Francois Dumont <dums@...>
1.6272 +
1.6273 + * stlport/config/stl_gcc.h, stl_msvc.h: fixing of configuration concerning
1.6274 + uncaught_exception and exception handling in general thanks John Roberts.
1.6275 +
1.6276 + * stlport/stl/_tree.h, _tree.c: Modification of the _Rb_tree_iterator struct
1.6277 + to be able to distiguish iterator types from different tree based containers
1.6278 + Removal of the == and != member operators of the _Rb_tree_base_iterator struct
1.6279 + replaced by global operators taking _Rb_tree_iterator as parameters and checking
1.6280 + that the iterators are of the same container type thanks Haroon Nassiry report.
1.6281 +
1.6282 + * stlport/stl/_map.h, _set.h: Modification of the iterator traits used to
1.6283 + instanciate the _Rb_tree class.
1.6284 +
1.6285 + * stlport/stl/_hashtable.h, _hashtable.c, _hash_set.h, _hash_map.h: Similar
1.6286 + modifications to the previous one in order to make for instance the iterator
1.6287 + from hash_map and hash_multimap not comparable anymore.
1.6288 +
1.6289 + * stlport/config/stl_wince.h, stlport/ctype.h: Move of the isspace C function
1.6290 + Windows CE specific code from the config file to the ctype.h file. This fix
1.6291 + will also apply to Embedded C++ .Net thanks Dirk report.
1.6292 +
1.6293 +2004-08-23 Petr Ovtchenkov <ptr@Island...>
1.6294 +
1.6295 + * test/unit/cppunit/cppunit_proxy.h, test/init/gcc.mak: CPPUNIT_MINI removed.
1.6296 +
1.6297 + * src/num_get_float.cpp: suggestion to fix problem with float input for gcc 3.4.x
1.6298 + with optimization flag.
1.6299 +
1.6300 + * test/unit/floatio_test.cpp: test for infinity and near
1.6301 +
1.6302 + * src/explore/Makefiles/gmake/gcc.mak, app/gcc.mak, lib/gcc.mak: fix detection of
1.6303 + gcc version; gcc before 3.x had libgcc.a that contains some language support,
1.6304 + so link with it in case when we avoid link with libstd++. This has relation only
1.6305 + for linux systems.
1.6306 +
1.6307 +2004-08-19 Petr Ovtchenkov <ptr@Island...>
1.6308 +
1.6309 + * src/explore/configure.bat: setting up compiling STLport under Windows.
1.6310 + Contribution by Michael Fink.
1.6311 +
1.6312 +2004-08-13 Francois Dumont <dums@...>
1.6313 +
1.6314 + * test/unit/gcc.mak: Addition of the _STLP_NO_CUSTOM_IO define to make test
1.6315 + build faster.
1.6316 +
1.6317 + * stlport/stl/_limits.h, _limits.c: Modification of the _LimG class definition.
1.6318 + Removal of the static variables, replaced by static method having the same role
1.6319 + but more portable. Fix link problem with MSVC compilers family when using STLport
1.6320 + static library.
1.6321 +
1.6322 + * stlport/stl/_bitset.h, _bitset.c: Ditto for the _Bs_G class.
1.6323 +
1.6324 + * stlport/stl/_hashtable.h, _hashtable.c: Ditto for the _Stl_prime class.
1.6325 +
1.6326 + * src/dll_main.cpp: thanks to the previous modification, removal of the
1.6327 + concerned code within force_link.
1.6328 +
1.6329 +2004-08-13 Petr Ovtchenkov <ptr@Island...>
1.6330 +
1.6331 + * test/unit/cppunit/cppunit_mini.h, file_reporter.h, test_main.cpp:
1.6332 + add function to print mess; remove def of CPPUNIT_MINI, not required; add const
1.6333 + qualifiers.
1.6334 +
1.6335 + * test/unit/locale_test.cpp: print checked locale name; restore table with format
1.6336 + symbols--partially rollback changes 2004-07-29; add test for possible locale
1.6337 + init/deinit problem---I don't see problem. Test inspired by Alex Kosilin.
1.6338 +
1.6339 +2004-08-11 Francois Dumont <dums@...>
1.6340 +
1.6341 + * src/explore/Makefiles/nmake: extension of the new build system for VC.Net
1.6342 + 2005 (VC8).
1.6343 +
1.6344 + * src/explore/Makefiles/nmake/app: restauration of the default behavior shared
1.6345 + rules generates executable using the STLport dynamic library and static rules
1.6346 + use the static libraries.
1.6347 +
1.6348 + * stlport/stl/_string.h: Add check of _STLP_NO_IOSTREAMS to force inclusion of
1.6349 + _string.c in this case.
1.6350 +
1.6351 + * stlport/stl/_string.c: removal of the _STLP_LINK_TIME_INSTANTIATION macro check
1.6352 + before inclusion as the check is already done to include _string.c from _string.h.
1.6353 +
1.6354 + * stlport/stl/_istream.h _istream.c: removal of the _M_put_num function definition
1.6355 + from the .h and removal of all the inline implementation of the >> operators.
1.6356 + _M_put_num is now hidden in the .c to avoid to have to deal with export of this
1.6357 + symbol. Fix errors while using the _STLP_NO_CUSTOM_IO macro.
1.6358 +
1.6359 + * stlport/stl/_ostream.h _ostream.c, src/ostream.cpp: ditto but for the _M_get_num
1.6360 + function.
1.6361 +
1.6362 + * stlport/stl/_istream.h _istream.c: _M_init_skip and _M_init_noskip are now inline
1.6363 + functions defined within the .h to fix link errors when using the _STLP_NO_CUSTOM_IO
1.6364 + macro.
1.6365 +
1.6366 +2004-08-10 Francois Dumont <dums@...>
1.6367 +
1.6368 + * stlport/stl/_string.h: add check of the _STLP_EXPOSE_STREAM_IMPLEMENTATION
1.6369 + macro to include the _string.c file. Improve compile time when _STLP_NO_CUSTOM_IO
1.6370 + is defined.
1.6371 +
1.6372 + * stlport/stl/_string.h, stlport/stl/debug/_string.h, _string_mem_t.h: restoration
1.6373 + of the template method specialization for backward compatibility between compilers
1.6374 + implementating template method and the most recent one. It is considered as an
1.6375 + STLport extension.
1.6376 +
1.6377 +2004-08-09 Petr Ovtchenkov <ptr@Island...>
1.6378 +
1.6379 + * test/compiler: tests to check whether compiler understand or not some
1.6380 + language construction. It is NOT tests for language support libraries,
1.6381 + only tests for compiler. The main purposes of this tests is to help
1.6382 + for developers to find correct workarounds, if compiler don't understand
1.6383 + some language constructions.
1.6384 +
1.6385 +2004-08-09 Francois Dumont <dums@...>
1.6386 +
1.6387 + * stlport/stl/_limits.h, stlport/config/stl_mycomp.h: introduction of a new macro
1.6388 + configuration to signal no support of the IEC 559 specification for floating point
1.6389 + numbers.
1.6390 +
1.6391 + * stlport/config/stl_msvc.h: fix of the config to signal no IEC 559 support before
1.6392 + Visual C++ .Net even if the infinity value is fine.
1.6393 +
1.6394 + * test/unit/limits_test.cpp: New test case to check the right numeric_limits class
1.6395 + configuration. Do not check the signaling_NaN yet...
1.6396 +
1.6397 + * stlport/config/stl_msvc.h: Visual .Net Beta 2005 portage.
1.6398 +
1.6399 + * stlport/stl/_ios.h: Move of the basic_ios::narrow and widen member method
1.6400 + specialization before the explicit instanciation of the basic_ios class for
1.6401 + the char type.
1.6402 +
1.6403 + * stlport/stl/_construct.h, _num_put.c: fix of some unused parameter warning
1.6404 + thanks Oliver Stoeneberg report.
1.6405 +
1.6406 +2004-08-05 Francois Dumont <dums@...>
1.6407 +
1.6408 + * Fixes of the internal move framework for compilers not supporting partial
1.6409 + template specialization. The problem was detected thanks to the boost regression
1.6410 + test suite.
1.6411 +
1.6412 +2004-08-04 Francois Dumont <dums@...>
1.6413 +
1.6414 + * stlport/stl/debug/_list.h, _slist.h: small review of the stlport debug code.
1.6415 + Removal of any Standard reference in the slist class debug implementation. Removal
1.6416 + of some unjustified iterator invalidation.
1.6417 +
1.6418 + * stlport/stl/_locale.h, _collate.h, src/locale.cpp, locale_catalog.cpp, locale_impl.cpp:
1.6419 + Split of the locale class implementation into _LocaleBase base class with no member
1.6420 + template methods which is exported and the locale class which is not exported. This
1.6421 + is a workaround for the MSVC6 compiler.
1.6422 +
1.6423 +2004-08-03 Francois Dumont <dums@...>
1.6424 +
1.6425 + * stlport/stl/_iterator.h: Fix of the back_insert_iterator, front_insert_iterator
1.6426 + and insert_iterator to make them assignable like specify in the Standard requirements
1.6427 + of the output iterators.
1.6428 +
1.6429 + * test/unit/insert_test.cpp, finsert_test.cpp, binsert_test.cpp: Addition of tests for
1.6430 + the assignment operators on the output iterators.
1.6431 +
1.6432 +2004-08-02 Francois Dumont <dums@...>
1.6433 +
1.6434 + * stlport/stl/_string.h, _string.c, debug/_string.h: split of the basic_string
1.6435 + implementation into a class with no member templates and one with the member
1.6436 + templates. Only the one with no member templates is exported. This is a MSVC6
1.6437 + bug workaround as this compiler try to look for the class method symbols within
1.6438 + the dynamic library even if this symbol is the one of template method which is
1.6439 + not exported. That also make the basic_string implementation more clean so it
1.6440 + has been adopted for all compilers.
1.6441 +
1.6442 +2004-07-29 Francois Dumont <dums@...>
1.6443 +
1.6444 + * test/unit/locale_test.cpp: Fix bad macro _STLP_NO_EXCEPTIONS spelling
1.6445 + and add of a check for real locale implementation. Patch done by
1.6446 + Michael Fink.
1.6447 +
1.6448 + * stlport/stl/debug/_debug.h, _debug.c, _iterator.h: Modification of the
1.6449 + __check_same_owner_or_null function name to the more intuitive
1.6450 + __check_same_or_null_owner thanks a Aleksey Sanin remark.
1.6451 +
1.6452 +2004-07-26 Petr Ovtchenkov <ptr@Island...>
1.6453 +
1.6454 + * src/explore/Makefiles/gmake/lib/gcc.mak: avoid linkage with libstd++
1.6455 + for gcc compilers.
1.6456 +
1.6457 + * src/explore/Makefiles/gmake/linux/rules-so.mak: ditto
1.6458 +
1.6459 + * src/explore/Makefiles/gmake/lib/rules-a.mak: ditto
1.6460 +
1.6461 + * src/explore/Makefiles/gmake/app/top.mak: ditto
1.6462 +
1.6463 +2004-07-21 Francois Dumont <dums@...>
1.6464 +
1.6465 + * stlport/config/stl_gcc.h: Fix of a gcc 3.3.0 test that did not handle
1.6466 + the gcc 2.95.x correctly thanks Jordan Breeding.
1.6467 +
1.6468 + * src/common_rules.mak: Addition of the stlport/stl/pointers folder within
1.6469 + the folder to be install. Add of a call to ranlib under linux mandatory under
1.6470 + Mac OS X and without impact under the other Unixes systems.
1.6471 +
1.6472 +2004-07-17 Francois Dumont <dums@...>
1.6473 +
1.6474 + * Application of a Mac OSX patch from John Daniel (www.etresoft.com)
1.6475 +
1.6476 +2004-07-15 Francois Dumont <dums@...>
1.6477 +
1.6478 + * stlport/stl/_epilog.h: systematical use of the redefined std namespace
1.6479 + rather than using the namespace inclusion schema.
1.6480 +
1.6481 + * test/unit/set_test.cpp: addition of a test case to show the problem of
1.6482 + the namespace injection schema.
1.6483 +
1.6484 +2004-07-13 Francois Dumont <dums@...>
1.6485 +
1.6486 + * stlport/numeric: removal of the _function.h header include.
1.6487 +
1.6488 + * test/unit/divide_test.cpp: add the missing functionnal header
1.6489 + inclusion.
1.6490 +
1.6491 + * doc/README.msvc: new doc specific to the MSVC++ family compiler.
1.6492 +
1.6493 +2004-07-12 Petr Ovtchenkov <ptr@Island...>
1.6494 +
1.6495 + * test/unit/fstream_test.cpp: tests for unformatted extraction bug.
1.6496 +
1.6497 + * stlport/stl/_istream.c: _M_read_unbuffered should leave delimiter
1.6498 + in the stream in case of unformatted input. Thanks Joerg Becker.
1.6499 +
1.6500 +2004-07-09 Francois Dumont <dums@...>
1.6501 +
1.6502 + * src/sgi_mipspro.mak: add the -LANG:libc_in_namespace_std:OFF
1.6503 + thanks Jack Perdue.
1.6504 +
1.6505 +2004-07-08 Francois Dumont <dums@...>
1.6506 +
1.6507 + * doc/README.evc3: additionnal doc thanks Michael Fink
1.6508 +
1.6509 +2004-07-08 Petr Ovtchenkov <ptr@Island...>
1.6510 +
1.6511 + * test/unit/sstream_test.cpp: added two test for unformatted extraction
1.6512 + and newline character. Inspired by Joerg Becker.
1.6513 +
1.6514 +2004-07-07 Francois Dumont <dums@...>
1.6515 +
1.6516 + * stlport/stl/_hashtable.h, stlport/stl/_hashtable.c,
1.6517 + stlport/stl/_hash_set.h, stlport/stl/_hash_map.h: generalization
1.6518 + of the iterator traits adopted on the tree class. Now iterator and
1.6519 + const_iterator on hash_set and hash_multiset are different types
1.6520 + even if iterator is still immutable.
1.6521 +
1.6522 + * stlport/stl/_deque.h, stlport/stl/_list.h, stlport/stl/_slist.h:
1.6523 + Modification of the iterator classes to only use the template
1.6524 + parameter _Traits rather than using an external type traits. It is
1.6525 + the way hash containers and sorted containers have their iterator
1.6526 + struct working.
1.6527 +
1.6528 + * stlport/stl/_iterator_base.h: Addition of the immutable traits
1.6529 + struct _Const_Const_traits and _Nonconst_Const_traits for
1.6530 + implementation of the set, multiset, hash_set, hash_multiset
1.6531 + iterators.
1.6532 +
1.6533 + * stlport/stl/c_locale.h, stlport/stl/debug/_debug.h: removal of
1.6534 + unjustified _config.h inclusions
1.6535 +
1.6536 + * stlport/stl/_iterator_base.h: inclusion of type_traits.h only
1.6537 + for compilers that need it.
1.6538 +
1.6539 + * stlport/stl/_algobase.h, stlport/stl/debug/_debug.h: add inclusion
1.6540 + of type_traits.h.
1.6541 +
1.6542 + * stlport/stl/_algo.h, stlport/stl/_algo.c: move of the _tempbuf.h
1.6543 + inclusion from the .h to the .c that is the only one that need it.
1.6544 +
1.6545 + * stlport/stl/_config.h: addition of the boost support section.
1.6546 +
1.6547 +2004-07-07 Petr Ovtchenkov <ptr@Island...>
1.6548 +
1.6549 + * stlport/stl/_monetary.c: iterator __str_first out of range,
1.6550 + i.e. outside __str_last in 'mismatch' call in __get_string, if
1.6551 + size of interval [__first, __last) is larger than size of interval
1.6552 + [__str_first, __str_last).
1.6553 +
1.6554 + * test/unit/fstream_test.cpp: test for correct report by tellg added.
1.6555 +
1.6556 +2004-07-05 Francois Dumont <dums@...>
1.6557 +
1.6558 + * stlport/stl/_map.h: internal type _Rep_type set as public for use
1.6559 + in the __move_traits specialization thanks Oliver Stoeneberg.
1.6560 +
1.6561 + * stlport/stl/_set.h: specialization of the __move_traits to make the
1.6562 + set and multiset movable thanks Oliver Stoeneberg.
1.6563 +
1.6564 + * stlport/stl/_function_base.h, stlport/stl/_heaps.h: removal of the
1.6565 + unjustified _config.h inclusion that should only be included from the
1.6566 + _prolog.h header.
1.6567 +
1.6568 +2004-07-05 Petr Ovtchenkov <ptr@Island...>
1.6569 +
1.6570 + * src/facets_byname.cpp: avoid pass address to member of derived class into
1.6571 + base class via constructor.
1.6572 +
1.6573 + * src/facets_byname.cpp: remove first member---EOF---of _M_byname_table---one
1.6574 + not required and lead to wrong reference; this a fix for test in
1.6575 + locale_test.cpp.
1.6576 +
1.6577 + * src/ctype.cpp: ditto.
1.6578 +
1.6579 + * src/c_locale_win32/c_locale_win32.c: ditto.
1.6580 +
1.6581 + * stlport/stl/_ctype.h: ditto.
1.6582 +
1.6583 +2004-07-02 Petr Ovtchenkov <ptr@Island...>
1.6584 +
1.6585 + * src/c_locale_glibc/c_locale_glibc2.c: message catalog functions dealing
1.6586 + with message catalog descriptor; but this descriptor not necessary to be
1.6587 + int; Linux use here void *, i.e. pointer to mmap segment.
1.6588 +
1.6589 + * stlport/stl/_messages_facets.h: ditto.
1.6590 +
1.6591 + * src/messages.cpp: ditto.
1.6592 +
1.6593 + * src/message_facets.h: ditto.
1.6594 +
1.6595 + * src/facets_byname.cpp: ditto.
1.6596 +
1.6597 + * src/c_locale_stub.cpp: ditto.
1.6598 +
1.6599 + * src/c_locale.h: ditto.
1.6600 +
1.6601 + * src/c_locale_glibc/c_locale_glibc2.c: fix _Locale_extract_*_name
1.6602 + functions.
1.6603 +
1.6604 +2004-07-01 Francois Dumont <dums@...>
1.6605 +
1.6606 + * src/explore/Makefiles/nmake/lib/vc-common.mak: creation of the
1.6607 + STLP_BUILD_FORCE_DYNAMIC_RUNTIME option to create STLport statix
1.6608 + versions more easily.
1.6609 +
1.6610 +2004-06-30 Francois Dumont <dums@...>
1.6611 +
1.6612 + * stlport/stl/_function.h: Use a call_traits to avoid the reference
1.6613 + to reference problem in struct like binder1st or binder2nd.
1.6614 +
1.6615 +2004-06-26 Francois Dumont <dums@...>
1.6616 +
1.6617 + * src/explore/: portage of the explore build system for the
1.6618 + MSVC .Net 2003 compiler.
1.6619 +
1.6620 +2004-06-24 Francois Dumont <dums@...>
1.6621 +
1.6622 + * stlport/stl/_site_config.h: Addition of an entry for the per thread
1.6623 + allocator configuration.
1.6624 +
1.6625 + * stlport/stl/_config.h: Avoid use of the import/export technique
1.6626 + when not using own iostreams. This way you can use the STLport debug
1.6627 + mode without building the libraries.
1.6628 +
1.6629 +2004-06-23 Francois Dumont <dums@...>
1.6630 +
1.6631 + * extension of the cygwin link problem workaround for mingw32.
1.6632 +
1.6633 + * src/locale_catalog.cpp: Move of the _STLP_lock object instance
1.6634 + declaration to limit the critical section and improve performace.
1.6635 +
1.6636 + * stlport/stl/_pthread_alloc.h: fix of the pthread_allocator and
1.6637 + per_thread_allocator allocate method to check for the required
1.6638 + number of element before multiplication with the size of the objects
1.6639 + to instanciate.
1.6640 +
1.6641 +2004-06-22 Francois Dumont <dums@...>
1.6642 +
1.6643 + * src/locale_catalog.cpp: fix of the locale facets registration system.
1.6644 + The hash container use string as key rather than char const* so that
1.6645 + a copy of the facet name is stored rather than a copy of the string
1.6646 + pointer that might be freed. We also extract the complete facet name
1.6647 + before storing it to avoid store of facet aliases that cannot be retrieved
1.6648 + at release.
1.6649 +
1.6650 +2004-06-21 Francois Dumont <dums@s...>
1.6651 +
1.6652 + * Restauration of the cygwin support (using gcc 3.3.1). Extension of the
1.6653 + explore build system, workaround of a link problem when using shared
1.6654 + libraries.
1.6655 +
1.6656 +2004-06-13 Petr Ovtchenkov <ptr@Island...>
1.6657 +
1.6658 + * src/c_locale_glibc/c_locale_glibc2.c: locale_data for glibc 2.3 is differ
1.6659 + from one for glibc 2.2.
1.6660 +
1.6661 +2004-06-11 Francois Dumont <dums@...>
1.6662 +
1.6663 + * test/unit: Modification of some tests to make the assertion
1.6664 + clearer. Mainly add of check of the streams state before check
1.6665 + of the stream content.
1.6666 +
1.6667 + * test/unit/locale_test.cpp: fix of the thousands separator which is
1.6668 + 0xa0 under Win32 and not a simple ' ' for the french locale.
1.6669 +
1.6670 +2004-06-07 Francois Dumont <dums@...>
1.6671 +
1.6672 + * stlport/stl/_algo.c: rollback of the sort algo implementation
1.6673 + to the 4.5.3 version.
1.6674 +
1.6675 +2004-06-03 Francois Dumont <dums@...>
1.6676 +
1.6677 + * stlport/stl/pointers/README, doc/pointer_specialization.txt: move and
1.6678 + rename of the doc about pointer partial template specialization feature.
1.6679 +
1.6680 + * doc/README.ecv4: Creation of a documentation about the install and use
1.6681 + of STLport within Embedded Visual C++ 4 thanks Zdenek Nemec.
1.6682 +
1.6683 + * doc/README.ecv3: Creation of a documentation about the process installment
1.6684 + with the Embedded Visual C++ 3 thanks Michael Fink.
1.6685 +
1.6686 + * stlport/stl/_slist.h: fix of an invalid reference to a _M_node member data
1.6687 + on a _Slist_node_base struct (thanks gcc 3.4.0).
1.6688 +
1.6689 + * stlport/stl/_string.c, stlport/stl/_string.h: fix of missing scopes to
1.6690 + access the base template class _String_base _DEFAULT_SIZE enum member.
1.6691 + (thanks gcc 3.4.0)
1.6692 +
1.6693 + * stlport/stl/_string_base.h: fix of the anonymous union used as a parameter
1.6694 + of the template function swap. (thanks gcc 3.4.0)
1.6695 +
1.6696 + * stlport/stl/_ostream.h: fixes of the missing scopes to access the basefield enum
1.6697 + within the base template class basic_ios from the basic_ostream. (thanks gcc 3.4.0)
1.6698 +
1.6699 + * stlport/stl/_debug.c: clean up of a no more use template function.
1.6700 + (thanks gcc 3.4.0)
1.6701 +
1.6702 + * stlport/stl/_rope.h: fix of the missing scope to access base template class
1.6703 + data member. (thanks gcc 3.4.0)
1.6704 +
1.6705 +2004-06-02 Petr Ovtchenkov <ptr@island...>
1.6706 +
1.6707 + * src/num_put_float.cpp: some fixes for systems that use snprintf for
1.6708 + output, i.e. for FreeBSD and OpenBSD
1.6709 +
1.6710 + * test/unit/floatio_test.cpp: less precise request, this should work
1.6711 + with static buffer for systems that use snprintf
1.6712 +
1.6713 + * stlport/stl/_config.h: detect MT for OpenBSD
1.6714 +
1.6715 + * stlport/stl/_threads.h: use original spinlock for OpenBSD
1.6716 +
1.6717 +2004-05-28 Francois Dumont <dums@...>
1.6718 +
1.6719 + * stlport/config/stl_gcc.h: fix for the gcc3.4.0 compiler. Modification
1.6720 + of the include path macro to generate 3.4.0 rather than 3.4 . Need
1.6721 + template keyword to reveal use of a nested template class.
1.6722 +
1.6723 + * stlport/stl/_config.h: creation of the _STLP_LONG_DOUBLE macro that
1.6724 + extend to long double on compiler supporting it and double on the other
1.6725 + as a workaround.
1.6726 +
1.6727 + * stlport/stl/_num_put.h, stlport/stl/_num_put.c, src/num_put_float.cpp:
1.6728 + Addition of functions to get the digits from a long double for the monetary
1.6729 + facet.
1.6730 +
1.6731 + * stlport/stl/_monetary.h, stlport/stl/_monetary.c, src/monetary.cpp:
1.6732 + Implementation of the missing money_put::put method taking a long double.
1.6733 + Fixing of the grouping application.
1.6734 +
1.6735 + * test/unit/Makefile.inc, test/unit/locale_test.cpp: Creation of a unit test
1.6736 + for the locale support. At creation it tests the num_put, num_get, money_put,
1.6737 + money_get facets.
1.6738 +
1.6739 + * src/facets_byname.cpp: fix of the monetary format determination from
1.6740 + the locale platform API informations.
1.6741 +
1.6742 +2004-05-28 Petr Ovtchenkov <ptr@Island...>
1.6743 +
1.6744 + * src/explore/Makefiles/gmake/sysid.mak: correctly detect Mingw
1.6745 +
1.6746 + * src/explore/Makefiles/gmake/mingw: compilation under Mingw
1.6747 +
1.6748 +2004-05-27 Petr Ovtchenkov <ptr@Island...>
1.6749 +
1.6750 + * Makefiles/gmake/linux/extern.mak: fix lib catalog name in case of cross-compilation
1.6751 +
1.6752 + * Makefiles/gmake/freebsd/extern.mak: ditto
1.6753 +
1.6754 + * Makefiles/gmake/openbsd/extern.mak: ditto
1.6755 +
1.6756 +2004-05-26 Petr Ovtchenkov <ptr@Island...>
1.6757 +
1.6758 + * Repository: STLport 5.0 RC1
1.6759 +
1.6760 +2004-05-24 Francois Dumont <dums@...>
1.6761 +
1.6762 + * stlport/stl/_iostream_string.h:
1.6763 + Fix of the iostring_allocator rebind embedded struct and implementation
1.6764 + of the missing __stl_alloc_rebind and __stl_alloc_create useful for compiler
1.6765 + not supporting or buggy on the member template feature (VC6 for instance).
1.6766 +
1.6767 +2004-05-22 Francois Dumont <dums@...>
1.6768 +
1.6769 + * src/num_put_float.cpp, stlport/stl/_num_put.h, stlport/stl/_num_put.c:
1.6770 + Correction of the locale grouping schema application in case of the scientific
1.6771 + output when there is no decimal point.
1.6772 +
1.6773 +2004-05-19 Petr Ovtchenkov <ptr@Island...>
1.6774 +
1.6775 + * stlport/stl/_tree.h, stlport/stl/debug/_tree.h: fix template parameters, see rec
1.6776 + 2004-05-14 below.
1.6777 +
1.6778 +2004-05-16 Petr Ovtchenkov <ptr@Island...>
1.6779 +
1.6780 + * Repository: STLport 5.0 branch
1.6781 +
1.6782 +2004-05-14 Francois Dumont <dums@...>
1.6783 +
1.6784 + * stlport/stl/_tree.h, stlport/stl/_tree.c, stlport/stl/_set.h, stlport/stl/_map.h:
1.6785 + Modification of the _Rb_tree implementation to restore the non mutability of the set
1.6786 + iterators but to keep distinct type between it and the const_iterator.
1.6787 +
1.6788 +2004-05-13 Francois Dumont <dums@...>
1.6789 +
1.6790 + * stlport/config/stl_evc.h, test/unit/nmake-evc3.mak: Portage to the WinCE 3 platform.
1.6791 + Thanks Michael Fink.
1.6792 +
1.6793 +2004-05-13 Francois Dumont <dums@s...>
1.6794 +
1.6795 + * stlport/stl/_set.h: Addition of the const/non-const methods for many methods now that
1.6796 + iterator are not const_iterator anymore. Correction of the multiset interface to be
1.6797 + homogeneous with the set interface.
1.6798 +
1.6799 +2004-05-09 Francois Dumont <dums@...>
1.6800 +
1.6801 + * stlport/stl/char_traits.h: Addition of the specific wchar_t static methods similar
1.6802 + to the one of the char specialization calling the wide functions.
1.6803 +
1.6804 +2004-05-08 Petr Ovtchenkov <ptr@Island...>
1.6805 +
1.6806 + * stlport/stl/_set.h: fix definition of const/non-const for find and *_bound
1.6807 + methods. Thanks KL for report.
1.6808 +
1.6809 +2004-05-07 Petr Ovtchenkov <ptr@Island...>
1.6810 +
1.6811 + * stlport/stl/_set.h: fix definition of const/non-const iterators.
1.6812 + Thanks Ilya Chvetsov for report.
1.6813 +
1.6814 + * test/unit/set_test.cpp: test that detect bug above.
1.6815 +
1.6816 +2004-04-27 Francois Dumont <dums@s...>
1.6817 +
1.6818 + * stlport/stl/_complex.h: removal of a macro guard on the template != operator.
1.6819 +
1.6820 + * test/unit/complex_test.cpp: creation of a test case for the complex class.
1.6821 +
1.6822 +2004-04-26 Francois Dumont <dums@s...>
1.6823 +
1.6824 + * stlport/stl/_fstream.h, src/fstream.cpp: extension of the fstream interface to accept Win32
1.6825 + HANDLE on construction and in the open method.
1.6826 +
1.6827 +2004-04-26 Petr Ovtchenkov <ptr@Island...>
1.6828 +
1.6829 + * stlport/stl/_istream.h: don't change value while input error happens.
1.6830 + Thanks Nix.
1.6831 +
1.6832 + * test/unit/sstream_test.cpp, test/unit/fstream_test.cpp: added test for error
1.6833 + flags and unchanged value when input error occur.
1.6834 +
1.6835 +2004-04-23 Petr Ovtchenkov <ptr@Island...>
1.6836 +
1.6837 + * stlport/stl/_rope.h: allow search of rope, like done in string
1.6838 +
1.6839 +2004-04-21 Francois Dumont <dums@...>
1.6840 +
1.6841 + * stlport/stl/pointers/README: Creation of a documentation on the new
1.6842 + pointer partial specialization feature.
1.6843 +
1.6844 +2004-04-20 Francois Dumont <dums@s...>
1.6845 +
1.6846 + * stlport/stl/_pair.h: modification of the make_pair signature. After the latest
1.6847 + Standard revision it takes params per value and not reference to const.
1.6848 +
1.6849 +2004-04-20 Petr Ovtchenkov <ptr@Island...>
1.6850 +
1.6851 + * stlport/stl/pointers/_list.h: 'clear' method was forgot.
1.6852 +
1.6853 + * test/unit/list_test.cpp: check presence of 'clear'
1.6854 +
1.6855 +2004-04-15 Petr Ovtchenkov <ptr@Island...>
1.6856 +
1.6857 + * test/unit/partial_test.cpp: wrong comparison during test
1.6858 +
1.6859 + * test/unit/sort_test.cpp: ditto
1.6860 +
1.6861 + * test/unit/rm_cp_test.cpp: #ifndef not required---should work
1.6862 +
1.6863 + * test/unit/unique_test.cpp: ditto
1.6864 +
1.6865 +2004-04-14 Petr Ovtchenkov <ptr@Island...>
1.6866 +
1.6867 + * stlport/typeinfo, stlport/config/stl_wince_4.h, stlport/stl/debug/_debug.c: adaptation for Win CE .NET;
1.6868 + Thanks Zdenek Nemec.
1.6869 +
1.6870 + * stlport/stl/_algobase.h: calculate difference once
1.6871 +
1.6872 + * stlport/stl/pointers/_vector.h: missed returns. Thanks KL.
1.6873 +
1.6874 + * stlport/stl/pointers/_list.h: idem.
1.6875 +
1.6876 + * stlport/stl/pointers/_deque.h: idem.
1.6877 +
1.6878 + * stlport/stl/pointers/_slist.h: idem.
1.6879 +
1.6880 + * stlport/stl/_vector.c, stlport/stl/_vector.h: big enough functions moved to non-inline section
1.6881 +
1.6882 + * stlport/stl/_iterator.h: use reference instead of pointer for stored container
1.6883 +
1.6884 +2004-04-06 Petr Ovtchenkov <ptr@Island...>
1.6885 +
1.6886 + * stlport/stl/_prolog.h: when we in _STLP_REDEFINE_STD mode, we really
1.6887 + need to #undef std, see mistake 2004-02-19 below.
1.6888 +
1.6889 + * stlport/config/stl_msvc.h: partially undo workaround 2004-03-30,
1.6890 + not required; problem was solved by #undef std in _prolog.h
1.6891 +
1.6892 + * stlport/stl/_abbrevs.h: add new abbrevs---VC6 has problems in debug mode
1.6893 +
1.6894 +2004-04-03 Petr Ovtchenkov <ptr@Island...>
1.6895 +
1.6896 + * stlport/stl_user_config.h: expose _STLP_DONT_FORCE_MSVC_LIB_NAME for
1.6897 + configuration.
1.6898 +
1.6899 + * stlport/config/stl_msvc.h: incorporate content of stl_select_lib.h and
1.6900 + vc_select_lib.h; a bit cleaned.
1.6901 +
1.6902 + * stlport/config/stl_select_lib.h: removed.
1.6903 +
1.6904 + * stlport/config/vc_select_lib.h: removed.
1.6905 +
1.6906 +2004-04-02 Petr Ovtchenkov <ptr@Island...>
1.6907 +
1.6908 + * src/time_facets.cpp: add #include <cstdio> for sprintf; remove
1.6909 + c_copy_string function.
1.6910 +
1.6911 + * stlport/stl/_time_facets.h: fix for _STLP_LEAKS_PEDANTIC.
1.6912 +
1.6913 +2004-04-01 Petr Ovtchenkov <ptr@Island...>
1.6914 +
1.6915 + * stlport/stl/_string.h: reorder of in-class template and
1.6916 + quazi-specialization function make VC happy, ref. 2004-03-29
1.6917 +
1.6918 + * stlport/stl/debug/_string.h: fix insert and replace for
1.6919 + iterators that refer to same string in _STLP_DEBUG mode.
1.6920 +
1.6921 +2004-03-31 Petr Ovtchenkov <ptr@Island...>
1.6922 +
1.6923 + * src/explore/nmake-evc4-arm.mak, src/explore/nmake-evc4-x86.mak, etc.:
1.6924 + rules for eVC4 compilers---ARM and ix86 target architectures.
1.6925 + Contribution by Zdenek Nemec.
1.6926 +
1.6927 +2004-03-30 Petr Ovtchenkov <ptr@Island...>
1.6928 +
1.6929 + * stlport/stl/_algo.c: workaround for VC compilers---ones pass reference
1.6930 + to parent object directly, pay no regard for temporary object
1.6931 +
1.6932 + * stlport/new, stlport/stl/_new.h, stlport/typeinfo, stlport/config/stl_msvc.h:
1.6933 + workaround for VC6's problem with 'using' directive, while import native
1.6934 + bad_alloc and some other classes into STLport's namespace
1.6935 +
1.6936 + * stlport/stl/_streambuf.h: export template class, to make VCs to be happy.
1.6937 +
1.6938 + * stlport/stl/_valarray.h: use <new>, not <stl/_new.h>
1.6939 +
1.6940 + * src/explore/Makefiles/nmake/lib/macro.mak, test/unit/nmake-vc6.mak:
1.6941 + fix static library names
1.6942 +
1.6943 +2004-03-29 Petr Ovtchenkov <ptr@Island...>
1.6944 +
1.6945 + * stlport/stl/_set.h: fix problems with erase functions.
1.6946 +
1.6947 + * stlport/stl/_string.h: VC compiler expect only one variant---template
1.6948 + or not---of replace function with four iterators in parameters.
1.6949 +
1.6950 + * test/unit/nmake-src-prefix.mak: really know what do with sources
1.6951 + in cppunit.
1.6952 +
1.6953 +2004-03-25 Petr Ovtchenkov <ptr@Island...>
1.6954 +
1.6955 + * stlport/stl/_string_base.h: enlarge default string static buffer size
1.6956 +
1.6957 + * stlport/stl/debug/_string.h: avoid attempt to invalidate iterators beyond
1.6958 + string size range.
1.6959 +
1.6960 + * stlport/config/stl_gcc.h: instantiation scheme that idefault used---witout
1.6961 + --repo option---in gcc 3 made void of sense explicit instantiation within
1.6962 + library---nothing except increased library size.
1.6963 + Define _STLP_NO_FORCE_INSTANTIATE is default now for gcc 3.x.
1.6964 +
1.6965 + * stlport/stl/_streambuf.h: remove specialization of
1.6966 + basic_streambuf<char, char_traits<char> >---reference to FILE struct here
1.6967 + isn't required and really not used anyware. Functionality of standard io
1.6968 + streams, including synchronization with C std io streams provided in
1.6969 + src/stdio_streambuf.cpp
1.6970 +
1.6971 + * stlport/stl/_iosfwd.h: same.
1.6972 +
1.6973 + * src/fstream_impl.h, src/iostream.cpp, src/stdio_streambuf.cpp: same.
1.6974 +
1.6975 + * src/streambuf.cpp: removed.
1.6976 +
1.6977 + * stlport/stl/_stdio_file.h: moved...
1.6978 + * src/_stdio_file.h: ...here
1.6979 +
1.6980 + * stlport/stdio_streambuf: moved...
1.6981 + * src/_stdio_file.h: ...here
1.6982 +
1.6983 + * src/explore/Makefile.inc: remove streambuf.cpp
1.6984 +
1.6985 +2004-03-24 Petr Ovtchenkov <ptr@Island...>
1.6986 +
1.6987 + * c_locale_glibc2.c: real locale implementation for glibc 2.3.x.
1.6988 +
1.6989 +2004-03-15 Petr Ovtchenkov <ptr@Island...>
1.6990 +
1.6991 + * test/unit: unit test suite intended for test/regression replacement.
1.6992 + Zdenek Nemec contribution.
1.6993 +
1.6994 +2004-03-01 Francois Dumont <dums@s...>
1.6995 +
1.6996 + * _hash_fun.h: Correction of the hash struct specialization for the _STLP_LONG_LONG
1.6997 + type. Thanks Vianney Lecroard
1.6998 +
1.6999 + * type_traits.h: Integration of the boost (www.boost.org) type traits within STLport.
1.7000 +
1.7001 +2004-02-21 Francois Dumont <dums@s...>
1.7002 +
1.7003 + * _tree.h: Modification of the base class implementtion to avoid the systematical
1.7004 + dynamic allocation of a node as the root note of the RB tree.
1.7005 +
1.7006 + * Addition of many missing macro guards in the stlport public headers to avoid to break
1.7007 + the stlport prolog/epilog include framework.
1.7008 +
1.7009 +2004-02-19 Petr Ovtchenkov <ptr@Island...>
1.7010 +
1.7011 + * _slist.h, debug/_slist.h,, dll_main.cpp: remove excess slist redefinitions
1.7012 +
1.7013 + * debug/_slist.h: comment explicit usage of namespace with functions---under
1.7014 + some conditions this hangs gcc compilers.
1.7015 +
1.7016 + * _config.h, _cwchar.h, _epilog.h, _iterator_base.h, debug/_debug.c: multiple import
1.7017 + of _STL namespace into std, as multiple import VENDOR_CSTD namespace into _STL
1.7018 + namespace lead to crash of gcc compilers. Import of _STL namespace into std
1.7019 + namespace done once in the _config.h, not in _epilog.h.
1.7020 +
1.7021 + * _prolog.h: undef std not required in all cases; instead this is useful only
1.7022 + for redefinition of std namespace, and should be done in the _config.h.
1.7023 +
1.7024 + * _epilog.h: include of _config.h has no sense here.
1.7025 +
1.7026 + * _threads.h: wrong import of _STL namespace into global namespace
1.7027 +
1.7028 +2004-02-18 Francois Dumont <dums@s...>
1.7029 +
1.7030 + * _list.h: Modification of the base list class based on the slist implementation.
1.7031 + The list do not allocate a node systematically anymore even for the empty list.
1.7032 +
1.7033 +2004-02-14 Petr Ovtchenkov <ptr@Island...>
1.7034 +
1.7035 + * debug/_relops_cont.h, debug/_string.h: fix typos in template specializations.
1.7036 +
1.7037 +2004-02-12 Petr Ovtchenkov <ptr@Island...>
1.7038 +
1.7039 + * explore/icc.mak: experimental make system support Intel's icc compiler
1.7040 + on Linux.
1.7041 +
1.7042 +2004-02-05 Petr Ovtchenkov <ptr@Island...>
1.7043 +
1.7044 + * iostream.cpp, _ios_base.h, iostream, locale_impl.h, locale_impl.cpp:
1.7045 + revise standard iostream and locale initialization, remove worrits about
1.7046 + order of static objects initialization as soon as possible; all real
1.7047 + initialization situated in the locale_impl.cpp; locale initialization
1.7048 + moved to _Locale_impl constructor---locale will be correctly initialized
1.7049 + either via direct locale usage, or during standard iostream initialization,
1.7050 + as ios_base member. This changes may lead to problems with Digital Mars
1.7051 + and Borland compilers---should be checked and fixed.
1.7052 +
1.7053 +2004-02-03 Francois Dumont <dums@s...>
1.7054 +
1.7055 + * integration of a portage to the Windows CE .NET (eMebedded Visual
1.7056 + C++ 4) compiler thanks Zdenek Nemek
1.7057 +
1.7058 +2004-02-02 Petr Ovtchenkov <ptr@Island...>
1.7059 +
1.7060 + * _iostream_string.h: avoid usage of iostring in the _STLP_DEBUG mode,
1.7061 + due to iostring::iterator not convertable into string::iterator in this
1.7062 + mode.
1.7063 +
1.7064 +2004-01-29 Petr Ovtchenkov <ptr@Island...>
1.7065 +
1.7066 + * _string.c: avoid 'insert( iterator, const_iterator, const_iterator )'
1.7067 + instantiation in the 'replace'---VC6 has problem here.
1.7068 +
1.7069 +2004-01-29 Francois Dumont <dums@s...>
1.7070 +
1.7071 + * facets_byname.cpp: correction of the typeid use thanks to Ulrich Eckhardt.
1.7072 +
1.7073 + * _iostream_string.h: creation and integration of a special string used within
1.7074 + the iostream implementation to display floating point numbers. It mixes a static
1.7075 + buffer with a dynamic one to improve performance.
1.7076 +
1.7077 +2004-01-22 Francois Dumont <dums@s...>
1.7078 +
1.7079 + * _new.h: check of the _STLP_USE_EXCEPTIONS before correction of the new
1.7080 + operator behavior and bad_alloc exception definition.
1.7081 +
1.7082 + * _ios_base.h: removal of the _M_get_facet function not fully implemented
1.7083 + and unused thanks Ulrich Eckhardt.
1.7084 +
1.7085 + * _algo.h: correction of the __less_2 helper struct to remove
1.7086 + copy thanks Sergey Volk
1.7087 +
1.7088 +2004-01-19 Petr Ovtchenkov <ptr@Island...>
1.7089 +
1.7090 + * _debug.c: avoid recursive locks in __owner_list's mutex---equivalent
1.7091 + code use underlie iterators, not debug wrapper iterators. By the way this
1.7092 + approach faster---no excessive checks; solved by Boris Fomitchev.
1.7093 +
1.7094 + * _thread.h, _debug.h: recursive-safe mutex structure removed---not
1.7095 + required more; see reason just above.
1.7096 +
1.7097 +2004-01-09 Francois Dumont <dums@s...>
1.7098 +
1.7099 + * type_manip.h: Correction of the _IsSame struct to have both partial template
1.7100 + specialization version and the other behaving similarly.
1.7101 +
1.7102 +2004-01-07 Francois Dumont <dums@s...>
1.7103 +
1.7104 + * _deque.c: Mysterious copies of instance to store in the containers
1.7105 + has been removed.
1.7106 +
1.7107 +2004-01-05 Francois Dumont <dums@s...>
1.7108 +
1.7109 + * _list.h, _slist.h: Implementation of the pointer specialization for list
1.7110 + and slist.
1.7111 +
1.7112 +2003-12-31 Petr Ovtchenkov <ptr@Island...>
1.7113 +
1.7114 + * _vector.h, _vector.c, _hashtable.h: remove excess vector redefinitions
1.7115 +
1.7116 + * debug/_vector.h: pointer specialization for vector not derived
1.7117 + from _Vector_base, so we should avoid references on _Vector_base
1.7118 + class members in debug wrapper.
1.7119 +
1.7120 +2003-12-22 Francois Dumont <dums@s...>
1.7121 +
1.7122 + * _string.h: use _STLP_FORCE_STRING_TERMINATION flag to enforce
1.7123 + null-termination of data associated with string.
1.7124 +
1.7125 +2003-12-20 Francois Dumont <dums@s...>
1.7126 +
1.7127 + * _vector.h: Implementation of the pointer specialization for vector to
1.7128 + avoid code bloat.
1.7129 +
1.7130 +2003-11-29 Francois Dumont <dums@s...>
1.7131 +
1.7132 + * _string.h: Implementation of the short string optimization.
1.7133 + basic_string have now a short static buffer to avoid call
1.7134 + to the allocator when the string is short.
1.7135 +
1.7136 +2003-11-29 Petr Ovtchenkov <ptr@Island...>
1.7137 +
1.7138 + * cwchar, _config.h, _cwchar.h, _stdio_file.h, c_locale.h:
1.7139 + support for OpenBSD, gcc 3.3.1
1.7140 +
1.7141 + * src/explore/Makefiles/gmake/...: support for OpenBSD, gcc 3.3.1
1.7142 +
1.7143 +2003-11-17 Francois Dumont <dums@s...>
1.7144 +
1.7145 + * _alloc.h: Move of the definition of _Alloc_Traits before inclusion
1.7146 + of _pthread_alloc.h; thanks Diego Klabjan
1.7147 +
1.7148 +2003-11-16 Petr Ovtchenkov <ptr@Island...>
1.7149 +
1.7150 + * _algobase.h, _algo.c: iter_swap and __insertion_sort don't
1.7151 + properly deduce value type of iterator, instead uses dereference's
1.7152 + return type; this occur when dereference return some proxy object,
1.7153 + convertible into value type.
1.7154 + Thanks Przemek Kuczmierczyk <przemekk834@tlen.pl> for report, test
1.7155 + and solution.
1.7156 +
1.7157 + * iterswp0.cpp, iterswp1.cpp, iterswp.cpp, stl_test.cpp,
1.7158 + stl_test.h, Makefile.inc (test/regression): move iterswp0_test,
1.7159 + iterswp1_test into iterswp.cpp, add new tests for properly deduce
1.7160 + value type of iterator, when dereference return some proxy object.
1.7161 +
1.7162 +2003-11-15 Francois Dumont <dums@s...>
1.7163 +
1.7164 + * _string.h: implementation of the expression template for string
1.7165 + addition with other string or C string or char.
1.7166 +
1.7167 + * _ostream.h: adoption of the classic (even if not clear in
1.7168 + the standard) ouput for short and int negative values in hexa
1.7169 + or octo bases that is display according its size for the compiler.
1.7170 + thanks Tanaka.
1.7171 +
1.7172 +2003-11-14 Petr Ovtchenkov <ptr@Island...>
1.7173 +
1.7174 + * src/c_locale.c, src/c_locale_glibc/c_locale_glibc2.c: step to
1.7175 + real locales support with glibc >= 2.2.x
1.7176 +
1.7177 + * src/c_locale_glibc/c_locale_glibc.c: bit fixes for locales
1.7178 + support with glibc < 1.90, and, possible, 1.90 <= glibc < 2.1;
1.7179 + we can't support this old code, so file
1.7180 + src/c_locale_glibc/c_locale_glibc.c is obsolete, and will be
1.7181 + removed.
1.7182 +
1.7183 + * src/explore, test/regression/explore: exprimental make system.
1.7184 +
1.7185 +2003-11-13 Petr Ovtchenkov <ptr@island...>
1.7186 +
1.7187 + * STLport (repository): current development moved to CVS HEAD stream.
1.7188 +
1.7189 + * STLport (repository): current development stream marked as STLport 5.0.
1.7190 +
1.7191 +2003-11-02 Francois Dumont <dums@s...>
1.7192 +
1.7193 + * _limits.c: Correction of the quiet and signaling NaN that was inverted
1.7194 + for several platform; thanks Alexey Sarytchev.
1.7195 +
1.7196 +2003-11-01 Francois Dumont <dums@s...>
1.7197 +
1.7198 + * _string.c: judicious correction for string::find_first_not_of to
1.7199 + improve performance; thanks Stephen Cleary.
1.7200 +
1.7201 + * _bitset.h: integration of a workaround for up to MSVC6 compilers
1.7202 + for the bitset input and output operators; thanks Jesse Booher.
1.7203 +
1.7204 + * _ostream.h, _istream.h: fix of a non-standard behavior of the seekp
1.7205 + and seekg calls and conformance to the latest 2003 standard; thanks Tanaka.
1.7206 +
1.7207 +2003-10-26 Francois Dumont <dums@s...>
1.7208 +
1.7209 + * _monetary.c: fix an other memory overrun on monetary display;
1.7210 + thanks Tanaka.
1.7211 +
1.7212 +2003-10-26 Petr Ovtchenkov <ptr@island...>
1.7213 +
1.7214 + * ioiter.cpp, gcc.mak, stl_test.h, stl_test.cpp, stl_test.exp
1.7215 + (test/regression): tests for postfix increment operator and
1.7216 + indirection of istreambuf_iterator.
1.7217 +
1.7218 +2003-10-25 Petr Ovtchenkov <ptr@island...>
1.7219 +
1.7220 + * _istreambuf_iterator.h: fix postfix increment operator
1.7221 + of istreambuf_iterator to provide conformance with
1.7222 + ISO/IEC 14882:1998(E), 24.1.1, p.511, i.e.
1.7223 + *r++ equivalent to { T tmp = *r; ++r; return tmp; }.
1.7224 + Thanks Tanaka for the report.
1.7225 +
1.7226 +2003-10-23 Francois Dumont <dums@s...>
1.7227 +
1.7228 + * debug/: modification of the invalidation of iterators to avoid
1.7229 + invalidation of the end iterator for the associative containers,
1.7230 + hashed containers and list on calls to clear/assign/assignment
1.7231 + operator. (thanks Alexey Sarytchev)
1.7232 +
1.7233 + * _rope.h: Correction of the rope::iterator and rope::const_iterator
1.7234 + copy constructor and assignment operator (thanks Bradley Grainger)
1.7235 +
1.7236 +2003-10-16 Francois Dumont <dums@s...>
1.7237 +
1.7238 + * _alloc.h: Add of the throw() specification on allocator comparision.
1.7239 +
1.7240 + * _iterator.h: Correction of the operator++(int) signature to conform
1.7241 + to the standard.
1.7242 +
1.7243 + * _ctype.h: tolower and toupper for wchar_t types.
1.7244 +
1.7245 + * _valarray.h: gslice_array::operator = (const value_type&) not
1.7246 + const anymore
1.7247 +
1.7248 + * _valarray.h: slice_array idem
1.7249 +
1.7250 + * _valarray.h: valarray<T> operator [](const gslice&) former version
1.7251 + was taking a copy of gslice
1.7252 +
1.7253 + * _codecvt.h: correction of the default codecvt class definition and
1.7254 + correction of the out method
1.7255 +
1.7256 + (all thanks Richard Peng)
1.7257 +
1.7258 +2003-10-16 Francois Dumont <dums@s...>
1.7259 +
1.7260 + * debug/: add of the iterator range check on all container constructors.
1.7261 +
1.7262 + * _string.h: correction of a bug on string auto referencing throught
1.7263 + some method like insert and replace. (thanks Tanaka)
1.7264 +
1.7265 + * _valarray.h: correction of the missing slice_array copy constructor
1.7266 + and assignment operator in the private section (thanks Tanaka)
1.7267 +
1.7268 +2003-10-11 Petr Ovtchenkov <ptr@island...>
1.7269 +
1.7270 + * _sstream.c: [io]?stringstream must do equivalent of seek at end,
1.7271 + after opened with ios_base::ate; this behaviour useful only when buffer
1.7272 + initialized by string; thanks Tanaka for the report.
1.7273 +
1.7274 +2003-10-06 Francois Dumont <dums@s...>
1.7275 +
1.7276 + * _istreambuf_iterator.h, _ostreambuf_iterator.h: correction
1.7277 + of the missing iterator base class (Thanks Tanaka)
1.7278 +
1.7279 +2003-10-05 Francois Dumont <dums@s...>
1.7280 +
1.7281 + * _string.h: correction of the replace implementation badling form
1.7282 + for self referencing
1.7283 +
1.7284 + * _string.h, _string.c: Modification of the _M_copy method
1.7285 + to _M_move as basic_string do not correctly handled self referecing;
1.7286 + thanks Tanaka
1.7287 +
1.7288 +2003-09-25 Francois Dumont <dums@s...>
1.7289 +
1.7290 + * como 4.3.0 on linux support (thanks Synge Todo and Karel Gardas)
1.7291 +
1.7292 + * Quazy-leak patch: make memory detection tools happier,
1.7293 + option _STLP_LEAKS_PEDANTIC in _site_config.h. (thanks Petr Ovtchenkov)
1.7294 +
1.7295 +2003-09-19 Francois Dumont <dums@s...>
1.7296 +
1.7297 + * Support of the Linux Intel C++ support (thanks Blaine Kubesh)
1.7298 +
1.7299 + * FreeBSD support update (thanks Guy Middleton).
1.7300 +
1.7301 + ----
1.7302 +
1.7303 + * codecvt.cpp: charcode correction in the do_in method (thanks J Hamilton report)
1.7304 +
1.7305 + ----
1.7306 +
1.7307 + * _valarray.h: Correction of the missing explicit keyword in front of one of the valarray constructors
1.7308 + (thanks Stephen Clamage)
1.7309 +
1.7310 + ----
1.7311 +2003-08-10 Francois Dumont <dums@s...>
1.7312 +
1.7313 + * stdexcept: Correction of the mysterious 50 messages from VC7.Net (thanks Krish S)
1.7314 +
1.7315 + ----
1.7316 +
1.7317 + * _vector.h: implementation of the max_size method based on the allocator::max_size method
1.7318 + (thanks Gennaro Prota from the boost forum).
1.7319 +
1.7320 + ----
1.7321 +
1.7322 + * _vector.c: add of the standard length_error exception to the reserve method (thanks Steven Youngs).
1.7323 +
1.7324 + ----
1.7325 +
1.7326 + * _alloc.h: add of a check of the number of element require to allocator::allocate to avoid a possible
1.7327 + size_type overflow (thanks Steven Youngs).
1.7328 +
1.7329 + ----
1.7330 +
1.7331 + * _istream.h: move of the ws implementation within the header to avoid undefined symbol
1.7332 + under NO_CUSTOM_IO mode (thanks Ulrich Eckhardt)
1.7333 +
1.7334 + ----
1.7335 +
1.7336 + * ctype.cpp : charcode correction (thanks Markus Stier reports and Alberto Barbati correction)
1.7337 +
1.7338 + ----
1.7339 +
1.7340 + * _function.h : all function can now be used in a non-const world (thanks Alexey Kirjushkin)
1.7341 +
1.7342 + ----
1.7343 +
1.7344 + * move constructor framework integration (thanks Francois Dumont)
1.7345 +
1.7346 + ----
1.7347 +
1.7348 + * containers interface correction for standard compliance when using explicit
1.7349 + intanciation of not default constructible type. (thanks Alexei Agafonov report)
1.7350 +
1.7351 + ----
1.7352 +
1.7353 + * iostream.cpp, locale_impl.cpp : static initialization made robust for case of
1.7354 + dynamic loader circular dependancies (Thanks Alexey Sarytchev for the report)
1.7355 +
1.7356 + ----
1.7357 +
1.7358 + * _function.h : integration of a new workaround for mem_fun_* family
1.7359 + for compiler having return void bug (Thanks Pavel Kuznetsov).
1.7360 +
1.7361 + * stl_solaris.h : v8plus compilation fix (Thanks Mukesh Kapoor)
1.7362 +
1.7363 + * num_put_float.cpp : FreeBSD fix
1.7364 +
1.7365 + * _construct.h : fixed case for compilers with default integer
1.7366 + constructor bug
1.7367 +
1.7368 + ---
1.7369 +
1.7370 + * fstream.cpp : text file stream position bug correction (thanks Christopher Kohlert)
1.7371 +
1.7372 + ---
1.7373 +
1.7374 + * _num_put.c : Correction of the display of the min 64 bits signed integer values
1.7375 + like numeric_limits<__int64>::min() on WIN32 for instance (thanks Anders Dalvander)
1.7376 +
1.7377 + ---
1.7378 + * _num_put.c : Add of the '+' sign when requested for the unsigned integer display
1.7379 + (thanks Francois Dumont)
1.7380 +
1.7381 + ---
1.7382 +
1.7383 + * debug : many missing iterator invalidation corrected (thanks Detlev V.Davidson and Francois Dumont)
1.7384 +
1.7385 + ---
1.7386 +
1.7387 + * _new.h : introduction of a new config compiler switch for those which do define
1.7388 + bad_alloc but that do not throw it! (thanks ?)
1.7389 + ---
1.7390 + * _new.h : class nothrow_t changed to struct nothrow_t (Thanks Francois Dumont)
1.7391 + ---
1.7392 + * _bvector.h : Addition of the |= and &= operator on the _Bit_reference struct (thanks Ed Rice)
1.7393 + ---
1.7394 + * Performance bug in type_traits.h fixed (Thanks Francois Dumont)
1.7395 + ---
1.7396 + * Added Linux spin lock code ()
1.7397 + ---
1.7398 + * Added GCC-3.x configurations
1.7399 +
1.7400 + * Fixed HP aCC support
1.7401 +
1.7402 + * Added OpenWatcom support
1.7403 +
1.7404 + * version numbers bumped
1.7405 +
1.7406 + * iostreams ported to EMX (gcc on OS/2) (Thanks Martin Schaffoener)
1.7407 +
1.7408 + * iostreams ported to CRAY Unicos C90, T90, and J90 (Thanks Geir Johansen)
1.7409 +
1.7410 + * stl_sunpro.h : fixed mbstate definition for SUN 4.2 (thanks lengzq)
1.7411 +
1.7412 + * complex.cpp, _complex.h : template<> used for specializations
1.7413 +
1.7414 + * _num_put.c : unused locale variable removed (thanks Petr Ovtchenkov)
1.7415 +
1.7416 + * _algo.h : __reverse beautified (thanks Kabanov)
1.7417 +
1.7418 + * dll_main.cpp : force_link() forced to be linked in
1.7419 +
1.7420 + * stl_msvc.h : config changes for .NET
1.7421 +
1.7422 + * _auto_ptr.h : "struct" changed to "class"
1.7423 +
1.7424 + * _istream.c : M_read_unbuffered fixed (thanks Stefan Schwarzer )
1.7425 +
1.7426 + * stl_gcc.h : added missing inclusion for SCO platform (thanks Emmanuel Soden)
1.7427 +
1.7428 + * _tree.c : optimized insert_unique (thanks Timothy)
1.7429 +
1.7430 + * _algo.c : relaxed type requirements for lower_bound, upper_bound, binary_search
1.7431 +
1.7432 + * _algo.h : adjacent_find() expressed with compare-function flavour
1.7433 +
1.7434 + * cpp_runtime/typeinfo : made adjustments for .NET (Thanks Daniel)
1.7435 +
1.7436 + * cstd/cassert : guard removed (thanks Evan Cheng)
1.7437 +
1.7438 +The following changes were made in 4.5.3 since 4.5.1 release:
1.7439 +
1.7440 + * iostreams ported to Windows CE (thanks Andrew Waters)
1.7441 +
1.7442 + * iostreams ported to AmigaOS (thanks Steven Solie)
1.7443 +
1.7444 + * iostreams ported to NCR 3.x (thanks Emmanuel Soden)
1.7445 +
1.7446 + * _hash_map::operator[] : enhanced to avoid calling default object constructor
1.7447 + (Thanks Yuri Taranenko for the report)
1.7448 +
1.7449 + * Identifier "__value" changed everywhere to "__val" to avoid clashes with Microsoft's "managed C++" keyword (thanks Crow for the report)
1.7450 +
1.7451 + * Most containers : swap() fixed to swap non-stateless allocators correctly (thanks Scott Meyers)
1.7452 +
1.7453 + * _sstream : fix to account for ios_base::app flag properly
1.7454 +
1.7455 + * type_traits.h : _IsOKToMemCpy() fixed to only allow memcpy() for same type arguments (thanks Ed Brey for the report)
1.7456 +
1.7457 + * stl/_num_put.c, stl/_list.c : workarounds for Debian gcc (thanks Levente Farkas)
1.7458 +
1.7459 + * <typeinfo> : fixed MS workaround (thanks Wil Evers, Andrew Ushakov)
1.7460 +
1.7461 + * _pthread_alloc.h : added per_thread_allocator class; returns memory to the same thread it's been allocated in.
1.7462 +
1.7463 + * _iterator_old.h : restored ->() operator for MSVC (thanks Daniel Anderson)
1.7464 +
1.7465 + * a bunch of MPW fixes (thanks Tsutomu Yoshida)
1.7466 +
1.7467 + * _config_compat.h : fixed compatibility definition for _STLP_NO_EXCEPTIONS (thanks Nicolas)
1.7468 +
1.7469 + * _fstream.c : fixed bug in _M_seek_init (thanks Pavel Kuznetsov)
1.7470 +
1.7471 + * _rope.h : rope<>::swap() methods fixed for non-partial ordering case (thanks Eric Musser)
1.7472 +
1.7473 + * comlex_trig.cpp : fixed bug on SGI (thanks Mortis)
1.7474 +
1.7475 + * A bunch of fixes for HP aCC compilation with -AA option (thanks John Bossom)
1.7476 +
1.7477 + * *.c files : added conditional inclusion of corresponding *.h file to fix xlC issues with -tempinc option (thanks Alla Bogolyubov for the report)
1.7478 +
1.7479 + * _auto_ptr.h : "struct" changed to "class" (thanks Alex Pinsker for the report)
1.7480 +
1.7481 + * _config.h/stl_user_config.h : handling of macro _STLP_WHOLE_VENDOR_STD rectified
1.7482 +
1.7483 + * _num_put.c : do_put(const void*) changed to output pointers in hex format (thanks Alex Rosenberg)
1.7484 +
1.7485 + * test/eh/test_algobase.cpp : fixed alignment to work on 64-bit architectures
1.7486 +
1.7487 +The following changes were made in 4.5.1 beta 1 since 4.5 release:
1.7488 +
1.7489 + * _config.h, _epilog.h : new namespace inclusion schema implemented for own iostreams mode
1.7490 + (no std:: redefinition; _STL:: namespace imported into std::, instead of std:: imported to _STL.
1.7491 + C library header files wrappers become obsolete if this mode is used and no own namespace is selected.
1.7492 + They will be moved out to distinct directory in the next release, and default is going to be no own namespace
1.7493 + with own iostreams.)
1.7494 + For some compilers (VC6), this only works with _STLP_NO_OWN_NAMESPACE and _STLP_OWN_IOSTREAMS settings.
1.7495 +
1.7496 + * iostreams ported to SCO OpenServer (thanks Emmanuel Soden)
1.7497 +
1.7498 + * sparc_atomic.s : added "stbar" to fix multiprocessor crashes on SPARC
1.7499 +
1.7500 + * dll_main.cpp : forced link of Bs_G static data members (thanks Sandy Martel). Function wrapped in STLport namespace.
1.7501 +
1.7502 + * _alloc.c : fixed _STLP_CHUNK_MALLOC for debug malloc configuration (thanks Markus Sch pflin)
1.7503 +
1.7504 + * _config_compat.h : fixed compatibility section for _STLP_NO_OWN_IOSTREAMS
1.7505 +
1.7506 + * fstram.cpp , vc6.unicode.mak : fixed bug in wide streams handling for VC6 (thanks Jim Dolter)
1.7507 +
1.7508 + * etc/*.txt : files list broken up into several categories for future reorganization
1.7509 +
1.7510 + * stl_msvc.h : fixed library selection for .NET (Thanks Franz Zetting)
1.7511 +
1.7512 + * _ftsream.h, iostream.cpp : fixed compilation for _STLP_NO_EXTENSIONS case (thanks Ben Dorman for the report)
1.7513 +
1.7514 + * char_traits.h : fpos<> operators == made members (thanks Thomas Witt)
1.7515 +
1.7516 + * _threads.h : added using directive for Solaris x86 compile (thanks Mukesh Kapoor)
1.7517 +
1.7518 + * _threads.h : fixed InterlockedXXX definitions for VC++ 6.0 SP5 (thanks AndreasM)
1.7519 +
1.7520 + * gcc-install-apple-macosx.mak : INSTALL_STEP set to install_unix (Thanks Tron Thomas)
1.7521 +
1.7522 + * common.mak : default install directory for Unix set to /usr/local
1.7523 +
1.7524 + * _string.h : _M_null expressed via _STLP_DEFAULT_CONSTRUCTED (Thanks Anthony)
1.7525 +
1.7526 + * _site_config.h : made sure _STLP_NO_THREADS are set if _NOTHREADS is on (Thanks Jeppe Madsen)
1.7527 +
1.7528 + * _config.h : _STLP_WIN32THREADS is set (bugfix) ( thanks to Andreas Malzahn )
1.7529 +
1.7530 + * _num_put.c, common_rules.mak : patches by Levente Farkas
1.7531 +
1.7532 + * etc/STLport-4.5.1.spec : spec file to build STLport-4.5.1 RPM added (thanks Levente Farkas)
1.7533 +
1.7534 + * _auto_ptr.h , _debug.c, _debug.h : debug check for auto_ptr pointer added (thanks Gerd Hoeren for the idea)
1.7535 +
1.7536 + * debug/_vector.h : invalidation for erase() corrected not to invalidate current iterator (Thanks ALberto Barbati)
1.7537 +
1.7538 + * stl_bc.h : restored automatic library link directive for cases when STLport is not a native library
1.7539 +
1.7540 +
1.7541 + * _auto_ptr.h : template constructor conversion bug fixed (thanks mbergal)
1.7542 +
1.7543 + * MIngw32 patches integrated (thanks Wu Yongwei)
1.7544 +
1.7545 + * src/complex_impl.h : case for DEC CXX changed to general, instead of extension functions for float and long double, to get it compliled with CC 6.1 (thanks Tony McConnell)
1.7546 +
1.7547 + * dll_main.cpp : added __malloc_alloc instantiation (thanks Michael Ehrig)
1.7548 +
1.7549 + * _debug.c : fixed race condition in _M_detach (thanks Achim Stremplat)
1.7550 +
1.7551 + * test/*/hpacc.mak : fixed flags and libs (thanks Michael Ehrig)
1.7552 +
1.7553 + * typeinfo : added fix for MS VC ::bad_cast confusion (thanks Alberto Barbati)
1.7554 +
1.7555 + * debug/_vector.h : removed extra guard for MSCV around member template constructor (thanks Alberto Barbati)
1.7556 +
1.7557 + * _fstream.h : added extension basic_fstream<> constructors taking protection parameter (thanks Mukesh Kapoor for the idea)
1.7558 +
1.7559 + * stl_sunpro.h : added additional C include directory choice for Solaris 6&7 (thanks John E. Bossom)
1.7560 +
1.7561 + * _vector.c : added _vector.h inclusion for _STLP_LINK_TIME_INSTANTIATION case (thanks Alex Vanic)
1.7562 +
1.7563 +
1.7564 + * _num_put.c : fixed overflow case with grouping (thanks Will Evers)
1.7565 +
1.7566 + * _istreambuf_iterator.h : fixed distance_type return type (thanks Anthony Williams)
1.7567 +
1.7568 + * debug/_vector.h : debug version of push_back() added (thanks)
1.7569 +
1.7570 + * Iostreams ported to LynxOS 3.0 (thanks Dmitry Azovtsev)
1.7571 +
1.7572 + * wrappers/*.h : added inclusions of the master header to fix xlC 3.x compile (Thanks Dmitry Azovtsev)
1.7573 +
1.7574 + * Changes for BCB6 integration (thanks Nathan York)
1.7575 +
1.7576 + * Removed all dead code blocks marked by #if OBSOLETE and #if 0
1.7577 +
1.7578 + * Updates build spec file for Linux rpm (thanks Levene Farkas, Harold van Oostrom)
1.7579 +
1.7580 + * complex_trig.cpp : limits changed to be static, for performance optimization (thanks Sergei Nikolaev)
1.7581 +
1.7582 + * _algo.c : eliminated default-constructed iterators, to lift unnecessary restriction (thanks Tonci Tomic )
1.7583 +
1.7584 + * _vector.h : fixed bug in assign() : copy used instead of __copy_aux (Thanks Tim Finer)
1.7585 +
1.7586 + * stl_sunpro.h : restored _STLP_HAS_NO_NEW_C_HEADERS switch for SUN CC 4.2
1.7587 +
1.7588 + * <new> : __stl_new definition put into the namespace (thanks Satoshi Nakamura)
1.7589 +
1.7590 + * bcb*.mak : fixed md command and DYN_LINK (thanks Kirby Zhou)
1.7591 +
1.7592 + * stl_user_config.h : added _STLP_USE_CUSTOM_CHAR_TYPES_IO switch to optimize iostreams for default case
1.7593 +
1.7594 + * debug/_vector.h : fixed debug check bug (thanks Gerd Hoeren)
1.7595 +
1.7596 + * _alloc.h : allocator::construct uses std::_Construct (thanks Gert Grossmann)
1.7597 +
1.7598 + * stl/_alloc_old.h : restored (thanks Gert Grossmann)
1.7599 +
1.7600 + * stl/_threads.h : fixed _STLP_ATOMIC_xxx macros for DEC (thanks Gert Grossman)
1.7601 +
1.7602 + * src/_locale_impl.cpp : added missing guards for codecvt<> in _STLP_NO_MBSTATE_T case
1.7603 +
1.7604 +
1.7605 +The following changes were made in 4.5 release since 4.5 beta 8 :
1.7606 +
1.7607 + * _threads.h, debug/_debug.h etc : STLport iostreams library made binary compatible with user code compiler w/o multithreaded switch, for some platforms
1.7608 +
1.7609 + * config/stl_msvc.h, <cmath> : corrected _STLP_NO_USING_FOR_GLOBAL_FUNCTIONS for VC++ 6.0 SP5
1.7610 + (Thanks Alberto Barbati)
1.7611 +
1.7612 + * src/vc6.mak : RC macro definition restored (Thanks Graham)
1.7613 +
1.7614 + * stl/_cmath.h, <cmath> : parts of code moved to <cmath> as <valarray> uses it (Thanks Synge Todo)
1.7615 +
1.7616 + * stl/_tree.c : fixed insert_unique() with a hint bug (Thanks Serge Pashkov)
1.7617 +
1.7618 + * src/gcc-*.mak : removed -nostdinc++ option
1.7619 +
1.7620 + * stl_solaris.h : definition of _STLP_SUNPRO_EXCLUDE made dependant on _XOPEN macro instead of SUN CC macros (Thanks ecohen for the report)
1.7621 +
1.7622 + * fstream.cpp : mmap_chunk made to be 1M instead of 16M as was originally intended (thanks Alexey Starikovskiy)
1.7623 + * stl_sunpro.h : _STLP_LIMITED_DEFAULT_TEMPLATES not defined for compat mode anymore ( thanks Michael Kopp)
1.7624 + * dll_main.cpp : added instantiation for _Swap_lock_struct<> (thanks simonb)
1.7625 +
1.7626 + * _ostream.c : fixed formatting bug for width()==1
1.7627 +
1.7628 + * config/_epilog.h : added option pop section for Borland.
1.7629 +
1.7630 + * stl/_threads.h : fixed InterlockedXXX declarations for MS .NET (thanks Piers Haken)
1.7631 +
1.7632 + * vc7.mak makefile added for MS VC++ 7.0 (.NET)
1.7633 +
1.7634 + * fixed _STLP_ITERATOR_CATEGORY, etc. for Mwerks CodeWarrior 5.0
1.7635 +
1.7636 + * stl/_num_put.c : fixed operator<<(void*) to use _STLP_LONG_LONG where available.
1.7637 +
1.7638 + * _STLP_WHOLE_VENDOR_STD option is back supported (Thanks anton ephanov for the input)
1.7639 +
1.7640 + * _cmath.h : added guard to mask additional overloads (thanks Tim Smith)
1.7641 +
1.7642 + * stl_solaris.h : mbstate_t stuff defined here, old-style C headers used (Thanks Mukesh Kapoor)
1.7643 +
1.7644 + * type_traits.h : __default_constructed() inlined (Thanks Matt Davies)
1.7645 +
1.7646 + * new.h : fix for gcc-3.0 to look in backward directory (Thanks Ken)
1.7647 +
1.7648 + * stlport/using/h/streambuf.h added (Thanks Gennadiy)
1.7649 +
1.7650 + * A bunch of changes for Borland static and DLL compile (Thanks Nathan York)
1.7651 +
1.7652 + * stl/_algo.c : fixed find_end() bug (Thanks Alberto Barbati)
1.7653 +
1.7654 + * stl/_queue.h : priority_queue<>::_comp renamed to "comp" as standard states (thanks Todd Greer)
1.7655 +
1.7656 + * _limits.c : added correct data member representations for AS400 and Alpha machines (thanks Holger Stash)
1.7657 +
1.7658 + * _vector.h : added check to avoid calling allocator<>::deallocate(0) (thanks Stephen Cleary)
1.7659 +
1.7660 + * config/_prolog.h, config/_epilog.h : added push/pop pack(8) pragmas for MSVC (thanks Todd Greer, Alberto Barbati)
1.7661 +
1.7662 + * gcc.mak's : default spelling for "-pthreads" option changed to "-pthread" as more platforms use that.
1.7663 +
1.7664 +
1.7665 +The following changes were made in 4.5 beta 8 since 4.5 beta 7 :
1.7666 +
1.7667 + * stl/_fstream.c : _M_underflow bug fix for custom codecvt facets (thanks Alberto Barbati)
1.7668 +
1.7669 + * bcc55.mak : c_locale.c added to the link command (thanks Steve Loves)
1.7670 +
1.7671 + * _iterator_base.h & many other places : iterator tags are being accepted by const reference
1.7672 + instead of value, to fix segmentation faults experienced on certain platforms with beta7.
1.7673 + That also should improve efficiency on same platforms (apparently, empty unreferenced
1.7674 + objects with no constructors/destructors were copied on the stack when passed by value).
1.7675 + Accompanied change eliminates hardcoded deference hack used in previous beta.
1.7676 + Thanks everybody who reported this.
1.7677 +
1.7678 + * stl_user_config.h : added _STLP_GCC_USES_GNU_LD switch. This is for those platforms
1.7679 + where native linker does not let gcc to implement automatic instantiation of static
1.7680 + template data members (Tru64, AIX, HP-UX).
1.7681 + It is being put in this file as there is no automatic way to check if we are using GNU ld or not.
1.7682 +
1.7683 + * _range_erors.h : depandancy on <stdexcept> and <string> removed for own iostreams mode
1.7684 + (thanks Doug Gilbert)
1.7685 +
1.7686 + * debug/_list.h : "typename" added in new methods (thanks Doug Gilbert)
1.7687 +
1.7688 + * _config.h, src/common_macros.mak : beta version number bumped
1.7689 +
1.7690 + * src/ftream.cpp, c_locale_win32.c : fixes for UNICODE compilation (thanks Valo)
1.7691 +
1.7692 + * stl_gcc.h, etc : changes for GCC support on Tru64 (thanks Tobias Ernst)
1.7693 +
1.7694 + * _alloc.c : for MS VC, malloc_dbg only used when _STLP_DEBUG_ALLOC is set, not for all debug configs
1.7695 + (Thanks Anton Ephanov)
1.7696 +
1.7697 + * test/eh/gcc.mak : directories stuff fixed (Thanks Brodie)
1.7698 +
1.7699 + * stl/_complex.h : fixed declarations for long double specializations (Thanks Tsutomu Yoshida)
1.7700 +
1.7701 + * locale_byname.cpp, etc. : fixes for Apple compilers by Tsutomu Yoshida.
1.7702 +
1.7703 + * _ios_base.h : __evenk id changed not to clash with MS VC++ 7 (thanks Paul Ghezzi)
1.7704 +
1.7705 + * _fstream.c : added basic_filebuf constructor workaround for compiler which do not initialize builtins
1.7706 + to zero when default constructed (thanks Alberto Barbati)
1.7707 +
1.7708 + * _locale.h : relaxed guerd around templated locale constructor (thanks Alberto Barbati)
1.7709 +
1.7710 + * stl_mwerks.h : changes to accomodate CodeWarrior 6.2 (thanks cprosser)
1.7711 +
1.7712 + * stl/_cmath.h : extracted from <cmath> for better decoupling
1.7713 +
1.7714 + * stl/_std_prolog.h, stl/_std_epilog.h : hooks for future alternative namespace inclusion style.
1.7715 +
1.7716 + * config/stl_gcc.h : gcc-3.0 now supported
1.7717 +
1.7718 + * src/gcc-beos.h : only static library is being built (dynamic stil don't work) (thanks John Maddock)
1.7719 +
1.7720 + * using/iostream : included using/istream and using/ostream
1.7721 +
1.7722 + * dll_main.cpp : force_link() fix to prevent numeric_limits static members and
1.7723 + _M_increment/decrement from _tree.c from being optimized out by VC++
1.7724 + (thanks Sofus Mortensen, Alberto Barbati )
1.7725 +
1.7726 + * _alloc.c : added CHECK_NULL_ALLOC for _STLP_CHUNK_ALLOC with malloc, to throw exception if malloc returns 0 (thanks ghunt)
1.7727 +
1.7728 + * stl_bc.h, <exception> : fixed Borland C++ import of unexpected handler stuff
1.7729 +
1.7730 + * stl_ibm.h, etc. : fixes for IBM VisualAge 5.02 to compile
1.7731 +
1.7732 + * type_traits.h : bool2type<> changed to be parameterized on int, to work around SUN CC bugs (probably others, too)
1.7733 +
1.7734 +The following changes were made in 4.5 beta 7 since 4.1 beta 6 :
1.7735 +
1.7736 + * sparc_atomic.s : file missing from the distribution restored
1.7737 +
1.7738 + * etc/ subdirectory created; miscellanous files moved there
1.7739 +
1.7740 + * STLport ported to BeOs, complete with iostreams (thanks John Maddock)
1.7741 +
1.7742 + * Macro _STLP_NO_SGI_IOSTREAMS renamed to _STLP_NO_OWN_IOSTREAMS, old references to SGI removed;
1.7743 +
1.7744 + * "prepare" target added to all makefiles in src/; should be run before using STLport;
1.7745 + on most platforms it's empty, on some of them it creates necessary symbolic links, etc.
1.7746 +
1.7747 + * stl/_deque.h : deque<>::erase bug (introduced in 4.1b4) fixed (thanks to BruceFlorman)
1.7748 + : default parameter in constructor bug fixed (Thanks to Alex Vanic)
1.7749 +
1.7750 + * stl_msvc.h : explicit template function agruments enabled for VC++;
1.7751 +
1.7752 + * stl_wince.h : added <windows.h> inclusion
1.7753 +
1.7754 + * stl/_limits.h : numeric_limits<bool>::digits changed from 0 to 1 (Thanks Mukesh Kapoor)
1.7755 +
1.7756 + * stl/_function_base.h : added __identity_element() (extension name), _numeric.h : this one used instead of identity_element() (Thanks Hafeez)
1.7757 +
1.7758 + * stl_msvc.h : explicit template function agruments enabled for VC++;
1.7759 +
1.7760 + use_facet<> now fully conforms to the standard with VC++. (Thanks Jeff Kohn for the input)
1.7761 +
1.7762 + * fstream.cpp : LARGE_INTEGER used to work around Intel shift instruction bug (thanks Thomas Meischner)
1.7763 + * fstream.cpp : ULL macro fixed for Win32
1.7764 + * fstream.cpp : Added test for for INVALID_HANDLE_VALUE and NULL base and _M_view_id,
1.7765 + for _M_close on Win32 (Thanks Stephen Baker)
1.7766 + * fstream.cpp : Fixed corner case with mmap() on EOF (Thanks Jens Maurer)
1.7767 +
1.7768 + * _istream.c : fixed _M_read_buffered sssso that it does not skip delimiters (Thanks Gerd Hoeren)
1.7769 +
1.7770 + * stl/_string.h : operator __std_string() uses constructor with a size to correctly initialize string containing null chars (Thanks Armin)
1.7771 +
1.7772 + * iomanip : added operator for setfill object and istream (was ostream only) (Thanks Mukesh Kapoor)
1.7773 +
1.7774 + * stl/_locale.h , stl_intel.h : fixes for Intel 5.0 compiler (Thanks Anton and Marcello Pietrobon)
1.7775 +
1.7776 + * stl_solaris.h : added _STLP_NO_NATIVE_WIDE_FUNCTIONS
1.7777 +
1.7778 + * New makefiles added for Intel C++ 5.0 and VC++ 6.0 in src/, test/eh, test/regression (Thanks to Marcello Pietrobon)
1.7779 +
1.7780 + * _STLP_NO_LONG_DOUBLE case handled for STLport iostreams as well (thanks John Daniel)
1.7781 +
1.7782 + * SUN CC compiler template cache is being properly cleaned up (Thanks Whitney Kew)
1.7783 +
1.7784 + * dll_main.cpp : added extern "C" around DllMain() (Thanks Danny Smith)
1.7785 +
1.7786 + * type_traits.h : added bool parameter to shut up warnings on some compilers (Thanks glassman)
1.7787 +
1.7788 + * stl/_rope.h/.c, src/mrcpp.mak, src/mrc.mak, stl/_tree.h : MPW & MRC fixes by Tsutomu Yoshida
1.7789 +
1.7790 + * stl_gcc.h : added path for <exceptions> et al for gcc-2.95.3 on FreeBSD (Thanks to
1.7791 +
1.7792 + * _tree.h /_tree.c : pointers used as return values instead of iterators for implementation
1.7793 + functions, for efficiency.
1.7794 +
1.7795 + * _algo.h/.c : added leading underscrore to some symbols (Thanks to Ed James-Beckerman for the report)
1.7796 +
1.7797 + * dll_main.cpp : fixed nothrow object initialization (Thanks to Dan Ingold)
1.7798 +
1.7799 + * beta suffix in common_macros.mak updated (thanks to Whitney Kew)
1.7800 +
1.7801 + * c_locale_win32.c : incomple fix for locale completed (thanks to Alberto Barbati)
1.7802 +
1.7803 + * c_locale.h : _Locale_ALPHA definition for VC++ and mingw32 fixed (thanks Danny Smith)
1.7804 +
1.7805 + * _threads.h : fixed _DECTHREADS block to work on both DEC and HP
1.7806 +
1.7807 + * _hash_set.h : fixed typo in MSVC++ bug workaround ( Thanks to Jon_Hanson for the report)
1.7808 +
1.7809 + * stlport/strstream.h : fixed inclusion for MSVC 6 (Thanks Joachim Achtzehnter)
1.7810 +
1.7811 + * _config.h : _STLP_RETHROW changed to avoid warnings with NO_EXCEPTIONS (thanks Richmond)
1.7812 +
1.7813 + * _hashtable.c : prime list definition made consistent (thanks Rainer Schnitker)
1.7814 +
1.7815 + * stl_hpacc.h : _STLP_FORCE_ALLOCATORS workaround used for Version 3.15 also (thanks Rainer Schnitker)
1.7816 +
1.7817 + * stl/_string_io.c : fixed using directive in operator >>() (thanks Rainer Schnitker)
1.7818 +
1.7819 + * debug/_deque.h : a check in erase() fixed (thanks Andreas Malzahn)
1.7820 +
1.7821 + * debug/_list.h : added remove() to do iterator invalidation; range erase() fixed to do invalidation
1.7822 +
1.7823 + * stl_watcom.h : added switches; disabled own iosterams by default;
1.7824 + enabled ->() operator for iterators (thanks Steven Green)
1.7825 +
1.7826 + * <exception> : added throw spec for what(); stl_sgi.h : made _STLP_NO_EXCEPTIONS depend on __EXCEPTIONS macro (Thanks Anton Ephanov)
1.7827 +
1.7828 + * _string_io.c : operator << : fixed width() interpretation bug
1.7829 +
1.7830 + * stl_hpacc.h/cmath : fixed HP aCC settings for -AA option (thanks Doug Gilbert)
1.7831 +
1.7832 +
1.7833 +
1.7834 +The following changes were made in 4.1 beta 6 since 4.1 beta 5 :
1.7835 +
1.7836 + * _istream.h, _ostream.h, _ios.h, _fstream.h : guard macros fixed to not clash with .h files in "stlport" directory
1.7837 + Also all uses of those macros fixed. (thanks to Gerd Hoeren for the report)
1.7838 +
1.7839 + * _debug.c/_debug.h : fixed swap() for rb_tree and list (thanks to Gerd Hoeren for the report)
1.7840 + swap() changed not to invalidate any iterators, as prescribed by the standard
1.7841 +
1.7842 + * forced _REENTRANT to be defined when compiling with STLport iostreams and _STLP_DEBUG
1.7843 + (without _STLP_DEBUG it seems to be binary compatible even without that)
1.7844 +
1.7845 + * facets_byname.cpp source introduced to replace all xx_byname.cpp files;
1.7846 + restored separate facets .cpp complilation (they used to be included in locale_impl.cpp)
1.7847 +
1.7848 + * introduced _STLP_USE_PERTHREAD_ALLOC to optionally use per-thread allocator
1.7849 + (_Pthread_alloc from _pthread_alloc.h) as the deafult node allocator. Only works with pthreads for now.
1.7850 +
1.7851 + * Switches _STLP_DONT_REDEFINE_STD and _STLP_WHOLE_VENOR_STD are back (thanks to Anton Ephanov for the report)
1.7852 +
1.7853 + * _vector.h : fixed bug in template version of insert (Thanks to Yotam Medini for the report)
1.7854 +
1.7855 + * monetary.cpp : unneded hack for cygwin removed (thanks to Dean Sturtevant)
1.7856 +
1.7857 + * <iostream> : fixed _STLP_OUTERMOST_HEADER_ID macro
1.7858 +
1.7859 + * cin/cout/cerr redefined if no namespaces and SGI iostreams are used, for all compilers, just in case.
1.7860 + * _sparc_atomic.h : fixed and improved atomic ops for gcc
1.7861 +
1.7862 + * test/regression : non-backward-compatible old-style __STL_xx macros use changed to _STLP_xx
1.7863 +
1.7864 + * config/st_gcc.h : disabled non-standard "extern" use for non-DLL templates
1.7865 +
1.7866 + * mingw32 - used 'windows.h replacement' section in _threads.h (thanks to Danny Smith)
1.7867 +
1.7868 + * locale Win32 bug fixed (thanks to Alberto Balbarti)
1.7869 +
1.7870 + * mingw32 : _STLP_CONST_INIT_BUG defined for dll (thanks to Danny Smith)
1.7871 +
1.7872 + * "make clean" glitches fixed (thanks to Whitney Kew for the report)
1.7873 +
1.7874 + * _fstream.c : fixed codecvt bug for variable width encoding
1.7875 +
1.7876 + * _STLP_ABORT macro introduced to avoid clashes with third-party sw redefining abort() (thanks to Jerry)
1.7877 +
1.7878 + * c_locale_win32 : fixed parse bug in __ParseLocaleString (thanks to Danny Smith)
1.7879 +
1.7880 + * extra declspecs removed from templates to fix VC++ 7.0 ; only concrete classes have specifiers (thanks to Holger Stasch for the report)
1.7881 +
1.7882 + * stl_msvc.h, _hashtable.h/.c : fixes for IA64 compilation (thanks to Rainer Schnitker )
1.7883 +
1.7884 + * fixed bugs in "make install" on Unix (thanks to Carlos Paniago)
1.7885 +
1.7886 + * dll_main.cpp : DisableThreadLibraryCalls used for optimization (thanks to Alberto Barbati)
1.7887 +
1.7888 + * dll_main.cpp : a dummy function added to force <limits> guts for static VC++ link (thanks to Alberto Barbati)
1.7889 +
1.7890 + * gcc-linux.mak : flags fixed (thanks to Levente Farkas )
1.7891 +
1.7892 + * stl_msvc.h, stl_intel.h : fixed __ICL version test (thanks to Serge Pashkov)
1.7893 +
1.7894 + * versioning schema changed on Windows to have .dll extension (thanks everybody for the feedback)
1.7895 +
1.7896 + * NetBSD makefiles fixed
1.7897 +
1.7898 + * A bunch of fixes by Tsutomu Yoshida : MPW fixes plus :
1.7899 + * stl/_config.h : I believe the definition for _STLP_STD under debug/non-debug configurations swapped.
1.7900 +
1.7901 + * typeinfo.h : added check for _STLP_NO_NEW_HEADER for using declaration.
1.7902 + Otherwise three classes will not be included in the namespace std when #include <typeinfo>.
1.7903 +
1.7904 + * _istream.c : use of bind2nd (which required _function.h inclusion) changed to use alternate functor (thanks to Sergei Nikolaev)
1.7905 +
1.7906 + * stl_msvc.h : removed erroneous _STLP_USE_TEMPLATE_EXPORT setting which caused major code bloat for native streams builds on VC++ (Thanks to Johannes Brunen for the report)
1.7907 +
1.7908 + * _string_io.c : fixed Intel C++ compilation bug in native streams mode
1.7909 +
1.7910 + * fstream.cpp : added write-sharing for fstream file handle (Thanks to Leland Best)
1.7911 +
1.7912 + * stl_gcc.h : disabled wide function imports for linux (some xx_POSIX macro should be really used; disabled for all linuxes for now). Thanks everybody for the reports.
1.7913 +
1.7914 + * KAI C++ 4.0 is now supported on SUN
1.7915 +
1.7916 + * MAC OS X compilation fixed (thanks Patrick Luby for the patch)
1.7917 +
1.7918 + * HP aCC fixes by Michael Tsirkin
1.7919 +
1.7920 + * "INF/NAN" string representation for uppercase changed to "Inf/NaN" to behave like printf() on most systems.
1.7921 +
1.7922 + * debug/_iterator.c : fixed SUN 6.0 compiler internal error
1.7923 +
1.7924 + * typeinfo.h : global scope used to import bad_cast, etc. (thanks to Val Melamed)
1.7925 +
1.7926 + * debug/_list.h : missing template versions of remove_if(), merge() added. Missing regular sort() added.
1.7927 + (Thanks to dgehri)
1.7928 +
1.7929 + * debug/_slist.h : missing sort() (template and regular) interface added
1.7930 +
1.7931 + * _istream.h : eliminated warning about comparison with unsigned (Thanks to Gerd Hoeren for the report)
1.7932 +
1.7933 + * template constructors for containers changed to be one version with default allocator agrument, where possible.
1.7934 +
1.7935 + * remaining _STL_ prefixes changed to _STLP_
1.7936 +
1.7937 + * Solaris 7 compilation fixed
1.7938 +
1.7939 + * fstream.cpp : seek() allowed to seek past the end of the stream (Thanks to Phillip Toland for the input)
1.7940 +The following changes were made in 4.1 beta 5 since 4.1 beta 4 :
1.7941 +
1.7942 + * All internal macros changed to have prefix _STLP_ instead of __STL or __STLPORT or __SGI_STL.
1.7943 + That is to allow seamless wrapping on platforms that use SGI STL as native STL/iostreams.
1.7944 + For backward compatibility, most of user-settable __STL_xxx macros are accepted.
1.7945 +
1.7946 + * Versioning of shared libraries made UNIX-compliant
1.7947 +
1.7948 +
1.7949 + * Some temporary lifetime problems in SGI iostreams which may introduce memory corruption, fixed.
1.7950 +
1.7951 + * <new> : fixed memory leak bug due to unclever macro expansion in __stl_new (thanks to Joachim Achtzehnter)
1.7952 +
1.7953 + * stl/_tree.h : fixed several bugs in new code for corner cases in insert_equal()/insert_unique() with a hint
1.7954 + (thanks to Micheal Tsirkin for the report and patch)
1.7955 +
1.7956 + * _vector.h:284 : __copy call fixed to be __copy_aux (thanks to Alex Vanic)
1.7957 +
1.7958 + * _config.h : fixed static build bug due to __STL_EXPOSE_GLOBALS_IMPLEMENTATION typo (thanks to Serge Pashkov)
1.7959 +
1.7960 + * fstream.cpp: __pioinfo definition for mingw32 fixed (Thanks to Danny Smith)
1.7961 +
1.7962 + * *.SUNWCCh files changed to regular files; moved to "stlport" directory
1.7963 +
1.7964 + * pthread_alloc : split into <pthread_alloc>/<stl/_pthread_alloc.h>
1.7965 +
1.7966 + * lightweight atomic ops used on SPARC v8plus and v9 (gcc and SUN CC)
1.7967 +
1.7968 + * Mac OS X support introduced (thanks to Patrick Luby)
1.7969 +
1.7970 + * SGI iostreams ported to DJGPP (thanks to Tanes Sriviroolchai)
1.7971 +
1.7972 + * SGI iostreams ported to NetBSD (thanks to Michael Rauch)
1.7973 +
1.7974 + * FreeBSD build fixed, now builds for wchar_t too
1.7975 +
1.7976 + * DEC CXX build fixed; restricted to dynamic lib only
1.7977 +
1.7978 + * SGI MIPSpro build fixed; GNU make has to be used
1.7979 +
1.7980 + * Set of HP fixes by Michael Tsirkin
1.7981 +
1.7982 + * Set of Watcom fixes by Ricardo Gayozo
1.7983 +
1.7984 + * Bunch of Apple MRC/MPW fixes by Tsutomu Yoshida integrated
1.7985 +
1.7986 + * Bunch of iostream fixes for Cygwin, Borland and Intel 4.5, by Serge Pashkov
1.7987 +
1.7988 + * debug/_list.h : added checking versions of pop_back/pop_front (thanks to Per Liboriussen)
1.7989 +
1.7990 + * src/c_locale_win32.c : fix for VC5sp3 (thanks to Petr Ovtchenkov), fix for day of week order (thanks to Danny Smith),
1.7991 + fix for null-termination in my_ltoa (thanks to Serge Pashkov)
1.7992 +
1.7993 + * Some warnings in debug mode fixed (thanks to Marco)
1.7994 +
1.7995 + * type_traits.h : IsP functions return types changed to be more portable (thanks to Serge Pashkov for the suggestion),
1.7996 + __cdecl added for Win (thanks to Todd Wilson)
1.7997 +
1.7998 + * debug/_tree.h : added owner check for erase() (thanks to Alberto Barbati)
1.7999 +
1.8000 + * stl/_ostream.h : << operator specializations added for compilers w/o partial ordering
1.8001 + (thanks to Alberto Barbati for pointing this out).
1.8002 +
1.8003 + * "make install" on UNIX : fixed the target not to remove lib directory;
1.8004 + default installdir restored to be /usr/local (thanks to Jeff de Vries for the input)
1.8005 +
1.8006 + * _construct.h : extra cast for __STL_SHRED_BYTE removed (thanks to khesin)
1.8007 +
1.8008 + * _relops.h header obsoleted; some extra includes removed
1.8009 +
1.8010 + * __STL_STATIC_CONST_INIT_BUG use normalized; now it's used for all compilers not able
1.8011 + to treat const members as coplile-time constants; enum used for them (e.g VC++).
1.8012 + Thanks to Dean Sturtevant and Gavin Collins for the ideas.
1.8013 +
1.8014 + * stlport/cmath : fixed SUN CC 5.0 compatibility mode bug (thanks to ade for the report)
1.8015 +
1.8016 + * debug/_hashtable.h : fixed equal_range() bug (thanks to decraft for the report)
1.8017 +
1.8018 + * streambuf.cpp/_streambuf.h : fixes xsgetn() bug (thanks to Vadim Egorov)
1.8019 +
1.8020 + * istreambuf_iterator<> : nonconforming behaviour fixed (thanks to Tom Widmer)
1.8021 +
1.8022 + * _num_put.c : fixed corner case for 0x8000000 output.
1.8023 +
1.8024 + * num_get<> : extra get() and do_get() members for "int" and "short" removed; istream operators changed accordingly
1.8025 +
1.8026 + * _itreambuf_iterator.h/_ostreambuf_iterator.h introduced to decouple those from num_get/num_put
1.8027 +
1.8028 + * gcc makefiles in src : "-fno-implement-inlines" removed
1.8029 +
1.8030 + * Added workaround for gcc's limits.h and SUN Ultra with -mcpu=ultrasparc in 32-bit mode.
1.8031 +
1.8032 + * ios_base:: type for constants made "int" for all compilers, as it more efficient and perfectly compliant.
1.8033 +
1.8034 + * debug/_hashtable.h : fixed typo in swap() ( thanks to Gerd Hoeren for the report)
1.8035 +
1.8036 + * debug/_string.h : +() operators defined unconditionally ( thanks to Gerd Hoeren for the report)
1.8037 +
1.8038 + * _istream.c : removed dependancy on _function.h (thanks to Kenny Simpson for the report)
1.8039 +
1.8040 + * _limits.c : fixed little-endian representation of infinity & NaN (thanks to Rene van Oostrum)
1.8041 +
1.8042 + * _stdio_file.h : fixed postdecr macro for 64-bit Solaris (thanks to Jim Cole)
1.8043 +
1.8044 +
1.8045 +The following changes were made in 4.1 beta 4 since 4.1 beta 3 :
1.8046 +
1.8047 + * Simulation of class partial specialization (thanks to Mat Marcus and Jesse Jones of Adobe)
1.8048 + used to provide following enhancements :
1.8049 +
1.8050 + - type_traits are automatically specialized for all pointer types for all compilers,
1.8051 + which makes them able to utilize type_traits-based optimizations when dealing with pointer types,
1.8052 + automatically.
1.8053 +
1.8054 + - all functions specialized for pointers and optimized via __type_traits
1.8055 + ( like copy()/copy_backward(), _uninitialized_xx) now enjoy this optimization for all compilers!
1.8056 +
1.8057 + - generic __value_type()/__difference_type()/__iterator_category() are written so user does not have
1.8058 + to supply any of its own even when partial specialization is not available.
1.8059 + (Note : gcc-2.7 and VC++ 5.x, 6.x have bugs which prevents them from using this enhancement, still)
1.8060 +
1.8061 + * <iterator> : by default, non-standard iterator query names like
1.8062 + value_type()/difference_type()/iterator_category() are not used
1.8063 +
1.8064 + * <algo> : major revision:
1.8065 + - algorithms without explicit Compare() function expressed via the one that has it where possible.
1.8066 + This considerably reduces header size and reduces code bloat for programs which use both flavours of
1.8067 + those algorithms.
1.8068 + - some function bodies moved between .c and .h
1.8069 + - all functions used internally moved out to _algobase.h, so no other header includes <_algo.h> anymore
1.8070 + - find() specialized for random access iterators regardless of partial spec.
1.8071 +
1.8072 + * Dynamic libraries (.DLL and .so) : name versioning used to prevent clashes between STLport versions
1.8073 +
1.8074 + * src/ : code regrouped between .cpp files to provide for less executable size with dumb linkers;
1.8075 +
1.8076 + * locale subsystem initialization : startup changed to use statically allocated structures as much as possible;
1.8077 +
1.8078 + * <stl/_function.h> : basic stuff moved to _function_base.h ;
1.8079 + other STL headers now include _function_base.h instead
1.8080 +
1.8081 + * _threads.h : MT support for OS/2 added (only tested with VAC++)
1.8082 +
1.8083 + * _stdio_file.h : added support for Solaris in ELF64 mode (thanks to Holger Stasch)
1.8084 +
1.8085 + * stl/_hashtable.h : [] operator for hash_map optimized to take no more than find() when element is present
1.8086 + (Thanks to Thomas Witt et al.)
1.8087 +
1.8088 + * _ostream.h : fix for default unsigned char (thanks to Holger Stasch)
1.8089 +
1.8090 + * all __STL_ABBREVS abbreviations moved aside in _abbrevs.h header.
1.8091 +
1.8092 + * Fujitsu C++ Compiler support added (thanks to Holger Stasch)
1.8093 +
1.8094 + * Initial SGI iostreams port to OS/390 introduced (thanks to Holger Stasch).
1.8095 +
1.8096 + * More on SGI iostreams port to xlC 5.0 (thanks to Holger Stasch).
1.8097 +
1.8098 + * Fixes for SGI MIPSpro compilers (Thanks to Ralph)
1.8099 +
1.8100 + * Fixes for HP aCC compiler (Thanks to Michael Tsirkin)
1.8101 +
1.8102 + * stlport/SC5 directory : removed C library .h files to fix circular inclusion problem with WS6.0 + C programs.
1.8103 +
1.8104 + * hash_map::swap() in debug mode fixed (thanks to Anton)
1.8105 +
1.8106 + * __STL_COMPILE_INSTANTIATE hack for DEC removed (thanks to Ralph)
1.8107 +
1.8108 + * __STL_INLINE_STRING_LITERAL_BUG defined for HP aCC ( thanks to Jason Taylor)
1.8109 +
1.8110 + * _bitset.h - member workaround operators made const (thanks to dzwick)
1.8111 +
1.8112 + * _bitset.h/.c, hashtable.h -- small bugfixes (thanks to Levente Farkas)
1.8113 +
1.8114 + * <exception> - now includes exception.h if only that is available.
1.8115 +
1.8116 + * vector::assign() inplemented for vector::iterator when member templates are not available (Thanks to dzwick)
1.8117 +
1.8118 + * fstream.cpp : __pioinfo used for MinGW32 (thanks to Danny Smith)
1.8119 +
1.8120 +The following changes were made in 4.1 beta 3 since 4.1 beta 2 :
1.8121 +
1.8122 + * list<>::clear() : protected access bug fixed
1.8123 +
1.8124 + * __STL_MUTEX_INITIALIZER set back to PTHREAD_MUTEX_INITIALIZER for pthreads case,
1.8125 + as some platforms (eg AIX) do not treat zero-initialized mutex as valid one (thanks to Alex Vanic, Jack Andrews for help)
1.8126 +
1.8127 + * stl/_limits.c : fixed typo preventing numeric limits constants to be defined for __STL_LITTLE_ENDIAN,
1.8128 + constants initialization fixed (thanks to Ingo Donasch)
1.8129 +
1.8130 + * real implementation of locales for Win32 contributed by Anton Lapach (thanks !) merged in.
1.8131 +
1.8132 + * stl_user_config.h, _config.h : changed default to not define relops:: operators
1.8133 + in __STL_NO_NAMESPACES mode.
1.8134 +
1.8135 + * _numeric_facets.c/num_put.cpp : printing of integer do not use sprintf() anymore
1.8136 +
1.8137 + * "install" target implemented for UNIX & VC++ Makefiles. It now installs headers and libraries.
1.8138 +
1.8139 + * "src" : files merged to get less compilation time and less space overhead for imperfect compilers
1.8140 +
1.8141 + * "debug" flavour of STLport excluded from default build and auto-select ;
1.8142 + please use __STL_USE_DEBUG_LIB and build debug STLport lib explicitly with "make debug_dynamic"
1.8143 + if you really need it). "all" now builds 2 kinds : "release" and "STLdebug", for static and dynamic builds.
1.8144 +
1.8145 + * stlport_prefix.h : WIN32_LEAN_AND_MEAN set for Win32 build of STLport library, for speed.
1.8146 +
1.8147 + * FreeBSD compile fixed; makefiles added.
1.8148 +
1.8149 + * All "__init" changed to "_Init" to fix clashes with DEC conventions (thanks to Holger Stasch)
1.8150 +
1.8151 + * _range_errors.h -- fixed to always set __STL_EXTERN_RANGE_ERRORS for SGI iostreams (thanks to Serge Pashkov)
1.8152 +
1.8153 + * *gcc* mak : some files renamed to gcc-platform mak
1.8154 +
1.8155 + * "extern template" extension used for gcc & standard i/o classes, to reduce code bloat in application's .o
1.8156 +
1.8157 + * "extern template" extension used for VC++ & standard i/o classes (was for DLL only)
1.8158 +
1.8159 + * _iterator.h : added template(and non-template) assignment operator for reverse_iterator<> (thanks to psw). Obsolete HP-style code moved to _iterator_old.h
1.8160 +
1.8161 + * _alloc.h : obsolete code for raw SGI allocators support moved to separate header, for compile-time improvement
1.8162 +
1.8163 + * More iostreams code conditionally moved out for clients who only use standard i/o and can set __STL_NO_CUSTOM_IO flag
1.8164 +
1.8165 + * <iostream>, <locale> : initialization of locale subsystem made independent of standard streams.
1.8166 + sync_with_stdio call before iostream initialization now works.
1.8167 +
1.8168 + * <fstream>, <fstream.h> : added initialization code for locale , same as in <locale>
1.8169 + (thanks to George Trojan for the report)
1.8170 +
1.8171 + * fstream.cpp : fixed resource leak in case memory map fails on Win32 (thanks to Mark Laffoon)
1.8172 +
1.8173 + * <cmath>, <cstdlib> : added additonal overload signatures required by chapter 26.5 of ANSI (thanks to Levente Farkas for
1.8174 + the suggestion), plus "long long" flavour where applicable.
1.8175 +
1.8176 + * __STL_LONG_LONG generalized to support __int64 on Win32 (thanks to Adam Gates for the suggestion)
1.8177 +
1.8178 + * _fstream.h : added constructor from file descriptor, as extension (thanks to eric_a_benson)
1.8179 +
1.8180 + * _fstream.h : added basic_filebuf<>::fd() file descriptor accessor, as extension (thanks to George Trojan)
1.8181 +
1.8182 + * stl_sunpro.h : strstream masked for CC 4.2 to avoid virtual table clash (thanks to Ken)
1.8183 +
1.8184 + * stl_msvc.h : member templates allowed for VC5, it's capable of hadling most of them (same restrictions as VC6 -- inline).
1.8185 +
1.8186 + * debug/_debug.c : slightly changed format of debug message to please VC++ IDE (thanks for Bruce Dawson for the suggestion)
1.8187 +
1.8188 + * src/sgi_mipspro.mak added, for SGI MIPSPro compilation
1.8189 +
1.8190 + * merged series of HP/SUN minor fixes by Petr Ovtchenkov
1.8191 +
1.8192 + * merged series of Intel 4.5 fixes by Serge
1.8193 +
1.8194 + * vc_common.mak : -Yd dropped, as obsolete (thanks to psw)
1.8195 +
1.8196 + * _range_errors.h:95 : unused argument removed (thanks to George Trojan)
1.8197 +
1.8198 + * _string_io.h : refined _WRTLING workaround for Watcom (thanks to Serge Pashkov)
1.8199 +
1.8200 + * _threads.h : fixed SGI threads dafines for gcc on IRIX (thanks to Brett Denner for the report)
1.8201 +
1.8202 + * <typeinfo.h>, <typeinfo> : mutually-exclusive machanism added to allow including both in same unit.
1.8203 +
1.8204 + * Inclusion of SGI iostreams headers put to some order; _streambuf_iterator.h file introduced to resolve circular dependancies
1.8205 +
1.8206 +The following changes were made in 4.1 beta 2 since 4.1 beta 1 :
1.8207 +
1.8208 + * _algobase.h : fixed __STL_DECLARE_COPY_TRIVIAL definition
1.8209 + (thanks to Charles Burfoot for the report)
1.8210 +
1.8211 + * _algobase.h : added copy_backward specializations for builtin types for compilers w/o partial spec.
1.8212 +
1.8213 + * _char_traits.h : fixed zero-length check for copy (thanks to Michael Tsirkin)
1.8214 +
1.8215 + * msvc_warnings_off.h : fixed "and" typo
1.8216 + (thanks to Charles Burfoot for the report)
1.8217 +
1.8218 + * num_put_float.cpp : fixed rounding for "g" format (thanks to Bernd Mohr for the report)
1.8219 +
1.8220 + * Initial port of iostreams to xlC 5.0 added (thanks to Jack Andrews)
1.8221 +
1.8222 + * stl_sunpro.h : a fix for Forte config (Thanks to Alex Vanic for the report)
1.8223 +
1.8224 + * old_hp/iterator.h : fixed iterator_category()/etc. import
1.8225 +
1.8226 + * _threads.h : __stl_atomic_t used instead of "unsigned long" (thanks to Alex Vanic for the report)
1.8227 + * using/iomanip : old-streams path used for native iomanip.h (thanks to Michael Tsirkin for the report).
1.8228 +
1.8229 + * _bitset.h , _bitset.c : direct STL_THROW replaced with __stl_throw_xxx calls (thanks to Michael Tsirkin for the report)
1.8230 +
1.8231 + * range_errors.h/cpp : added functions to support throwing of overflow_error and invalid_argument
1.8232 +
1.8233 + * _threads.h : enganced HP-specific guards for HP-UX 11 (thanks to Matthew Collins for the report)
1.8234 +
1.8235 + * _string.h : compare() bugfix (thanks to Anton Sergeev)
1.8236 +
1.8237 + * moneypunct_byname_w.cpp : rolled back wrong bugfix (thanks to Ken)
1.8238 +
1.8239 + * _vector.h, _deque.h, _list.h : nonstandard versions of push_back()/push_front()
1.8240 + moved under __STL_NO_ANACHRONISMS guard (thanks to Ed Brey)
1.8241 +
1.8242 + * _tree.c, _list.c, _slist.c, _debug.c : compile-time improvements
1.8243 +
1.8244 + * _tree.h/c, _list.h/c, _slist.h/c, _vector.h/c, _string.h/c : using directive for data members
1.8245 + changed to explicit "this->".
1.8246 +
1.8247 + * _complex.h : signatures of some methods changed to take value_type instead of const value_type&,
1.8248 + for better conformance (thanks to Petr Ovtchenkov)
1.8249 +
1.8250 + * Bunch of fixes to compile with gcc on HP-UX 10, 11 (thanks to Petr Ovtchenkov)
1.8251 +
1.8252 + * Code duplication for __STL_INLINE_MEMBER_TEMPLATES removed -- corresponding methods are always inlined
1.8253 +
1.8254 + * stl_sunpro.h : fix for "-compat" mode (thanks to Vijay Ramachandran)
1.8255 +
1.8256 + * pthread.h : new wrapper added
1.8257 +
1.8258 + * Added custom prolog/epilog for HP aCC to select kthreads on HP-UX 11 (Thanks to Michael Tsirkin)
1.8259 +
1.8260 + * <new> : fixed throw specification for bad_alloc (has to be inherited)
1.8261 +
1.8262 + * Macro __STL_NATIVE_CPP_RUNTIME_INCLUDE_PATH introduced to specify separate path for <exception>, <typeinfo>, <new>.
1.8263 + (thanks to Bryan Byrnes)
1.8264 +
1.8265 + * <stdio_streambuf> : moved from stlport/stl to stlport directory, for SGI compatibility
1.8266 +
1.8267 +The following changes were made in 4.1 beta 1 since 4.0 :
1.8268 +
1.8269 + * Sun Forte 6.0 C++ configuration provided (thanks to Alexander Vanic for the input)
1.8270 +
1.8271 + * _threads.h/_config.h : added efficient support for atomic operations for
1.8272 + DEC CXX and Watcom (thanks to Ricardo Gayoso for the input).
1.8273 + Macros __STL_ATOMIC_xxx introduced to facilitate this.
1.8274 +
1.8275 + * _tree.h : optimizations to lower number of comparisons (thanks to Craig Powers for the patch)
1.8276 +
1.8277 + * _tree.h, _hashtable.h and clients : added templated find() as an extension (thanks to Michael Tsirkin for the suggestion)
1.8278 +
1.8279 + * _tree.h : changed some inlining for performance optimization
1.8280 +
1.8281 + * __node_alloc:: allocate broken into two functions for better inlining
1.8282 +
1.8283 + * _threads.h : added PTHREAD_MUTEX_INITIALIZER guard for HP workaround
1.8284 +
1.8285 + * stl_bc.h : option set to control alignment and virtual table behaviour to be consistent;
1.8286 + library name adjusted to stlport_bcc55_xxx
1.8287 +
1.8288 + * _algobase.h, _uninitialized.h, char_traits.h -- optimized out empty memcpy() calls
1.8289 + (thanks to Michael Tsirkin for the report).
1.8290 +
1.8291 + * _iterator.h : fixed reverse_iterator::operator+(int, reverse_iterator) resolution
1.8292 + (thanks to Anton Sergeev for the input)
1.8293 +
1.8294 + * _bitset.h : bitset<>::test bugfix (thanks to Anton Sergeev for the patch)
1.8295 +
1.8296 + * complex_trig.cpp : use of __STL_NO_LONG_DOUBLE made consistent, fixes for Borland on Linux
1.8297 + (thanks to John Wiegley for the input)
1.8298 +
1.8299 + * moneypunct_byname_w.cpp : bugfixes for string copying (thanks to Anton Sergeev for the input)
1.8300 +
1.8301 + * Watcom-specific fixes (thanks to Ricardo Gayoso for the input)
1.8302 +
1.8303 + * src/common_macros.mak : some intermediate targets added (thanks to Jeremy for the suggestion)
1.8304 +
1.8305 + * _debug.c : fixes for Win CE (thanks to John Hynes for the patch)
1.8306 +
1.8307 + * Intel CC 4.0-specific fixes (thanks to Sean Cavanaugh for the input)
1.8308 +
1.8309 + * _list.c : workaround for Watcom C++ (thanks to Mike Steed for the report)
1.8310 +
1.8311 + * __STL_NO_NATIVE_WIDE_STREAMS definition fixed (thanks to Glen Summers for the patch)
1.8312 +
1.8313 + * cast macros fixed to be more robust (thanks to Geoff Oakham for the report)
1.8314 +
1.8315 + * "strstream.h" native inclusion for VC 6.0 fixed (thanks to Sathish T C for the report)
1.8316 +
1.8317 + * debug/_string.h : improvement to string with __STL_DEBUG w/o member templates
1.8318 + (thanks to Paul Furnanz for the report)
1.8319 +
1.8320 + * debug/_string.h : fixed internal compiler error for VC++ 5.x (thanks to chvetsov for the report)
1.8321 +
1.8322 + * cstdio, stl/_streambuf.h : fixes to allow gcc compilation with -ansi flag
1.8323 +
1.8324 + * workaround for cin/cout renaming on HPUX11 for -D_REENTRANT (thankf to Jeff Sparkes for the report)
1.8325 +
1.8326 + * cin/cout/cerr/clog renaming in STLport for CC 4.0 and SGI iostreams,
1.8327 + to avoid symbol clashes with native ones (thanks to Dirk Schreib for the report)
1.8328 +
1.8329 + * type_info scope fixes for VC++ 6.0 (thanks to Sathish T C for the report)
1.8330 +
1.8331 + * typeinfo.h using fixes (thanks to Glen Summers for the input)
1.8332 +
1.8333 + * stlcomp.h : fixes to allow compilation of .c modules with VAC++, Sun CC, DEC CC, Watcom CC
1.8334 + (thanks to Dmitry A.Steklenev, Jonathan Richardson for the report)
1.8335 +
1.8336 + * debug/_tree.h : fixed insert_unique() bug (thanks to Ben Liblit for the report)
1.8337 +
1.8338 + * regression/gcc.mak made non-dependant on "." in the path
1.8339 + (thanks to Thomas Matelich for the report)
1.8340 +
1.8341 + * hmset1.cpp fixed to compile under OS390 ( thanks to Andrey Khovanskiy for the report)
1.8342 +