c550440 by dums at 2007-10-21 1
2007-10-21  Francois Dumont  <dums@users.sourceforge.net>
2
3
	* src/allocators.cpp: Add missing const_cast in lock free
4
	allocator implementation when _STLP_LEAKS_PEDANTIC is defined.
5
	Thanks trungantran on forum.
6
b0af0c8 by dums at 2007-10-07 7
2007-10-07  Francois Dumont  <dums@users.sourceforge.net>
8
9
	* STLport 5.1.4 released based on revision 3219. STLport-5.1.4
10
	tag created.
11
12
	* stlport/stl/_stlport_version.h, build/lib/Makefile.inc: Patch
13
	version bump to 5 to prepare next potential patch release.
14
15
2007-10-05  Francois Dumont  <dums@users.sourceforge.net>
16
17
	* stlport/stl/debug/_iterator.h, _string.h, src/string.cpp:
18
	Removed useless and even invalid workaround used when
19
	_STLP_USE_MSVC6_MEM_T_BUG_WORKAROUND is defined. There is now
20
	only one construct check class __construct_checker,
21
	__msvc6_construct_checker has been removed.
22
f928e69 by dums at 2007-09-28 23
2007-09-28  Petr Ovtchenkov  <complement@users.sourceforge.net>
24
25
	* Platform tested: gcc 4.1.2 20060928 (prerelease)
26
	(Ubuntu 4.1.1-13ubuntu5), i686 GNU/Linux, glibc 2.4; 
27
	
28
	* release-shared: fail on list_test.cpp:392
29
	[CPPUNIT_ASSERT(lint1.size() == 20)], suspected compiler's bug;
30
	1 fail from 395 tests;
31
32
	* stldbg-shared: passed 395 tests;
33
34
	* Platform tested: gcc 4.1.2, i686 GNU/Linux, glibc 2.4;
35
36
	* release-shared: fail on list_test.cpp:392
37
	[CPPUNIT_ASSERT(lint1.size() == 20)], suspected compiler's bug;
38
	1 fail from 395 tests;
39
40
	* stldbg-shared: passed 395 tests;
41
42
	* Platform tested: gcc 4.2.1, i686 GNU/Linux, glibc 2.4;
43
44
	* release-shared: passed 395 tests;
45
46
	* stldbg-shared: passed 395 tests;
47
48
	* Platform tested: gcc 4.1.1, i686 athlon-4 i386 GNU/Linux,
49
	glibc 2.3.6;
50
51
	* release-shared: passed 395 tests;
52
53
	* stldbg-shared: passed 395 tests;
54
55
	* src/c_locale_glibc/c_locale_glibc2.c: this is a C, so
56
	decl allowd only on top of block;
57
b0af0c8 by dums at 2007-10-07 58
	* Platform tested: gcc 2.95.4 (debian), i686 GNU/Linux,
59
	glibc 2.3.2;
60
61
	* release-shared: build success, as library as unit tests,
62
	but run unit tests fail---stalling on spinlock during library
63
	load; looks like problem with correct initialization of
64
	statics;
65
66
	* stldbg-shared: fail build library, stlport/stl/debug/_hashtable.h:49:
67
	declaration of `operator ==' as non-function 
68
f928e69 by dums at 2007-09-28 69
2007-09-27  Francois Dumont  <dums@users.sourceforge.net>
70
71
	* src/facets_byname.cpp: In collate::do_transform, consider
72
	low == high as a special case, returns empty string in this
73
	case.
74
75
2007-09-27  Petr Ovtchenkov  <complement@users.sourceforge.net>
76
77
	* test/unit/find_test.cpp: array initialization missed.
78
42b74a4 by dums at 2007-09-19 79
2007-09-17  Francois Dumont  <dums@users.sourceforge.net>
80
81
	* stlport/stl/_num_get.h: Add _STLP_DECLSPEC specification to
82
	several functions that might be access by external code when
83
	num_get facet is instantiated with something else than the
84
	Standard required instantiation.
85
86
2007-09-11  Francois Dumont  <dums@users.sourceforge.net>
87
88
	* src/c_locale_glibc/c_locale_glibc.c, c_locale_glibc2.c: Fix
89
	_Locale_strxfrm and _Locale_wcxfrm implementation to take
90
	into account strings that are not zero terminated.
91
92
	* test/unit/locale_test.cpp: Add check that collate.tranform
93
	method build a key only for chars in the range pass to method.
94
95
2007-09-10  Francois Dumont  <dums@users.sourceforge.net>
96
97
	* src/facets_byname.cpp: John Maddock bug report 1788618 fix.
98
	Moreover remove use of an intermediate buffer to get result
99
	of _Locale_strxfrm.
100
101
	* test/unit/locale_test.cpp: Add tests for collate::transform
102
	facet method.
103
104
	* src/c_locale_win32/c_locale_win32.c: Small modification,
105
	_Locale_strxfrm is supposed to return the number of chars
106
	required to store the generated sorted key without the trailing
107
	zero.
108
109
	* src/c_locale_glibc/c_locale_glibc.c, c_locale_glibc2.c: Fix
110
	implementation of _Locale_strxfrm, it should never return -1.
111
112
2007-09-10  Petr Ovtchenkov  <complement@users.sourceforge.net>
113
114
	* stlport/stl/_string.c: fix bugs in string rfind, find_last_of,
115
	find_last_not_of [bug #1788700, position 0 was wrongly excluded];
116
117
	* test/unit/string_test.cpp: test for problems above. Thanks
118
	to Bred Bored for bug report and initial test.
119
120
	* unit tests: Linux 2.6.16.26 (athlon-4), gcc 4.1.1, glibc 2.3.6
121
	"OK 395 tests" for release-shared and stldbg-shared targets.
122
123
2007-09-09  Petr Ovtchenkov  <complement@users.sourceforge.net>
124
125
	* test/unit/rope_test.cpp, stlport/stl/_rope.h: test for
126
	bug #1788615 [bug during copy of rope's iterator] and fix;
127
	suggested by John Maddock.
128
129
	* stlport/stl/_algobase.c: symmetry not required for
130
	comparator in case of two different sequences comparison or
131
	searching; symmetrical comparator just may not exist;
132
133
	* stlport/stl/debug/_hashtable.h: symmetry not required for
134
	comparator in hashtable in case of containers extention;
135
	symmetrical comparator just may not exist;
136
137
	* test/unit/alg_test.cpp: test for problem above, thanks
138
	Oleg Obolenskiy.
139
140
2007-09-06  Francois Dumont  <dums@users.sourceforge.net>
141
142
	* test/unit/strstream_buffer_read_test.cpp: Remove useless
143
	strdup call that was moreover introducing a memory leak.
144
145
2007-09-04  Francois Dumont  <dums@users.sourceforge.net>
146
147
	* src/allocators.cpp: Fix implementation of _S_chunk_dealloc when
148
	lock free implementation is not in use. Thanks bug report 1787636
149
	from Sergej Zagursky.
150
151
2007-08-31  Francois Dumont  <dums@users.sourceforge.net>
152
153
	* stlport/stl/_cstdio.h, _ctime.h: Add missing macro definition
154
	test before using _WIN32_WCE thanks bug report 1784174.
155
156
	* stlport/stl/_bitset.h: Change macro tests in order to check
157
	macro definition before using it thanks bug report 1785679.
158
159
	* test/unit/bitset_test.cpp: Bitset::iostream new test to check
160
	correct input/output of bitset class.
161
162
	* build/Makefiles/gmake/gcc.mak: Add -Wundef gcc option when building
163
	with gcc under Cygwin MinGW, it is an interesting option to detect
164
	macro check errors.
165
61db6a2 by dums at 2007-08-26 166
2007-08-26  Francois Dumont  <dums@users.sourceforge.net>
167
168
	* stlport/stl/config/user_config.h, host.h: Moved the administrative
169
	_STLP_USE_DEFAULT_FILE_OFFSET macro from user_config.h to host.h.
170
171
	* stlport/stl/config/_gcc.h: Under MinGW we now use C symbols in
172
	global namespace. Tests with 4.2.1 gcc version shows that C symbols
173
	are not necessarily put in std namespace.
174
175
2007-08-23  Francois Dumont  <dums@users.sourceforge.net>
176
177
	* stlport/stl/_complex.h: As in _iosfwd.h, removed useless
178
	_STLP_CLASS_DECLSPEC attribute on complex class declaration.
179
180
2007-08-23  Petr Ovtchenkov  <complement@users.sourceforge.net>
181
182
	* stlport/stl/debug/_vector.h: only random access iterators
183
	allow operations 'less-than' and distance; for bidirectional
184
	iterators removed usage of 'less-than', and for others
185
	[like forward and input iterators] removed as usage of 'less-than'
42b74a4 by dums at 2007-09-19 186
	as distance; thanks Oleg Obolenskiy for bug report;
61db6a2 by dums at 2007-08-26 187
188
	* test/unit/ioiter_test.cpp: test for problem above.
189
190
2007-08-18  Francois Dumont  <dums@users.sourceforge.net>
191
192
	* stlport/stl/_iosfwd.h: Removed useless _STLP_CLASS_DECLSPEC attribute
193
	on class declaration. Latest gcc versions are reporting a warning about
194
	it.
195
196
2007-08-16  Francois Dumont  <dums@users.sourceforge.net>
197
198
	* src/dll_main.cpp: Removed useless _Atomic_swap_struct explicit
199
	instantiation, moreover, MSVC 2005 do not support it.
200
201
2007-08-15  Petr Ovtchenkov  <complement@users.sourceforge.net>
202
203
	* Repository: bump lib version to 5.1.4;
204
205
	* stlport/stl/char_traits.h, src/fstream.cpp: use 64-bits
206
	file operations calls, if available on system; streamoff is
207
	always off64_t, if _LARGEFILE_SOURCE or _LARGEFILE64_SOURCE
208
	defined, i.e. if 64-bits file operations present;
209
210
	* stlport/stl/config/user_config.h: add _STLP_USE_DEFAULT_FILE_OFFSET,
211
	force use off_t for streamoff and appropriate file operations calls;
212
	note, that this may lead to problems, for example if _FILE_OFFSET_BITS
213
	defined as 64 somewhere in user's code;
214
215
	* test/unit/fstream_test.cpp: test 64 bits type for filesize and
216
	file offset.
217
218
2007-07-22  Petr Ovtchenkov  <complement@users.sourceforge.net>
219
220
	* src/fstream.cpp: force use lseek64/mmap64 for HP-UX, if _LARGEFILE64_SOURCE
221
	defined; thanks for Michael Klein.
222
223
2007-07-17  Petr Ovtchenkov  <complement@users.sourceforge.net>
224
225
	* stlport/stl/_algo.c, stlport/stl/_algobase.c: search, the __tmp and
226
	__p1 iterators always point at the same position, hence one of them
227
	is redundant;
228
229
	* stlport/stl/_algobase.c: in the main-loop of search there are two
230
	successive while-loops doing exactly the same thing; one of them is
231
	redundant and, since it is inside the main-loop, it slows down
232
	the algorithm significantly;
233
234
	* stlport/stl/_algo.c, stlport/stl/_algobase.c: in the search the main-loop 
235
	condition "while (__first1 != __last1)" is always true and consequently
236
	redundant; this is because the initial adn in-loop conditions virtually
237
	act as guards and will never let the main-loop condition to fail; since
238
	this condition is evaluated in every main-loop iteration, its removal
239
	will also improve the performance of the algorithm; thanks for
240
	Jim Xochellis for this suggestions.
241
242
2007-07-15  Petr Ovtchenkov  <complement@users.sourceforge.net>
243
244
	* src/strstream.cpp: "get end" pointer should be initialized
245
	to the "begin of get + N" in obsolete strstream; bug #1536503,
246
	thanks for Jean-Eric Cuendet;
247
248
	* test/unit/strstream_buffer_read_test.cpp, build/test/unit/Makefile.inc:
249
	test for bug above; [submitted by Jean-Eric Cuendet].
250
6d136de by dums at 2007-04-05 251
2007-04-02  Francois Dumont  <dums@stlport...>
252
253
	* 5.1.3 released based on revision 2983. STLport-5.1.3 tag created.
254
255
2007-03-30  Francois Dumont  <dums@stlport...>
256
257
	* build/lib/configure.bat: Restore TARGET_PROC_SUBTYPE definition
258
	to distinguish between ARM architectures.
259
260
2007-03-22  Francois Dumont  <dums@stlport...>
261
262
	* stlport/stl/config/_msvc.h, _deque.h, _bvector.h: Portage from
263
	Ulrich Echkardt to EVC 8.
264
265
	* doc/README.evc8, README.wince: New documentations about Windows
266
	CE and EVC 8 from Ulrich Echkardt.
267
268
	* doc/evc_workaround.txt, doc/README.evc3, First file merged to the
269
	second one.
270
271
	* stlport/stl/_stlport_version.h: Bump patch level to 3.
272
77be045 by dums at 2007-03-13 273
2007-03-07  Francois Dumont  <dums@stlport...>
274
275
	* src/dll_main.cpp, stlport/stl/_stdexcept_base.h: Change strncpy_s
276
	invocation to pass _TRUNCATE parameter rather than number of chars
277
	to put in destination string. Default strncpy_s behavior is not to
278
	truncate string if necessary but to report the issue throught a handler
279
	which lead to an application crash if no handler has been set. Thanks
280
	Bronek Kozicki bug report 1674974.
281
282
	* stlport/stl/type_traits.h: Add a default constructor declaration
283
	in _TpWithState class to make gcc happy when class is instanciated
284
	with a class with no default constructor.
285
286
	* stlport/stl/config/_windows.h: Change definition of
287
	_STLP_WIN32_VERSION macro. We do not report definition inconsistency
288
	between WINVER and _WIN32_VERSION anymore, WINVER is prefered.
289
92a1f3e by dums at 2007-03-05 290
2007-03-01  Francois Dumont  <dums@stlport...>
291
292
	* test/unit/bitset_test.cpp: Add test for the to_string member
293
	method.
294
295
	* stlport/stl/config/_msvc.h, test/unit/locale_test.cpp: Change
296
	MSVC6 configuration that now defines _STLP_NO_EXPLICIT_FUNCTION_TMPL_ARGS.
297
	Even if MSVC6 supports explicit specification of function template
298
	parameters it do not support the explicit specification for
299
	template methods, unit tests are showing this problem.
300
301
	* stlport/stl/type_traits.h, _alloc.h: Small change in stateless
302
	class detection feature. Introduce _IsStateless helper struct for
303
	this purpose even if it can only be used with pure class type and
304
	not with build-in types or enum or union. It avoids MSVC8 warnings.
305
	
306
2007-02-25  Francois Dumont  <dums@stlport...>
307
308
	* 5.1.2 released based on revision 2937, tag STLport-5.1.2 created.
309
310
	* stlport/stl/config/_prolog.h, build/Makefiles/gmake/bcc.mak,
311
	Patch from Eric Sanford to remove empty base class optimization
312
	for Borland compilers.
313
314
	* test/unit/vector_test.cpp: Enable VectorTest::ebo test for Borland
315
	compilers.
316
317
2007-02-22  Francois Dumont  <dums@stlport...>
318
319
	* stlport/stl/_alloc.h: Add a workaround for compilers with buggy
320
	empty base class optimization which is used in _STLP_alloc_proxy
321
	class.
322
323
	* test/unit/vector_test.cpp: New test case VectorTest::ebo to show
324
	problem above.
325
326
2007-02-21  Francois Dumont  <dums@stlport...>
327
328
	* src/c_locale_win32/c_locale_win32.c: Fixed __ConvertDate and
329
	__ConvertTime to avoid potential infinite loop (bug report
330
	1663604)
331
332
2007-02-16  Francois Dumont  <dums@stlport...>
333
334
	* STLport 5.1.1 released based on revision 2919. STLport-5.1.1
335
	tag created.
336
4dd7016 by dums at 2007-02-15 337
2007-02-14  Francois Dumont  <dums@stlport...>
338
339
	* stlport/stl/config/_intel.h: Configuration fix, Intel compiler
340
	before 8.1 have problem with template method specialization. Thanks
341
	Dragan Tubic.
342
343
2007-02-09  Francois Dumont  <dums@stlport...>
344
345
	* test/unit/locale_test.cpp: Enhance LocaleTest::collate_facet
346
	test case to reveal a bug in glibc localization portage.
347
348
	* src/c_locale_glibc/c_locale_glibc2.c: Fixed _Locale_strcmp
349
	and _Locale_strcmp and _Locale_strwcmp implementation to take
350
	into account buffer size, comparison used to always been done on the
351
	whole input strings up to the termination character.
352
353
	* stlport/stl/type_manips.h, test/unit/mvctor_test.cpp,
354
	type_traits_test.cpp: Remove relation between STLport __true_type and
355
	__false_type and homonyms ones in libstd++. Add workaround in the 2
356
	test suite requiring use of those types.
357
358
2007-02-08  Francois Dumont  <dums@stlport...>
359
360
	* stlport/stl/_threads.h, src/locale.cpp: Add missing parenthesis
361
	in some macro checks thanks Jan Echternash bug report 1653966.
362
363
	* test/unit/locale_test.cpp: Made LocaleTest::collate_facet test
364
	really meaningful even if it requires french locale support for
365
	part of it.
366
de9fe41 by dums at 2007-02-02 367
2007-02-01  Petr Ovtchenkov  <complement@users.sourceforge.net>
368
369
	* stlport/stl/config/_solaris.h: __LONG_MAX__ defined on
370
	64-bits SPARCs. Thanks Aleksey Sanin.
371
372
	* stlport/stl/_sparc_atomic.h, stlport/stl/_threads.h:
373
	fixes for modern SPARCs. Thanks Aleksey Sanin.
374
5dde32c by dums at 2007-01-28 375
2007-01-28  Francois Dumont  <dums@stlport...>
376
377
	* stlport/stl/debug/_deque.h: Fix iterator invalidation in erase
378
	of an iterator range thanks to Steve Lobasso indirect report (bug
379
	1645657).
380
381
	* test/unit/deque_test.cpp: New test case for deque erase methods.
de9fe41 by dums at 2007-02-02 382
2ec196d by dums at 2007-01-20 383
2007-01-19  Francois Dumont  <dums@stlport...>
384
385
	* stlport/stl/_locale.h, src/locale.cpp: Add throw() specification
386
	on locale default constructor. Add const qualifier on locale::combine
387
	method. Fixed combine implementation to correctly combine
388
	*this with other locale instance.
389
390
	* src/locale_impl.h: Removed _get_Locale_impl and
391
	_copy_Nameless_Locale_impl already defined in stlport/stl/_locale.h.
392
393
	* src/locale_impl.cpp: In _Locale_impl::insert add check that we
394
	are working on 2 different facet instances before substitution.
395
396
	* test/unit/locale_test.cpp: Add test case for locale::combine
397
	method.
398
399
2007-01-12  Francois Dumont  <dums@stlport...>
400
401
	* c_locale.h, c_locale_dummy.c, c_locale_glibc.c, c_locale_glibc2.c,
402
	c_locale_win32.c: Creation of 2 new functions in the localization
403
	framework _Locale_init and _Locale_final to allow localization
404
	implementations to initialize and release any necessary resources.
405
406
	* src/iostream.cpp: Call _Locale_init during io streams initialization
407
	and _Locale_final at end.
408
409
	* c_locale_win32/c_locale_win32.c: Add synchronization for locale
410
	lcid look up from name required in multithreaded environment. Two
411
	threads instanciating two facet instances from a given name might
412
	have collide resulting in an undefined behavior. Critical section
413
	used for synchronization is initialized in _Locale_init and freed
414
	in _Locale_final.
415
416
	* c_locale_win32/c_locale_win32.c: Add several fields in
417
	_Locale_time struct to avoid use of static buffers in some locale
418
	support functions like _Locale_d_t_fmt _Locale_long_d_t_fmt...
419
	Moreover time format cannot be truncated anymore.
420
421
2007-01-08  Francois Dumont  <dums@stlport...>
422
423
	* stlport/stl/_deque.c: Patch from Kevin Lin to fix iterator
424
	returned by insert at position method.
425
426
	* test/unit/deque_test.cpp: Add test case for the deque::insert
427
	methods.
428
de9fe41 by dums at 2007-02-02 429
2006-12-06  Francois Dumont  <dums@stlport...>
430
431
	* STLport 5.1.0 released based on STLPORT_5_1 branch revision 2750.
432
8ac5525 by dums at 2006-12-06 433
2006-11-27  Francois Dumont  <dums@stlport...>
434
435
	* stlport/stl/config/_windows.h: Patch from Michael Fink to check
436
	inclusion of winbase.h and windows.h.
437
734e813 by dums at 2007-01-25 438
2006-11-24  Francois Dumont  <dums@stlport...>
439
de9fe41 by dums at 2007-02-02 440
	* stlport/stl/_fstream.h, src/fstream.cpp, iostream.cpp: Restore
441
	computation of the system dependant page size that was hardcoded
442
	to 4096. Initialisation code has been moved to a static method
443
	called just after Standard iostream initialisation. This code used
444
	to be in the _Filebuf_base constructor that might have been called
445
	simultaneously by several threads.
734e813 by dums at 2007-01-25 446
8ac5525 by dums at 2006-12-06 447
2006-11-17  Francois Dumont  <dums@stlport...>
448
449
	* stlport/stl/config/_macosx.h: Add endianess configuration.
450
451
2006-11-16  Francois Dumont  <dums@stlport...>
452
453
	* test/unit/resolve_name.cpp: Clean most of MSVC6 workaround, only
454
	one has been kept to have the test pass.
455
456
2006-11-13  Francois Dumont  <dums@stlport...>
457
458
	* stlport/stl/_cwchar.h: Patch from Michael Fink to fix EVC3
459
	missing mbstate_t definition.
460
461
2006-11-07  Francois Dumont  <dums@stlport...>
462
463
	* stlport/stl/_threads.h: Removed _Atomic_swap_struct export
464
	that should be useless as completely inlined. Moreover it was
465
	generating a compilation error using MSVC 2005 under Windows
466
	64 bits.
467
8328278 by dums at 2006-11-04 468
2006-10-26  Francois Dumont  <dums@stlport...>
cff260b by complement at 2006-11-02 469
470
	* test/unit/codecvt_test.cpp: Removed try/catch blocks not
471
	supported by platform missing exception support and moreover
472
	useless as we know the code called in the try and this code
473
	do not throw (thanks Michael Fink report).
474
475
	* build/Makefiles/nmake/targetdirs.mak, lib/clean.mak, app/clean.mak:
476
	Complete clobber and distclean rules to really clean all generated
477
	stuffs.
478
479
	* build/Makefiles/nmake/top.mak: Patch from Gary Bartlett to make nmake
480
	'all' rule the default rule.
481
8328278 by dums at 2006-11-04 482
2006-10-25  Francois Dumont  <dums@stlport...>
169e26f by dums at 2006-10-31 483
8328278 by dums at 2006-11-04 484
	* src/dll_main.cpp: Fix syntax error '>>' rather than '> >' in
485
	a _STLP_alloc_proxy explicit instanciation.
169e26f by dums at 2006-10-31 486
8328278 by dums at 2006-11-04 487
	* stlport/stl/_unordered_set.h: Fix template method for the
488
	associative container extension, use _KT type rather than key_type.
8bffd90 by complement at 2006-10-23 489
8328278 by dums at 2006-11-04 490
2006-10-20  Francois Dumont  <dums@stlport...>
8bffd90 by complement at 2006-10-23 491
8328278 by dums at 2006-11-04 492
	* stlport/stl/config: Removed some used macros
493
	  _STLP_AUTOMATIC_TYPE_TRAITS
494
	  _STLP_UNINITIALIZABLE_PRIVATE
495
	  _STLP_STATIC_ARRAY_BUG
496
	  _STLP_FULL_ADL_IMPLEMENTED
8bffd90 by complement at 2006-10-23 497
8328278 by dums at 2006-11-04 498
	* test/unit/codecvt_test.cpp: Ignore test when
499
	_STLP_NO_MEMBER_TEMPLATES defined.
8bffd90 by complement at 2006-10-23 500
d6549da by complement at 2006-10-20 501
2006-10-20  Petr Ovtchenkov  <complement@users.sourceforge.net>
502
503
	* stlport/stl/_cwchar.h: fix HP-UX problem with WCHAR_MIN, WCHAR_MAX
504
	[Boris Gubenko].
505
9a00ab4 by complement at 2006-10-19 506
2006-10-19  Petr Ovtchenkov  <complement@users.sourceforge.net>
507
8bffd90 by complement at 2006-10-23 508
	* test/unit/sstream_test.cpp: check bugreport #1580020, not confirmed;
509
	[bug in gcc 4.1.2-svn, compiler under development].
9a00ab4 by complement at 2006-10-19 510
855566d by complement at 2006-10-18 511
2006-10-17  Francois Dumont  <dums@stlport...>
512
513
	* stlport/stl/_cwchar.h: Restore code to define potentially missing
514
	WCHAR_MIN, WCHAR_MAX macros. It used to be in _mbstate_t.h but was
515
	missing some native includes to work, in _cwchar.h everything should
516
	be fine.
517
518
	* test/unit/codecvt_test.cpp: Fix C cast that was losing const
519
	qualifier.
520
521
	* stlport/stl/_mbstate_t.h: Avoid definition of _STLP_NO_MBSTATE_T when
522
	using own mbstate_t definition in _STLP_USE_NO_IOSTREAMS mode. This macro
523
	is not supported anymore and should be fixed or removed in future version.
524
	Own mbstate_t will be defined even in no iostreams mode.
525
526
	* stlport/stl/config/_evc.h: Now that mbstate_t situation is clear EVC3
527
	defines _STLP_NO_NATIVE_MBSTATE_T rather than directly defining it in
528
	the config file. 
529
530
	* test/unit: Several fixes to build with _STLP_NO_EXTENSIONS and
531
	_STLP_NO_ANACHRONISMS.
532
25eccc4 by complement at 2006-10-16 533
2006-10-16  Petr Ovtchenkov  <complement@users.sourceforge.net>
534
535
	* stlport/stl/_mbstate_t.h: this header may be included from system
536
	stddef.h, without wchar.h---defines of wchar limits isn't good place
537
	here [WCHAR_MAX, etc.].
538
539
	* test/unit/cwchar.cpp: correct test to hilight problem above.
540
541
2006-10-14  Petr Ovtchenkov  <complement@users.sourceforge.net>
4083c43 by complement at 2006-10-13 542
543
	* test/unit/cwchar.cpp, build/test/unit/Makefile.inc: test a few macros
544
	related to wchar. Inspired by problems in STLPORT_5_1 and boost::regex.
545
a10e617 by complement at 2006-10-13 546
2006-10-12  Francois Dumont  <dums@stlport...>
547
548
	* stlport/stl/_numpunct.h, src/numpunct.cpp: numpunct facet _M_truename
549
	_M_falsename and _M_grouping are not static anymore. This seems useless
550
	and moreover was introducing static initialisation order and threading
551
	issues.
552
25eccc4 by complement at 2006-10-16 553
	* stlport/stl/c_locale.h, _mbstate_t.h, src/c_locale.h, c_locale.c:
554
	New mbstate_t policy. When no mbstate_t in native library STLport defines
555
	one for its own need in localisation support. This mbstate_t is simply
556
	an int defined in global namespace and imported to STLport namespace.
557
	Internal localisation framework is nt anymore in STLport namespace but
558
	in the global one as it is normaly a C framework.
559
a10e617 by complement at 2006-10-13 560
	* stlport/stl/config/_bc.h: Defines _STLP_NO_NATIVE_MBSTATE_T rather
561
	than internal _STLP_USE_OWN_MBSTATE_T macro.
562
8328278 by dums at 2006-11-04 563
	* stlport/stl/config/_evc.h: Add comment for EVC3 users, this platform
564
	should define _STLP_NO_NATIVE_MBSTATE_T, but I have not the platform
565
	to check...
566
a10e617 by complement at 2006-10-13 567
	* build/Makefiles/gmake/bcc.mak: Do not force anymore built of C sources
568
	as C++.
569
570
	* test/unit/string_test.cpp, istmit_test.cpp: Fixed macro checks to make
571
	tests buildable even when _STLP_NO_IOSTREAMS is defined.
572
8328278 by dums at 2006-11-04 573
2006-10-09  Francois Dumont  <dums@stlport...>
0620d08 by complement at 2006-10-12 574
8328278 by dums at 2006-11-04 575
	* test/unit/codecvt_test.cpp: Fix use of mbstate_t to make it more
576
	portable.
c6a6ae4 by complement at 2006-10-12 577
0620d08 by complement at 2006-10-12 578
2006-10-06  Francois Dumont  <dums@stlport...>
579
580
	* stlport/stl/_alloc.h, _alloc.c: Fixed __debug_alloc implementation
581
	to avoid unjustified assertion about wrong size of buffer to
582
	deallocate, thanks David Deakins and verntx on sourceforge.
583
584
	* test/unit/vector_test.cpp: Add test for bug above.
585
586
	* stlport/wchar.h, stl/_cwchar.h, _istream.h, _limits.h, _locale.h,
587
	_threads.h, char_traits.h, type_traits.h, _mbstate_t.h: Fix regression
588
	introduce by inclusion of mbstate_t.h in wchar.h. Now _mbstate_t.h is
589
	only included at end of wchar.h and _cwchar.h. All places where _mbstate_t.h
590
	was used are now including _cwchar.h.
591
592
2006-10-05  Francois Dumont  <dums@stlport...>
593
594
	* build/Makefiles/gmake/bcc.mak: Use -P compiler to force build of C
595
	translation as C++ because of the mbstate_t problem.
596
597
	* build/Makefiles/gmake/lib/bcc.mak, rules-a.mak: Fix Borland tlib call
598
	syntax thanks mbkenny.
599
600
	* stlport/stl/wchar.h: Add include of internal _mbstate_t.h file to
601
	know STLport status regarding mbstate_t configuration.
602
603
	* stlport/stl/c_locale.h: When building platform localisation support
604
	as C++ struct declaration are done in STLport namespace.
605
606
	* src/c_locale.h: Removed _mbstate_t.h include that is now included
607
	from wchar.h or _cwchar.h depending on C or C++ build. Removed #error
608
	done too early (see next comment).
609
610
	* src/c_locale.c: Add #error statement when building STLport on a platform
611
	having real localisation support but no native mbstate_t definition. In this
612
	case c_locale.c must be built as a C++ translation unit.
613
614
	* src/c_locale_win32/c_locale_win32.c: Add Borland workaround to avoid
615
	compilation error now that it is build as a C++ translation unit.
616
617
	* stlport/stl/_mbstate_t.h: Now that this file is not included from outside
618
	world we can include internal _cwchar.h rather than cwchar. Removed
619
	a wint_t workaround already existing in _cwchar.h. Removed Borland workaround
620
	that was defining mbstate_t when using this file in a C context, it was
621
	moreover different than the definition in C++ ! Add a pure C declaration of
622
	mbstate_t when in C.
623
624
2006-10-04  Francois Dumont  <dums@stlport...>
625
626
	* src/c_locale.h: Add #error to signal issue when building c_locale.c
627
	as a C source when STLport uses its own mbstate_t definition.
628
629
	* src/num_put_float.cpp: Modification in Cygwin native lib headers
630
	revealed that we were missing ieeefp.h include.
631
632
	* src/dll_main.cpp, stlport/stl/_threads.h: Fix export of
633
	_Atomic_swap_struct for compilers supporting export of templates.
634
635
	* stlport/stl/config/_hpacc.h: Some cleanup (unknown _STLP_NO_KOENIG_LOOKUP
636
	macro) and formating fixes.
637
638
	* stlport/stl/_bvector.h: Use _STLP_DECLARE_RANDOM_ACCESS_REVERSE_ITERATORS
639
	rather than reproducing the workaround hidden by this macro.
640
641
	* test/unit/vector_test.cpp: Add test case to check iterators comparisons.
642
8328278 by dums at 2006-11-04 643
2006-09-26  Francois Dumont  <dums@stlport...>
644
645
	* src/allocators.cpp: Reorder code blocks to fix build when using
646
	_STLP_LEAKS_PEDANTIC.
647
648
	* stlport/stl/_num_put.c: Restore __len >= 2 check in
649
	__copy_integer_and_fill function. It has been removed on the
650
	2006-07-11, at this time STLport always add the base information
651
	even for 0 value. This modification has been rollback but not this
652
	check.
653
654
	* test/unit/num_put_get_test.cpp: Add check for above fix.
655
656
2006-09-26  Francois Dumont  <dums@stlport...>
657
658
	* src/c_locale_win32/c_locale_win32.c: Add check of code page when
659
	specified in locale name.
660
661
	* src/c_locale_win32/c_locale_win32.c: Add checks in __ConvertDate
662
	and _Locale_t_fmt to avoid potential buffer overflow.
663
664
	* src/c_locale_win32/c_locale_win32.c: Create __GetLocaleInfoUsingACP
665
	function that merge a call to GetLocaleInfoA and a call to
666
	__ConvertFromACP in one call, the latter function has been removed.
667
668
	* src/c_locale.h: Restore _STLP_BEGIN_NAMESPACE when STLport use
669
	its own mbstate_t definition which is only available in STLport
670
	namespace. Fix Borland regression.
671
672
	* stlport/stl/_mbstate_t.h: Replace stl/_cwchar.h include with
673
	a cwchar one as this file is included from the outside world when
674
	building STLport lib.
675
676
2006-09-25  Francois Dumont  <dums@stlport...>
677
678
	* test/unit/codecvt_test.cpp: New test case for the codecvt
679
	facet.
680
681
	* test/unit/unordered_test.cpp: size_t replace by int to avoid
682
	64bits issue warning.
683
684
2006-09-21  Francois Dumont  <dums@stlport...>
685
686
	* stlport/stl/c_locale.h: Patch from Boris Gubenko to avoid
687
	direct inclusion of internal header from this header that is
688
	access from the outside world when building STLport lib.
3c5a8ed by complement at 2006-09-12 689
8328278 by dums at 2006-11-04 690
2006-09-20  Francois Dumont  <dums@stlport...>
691
692
	* test/unit/allocator_test.cpp: Add new test case for allocation of
693
	empty buffer.
694
695
	* test/unit/fstream_test.cpp: Use a variable to always point to the same
696
	test file and adopt a 'Standard' file name 'test_file.txt'.
697
698
	* stlport/stl/_hash_fun.h: Rollback 2006-08-26 Petr modification that
699
	was introducing a regression with MSVC compilers.
700
701
	* stlport/stl/_fstream.c: First attempt to fix seekoff basic_filebuf
702
	implementation when dealing with a codecvt facet having variable
703
	encoding. This fix is surely not complete, discussion with Uli is not
704
	over.
705
706
2006-09-13  Francois Dumont  <dums@stlport...>
707
708
	* stlport/stl/_exception.h: Made a previously general Windows 64 bits
709
	workaround specific to the cross compiler coming with PSDK. Thanks
710
	Igor Pavlov.
711
712
2006-09-11  Francois Dumont  <dums@stlport...>
713
714
	* stlport/stl/_num_put.c: Modification in __do_put_integer to avoid
715
	a Hp aCC workaround.
3c5a8ed by complement at 2006-09-12 716
19b8782 by complement at 2006-09-11 717
2006-09-11  Petr Ovtchenkov  <complement@users.sourceforge.net>
718
719
	* stlport/stl/_algo.c: search_n with predicate fail in case
720
	when subsequence size is 1; thanks Timmie Smith.
721
	
722
	* test/unit/alg_test.cpp: test for problem.
723
8328278 by dums at 2006-11-04 724
2006-09-08  Francois Dumont  <dums@stlport...>
8f72fc6 by complement at 2006-09-08 725
8328278 by dums at 2006-11-04 726
	* src/c_locale_win32/c_locale_win32.c: Modification in __GetLCIDFromName
727
	to support the Chinese_Taiwan locale. Add of a __GetLCID call when first
728
	call to it using non NLS mapping fails.
5eec1ea by complement at 2006-09-08 729
8328278 by dums at 2006-11-04 730
	* src/c_locale_win32/c_locale_win32.c: Change __ParseLocaleString
731
	implementation to correctly handle locale with a name having '.' in
732
	the language or country part like in 'Chinese_Hong Kong S.A.R..950'.
733
734
2006-09-05  Francois Dumont  <dums@stlport...>
735
736
	* build/lib/configure.bat: Fixed comment for --rtl-dynamic and
737
	--rtl-static options, impact on macros to uncomment in hosts.h
738
	config file was inversed. Thanks Igor Pavlov.
739
740
	* build/lib/configure.bat, doc/FAQ, doc/README.msvc,
741
	stlport/stl/config/user_config.h, _hpacc.h: Replaced references to
742
	_site_config.h by hosts.h. Thanks Igor Pavlov.
743
744
2006-08-30  Francois Dumont  <dums@stlport...>
745
746
	* stlport/stl/_cmath.h, _cstdlib.h: Patch from Boris Gubenko, Hp aCC
747
	native Standard	lib already define math functions in global namespace.
748
	
749
	* stlport/stl/_num_put.c: Patch from Boris Gubenko, Hp aCC before version
750
	60000 do not consider 'const ptrdiff_t' as const enough to be used in a
751
	static buffer declaration.
e1cd844 by complement at 2006-09-08 752
5fa636d by complement at 2006-08-26 753
2006-08-26  Petr Ovtchenkov  <complement@users.sourceforge.net>
754
755
	* stlport/stl/_hashtable.c: allow smaller bucket counts for
756
	hashtable. Thanks Herbert Duerr.
757
55e3ced by complement at 2006-08-26 758
	* stlport/stl/_hash_fun.h: use primary types for hasher, not
759
	typedefs.
760
40eba71 by complement at 2006-08-26 761
	* stlport/stl/type_manips.h: workaround for __true_type/__false_type
762
	for various versions gcc (oh, yes, gcc, it's real pain to detect
763
	real version of libstdc++)
8328278 by dums at 2006-11-04 764
	
765
2006-08-10  Petr Ovtchenkov  <complement@users.sourceforge.net>
766
767
	* stlport/stdlib.h: include errno.h for aCC, in case of -mt option in force.
768
	This solve errno problem on HP-UX. Thanks Boris Gubenko.
769
770
2006-08-09  Francois Dumont  <dums@stlport...>
40eba71 by complement at 2006-08-26 771
8328278 by dums at 2006-11-04 772
	* stlport/stl/config/_msvc.h: Add _STLP_NORETURN_FUNCTION for MSVC
773
	compilers.
34ff1fc by dums at 2006-07-27 774
8328278 by dums at 2006-11-04 775
	* stlport: Move place of _STLP_FUNCTION_THROWS in function declaration to
776
	make msvc compiler happier, gcc do not care about position of this
777
	attribute.
34ff1fc by dums at 2006-07-27 778
8328278 by dums at 2006-11-04 779
	* stlport/stl/_ioserr.h: Fixed specification of STLport configuration file
780
	in #error statement.
781
782
2006-08-04  Francois Dumont  <dums@stlport...>
783
784
	* stlport: Create _STLP_FUNCTION_THROWS depending on _STLP_NORETURN_FUNCTION
785
	and also taking into account exception handling configuration.
786
787
	* test/unit/alg_test.cpp, istmit_test.cpp: Fixes to make test buildable with
788
	native compiler Standard library.
789
790
2006-08-03  Francois Dumont  <dums@stlport...>
791
792
	* build/Makefiles/nmake/evc8.mak: Patch from Ulrich Echkardt to activate
793
	whole program optimization.
794
795
2006-07-31  Francois Dumont  <dums@stlport...>
796
797
	* Patch from Michael Fink to fix EVC emulator build.
34ff1fc by dums at 2006-07-27 798
9876ffc by dums at 2006-07-26 799
2006-07-26  Francois Dumont  <dums@stlport...>
800
801
	* src/fstream.cpp: Fixed MMAP_CHUNK definition, an offset type is signed.
802
8328278 by dums at 2006-11-04 803
	* Creation of the 5.1.0 RC2 package.
804
805
	* Creation of STLPORT_5_1_RC2 tag
806
9876ffc by dums at 2006-07-26 807
2006-07-25  Francois Dumont  <dums@stlport...>
808
809
	* stlport/stl/config/_system.h, _windows.h: Fixed MinGW config that also
810
	need _windows.h.
811
812
	* stlport/stl/config/_mingw.h: Removed, conflict with platform system
813
	header.
814
815
2006-07-22  Francois Dumont  <dums@stlport...>
816
817
	* stlport/stl/config: Add _STLP_PLATFORM and _STLP_COMPILER repectively
818
	containing STLport detected platform and compiler names. Some names
819
	are surely not accurate and will be fixed but introducing those macros,
820
	especially _STLP_COMPILER, help to report detection issue.
821
822
	* stlport/stl/config/_system.h: Change macro checks in order to guaranty
823
	that only one platform and only one compiler configuration file will be
824
	included.
825
826
	* stlport/stl/config/_cygwin.h, _mingw.h: Added
827
828
	* stlport/stl/config/features.h: Removed _STLP_NO_MEMBER_TEMPLATE_CLASSES
829
	check when _STLP_USE_TEMPLATE_EXPRESSION is activated.
830
831
	* stlport/stl/config/_gcc.h, features.h: Add _STLP_NORETURN_FUNCTION
832
	to signal function not returning, under gcc we use __attribute__((noreturn)). 
833
834
	* src/locale_impl.h, stlport/stl/_ios_base.h, _locale.h, _range_errors.h,
835
	_rope.h, _string_base.h, _vector.h, debug/_debug.h: Add
836
	_STLP_NORETURN_FUNCTION to function that encapsulate raising of exceptions.
837
	This help to limit warnings about uninitialized variable before use under
838
	gcc.
839
840
2006-07-18  Francois Dumont  <dums@stlport...>
841
842
	* test/unit/unordered_test.cpp: Change Key data type from size_t
843
	to the more portable int. Fix what seems to be a bad code generation
844
	of gcc under Linux 64 bits resulting in a test failure.
845
846
2006-07-17  Francois Dumont  <dums@stlport...>
847
848
	* test/unit/alg_test.cpp: New test for find_first_of algo.
849
850
	* stlport/stl/config/user_config.h, features.h: string template
851
	expressions is not a transparent feature, some compilers (VC6)
852
	are experimenting ICE with it or some other (gcc) do not accept
853
	it when extending string class (see mystring in
854
	test/unit/string_test.cpp). So default STLport configuration will
855
	be without string template expression, _STLP_DONT_USE_TEMPLATE_EXPRESSION
856
	has been replaced by _STLP_USE_TEMPLATE_EXPRESSION.
857
858
2006-07-16  Francois Dumont  <dums@stlport...>
859
860
	* test/unit/mvctor_test.cpp: Patch from Michael Fink to avoid a EVC
861
	ARM crash.
862
863
2006-07-13  Francois Dumont  <dums@stlport...>
864
865
	* stlport/stl/_num_put.c: Rollback modif above, according C printf doc
866
	0 value shouldn't show their base.
867
868
	* stlport/stl/type_traits.h: Avoid instanciation of _IsCVConvertible if
869
	not dealing with pointers. Systematical instanciation was giving
870
	compilation error as soon as type had a special memory alignment, such
871
	types cannot be pass by value in function calls. Thanks andy2222 from
872
	sourceforge.
873
874
	* build/Makefiles/nmake/evc3.mak, evc4.mak, evc8.mak: Patch from Ulrich
875
	Eckhardt to remove commctrl.lib dependency, for the moment evc3 and evc4
876
	only contains a note about this potentially useless dependency.
877
878
	* stlport/stl/debug/_string.h: Add missing copy methods in the debug
879
	string implementation thanks Patrick Bennett report.
880
881
	* test/unit/string_test.cpp: New copy test case for string::copy.
882
883
	* stlport/stl/_algo.h: Add missing _STLP_PRIV namespace scope in calls
884
	to __find_first_of thanks Patrick Bennett report.
885
886
2006-07-11  Francois Dumont  <dums@stlport...>
887
888
	* stlport/stl/debug/_deque.h, _list.h, _slist.h, _string.h, _vector.h:
889
	Extend use of _Non_Dbg_iter function in all template methods dealing
890
	with iterator range.
891
892
	* _num_put.c: Fix to show base in octal or hexadecimal mode even for
893
	0 value.
894
895
	* stlport/stl/_istream.c: Avoid modification of value to extract in
896
	formatted input of short and int when value would overflow.
897
898
	* test/unit/num_put_get_test.cpp: Add some tests for above fixes.
899
900
	* test/unit/iostream_test.cpp: New tests for general stream
901
	manipulations.
902
903
	* stlport/stl/_istream.h: Fix ws iostream function, it do not set failbit
904
	anymore when stream is in eof state.
905
906
	* build/lib/msvc.mak: Generation of config.mak is not mandatory anymore
907
	as Intel compiler do not need it for the moment. Only a COMPILER_NAME
908
	is mandatory which is given by icl.mak for Intel compilers and by
909
	config.mak for Microsoft ones.
910
	
911
2006-07-10  Francois Dumont  <dums@stlport...>
912
913
	* stlport/stl/debug/_iterator.h: Creation of _Non_Dbg_iter function
914
	returning native iterator of special debug iterator with
915
	compilers supporting partial template function ordering. Fix
916
	a MSVC .Net 2003 issue that seems to be related to a too important
917
	template depth.
918
919
	* stlport/stl/debug/_deque.h, _list.h, _slist.h, _string.h, _vector.h:
920
	Use new _Non_Dbg_iter function in constructors from iterator
921
	range.
922
923
2006-07-07  Petr Ovtchenkov  <complement@users.sourceforge.net>
924
925
	* build/lib/configure: rollback changes 4 Jul 2006 19:42:55,
926
	it's definitely wrong (phrase with quotes ['] requires double
927
	quotes ["]).
928
929
2006-07-06  Francois Dumont  <dums@stlport...>
930
931
	* stlport/stl/_num_put.c: Small refactoring with introduction
932
	of the __do_put_integer function for integer types output. Moreover
933
	static buffer size used for formating is now based on output
934
	type sizeof.
935
936
	* stlport/stl/_ostream.c: Add some assertion before cast to check that
937
	no significant digit is lost. Add cast to long in int and short output
938
	in order to make type of expression more explicit and correct. This
939
	fix the bug report from Geoffrey Bache on sourceforge about output of
940
	-1 ont value on 64bits linux.
941
942
	* test/unit/floatio_test.cpp: Removed, all code moved to NumPutGetTest
943
	test fixture.
944
945
	* test/unit/num_put_get_test.cpp: New, contains all tests regarding
946
	input/output of numeric values (locale independant).
947
948
	* test/unit/locale_test.cpp: locale independant tests of numeric input/
949
	output moved to NumPutGetTest test fixture.
950
951
2006-07-04  Francois Dumont  <dums@stlport...>
952
953
	* stlport/stl/_rope.h, _rope.c: Patch from Peter Hercek to fix a
954
	missing null termination in rope constructor from a character 
955
	and a buffer overrun.
956
957
	* stlport/stl/_rope.h: Removed special _S_rounded_up implementation
958
	for other types than char and wchar_t. rope implementation is
959
	expecting this method to always return a size > to the given size in
960
	order to store the terminating null character.
961
962
	* stlport/stl/_rope.c: Fix reference counter management to avoid memory
963
	leak in _S_destr_concat_char_iter.
964
965
2006-06-30  Francois Dumont  <dums@stlport...>
966
967
	* src/num_put.cpp, num_put_float.cpp: Patch from Glen Summers
968
	to fix float output using locale with grouping and float value
969
	has no decimal.
970
971
	* test/unit/locale_test.cpp: Add some tests showing above bug.
972
973
2006-06-29  Francois Dumont  <dums@stlport...>
974
975
	* stlport/stl/_algo.h, _algo.c, _algobase.h, _algobase.c,
976
	_hashtable.c: Patch from Andriy Syrovenko to fix implementation
977
	of __equal_range, __lower_bound, __upper_bound when dealing with
978
	a key whom type is different from the value_type of the iterator.
979
980
	* test/unit/equal_test.cpp: Add some tests to show above bug.
981
982
2006-06-28  Francois Dumont  <dums@stlport...>
983
984
	* stlport/stl/_string_sum_methods.h, debug/_string_sum_methods.h:
985
	Small refactoring and simplification of code to avoid a parameter
986
	with default value. This fixing an ICE using MSVC6.
987
988
	* test/unit/string_test.cpp: Ignore the newly introduce te_tmp
989
	test using MSVC6.
990
b19425d by complement at 2006-06-27 991
2006-06-27  Petr Ovtchenkov  <complement@users.sourceforge.net>
992
993
	* stlport/stl/_list.h: fix bug in list.swap, thanks Viktor Govako.
994
995
	* test/unit/list_test.cpp: test for bug above.
996
9876ffc by dums at 2006-07-26 997
2006-06-27  Francois Dumont  <dums@stlport...>
998
999
	* build/lib/configure: Add --with-lib_motif option to grant STLport
1000
	users the possibility of tweaking the generated libraries name.
1001
1002
	* build/Makefiles/gmake/unix/lib.mak: Add code to take into account
1003
	configured lib motif in generated library name.
1004
1005
	* build/Makefiles/gmake/netware/lib.mak: Looks like it needs same
1006
	defines as the ones in cygming/lib.mak so we simply include this
1007
	file.
1008
1009
	* stlport/stl/config/_evc.h: Patch from Michael Fink to fix a
1010
	compilation error.
1011
1012
	* test/unit/cppunit/cppunit_mini.h: Patch from Michael Fink to
1013
	avoid unused parameter warning.
1014
1015
2006-06-23  Francois Dumont  <dums@stlport...>
1016
1017
	* stlport/stl/_pair.h, _bvector.h, config/_evc.h: Patch from
1018
	Ulrich Eckhardt to extend an evc4 MIPS workaround for eVC8
1019
	and to generalize little endian configuration.
1020
1021
	* DMC patch from Eric Sanford. Define _STLP_NO_FUNTION_TMPL_PARTIAL_ORDER
1022
	so that many ignored unit test could be now passed. Also specify
1023
	Intel 386 instruction set during compilation to limit link errors.
1024
1025
2006-06-22  Francois Dumont  <dums@stlport...>
1026
1027
	* stlport/stl/_algobase.c: Removed check of equivalent predicate
1028
	commutativity in find algorithm. In this case, equivalence relation
1029
	might have been implemented using a member operator == which is
1030
	not commutative thanks Grisha Spivak report. Other checks that are
1031
	using an explicit predicate parameter has been kept even if it forces
1032
	STLport users to implement commutative functor.
1033
1034
	* test/unit/find_test.cpp: Add test to show above issue.
1035
1036
	* stlport/stl/_hashtable.c: Removed equivalent predicate checks
1037
	that are useless as in _STLP_DEBUG mode the debug wrapping add this
1038
	check in the functor used to instanciate the non debug hashtable
1039
	implementation.
1040
1041
2006-06-19  Francois Dumont  <dums@stlport...>
1042
1043
	* STLport 5.1.0 candidate released. STLPORT_5_1 branch created in
1044
	CVS. Version tagged STLPORT_5_1_RC1.
1045
f773e0e by dums at 2006-06-17 1046
2006-06-17  Francois Dumont  <dums@stlport...>
1047
1048
	* test/unit/type_traits_test.cpp, uninitialized_test.cpp: Add
9876ffc by dums at 2006-07-26 1049
	explicit public inheritance relation to avoid an ICL warning.
f773e0e by dums at 2006-06-17 1050
1051
	* stlport/stl/config/features.h: Add definition of
1052
	_STLP_DEBUG_LEVEL to _STLP_STLPORT_DBG_LEVEL when _STLP_DEBUG
1053
	is defined but _STLP_DEBUG_LEVEL hasn't been set.
1054
	(thanks an ICL warning report)
1055
1056
	* stlport/stl/config/_intel.h: Remove undef of
1057
	_STLP_NO_UNEXPECTED_EXCEPT_SUPPORT, even if the linker complains
1058
	about not finding unexpected_exception it looks like it finally do
1059
	not use it.
1060
1061
	* test/unit/cppunit/test_main.cpp: Filter definition of
1062
	unexpected_exception when building unit test with static STLport
1063
	lib.
1064
e8b9b96 by dums at 2006-06-15 1065
2006-06-15  Francois Dumont  <dums@stlport...>
1066
1067
	* stlport/stl/config/features.h: Several macro renamed:
1068
	  - _STLP_LONG_DOUBLE  -> _STLP_LONGEST_FLOAT_TYPE
1069
	  - __DFL_TMPL_PARAM -> _STLP_DFL_TMPL_PARAM
1070
	  - __DFL_TYPE_PARAM -> _STLP_DFL_TYPE_PARAM
1071
	  - __DFL_NON_TYPE_PARAM -> _STLP_DFL_NON_TYPE_PARAM
1072
	  __DFL_TYPE_ARG removed.
1073
	
1074
	* stlport/stl: Add char_traits template parameter in all
1075
	istreambuf_iterator and ostreambuf_iterator instanciation where it
1076
	was missing as some compiler might not have supported it.
1077
1078
	* stlport/stl/_time_facets.h, src/locale_impl.cpp: Finaly adopt a
1079
	specific gcc workaround for definition of _Locale_time_extract_hint
1080
	as friend of time_get_byname facet. Gcc 2.95 prefers to see a template
1081
	method otherwise it emits a warning, we want to avoid STLport users
1082
	to have to disable this warning. Other compilers will use a simple
1083
	function which seems to be more portable.
1084
1085
	* stlport/stl/_vector.h, _pair.h: Patch from Eric Sanford for a
1086
	really weird Borland compiler workaround that consists in adding
1087
	a _Ret typedef in __move_traits or __type_traits traits struct
1088
	that do not normally contain it.
1089
1090
	* stlport/stl/config/_bc.h: Borland free compiler do not support
1091
	STLport container extension of template methods.
1092
48bf6c8 by dums at 2006-06-14 1093
2006-06-14  Francois Dumont  <dums@stlport...>
1094
1095
	* test/unit: Patch from Ulrich Eckhardt to fix storage of string
1096
	literals to const char* rather than simple char*.
1097
1098
	* build/Makefiles/nmake: Ulrich Eckhardt patch:
1099
	  - /MACHINE:IX86 is obsolete and only supported for backward
1100
	    compatibility as alias for X86. Replaced all cases of IX86
1101
	    with X86.
1102
	  - /NODEFAULTLIB:OLDNAMES.lib seems to also be universal so I
1103
	    moved it to the base, too.
1104
	  - In order to use main() as entry point under CE, use linker 
1105
	    option /ENTRY:mainACRTStartup. This was already done for
1106
	    evc3,4,8 but I moved it to app/evc-common.mak and documented
1107
	    it.
1108
1109
	* stlport/stl/_cmath.h, config/_evc.h: Uli patch to activate long
1110
	double support for EVC and use _hypot to implement STLport
1111
	overload.
1112
1113
	* src/complex.cpp: Remove internal __stlp_hypot that is not necessary
1114
	anymore now that STLport always define a hypot function (thanks Uli
1115
	remark).
1116
1117
	* stlport/stl/config: Ulrich Eckhardt VC8/CE patch:
1118
	  - Adapt the code to construct the paths to the native includes
1119
	    so that it matches the changed structure. This is currently
1120
	    only for ARM and might need more work for other targets (x86
1121
	    works though).
1122
	  - Make a distinction between the desktop and CE variants concerning
1123
	    the exception support functions. These now use the same compiler
1124
	    versions so that can't be used anymore.
1125
	  - MS' safe string functions are not available under CE - I think,
1126
	    need to take a closer look at Platform Builder.
1127
1128
	* stlport/stl: Ulrich Eckhardt to adapt STLport to VC8/CE limited
1129
	native C library.
1130
1b808d8 by dums at 2006-06-14 1131
2006-06-13  Francois Dumont  <dums@stlport...>
1132
1133
	* stlport/stl/pointers/_tools.h: Add partial specialization for
1134
	_IteWrapper helper struct so that when type to store and stored
1135
	type are identical input iterators are not wrapped. Otherwise input
1136
	iterators are wrapped to perform necessary casts between pointer type
1137
	and void*.
1138
1139
	* stlport/stl/_cmath.h: Fixed macros definition used to define all
1140
	math functions for compilers supporting long double but not having
1141
	float nor long double C math functions. Thanks Ulrich Eckhardt report.
1142
	
9d71e75 by dums at 2006-06-12 1143
2006-06-12  Francois Dumont  <dums@stlport...>
1144
1145
	* test/unit/set_test.cpp, map_test.cpp: Replace size_t with the
1146
	more portable int type when possible.
1147
1148
	* stlport/stl/pointers/_tools.h: Check that type to store is a
1149
	pointer type before modifying predicate type for set container.
1150
	Wrapping less functor in all cases was making move semantic tests
1151
	to fail as predicate is not then detected as being the STLport
1152
	less predicate.
1153
1154
	* stlport/stl: DMC patch from Eric Sanford. DMC do not like __ss
1155
	variable that is a reserved keyword.
1156
060815e by dums at 2006-06-11 1157
2006-06-11  Francois Dumont  <dums@stlport...>
1158
1b808d8 by dums at 2006-06-14 1159
	* build/Makefiles/nmake: Patch from Ulrich Eckhardt to use
060815e by dums at 2006-06-11 1160
	main rather than WinMain for EVC platform.
1161
1162
	* build/test/unit/gcc.mak: Removed redondant macro definition
1163
	_STLP_USE_STATIC_LIB under cygwin/mingw as those definition
1164
	are part of base make files.
1165
1166
	* stlport/stl/type_manips.h, _hashtable.h: Eric Sanford workaround
1167
	for Borland.
1168
27883c3 by dums at 2006-06-09 1169
2006-06-09  Francois Dumont  <dums@stlport...>
1170
1171
	* test/unit/cppunit: Patch from Ulrich Eckhardt to
1172
	  - Removed a few superfluous semicolons.
1173
	  - Made some constructors explicit.
1174
	  - Documented the meaning of FileReporter::_myStream.
1175
	  - Reformatted some things to not exceed 100 chars per
1176
	    line or use several expressions/statements in one line.
1177
1178
	* build/Makefiles/nmake: Patch from Ulrich Eckhardt to
1179
	  - adds support for x86 (running on e.g. a PC, so-called CEPC).
1180
	  - adds support for MIPS or more specifically MIPSII, other MIPS
1181
	    subtypes can easily be added.
1182
	  - removes a line "DEFS_COMMON = /D%TARGETCPU%" from the config.mak
1183
	    file generated for MIPS, the same functionality was moved to the
1184
	    CPU-specific setups where it is done for other CPUs.
1185
	  - adds an additional compiler flag so that diagnostics better
1186
	    match what the VC8 IDE expects.
1187
1b808d8 by dums at 2006-06-14 1188
	* stlport/stl: Patch from Ulrich Eckhardt to
27883c3 by dums at 2006-06-09 1189
	  - removes several unnecessary semicolons (typically, when
1190
	    inlining functions like "void foo() {};" where it in fact doesn't
1191
	    hurt (due to something I consider an oversight in the standard)
1192
	    but also doesn't make sense.
1193
	  - fixes inconsistent indentation in three cases, one with the
1194
	    preprocessor and two with memberfunction bodies.
1195
1196
	* stlport/stl/pointers/_tools.h: Add missing template method
fa5f907 by dums at 2006-06-19 1197
	in _CastTraits helper struct used on compiler with no partial
1198
	template specialization support.
27883c3 by dums at 2006-06-09 1199
b6a805d by dums at 2006-06-08 1200
2006-06-08  Francois Dumont  <dums@stlport...>
1201
1202
	* stlport/stl/pointers/_tools.h, _set.h: Fix problems reported by
1203
	gcc that seems to do more check that MSVC on explicit
1204
	instanciation of templates. Especially fixed problem introduce
1205
	by STLport extension of set template methods.
1206
1207
	* build/Makefiles/gmake/aCC.mak, lib/aCC.mak: Patch from Boris
1208
	Gubenko for Hp aCC build.
1209
8bb3832 by dums at 2006-06-07 1210
2006-06-07  Francois Dumont  <dums@stlport...>
1211
1212
	* stlport/stl/pointers: Restore pointer specialization feature.
1213
	Major modifications are:
1214
1215
	- vector specialization is done using a qualified void pointer
1216
	in order to keep optimization oportunities when working on
1217
	pointers. Using a strict void* was forcing wrapping of iterators
1218
	in template method making _BothPtrTypes struct helper failing to
1219
	detect both pointer types.
1220
1221
	- Fixed set specialization thanks to explicit instanciation added
1222
	in ptrspec_test.cpp.
1223
1224
	- Refactoring of algorithm to find storage type from value type.
1225
355c22c by dums at 2006-06-02 1226
2006-06-02  Francois Dumont  <dums@stlport...>
1227
1228
	* build/Makefiles/nmake: Patch from Ulrich Eckhardt for
1229
	cleanup. Some script refactoring, wrong OPT_STLDBG_STATIC references
1230
	replaced by OPT_STATIC_STLDBG.
1231
1232
	* src: Patch from Ulrich Eckhardt to cleanup locale implementation
1233
	and fix time facet creation when using dummy locale implementation.
1234
1235
	* stlport/stl/config/_evc.h: Patch from Ulrich Eckhardt to fix
1236
	endianess definition.
1237
1238
	* stlport/stl/debug/_hashtable.h: Create a _DbgEqual functor to
1239
	check correct equivalent predicate implementation. Add also
1240
	missing hash_func and key_eq methods in this mode.
1241
1242
	* stlport/stl/debug/_tree.h: Small refactoring in _DbgCompare
1243
	functor.
1244
1245
	* stlport/stl/type_traits.h, boost_type_traits.h: Restore boost
1246
	support.
1247
7bd19a1 by dums at 2006-06-01 1248
2006-06-01  Francois Dumont  <dums@stlport...>
1249
1250
	* stlport/stl/_tree.h, _set.h, _map.h, debug/_tree.h: Removed
1251
	erase template method extension, might conflict with erase
1252
	overload taking an iterator. User workaround will be to use
1253
	erase(find(key)).
1254
1255
	* stlport/stl/_hashtable.h, _map.h, _set.h, _unordered_set.h,
1256
	_unordered_map.h, debug/_hastable.h: Add template methods extension.
1257
1258
	* stlport/stl/config/features.h: Add management of containers template
1259
	method extension.
1260
fa5f907 by dums at 2006-06-19 1261
	* stlport/stl/config/_apple.h, _symantec.h: Config update based on
7bd19a1 by dums at 2006-06-01 1262
	config that used to be in _tree.h and _hashtable.h to remove
1263
	container template methods extensions.
1264
653c55d by dums at 2006-05-31 1265
2006-05-31  Francois Dumont  <dums@stlport...>
1266
1267
	* stlport/stl/config/_evc.h: Patch from Michael Fink to add ptrdiff_t
1268
	definition and forbid use of _STLP_DEBUG mode for evc 3/4 on ARM.
1269
850eea5 by dums at 2006-05-31 1270
	* build: Ulrich Eckhardt patch for Microsoft Visual Studio 2005 for
ecf91ac by dums at 2006-05-31 1271
	Embedded C++ portage.
1272
b40d40f by dums at 2006-05-30 1273
2006-05-30  Francois Dumont  <dums@stlport...>
1274
1275
	* stlport/stl/type_traits.h: Rename _Is_Integer<_Tp>::_Integral and
1276
	_Is_Rational<_Tp>::_Rational in respectively _IsIntegral<_Tp>::_Ret
1277
	and _IsRational<_Tp>::_Ret for naming convention coherency.
1278
1279
	* stlport/stl/type_traits.h: Add _TrivialNativeTypeCopy helper to
1280
	handle a number of oportunities to use memcpy/memmove in
1281
	uninitialized_* or copy algorithms that was not cover by simply
1282
	checking type_traits has_trivial* features.
1283
1284
	* stlport/stl/type_traits.h, boost_type_traits.h: Refactor _BothPtrType
1285
	implementation, only one version is necessary as it uses _IsPtr that
1286
	has a variable implementation depending on config.
1287
1288
	* stlport/stl/_vector.h: Add _DefaultZeroValue specialization for
1289
	vector container so that a vector of vector is simply initialized
1290
	using a memset to set everything to 0.
1291
1292
	* test/unit/vector_test.cpp: Add check that previous optimization
1293
	works as expected.
1294
f6a55d4 by dums at 2006-05-30 1295
	* stlport/typeinfo.h: Borland patch from Eric Sanford.
1296
1297
	* DMC patch from Eric Sanford
1298
850eea5 by dums at 2006-05-31 1299
	* stlport/stl/debug/_tree.h: Patch from Ulrich Eckhardt to add missing
39285ae by dums at 2006-05-30 1300
	count template method.
1301
850eea5 by dums at 2006-05-31 1302
	* src/dll_main.cpp: Patch from Ulrich Eckhardt to fix strncpy
39285ae by dums at 2006-05-30 1303
	usage.
1304
32c6d39 by dums at 2006-05-23 1305
2006-05-23  Francois Dumont  <dums@stlport...>
1306
1307
	* stlport/stl/_deque.h, _deque.c: Change implementation to use
1308
	_TrivialInit new feature.
1309
1f5dfa3 by dums at 2006-05-23 1310
	* stlport/stl/boost_type_traits.h: Add _TrivialInit implementation
1311
	using boost type traits.
1312
30f6b4f by dums at 2006-05-22 1313
2006-05-22  Francois Dumont  <dums@stlport...>
1314
1315
	* stlport/stl/type_traits.h: Add _TrivialInit helper struct to
1316
	report if a type is trivial to initialize or not that is to say
1317
	if the type has a trivial default constructor. Handle native types
fa5f907 by dums at 2006-06-19 1318
	exception that are consider as having a trivial default constructor
30f6b4f by dums at 2006-05-22 1319
	but that required a 0 initialization on explicit constructor
1320
	call.
1321
1322
	* stlport/stl/_uninitialize.h: Add a helper function
1323
	__uninitialize_init that result in a no-op if _TrivialInit returns
1324
	__true_type.
1325
1326
	* stlport/stl/_vector.h: Modification of vector constructor to
1327
	destect when it is called without an explicit default value so
1328
	that we can call __uninitialized_init.
1329
1330
	* test/unit/uninitialized_test.cpp: Add test to check correct
1331
	detection of useless initialization.
1332
0bb09d5 by dums at 2006-05-19 1333
2006-05-19  Francois Dumont  <dums@stlport...>
1334
850eea5 by dums at 2006-05-31 1335
	* test/unit/uninitialized_test.cpp: Patch from Ulrich Eckhardt
0bb09d5 by dums at 2006-05-19 1336
	to replace vector instance in uninitialized_copy_test by static
1337
	array so that we are always working on pointers iterator.
1338
850eea5 by dums at 2006-05-31 1339
	* stlport/stl/_string_operators.h: Patch from Ulrich Eckhardt to
0bb09d5 by dums at 2006-05-19 1340
	add missing != operators when using string template expression.
1341
1342
	* stlport/stl/ctype.h, config/_evc.h, _msvc.h, _windows.h,
1343
	features.h: Patch from Michael Fink for evc3/4 platform.
1344
fa5f907 by dums at 2006-06-19 1345
	* test/unit/mvctor_test.cpp: Add of a specific Borland test case
0bb09d5 by dums at 2006-05-19 1346
	to report what seems to be a compiler bug but that is only
1347
	revealed when using STLport.
1348
1349
	* stlport/stl/_tree.h, _set.h, _map.h, debug/_tree.h,
1350
	pointer/_set.h: Generalized already existing extension of template
1351
	find method on associative containers to all look up methods:
1352
	count, erase, lower_bound, upper_bound, equal_range.
1353
1354
	* test/unit/set_test.cpp: Add test case for set template methods
1355
	extension.
1356
bbbb464 by dums at 2006-05-20 1357
	* stlport/stl/_tree.c, debug/_tree.h: Removed debug check from
1358
	non debug implementation, now debug check is injected in tree
1359
	implementation from the tree debug implementation thanks to
1360
	a wrapping of the predicate.
1361
1b5ced1 by dums at 2006-05-18 1362
2006-05-18  Francois Dumont  <dums@stlport...>
1363
1364
	* stlport/stl/c_locale.h: Fix declaration of _Locale_name_hint
1365
	struct so that compilers do not think that this struct is in
1366
	the STLport namespace because of friend declaration.
1367
12625a0 by dums at 2006-05-17 1368
2006-05-17  Francois Dumont  <dums@stlport...>
1369
1370
	* stlport/stl/_abbrevs.h: Update list of abbreviations.
1371
1372
	* stlport/stl/_hashtable.c: Removed _Node macro and fixed
1373
	macros defined when _STLP_NESTED_TYPE_PARAM_BUG is defined.
1374
1b5ced1 by dums at 2006-05-18 1375
2006-05-16  Francois Dumont  <dums@stlport...>
1376
1377
	* test/unit/type_traits_test.cpp: Add test case to check
1378
	_TrivialUCopy helper metaprogramming class behavior.
1379
1380
	* stlport/stl/_vector.h, _vector.c: Replaced _TrivialAss by
1381
	_TrivialCopy and _TrivialUCpy by _TrivialUCopy for coherency
1382
	with type_traits.h names.
1383
1384
	* test/unit/type_traits_test.cpp: Add small test for correct
1385
	impact of trivial_destructor meta info in vector implementation.
1386
1387
	* build/lib/configure.bat: Add comment to explain weird TARGETCPU
1388
	check.
1389
2b4bca3 by dums at 2006-05-15 1390
2006-05-15  Francois Dumont  <dums@stlport...>
1391
1392
	* stlport/stl/_hashtable.h, _list.h, _deque.h, _slist.h,
1393
	_string.h, _vector.h, _move_construct_fwk.h, _rope.h:
1394
	Fix impact of _STLP_NO_MOVE_SEMANTIC macro on library. Now,
1395
	if defined, no move will ever happen.
1396
1397
	* stlport/stl/_uninitialized.h: Simplified __uninitialized_copy_fill
1398
	prototype, only one type of iterator is allowed. It also fix
1399
	implementation as this one was not taking into account both
fa5f907 by dums at 2006-06-19 1400
	iterator value_type to consider if the operation was trivial
2b4bca3 by dums at 2006-05-15 1401
	or not.
1402
1403
	* stlport/stl/_uninitialized.h: Major code review. Remove use of
1404
	_OKToMemcpy, remove dependency on std::copy of std::fill, all
1405
	implementation is now similar to the one of std::copy algorithms
1406
	except that uninitialized algo are using
1407
	__type_traits::has_trivial_copy_constructor meta information and
1408
	copy __type_traits::has_trivial_assign_operator.
1409
1410
	* test/unit/deque_test.cpp, vector_test.cpp: New test case for
1411
	over optimization problem.
1412
1413
	* test/unit/map_test.cpp, locale_test.cpp, list_test.cpp, slist_test.cpp,
1414
	unordered_test.cpp, fstream_test.cpp, stack_allocator.h: Fixed
1415
	implementation to build with _STLP_NO_MEMBER_TEMPLATES.
1416
1417
	* stlport/stl/debug/_vector.h, _list.h: Add non template assign
1418
	methods used when _STLP_NO_MEMBER_TEMPLATES is defined.
1419
1420
	* stlport/stl/_slist.c: Fixed sort _Slist_sort implementation, now
fa5f907 by dums at 2006-06-19 1421
	call _Slist_merge template function rather than slist::merge method
2b4bca3 by dums at 2006-05-15 1422
	as this method do not take any predicate when _STLP_NO_MEMBER_TEMPLATES
1423
	is defined.
1424
1425
	* build/test/unit/Makefile.inc, test/unit/uninitialized_test.cpp:
1426
	New test for uninitialized_copy algo.
1427
1428
	* stlport/stl/type_traits.h: OKToMemCpy rename in _TrivialCopy for
1429
	coherency with _TrivialUCopy. Moreover, thanks to refactoring in
1430
	uninitialized_* algorithms, _TrivialUCopy now only takes into account
1431
	__type_traits::has_trivial_copy_constructor meta information and
1432
	not has_trivial_assign_operator.
1433
1434
	* stlport/stl/boost_type_traits.h: Fixed to reflect STLport
1435
	__type_traits modifications.
1436
1437
	* stlport/stl/_uninitialized.h: Major code review proposed by
850eea5 by dums at 2006-05-31 1438
	Ulrich Eckhardt
2b4bca3 by dums at 2006-05-15 1439
1440
	* stlport/stl/_algobase.h, _deque.h, _deque.c, _vector.h, _vector.c,
1441
	_rope.h, _rope.c, _string.h, _string.c: Impact of previous point.
1442
9029542 by dums at 2006-05-05 1443
2006-05-05  Francois Dumont  <dums@stlport...>
1444
1445
	* test/unit/iter_test.cpp: Removed unreachable code.
1446
1447
	* Introduction of a new configuration macro _STLP_MSVC_LIB
1448
1449
	This macro is set to _MSC_VER value but can be overloaded to
1450
	an other value. First intension was to make STLport more flexible
1451
	for Intel C++ compiler. This compiler comes without any native
1452
	lib and you have to bind it to a MSVC install, Intel compiler
1453
	generate MSVC compatible code so that MSVC linker can correctly
1454
	generate final exe or dll. To mimic MSVC compiler ICL also defines
1455
	_MSC_VER. The problem is that definition of this macro is based
1456
	on a compiler option and do not necessarily reflect the MSVC lib
1457
	version ICL is binded to. Fortunately the compiler options
1458
	responsible of _MSC_VER definition (/Qvc6, /Qvc7...) is also
1459
	responsible of name mangling so asking for a MSVC compiler
1460
	compatibility different than the library ICL is binded to is
1461
	not easy. But _STLP_MSVC_LIB has been kept as it makes STLport
1462
	configuration more clean. Now MSVC compiler version is given
1463
	by _STLP_MSVC macro and library version by _STLP_MSVC_LIB.
1464
	All occurences of _MSC_VER in STLport code has been replaced
1465
	by those macros.
1466
1467
	* _STLP_USE_SECURIZED_BUF_FUNCTIONS replaced by the more
1468
	intuitive _STLP_USE_SAFE_STRING_FUNCTIONS.
1469
1470
	* stlport/stl/config/_msvc.h: Major refactoring to isolate
1471
	MSVC compiler config and MSVC native library config.
1472
	
13ecf2f by dums at 2006-05-04 1473
2006-05-04  Francois Dumont  <dums@stlport...>
1474
1475
	* build/lib/configure.bat: And information to the --lib-motif
850eea5 by dums at 2006-05-31 1476
	option as advised by Ulrich Eckhardt. Add option parameter and
13ecf2f by dums at 2006-05-04 1477
	relation with _STLP_LIB_NAME_MOTIF.
1478
1479
	* src/messsage_facets.h: Removed implementation of private copy
1480
	constructor and assignment operator.
1481
1482
	* src/c_locale_win32/c_locale_win32.c: Made
1483
	_Locale_extract_category_name locale function static.
1484
1485
	* src/vc_warning_disable.h renamed in warning_disable.h as it is
1486
	used by other compilers too (ICL)
1487
1488
	* build/lib/msvc.mak, evc.mak: Removed forced inclusion of
1489
	vc_warning_disable.h file. Now this file is included from
1490
	stlport_prefix.h.
1491
1492
	* build/test/unit/msvc.mak, evc.mak: Replace vc_warning_disable.h
1493
	reference by warning_disable.h.
1494
1495
	* src/stlport_prefix.h: Add inclusion of warning_disable.h.
1496
bc126d3 by dums at 2006-05-01 1497
2006-05-01  Francois Dumont  <dums@stlport...>
1498
1499
	* test/unit/vector_test.cpp, deque_test.cpp, string_test.cpp:
1500
	Removed unreachable code, reported by ICL 9.0.
1501
1502
	* test/unit/mvctor_test.cpp: Removed variable declaration hiding
1503
	previous one + made local functions static.
1504
1505
	* stlport/stl/config/_msvc.h: Only use abbreviate symbols for
1506
	MSVC compiler and not for all compilers defining _MSC_VER. Also
1507
	removed some ICL specific configuration.
1508
1509
	* src/lock_free_slist.h: Removed 'no return statement' warning
1510
	for ICL too.
1511
1512
	* src/message_facets.h: Made _Message_impl copy constructor and
1513
	assignment operator private to avoid warning as _M_cat member
1514
	data has private copy constructor and assignment operator too.
1515
1516
	* stlport/stl/_cstdlib.h: Made additional definition of
1517
	div(long, long) based on native library (_MSC_VER) rather than on
1518
	compiler used (_STLP_MSVC).
1519
1520
	* stlport/stl/config/_intel.h: Fix Intel C++ 9.0 compiler
1521
	configuration with and without /Qvc6 option.
1522
1523
	* src/dll_main.cpp: Add std::unexpected implementation that ICL
1524
	need but that is not part of MSVC6 native lib library.
1525
1526
	* test/unit/test_main.cpp: Add std::unexpected implementation that
1527
	ICL need but that is not part of MSVC6 native lib library.
1528
ef17fea by dums at 2006-04-30 1529
2006-04-30  Francois Dumont  <dums@stlport...>
1530
1531
	* stlport/stl/_alloc.h: Moved __type_traits specialization for
1532
	std::allocator class before use in _STLP_alloc_proxy
1533
	instanciation.
1534
1535
	* test/unit/istmit_test.cpp: Fixed macro checks to correctly
1536
	report ignored test.
1537
f37a28a by dums at 2006-04-27 1538
2006-04-27  Francois Dumont  <dums@stlport...>
1539
1540
	* test/unit/full_streambuf.h, deque_test.cpp, vector_test.cpp:
1541
	Add STLPORT macro check when checking _STLP_USE_EXCEPTION macro.
1542
1543
	* test/unit/string_test.cpp: Fix some macro checks to correctly
1544
	report ignored tests.
1545
1546
	* test/unit/mvctor_test.cpp: Fix tests to build it with native
1547
	MSVC 2005 Standard library. Looks like this implementation do
1548
	not follow atmortized constant time vector::push_back complexity.
1549
1550
	* stlport/stl/config/_msvc.h: Clearly report status regarding build
1551
	of STLport using the MSVC /clr option.
1552
7385232 by dums at 2006-04-27 1553
	* stlport/stl/_threads.h: Remove MSVC .Net 2002 annoying warning.
1554
2cb88aa by dums at 2006-05-20 1555
2006-04-26  Francois Dumont  <dums@stlport...>
1556
1557
	* src/ctype.cpp: Fix ctype::scan_is and scan_not method behavior as
1558
	required by C++ Standard 22.2.1.1.2.
1559
1560
	* test/unit/locale_test.cpp: Fix ctype facet test according
1561
	modifications above.
1562
e4ff56a by dums at 2006-04-25 1563
2006-04-25  Francois Dumont  <dums@stlport...>
1564
1565
	* stlport/stl/_istream.c: Small refactoring to avoid a uninitialized
1566
	warning for __do_handle_exceptions local variable.
1567
1568
	* stlport/stl/_deque.h: Ditto with __cur_node variable in
1569
	_M_range_initialize method.
1570
1571
	* stlport/stl/_deque.c: Ditto with __cur in _M_fill_initialize.
1572
1573
	* stlport/stl/config/_auto_link.h: Removed auto link feature when
1574
	building a C translation unit thanks Michael Fink.
1575
1576
	* src/time_facets.cpp: Add missing calling convention on
1577
	__write_formatted_time internal function.
1578
73faa46 by dums at 2006-04-24 1579
2006-04-24  Francois Dumont  <dums@stlport...>
1580
1581
	* test/unit/cppunit/cppunit_mini.h: Limit scope of try/catch block to
1582
	the test case call so that CppUnit function methods are correctly
1583
	called.
1584
1585
	* test/unit/type_traits_test.cpp: Fix use of
1586
	CPPUNIT_IGNORE/CPPUNIT_STOP_IGNORE macros so that ignored tests are
1587
	correctly reported as ignored.
1588
fe93bce by dums at 2006-04-22 1589
2006-04-20  Francois Dumont  <dums@stlport...>
1590
f9beea6 by dums at 2006-04-22 1591
	* stlport/stl/config/_solaris.h: Replace C++ style comment
1592
	in C style.
1593
1594
	* stlport/stl/_cmath.h: Add macro definition for environment
1595
	having long double but no float neither long double math functions
fa5f907 by dums at 2006-06-19 1596
	This is a Solaris configuration.
f9beea6 by dums at 2006-04-22 1597
fe93bce by dums at 2006-04-22 1598
	* src/acquire_release.h, c_locale.h, locale.cpp,
1599
	locale_catalog.cpp, locale_impl.cpp, locale_impl.h,
1600
	message_facets.h, facets_byname.cpp: Add a locale hint feature
1601
	to improve locale construction from name. This is used by
1602
	Win32 locale implementation that broadcast the locale lcid
1603
	thanks to this hint. With this modification, LocaleTest fixture
1604
	runs 5 times faster.
1605
1606
	* stlport/stl/_collate.h, _ctype.h, _monetary.h, _numpunct.h,
1607
	_time_facets.h: Add _Locale_extract_hint function as friend
1608
	to some locale facet in order to access locale implementation
1609
	specific structure and potentially extract the hint.
1610
1611
	* stlport/stl/_codecvt.h, _collate.h, _ctype.h, _messages_facets.h,
1612
	_monetary.h, _numpunct.h, _time_facets.h: Add _Locale_name_hint pointer
1613
	parameter to facet by name constructor.
1614
1615
	* build/Makefiles/nmake/lib/clean.mak, rules-so.mak, rules-install-so.mak:
1616
	Based on Dr Dobb's Richard Grimes article, change management of
1617
	manifest file for STLport shared library. According this article
1618
	.manifest file is not taken into account for a library, only .exe one is.
1619
	Solution is to integrate .manifest file into the .dll as an unmanaged
1620
	ressource with id 2. We now do so thanks to the mt manifest tool.
1621
1622
	* stlport/stl/_pair.h: Remove __move_traits partial specialization for
1623
	Borland free compiler, it was introducing weird compilation error.
1624
1625
	* stlport/stl/_move_construct_fwk.h: Add a helper struct for __move_traits
1626
	feature.
1627
1628
	* build/test/unit/msvc.mak: Prepare makefile to easily build unit tests
1629
	without STLport.
1630
c52fb32 by dums at 2006-04-15 1631
2006-04-15  Francois Dumont  <dums@stlport...>
1632
1633
	* stlport/stl/config/host.h, compat.h, debug/_debug.c: Removed
1634
	_STLP_NO_DEBUG_EXCEPTIONS configuration macro that is similar
fa5f907 by dums at 2006-06-19 1635
	to the new _STLP_DEBUG_MODE_THROWS except that new thrown macro
c52fb32 by dums at 2006-04-15 1636
	is catchable (std::runtime_error exception) and contained message
1637
	is more explicit.
1638
1639
	* stlport/stl/debug/_tree.h: Add find template method STLport
39fba85 by dums at 2006-04-18 1640
	extension to the debug version of binary tree thanks Mike Flamming.
c52fb32 by dums at 2006-04-15 1641
8ee64ee by dums at 2006-04-11 1642
2006-04-11  Francois Dumont  <dums@stlport...>
1643
1644
	* src/complex_io_w.cpp: Removed, content moved to src/complex_io.cpp
1645
	to avoid build of an empty translation unit that can generate linker
1646
	warning (noticed with MSVC 2005 express)
1647
1648
	* build/lib/Makefile.inc: Updated before of above modification.
1649
1650
	* test/unit: Ignore many tests rather than hide it depending on
1651
	build configuration.
1652
1653
	* test/unit/cppunit/file_reporter.h: Restored output existing before
1654
	introduction of monitoring feature.
1655
d51eb38 by dums at 2006-04-10 1656
2006-04-10  Francois Dumont  <dums@stlport...>
1657
1658
	* test/unit/cppunit/cppunit_timer.h, test_main.cpp, file_reporter.h:
1659
	Add -m option to activate monitoring of unit tests. This option add
1660
	timing for each test and a global timing information. Timer class has
1661
	been created for Win32 API.
1662
1663
	* stlport/stl/_bitset.h: Hide STLport bitset extensions _Find_first
1664
	and _Find_next.
1665
1666
	* test/unit/bitset_test.cpp: Adapt tests to previous modification.
1667
1668
	* stlport/stl/_string.h: Replace memory include with stl/_alloc.h
1669
	to limit header dependencies. Also add include of stl/_uninitialized.h.
1670
1671
	* test/unit/fstream_test.cpp: Add missing memory include.
1672
1673
	* test/unit/locale_test.cpp: Ditto.
1674
1675
	* stlport/stl/_queue.h, _string.h, _rope.h, debug/_tree.h: Replace
1676
	stl/_function.h include with the smaller _function_base.h include.
1677
	
8e9e4cd by dums at 2006-04-07 1678
2006-04-07  Francois Dumont  <dums@stlport...>
1679
1680
	* stlport/stl/_new.h: Fixed management of _STLP_NO_BAD_ALLOC
1681
	and _STLP_NEW_DONT_THROW_BAD_ALLOC macros.
1682
1683
	* stlport/stl/config/_dm.h: Change DMC configuration, use STLport
1684
	own namespace rather than std so that STLport can check config.
1685
1686
	* stlport/typeinfo.h: Fix DMC configuration now that it uses own
1687
	STLport namespace.
1688
0ee1d5b by dums at 2006-04-05 1689
2006-04-05  Francois Dumont  <dums@stlport...>
1690
1691
	* stlport/stl/_tree.h, _list.h: Fixed swap implementation to
fa5f907 by dums at 2006-06-19 1692
	correctly swap allocators instance. Moreover list swap implementation
0ee1d5b by dums at 2006-04-05 1693
	was wrong since list splice has been modified to correctly handled
1694
	allocators with state.
1695
1696
	* test/unit/slist_test.cpp, list_test.cpp, set_test.cpp: Add tests for
1697
	above fix.
1698
1699
	* stlport/stl/_deque.h: Fix swap method as deque has 2 allocator
1700
	instances, this should perhaps be modified one day to only keep 1...
1701
1702
	* stlport/stl/_rope.h: Fix swap method and removed assertion for
1703
	equivalent allocator instances even if there are still other assertions
1704
	in the implementation.
1705
1706
	* stlport/stl/_function_base.h: Add swap method for less functor if
1707
	partial template workaround is activated. This is for surprising
1708
	compilers supporting partial template specialization but no template
1709
	function partial ordering.
1710
1711
	* stlport/stl/_algobase.h: Add Borland workaround for swap function
1712
	thanks Eric Sanford.
1713
1714
	* test/unit/type_traits_test.cpp: Borland workaround for is_convertible
1715
	function thanks Eric Sanford.
1716
1717
	* stlport/stl/config/_bc.h: Borland compilers do not support template
1718
	function partial ordering thanks Eric Sanford.
1719
1720
	* test/unit/stack_allocator.h: Add Borland workaround to correctly
1721
	call StackAllocator::swap method when swaping STL containers in
1722
	allocator_with_state tests.
1723
1724
	* test/unit/config_test.cpp: New test
1725
	ConfigTest::template_function_partial_ordering.
1726
1727
	* test/unit/slist_test.cpp, list_test.cpp, set_test.cpp: Add swap tests
1728
	with empty containers.
1729
1730
	* src/vc_warning_disable.h: Remove deprecated comments.
1731
1732
	* stlport/stl/_pair.h: Removed Borland checks thanks Eric Sanford.
1733
1734
	* Patch from Michael Fink to remove Windows CE support that is
1735
	no more supported by Microsoft.
1736
1737
	* stlport/stl/config/_native_headers.h: New, contains all macros
1738
	relative to native headers access that used to be in features.h.
1739
1740
	* stlport/stl/config/_evc.h, _como.h: Add include of _native_headers.h
1741
	as those compilers need to include native headers for correct
1742
	configuration.
1743
1744
	* stlport/stl/config/features.h: Use _native_headers.h.
1745
1746
	* test/unit/locale_test.cpp: Made LocaleTest::facet_id test STLport
1747
	specific rather than Borland specific. Moreover, without STLport, test
1748
	is ignored rather than hidden.
1749
1750
	* stlport/stl/_num_put.h, _num_put.c: Removed useless export of
1751
	num_put<char, char*>, num_put<wchar_t, wchar_t*> not required by
1752
	the Standard.
1753
1754
	* stlport/stl/_num_get.h, _num_get.c: Ditto for
1755
	num_get<char, const char*>, num_get<wchar_t, const wchar_t*>
1756
1757
	* stlport/stl/_moneytary.h, _moneytary.c: Ditto for
1758
	money_get<char, const char*>, money_get<wchar_t, const wchar_t*>,
1759
	money_put<char, char*>, money_put<wchar_t, wchar_t*>
1760
1761
	* stlport/stl/_time_facets.h, _time_facets.c: Ditto for
1762
	time_get<char, const char*>, time_get<wchar_t, const wchar_t*>,
1763
	time_put<char, char*>, time_put<wchar_t, wchar_t*>
1764
1765
	* src/locale_impl.cpp: Removed id initialization of useless facets
1766
	no more exported.
1767
1768
	* stlport/new, stl/_new.h: Moved all STLport code in _new.h and
1769
	modified new header so that it forwards include to native new
1770
	when include comes from inside STLport.
1771
1772
	* cppunit/file_reporter.h, cppunit_mini.h: Change support of
1773
	CPPUNIT_CHECK macro, only report error once for all failures
1774
	in a single test case.
1775
f1903f4 by dums at 2006-03-28 1776
2006-03-28  Francois Dumont  <dums@stlport...>
1777
1778
	* stlport/stl/_prolog.h: Fix macro check before inclusion of
1779
	features.h.
1780
1781
	* stlport/stl/char_traits.h: Fixed include of cstddef, in STLport
1782
	code, Standard headers should never be included directly, their
1783
	stlport/stl/_xxx.h counterpart should be used.
1784
1785
	* stlport/stl/type_traits.h, type_manip.h: Patch from Eric Sanford
1786
	for Borland compiler to fix _OKToMemCpy feature.
5792ffc by dums at 2006-03-28 1787
1788
	* stlport/stl/_alloc.h: Replace swap function for _STLP_alloc_proxy
1789
	by a member method, it is more portable.
1790
1791
	* stlport/stl/_bvector.h, _deque.h, _list.h, _slist.h, _string_base.h
1792
	_tree.h: Replaced called to std::swap for _STLP_alloc_proxy instances
1793
	by calls to member swap method.
1794
1795
	* test/unit/hash_test.cpp: Ignore test rather than hide it.
1796
1797
	* test/unit/map_test.cpp: Fixed StackAllocator instanciation.
1798
1799
	* test/unit/stack_allocator.h: Add std::swap overload for
1800
	StackAllocator<pair<const int, int>>.
1801
1802
	* test/unit/string_test.cpp: Ignore tests rather than hide it.
1803
1804
	* test/unit/unordered_test.cpp: Ditto.
f1903f4 by dums at 2006-03-28 1805
1806
2006-03-27  Francois Dumont  <dums@stlport...>
959c9bf by dums at 2006-03-27 1807
1808
	* stlport/stl/_stdexcept_base.h: New internal header with
1809
	__Named_exception implementation, improve segregation between
1810
	<locale> and <stdexcept> Standard headers.
1811
1812
	* test/unit/locale_test.cpp: Add missing <stdexcept> header include.
1813
fa5f907 by dums at 2006-06-19 1814
	* stlport/stl/_function_base.h, _function.h: Move as many functor as
1815
	possible from _function_base.h to _function.h to improve
959c9bf by dums at 2006-03-27 1816
	segregation between <functional> and <algorithm> Standard headers.
1817
1818
	* test/unit: Add many missing references to <functional> header.
1819
1820
	* test/unit: Made unit tests available for build without STLport, this
1821
	will be a good way to compare Standard library implementations.
1822
1823
	* stlport/stl/_string_base.h: Remove additional space for terminating
1824
	null character, it was actually already reserved in the return
1825
	expression.
1826
1827
	* stlport/stl/_string.h: Restored basic_string capacity implementation
1828
	that do not depend on use of the short string optimization or not. It
1829
	might be hiding a real issue somewhere else in code even if unit tests
1830
	are not showing any problem.
1831
1832
	* stlport/stl/_alloc.h: Add swap overload for _STLP_alloc_proxy class
1833
	in order to correctly call swap on the maybe rebound allocator as user
1834
	that implement an allocator with a state might have implement a
1835
	special swap function for it to correctly handle STL containers swap
1836
	operation.
1837
3be64f9 by dums at 2006-03-24 1838
2006-03-24  Francois Dumont  <dums@stlport...>
1839
1840
	* build/lib/configure.bat: Removed script for defining INCLUDE
959c9bf by dums at 2006-03-27 1841
	environment variable for Borland ressource compiler as it depends
1842
	on where STLport is install.
3be64f9 by dums at 2006-03-24 1843
1844
	* build/lib/bcc.mak: Add check for INCLUDE environment variable
1845
	definition.
1846
1847
	* test/unit/string_test.cpp: Change basic_string::reserve test to
1848
	check length_error exception rather than bad_alloc.
1849
9186c49 by complement at 2006-03-22 1850
2006-03-22  Petr Ovtchenkov  <complement@users.sourceforge.net>
1851
1852
	* stlport/stl/_string.c: a bit code clean
1853
fa5f907 by dums at 2006-06-19 1854
	* stlport/stl/_string_base.h: max_size should keep space for
9186c49 by complement at 2006-03-22 1855
	allocation of terminating null.
1856
04a4f3f by dums at 2006-03-19 1857
2006-03-19  Francois Dumont  <dums@stlport...>
1858
1859
	* stlport/stl/_alloc.h, _function_base.h, type_manips.h,
1860
	type_traits.h, test/unit/type_traits_test.cpp: Patch for
1861
	Eric Sanford for __bool2type Borland use.
1862
1863
	* build/Makefiles/gmake/lib/clean.mak: Patch from Eric Sanford
1864
	to fix files generated by dbg-shared and stldbg-shared rules.
1865
1866
	* build/Makefiles/gmake/lib/bcc.mak: Patch from Eric Sanford to
1867
	increase Borland page size to 64.
1868
d39939f by dums at 2006-03-16 1869
2006-03-16  Francois Dumont  <dums@stlport...>
1870
1871
	* stlport/stl/config/_evc.h, _msvc.h: Add some condition for
1872
	definition of _STLP_MSVC macro which should only be defined for
1873
	real Microsoft compilers and not for compiler emulating it.
1874
75a8a11 by dums at 2006-03-16 1875
	* src/allocators.cpp: Use _STLP_STATIC_MUTEX macro in place
1876
	of _STLP_mutex_base for mutex definition in per_thread_allocator
1877
	implementation.
1878
1879
	* stlport/stl/_pthread_alloc.h: Modified deallocate methods of
1880
	pthread_allocator and per_thread_allocator implementation to accept
1881
	null pointers.
1882
351ce59 by dums at 2006-03-15 1883
2006-03-15  Francois Dumont  <dums@stlport...>
1884
1885
	* stlport/stl/_string_base.h, _string.c: Force call to
1886
	_M_allocate_block even in short string optim mode in order
1887
	to detect lenght error. Based basic_string max size implementation
1888
	on allocator max_size.
1889
95b93cf by complement at 2006-03-15 1890
2006-03-15  Petr Ovtchenkov  <complement@users.sourceforge.net>
1891
1892
	* stlport/stl/config/_system.h, _msvc.h, _evc.h: move _STLP_MSVC
1893
	definition in proper place.
1894
	
96596e4 by dums at 2006-03-14 1895
2006-03-14  Francois Dumont  <dums@stlport...>
1896
1897
	* src/allocators.cpp: Fixed thread safety issue in
1898
	per_thread_allocator implementation thanks a very old William
1899
	Power report.
1900
1901
	* test/unit/allocator_test.cpp: Attempt to write a test case for
1902
	previous bug but not yet complete as I need a better debugging
1903
	environment than gdb under cygwin...
1904
0091137 by dums at 2006-03-14 1905
	* stlport/stl/config/_system.h: Patch from Michael Fink to add
1906
	missing _STLP_MSVC define for evc++ compilers.
1907
96596e4 by dums at 2006-03-14 1908
2006-03-13  Francois Dumont  <dums@stlport...>
a0b3895 by dums at 2006-03-13 1909
1910
	* stlport/stl/_alloc.h, src/allocators.cpp: Hide declaration of
1911
	malloc based allocator handler in library. Also limit scope of
1912
	declspec to expose static members rather than the whole class.
1913
1914
	* stlport/stl/_cstdlib.h: For Borland compiler add include of
1915
	native process.h header, for reason see comment next to include
1916
	in file.
1917
1918
	* stlport/stl/_alloc.h: Add a new STLport extension to the
1919
	std::allocator class: allocate(size_type, size_type&). This new
fa5f907 by dums at 2006-06-19 1920
	overload of allocate returns in an output parameter, the real
a0b3895 by dums at 2006-03-13 1921
	size of the allocated buffer that can be larger than the requested
1922
	one. _STLP_alloc_proxy expose this new overload only for the
1923
	STLport allocator and not for user defined allocators.
1924
1925
	* stlport/stl/_vector.h, _vector.c, _string.h, _string.c: Use of the
1926
	allocate overload extension method to set end of storage reference
1927
	to the real memory block end rather than to the requested one.
1928
1929
	* stlport/stl/_alloc.c: Adapt __debug_alloc::allocate method in order
1930
	to return the real allocated memory block. Also add check on computed
1931
	__real_n to allocate as it might roll on size_t and hide a case that
1932
	should result in a bad_alloc exception.
1933
1934
	* stlport/stl/_threads.h, src/allocators.cpp: Add WINVER macro
1935
	check in addition to _WIN32_VERSION, according PSDK documentation
1936
	WINVER is more generaly used accross different Windows platforms.
1937
1938
	* test/unit/string_test.cpp: Add constructor test case to correctly
1939
	handle build of a string with string::max_size elements which should
1940
	result in a bad_alloc exception. Idem for reserve method.
1941
1942
	* stlport/stl/_alloc.h, src/allocators.cpp: Add check of malloc
1943
	result in __malloc_alloc implementation to throw an exception when
1944
	result is NULL.
1945
1946
	* src/locale_impl.cpp: Patch from Eric Sanford for Borland BDS 2006
1947
	support. Mostly fix locale facet index issues.
1948
d4bd212 by complement at 2006-02-28 1949
2006-02-28  Petr Ovtchenkov  <complement@users.sourceforge.net>
1950
1951
	* stlport/stl/_string.h: capacity may return wrong value in case
1952
	of no _STLP_USE_SHORT_STRING_OPTIM in use; thanks Rusty Koonce
1953
	for report.
1954
1955
	* test/unit/string_test.cpp: test for capacity issue.
1956
1957
	* src/cxa.c: don't use cxa workaround for FreeBSD 6.0---it fine;
1958
	this is rollback of changes 2006-01-24 [bad compiler was in use].
1959
9dd8173 by complement at 2006-02-15 1960
2006-02-15  Petr Ovtchenkov  <complement@users.sourceforge.net>
1961
1962
	* stlport/stl/_string.h: _STLP_FORCE_STRING_TERMINATION mode become
1963
	default and only mode due to performance issue.
1964
1965
	* stlport/stl/config/user_config.h: ditto.
1966
1967
	* stlport/stl/config/features.h: ditto.
1968
f2ab48c by dums at 2006-02-14 1969
2006-02-14  Francois Dumont  <dums@stlport...>
1970
1971
	* stlport/stl/_hashtable.h, _hashtable.c: Add check in _STLP_DEBUG
1972
	that equivalent key have same hash code. Fix _M_rehash method
1973
	implementation that used to change elements order thanks Big Muscle
1974
	effort to report this issue.
1975
1976
	* build/lib/configure: Fix reference to STLport configuration file
1977
	in --no-cygwin option description.
1978
4a22a2a by dums at 2006-02-13 1979
2006-02-13  Francois Dumont  <dums@stlport...>
1980
1981
	* stlport: Patch from Eric Sanford to remove many now useless
1982
	Borland workaround.
1983
1984
	* src/fstream.cpp: ditto
1985
1986
	* stlport/stl/_monetary.h, _cwchar.h, _algobase.h: ditto
1987
34f89df by dums at 2006-02-10 1988
2006-02-10  Francois Dumont  <dums@stlport...>
1989
1990
	* stlport/stl/_iosfwd.h, _locale.h: Removed type attributes on type
1991
	declaration, only useful on type definition.
1992
1993
	* src/message_facets.h: Removed unused parameter in _Catalog_nl_catd_map
1994
	erase method to avoid warning.
1995
1996
	* src/num_put_float.cpp: Use more macro technique to avoid unused parameters
1997
	in *_cvt functions.
1998
1999
	* test/unit/cppunit/cppunit_mini.h: Comment unused parameter.
2000
2001
	* test/unit/cppunit/file_reporter.h: Add base class initialization
2002
	in FileReporter copy constructor definition.
2003
41f2781 by complement at 2006-02-10 2004
2006-02-10  Petr Ovtchenkov  <complement@users.sourceforge.net>
2005
2006
	* src/num_put_float.cpp: remove usage of static buffers
2007
	[potential vulnerabilities]; directly use __iostring instead.
2008
2009
	* test/unit/floatio_test.cpp: test for fixed float output;
2010
	cases when fixed float fail on Linux and Solaris, related
2011
	with fcvt_r and fconvert calls respectivly commented.
2012
2013
	* build/Makefiles/gmake/gcc.mak: workaround for bug in make 3.79.1
2014
	on Solaris [not pass -D_STLP_DEBUG to CPPFLAGS].
2015
2016
	* stlport/stl/_string.h: rollback 2006-01-25.
2017
5773bcb by dums at 2006-02-08 2018
2006-02-08  Francois Dumont  <dums@stlport...>
2019
2020
	* build/Makefiles: Removed all references to BUILD=r in parameters
2021
	to ressource compiler in release as there is no more 'r' appended
2022
	to the library name in this mode.
2023
2024
	* src/stlport.rc: Fix support for Borland and add check for BUILD
2025
	definition before injecting it in original library file name.
2026
2027
	* doc/README.borland: Update doc to signal new prerequisite for
2028
	Borland ressource compiler.
2029
2030
	* test/unit/unordered_test.cpp: Add test for unordered_multiset
2031
	equal_range method.
2032
2033
	* test/unit/partial_test.cpp: Add test for strict weak ordering
2034
	predicate good behavior check.
2035
2036
2006-02-07  Francois Dumont  <dums@stlport...>
2037
2038
	* src/allocators.cpp: New simplification for _Node_Alloc_Lock,
2039
	it do not have to be a template class anymore.
2040
2041
	* stlport/stl/debug/_debug.c: Implement
2042
	__stl_debug_engine<_Dummy>::_Message even when specifying
2043
	_STLP_DEBUG_MESSAGE in order to have explicit instanciation correctly
2044
	generated.
2045
2046
	* stlport/stl/_heap.c, _tree.c, _list.c, _slist.c: Add strict
2047
	weak ordering checks.
2048
2049
	* stlport/stl/_debug.h, _debug.c: Add new error type: bad equivalent
2050
	functor that has to be used in hash container implementation or in
2051
	algorithm like find. Check for this functor is:
2052
	if (pred(a, b)) assert(pred(b, a)
2053
2054
	* stlport/stl/_hashtable.c: Add equivalent functor checks.
2055
2056
	* stlport/stl/_debug.h, _debug.c: Check _STLP_DEBUG_MODE_THROW in
2057
	__debug_engine::_Message method. Now thrown exception will contain
2058
	description of the assertion rather than a generic message.
2059
2060
	* build/Makefiles/gmake/bcc.mak: Fix Borland ressource compiler name,
2061
	brcc32 not brc32.
2062
2063
	* stlport/stl/_range_errors.h, src/dll_main.cpp: Add
2064
	__stl_throw_runtime_error function used to throw exception in
2065
	_STLP_DEBUG_MODE_THROW.
2066
2067
2006-02-06  Francois Dumont  <dums@stlport...>
2068
2cb88aa by dums at 2006-05-20 2069
	* build/Makefiles/nmake: Fixed regression generated by a side
2070
	effect of Uli patch below.
5773bcb by dums at 2006-02-08 2071
fbbe9fb by dums at 2006-02-02 2072
2006-02-02  Francois Dumont  <dums@stlport...>
2073
2cb88aa by dums at 2006-05-20 2074
	* stlport/config/_stl_evc.h, stl/_config.h: Patch from Ulrich
2075
	Eckhardt to signal endianess detection problem and set EVC
2076
	endianess for MIPS SDK.
5773bcb by dums at 2006-02-08 2077
fbbe9fb by dums at 2006-02-02 2078
	* src/allocators.cpp: Clean up _Node_Alloc_Lock definition, only
2079
	specialization are now available for thread safe and not thread
2080
	safe builds. Make easier definition of internal static mutex.
2081
5773bcb by dums at 2006-02-08 2082
	* stlport/float.h: Patch from Eric Sanford for Borland NaN management
fbbe9fb by dums at 2006-02-02 2083
2084
	* stlport/cfloat: Include STLport float.h rather than native one in
2085
	order to use potential internal workaround.
2086
2087
	* stlport/stl/config/_ibm.h: Replace all C++ comment by C comments.
2088
2089
	* stlport/errno.h: For Borland, when building for a single threaded
2090
	contex, errno is not a macro and is defined in std namespace so using
2091
	have to get the symbol in this namespace.
2092
8fb2285 by dums at 2006-01-31 2093
2006-01-31  Francois Dumont  <dums@stlport...>
2094
2095
	* src/allocators.cpp: Reinforce move of allocators implementation
2096
2097
	* stlport/stl/_alloc.h: Removed include of internal _thread.h no
2098
	more necessary now that allocator implementation is in allocators.cpp.
2099
2100
	* stlport/stl/_pthread_alloc.h: Removed pthread.h include.
2101
2102
	* stlport/stl/_rope.h: Adopt classic macro check before inclusion
2103
	of _threads.h.
2104
2105
	* build/Makefiles/gmake/gcc.mak: Add -fno-inline option for debug
2106
	builds.
2107
2108
	* stlport/stl/_threads.h: Remove lock free singly linked list, avoid
2109
	include of windows.h when using Win32 API lock free slist
2110
	implementation.
2111
2112
	* src/lock_free_slist.h: New place for the lock free singly linked
2113
	list implementation.
2114
2115
	* test/unit/mvctor_test.cpp, type_traits_test.cpp: Small workaround
2116
	for gcc 4.0.1 build, looks like there is a conflict between glibc++
2117
	__true_type and STLport one.
2118
f8c8307 by dums at 2006-01-30 2119
2006-01-30  Francois Dumont  <dums@stlport...>
2120
2121
	* Patch from Ulrich Eckhardt for EVC4 ICE + some documentation
2122
	updates and fixes.
2123
d856fc4 by dums at 2006-01-29 2124
2006-01-29  Francois Dumont  <dums@stlport...>
2125
2126
	* stlport/stl/_hashtable.h, _limits.h: Add missing calling
2127
	convention to static methods thanks Petr Supina
2128
577c657 by dums at 2006-01-28 2129
2006-01-28  Francois Dumont  <dums@stlport...>
2130
2131
	* stlport/stl/debug/_iterator.h: Fix Hp Acc configuration thanks
2132
	Boris Gubenko.
2133
f220588 by dums at 2006-01-27 2134
2006-01-27  Francois Dumont  <dums@stlport...>
2135
2136
	* stlport/stl/_alloc.h, _old_alloc.h, _pthread_alloc.h,
2137
	test/unit/rope_test.cpp: Fixed reference to _STLP_NO_IOSTREAMS,
2138
	replaced by _STLP_USE_NO_IOSTREAMS.
2139
2140
	* stlport/stl/_alloc.h: Move _MAX_BYTES definition out of
2141
	_STLP_USE_NO_IOSTREAMS check scope as it is also used in deque
2142
	implementation.
2143
2144
	* stlport/stl/_algo.c, debug/_debug.h, _debug.c: Add check for
2145
	bad predicate in safe STL mode (_STLP_DEBUG).
2146
2147
	* test/unit/sort_test.cpp: Add test for correct invalid strict weak
2148
	ordering predicate detection. Active only when STL safe mode throws
2149
	exception rather than terminating application.
2150
2151
	* test/unit/sort_test.cpp: Add a check that stable_sort is really
2152
	stable.
2153
d4f1449 by dums at 2006-01-26 2154
2006-01-26  Francois Dumont  <dums@stlport...>
2155
2156
	* stlport/stl/_alloc.h, _alloc.c, _pthread_alloc.h: Many code moved
2157
	to allocators.cpp.
2158
2159
	* stlport/stl/_pthread_alloc.c: Removed, content moved to
2160
	allocators.cpp.
2161
2162
	* src/allocators.cpp: New, contains STLport node and per thread
2163
	allocator implementation.
2164
2165
	* src/dll_main.cpp: Remove references to former __node_alloc
2166
	class.
2167
2168
	* build/lib/Makefile.inc: Add allocators.cpp translation unit.
2169
2170
	* stlport/stl/_alloc_old.h: Modified based on allocator classes new
2171
	interface.
2172
2173
	* stlport/stl/config/feature.h: Default allocator in _STLP_NO_IOSTREAMS
2174
	mode is now the new/delete allocator, user can still use malloc/free
2175
	one using config swtich in host.h.
2176
2177
	* stlport/stl/config/_gcc.h: Cygwin/MinGW can now use default node
2178
	allocator implementation without memory leak.
2179
41fb719 by dums at 2006-01-25 2180
2006-01-25  Francois Dumont  <dums@stlport...>
2181
2182
	* test/unit/stream_test.cpp: Add check for ptrdiff_t output
2183
	in streams operator when 64 bits portability issue detection
2184
	feature is activated with MSVC compilers.
2185
2bc476b by dums at 2006-01-25 2186
2006-01-25  Eric Sanford  <...@comp...>
2187
2188
	* stlport/stl/_exception.h: Delete obsolete workaround for
2189
	legacy Borland compilers.
2190
2191
	* stlport/stl/_string.h: Use an other implementation for the
2192
	const_reference operator[](size_type _n) const
2193
2194
	* stlport/stl/config/_bc.h: Restore unexpected exception handler
2195
	(static and dynamic) and uncaught_exception handler (static only)
2196
67f62b1 by dums at 2006-01-25 2197
	* build/Makefiles/gmake/lib/bcc.mak: Typo fix in linker flags.
2198
d266489 by complement at 2006-01-24 2199
2006-01-24  Petr Ovtchenkov  <complement@users.sourceforge.net>
2200
2201
	* test/unit/bind_test.cpp: add test for member function
2202
	binding that show workaround for const function call.
2203
2204
	* src/cxa.c: __cxa_finalize and __cxa_atexit present in libc
2205
	in FreeBSD 5.3, but again absent in 6.0
2206
2207
	* build/Makefiles/gmake/app/gcc.mak,
2208
	build/Makefiles/gmake/lib/gcc.mak: detect whether gcc
2209
	was builded with --disable-shared and use correct libgcc.
2210
2211
	* build/lib/configure: add --use-static-gcc option to show
2212
	that STLport should use static language support libraries from
2213
	gcc if it was build with --enable-shared.
2214
1944fb0 by dums at 2006-01-23 2215
2006-01-23  Francois Dumont  <dums@stlport...>
2216
2217
	* build/Makefiles/gmake/app/clean.mak: Fix distclean rule for
d266489 by complement at 2006-01-24 2218
	windows thanks Eric Sanford.
1944fb0 by dums at 2006-01-23 2219
2220
	* stlport/stl/_cstddef.h, _cstdlib.h: When no new header support,
2221
	include STLport C header rather than native one to use errno
2222
	workaround.
2223
fa5f907 by dums at 2006-06-19 2224
	* stlport/stddef.h: DMC also define errno in native stddef.h file.
1944fb0 by dums at 2006-01-23 2225
82a6005 by dums at 2006-01-22 2226
2006-01-22  Francois Dumont  <dums@stlport...>
2227
2228
	* src/locale_impl.cpp, stlport/stl/_codecvt.h, _monetary.c,
2229
	_num_get.c, _num_put.c, _time_facets.c: Borland workaround for
2230
	locale facet id instanciation that were duplicated. Now static
2231
	instances are no more defined from .c files but only from the
2232
	.cpp and only for facets that are implemented by STLport. Users
2233
	implementing facet inheriting from the STLport one will have to
2234
	defined the static instance themself in their translation units.
2235
	
2236
	* stlport/stl/type_manips.h: Fixed _UnCVType wrong implementation
2237
	reported by Digital Mars compiler.
2238
2239
	* stlport/stl/boost_type_traits.h: Fixed _OKMemCpy implementation
2240
	remove_pointer call was wrong.
2241
2242
	* src/dll_main.cpp: Hide force_link definition to MSVC compilers,
2243
	was useless and producing a warning.
2244
2245
	* build/Makefiles/gmake/cygming/rules-so.mak: Workaround for DMC
2246
	linker weird behavior. Linker create the dll file even if link
fa5f907 by dums at 2006-06-19 2247
	fail which confuse make dependency feature. As lib file is not
82a6005 by dums at 2006-01-22 2248
	generated, dll now depends on lib that depends on build files.
2249
2250
	* stlport/stl/config/_warning_off.h: Disabled this used in initialization
2251
	list warning, used in rope implementation.
2252
2253
	* build/lib/configure: Fix --with-boost interpretation.
2254
2255
	* build/Makefiles/gmake/dmc.mak: Use dm_link command for linker rather
2256
	than link that is rather the MSVC like wrapper.
2257
2258
	* build/Makefiles/gmake/cygming/targetsys.mak: Ditto for dm_lib rather
2259
	than lib command.
2260
2261
	* build/Makefiles/gmake/app/rules.mak: Use same linker command invocation
2262
	for DMC and Borland.
2263
2264
	* doc/README.borland: Documentation update about limitation on locale
2265
	facets id instanciation.
2266
2267
	* stlport/stdlib.h: DMC, like Borland and EVC, defines errno macro
2268
	in stdlib.h
2269
2270
	* stlport/stl/config/user_config.h, features.h: Inverse
2271
	_STLP_FORCE_STRING_TERMINATION macro switch in
2272
	_STLP_DONT_FORCE_STRING_TERMINATION. This is less dangerous for
2273
	existing code.
2274
2275
	* stlport/stl/_string.h: When _STLP_FORCE_STRING_TERMINATION
2276
	is defined operator[] implementation is simpler.
2277
2278
	* stlport/stl/debug/_string.h: Based implementation of []
2279
	operator on the non STL safe internal instance, avoid duplication
2280
	of check for access to the element of index size().
2281
2282
	* test/unit/fstream_test.cpp: Add custom facet id definition for
2283
	Borland.
2284
2285
	* test/unit/hash_test.cpp: Now Borland support correctly hash container
2286
	implementation.
2287
2288
	* test/unit/rope_test.cpp: Fixed test implementation to build in
2289
	_STLP_NO_IOSTREAMS mode.
2290
7555374 by dums at 2006-01-18 2291
2006-01-18  Francois Dumont  <dums@stlport...>
2292
2293
	* stlport/stl/_ostream.h, _ostream.c: Use size_t rather than
2294
	unsigned int for MSVC compilers after VC6 in IO output operator
fa5f907 by dums at 2006-06-19 2295
	to avoid 64 bits warning when trying to display a size_t type.
7555374 by dums at 2006-01-18 2296
2297
	* test/unit/sstream_test.cpp: Add test that reveal the 64 bits
2298
	warning.
2299
2300
	* test/unit/string_test.cpp: Fixed unused variable warning.
2301
a2e0977 by complement at 2006-01-17 2302
2006-01-17  Petr Ovtchenkov  <complement@users.sourceforge.net>
2303
2304
	* src/c_locale_glibc/c_locale_glibc2.c: really implemented
2305
	getting default locale categories from environment; replace
2306
	a few strcpy by strncpy to protect from possible buffer overflow
2307
	attack.
2308
	
2309
	* stlport/new.h, stlport/stl/_typeinfo.h: few workarounds for ICC 9
2310
	[suggested by Lim Hwan Cheol].
2311
37f953a by dums at 2006-01-14 2312
2006-01-14  Eric Sanford  <...@comp...>
2313
2314
	* build/test/eh/bcc.mak: Copied from build/test/unit/bcc.mak.
2315
2316
	* stlport/stl/_rope.c: Restore Borland support for _Rope_rotate.
2317
2318
	* stlport/stl/_rope.h: Fix Borland 5.5.1 internal compiler errors
2319
	in _M_path_end and _M_tmp_buf structs. Restore Borland support for
2320
	_Rope_rotate.
2321
2322
	* test/eh/test_rope.cpp: Restore Borland exception test for rope.
2323
2324
	* test/unit/rope_test.cpp: Restore Borland unit test for rope.
2325
f6bfa55 by complement at 2006-01-13 2326
2006-01-13  Petr Ovtchenkov  <complement@users.sourceforge.net>
2327
2328
	* stlport/stl/_string.h, stlport/stl/debug/_string.h:
2329
	const operator [n] should return CharT() in case of
2330
	n == size(), ISO/IEC 14882:2003(E), 21.3.4; thanks Russ Miller.
2331
2332
	* test/unit/string_test.cpp: test for fixed bug above.
2333
2334
	* build/lib/configure: change --use-boost= onto --with-boost=
2335
4c79b56 by dums at 2006-01-13 2336
2006-01-13  Francois Dumont  <dums@stlport...>
2337
2338
	* test/unit/type_traits_test.cpp: Add boost specialization for
2339
	any_pod_type in order to reproduce STLport behavior when using
2340
	boost type traits.
2341
2342
	* src/dll_main.cpp: Remove now invalid template explicit
2343
	instanciation of _Bs_G that is no more a template.
2344
2345
	* stlport/stl/config/_detect_dll_or_lib.h: When no iostreams mode,
fa5f907 by dums at 2006-06-19 2346
	consider that we are in a static lib mode.
4c79b56 by dums at 2006-01-13 2347
2348
	* stlport/stl/_limits.c, _hashtable.c: Add _STLP_CALL specification
2349
	to _LimG and _Stl_prime methods implementation.
2350
2351
	* stlport/stl/_limits.c: Put _Stl_prime methods implementation in
2352
	a _STLP_EXPOSE_GLOBALS_IMPLEMENTATION macro check block. Those
2353
	methods are supposed to come from libs when using iostreams.
2354
2355
	* stlport/stl/_num_put.h, _num_get.h, _time_facets.h, _ios.h,
2356
	_ios_base.h: Cleanup Borland workaround now useless.
2357
2358
	* stlport/stl/boost_type_traits.h: Fixed _OKToMemCpy implementation
2359
	using boost type traits to be closer to the STLport behavior.
2360
2361
	* build/lib/configure.bat: Fixed reference to STLport user
2362
	configuration file.
2363
2364
	* build/lib/configure: Add --use-boost option to inject boost
2365
	path during build process.
2366
5cc01ac by complement at 2006-01-12 2367
2006-01-12  Petr Ovtchenkov  <complement@users.sourceforge.net>
2368
2369
	* stlport/stl/_rope.h, stlport/stl/_rope.c: pass CharConsumer
2370
	via reference, to take into account CharConsumer modifications.
2371
	This has relation to find(char) in rope. Thanks Cristian Vlasceanu.
2372
2373
	* test/unit/rope_test.cpp: test for fixed bug above.
2374
0cbf5f0 by dums at 2006-01-11 2375
2006-01-11  Francois Dumont  <dums@stlport...>
2376
2377
	* src/bitset.cpp: Add stlport_prefix.h include.
2378
2537e6e by dums at 2006-01-11 2379
	* stlport/stl/_bitset.h: Add an inline implementation for _S_count
2380
	and _S_first_one static methods for _STLP_NO_IOSTREAMS mode. Should
2381
	be slower than version coming with library but avoid link trouble.
2382
d4c5f24 by complement at 2006-01-11 2383
2006-01-11  Petr Ovtchenkov  <complement@users.sourceforge.net>
2384
2385
	* stlport/stl/_bitset.h, stlport/stl/_bitset.c, src/bitset.cpp:
2386
	make helper structure _Bs_G non-template [it used only as instance
2387
	with unused bool argument only], and put static tables into library
2388
	to avoid possible static instances duplication.
2389
2390
	* build/lib/Makefile.inc: idem.
2391
52a3ef2 by dums at 2006-01-10 2392
2006-01-10  Francois Dumont  <dums@stlport...>
2393
2394
	* stlport/stl/type_traits.h, config/_msvc.h, _mwerks.h: Integrate
2395
	intrinsic type traits support for Visual 2005 and Metrowerk. Code
2396
	based on boost library information and not tested for Metrowerk.
2397
2398
	* test/unit/bind_test.cpp: Fix BindTest::bind2nd3 test case, had
2399
	never been used.
2400
2401
	* stlport/stl/boost_type_traits.h: Change boost type traits wrapping
2402
	implementation to use meta programming operation on types rather
2403
	than on numerical constant, MSVC6 prefer it.
2404
2405
	* build/test/unit/msvc.mak: Systematically add /Zm800 for MSVC
2406
	compilers, useful in a number of case and transparent in others.
2407
2408
	* test/unit/type_traits_test.cpp: Add is_POD test case. Add dummy
2409
	constructors, assignment operator and destructor to any_type struct
2410
	to make the tests pass even with compilers having intrinsic type
2411
	traits support.
2412
 
3ae1ccb by dums at 2006-01-09 2413
2006-01-09  Francois Dumont  <dums@stlport...>
2414
2415
	* stlport/stl/debug: Fix move constructor to keep the container
2416
	move constructor complete. When STLport user do no require no
2417
	extension or Standard debug safe mode, iterators are also move
2418
	with the container contents.
2419
2420
	* stlport/stl/_list.h, _slist.h, _tree.h: Made iterator struct
2421
	constructor from base class pointer explicit to forbid expression
2422
	like: list.begin() == 0.
2423
2424
	* stlport/stl/pointers/_slist.h, _list.h, _set.h: Fix implementation
2425
	that was using former implicit contructor from pointer to base class.
2426
2427
	* src/c_locale_win32/c_locale_win32.c: Fix implementation for
2428
	compilers coming with a native lib implementing secure C functions
2429
	like strncpy_s.
2430
2431
	* src/iostream.cpp: Hide I/O streams declaration when defining
2432
	them when compiler has no support for removing I/O streams
2433
	from static global variable initialization segment. Avoid the
2434
	stdio_istreambuf using directive when we do not use STLport
2435
	private namespace.
2436
2437
	* stlport/stl/_rope.h, _rope.c: Use internal, not _STLP_NO_EXTENSIONS
2438
	dependant functions for implementation.
2439
2440
	* stlport/rope, hash_map, hash_set: Add _STLP_NO_EXTENSIONS check
2441
	that generate a #error if defined as those headers are STLport
2442
	extensions.
2443
2444
	* stlport/_uninitialized.h: Add __uninitialized_copy_n no dependant
2445
	against _STLP_NO_EXTENSIONS for rope implementation.
2446
2447
	* test/unit: Made tests ok to build even when _STLP_NO_EXTENSIONS or
2448
	_STLP_NO_ANACHONISM or _STLP_NO_CUSTOM_IO is defined.
2449
2450
	* stlport/stl/_num_put.h, _num_get.h: Fix definition scope of
2451
	_STLP_MOVE_TO_STD_NAMESPACE that was wrong when _STLP_NO_CUSTOM_IO
2452
	is defined.
2453
2454
	* stlport/stl/boost_type_traits.h: Fixed _IsRef implementation based
2455
	on boost type traits feature.
2456
2457
	* build/nmake/extern.mak, lib/msvc.mak, test/unit/msvc.mak,
2458
	test/eh/msvc.mak: Moved injection of boost include path for all targets
2459
	in extern.mak. Also removed a useless double quote as make variable already
2460
	contains it.
2461
2462
	* stlport/stl/config/_bc.h, test/unit/floatio_test.cpp, cmath_test.cpp,
d266489 by complement at 2006-01-24 2463
	limit_test.cpp: Borland patch from Eric Sanford.
3ae1ccb by dums at 2006-01-09 2464
2465
	* test/unit/string_test.cpp: Add template_wexpression test to check
2466
	wstring template expression.
2467
26b4b53 by dums at 2006-01-04 2468
2006-01-05  Francois Dumont  <dums@stlport...>
2469
26885e2 by dums at 2006-01-05 2470
	* stlport/stl/_stdexcept.h: Fix __Named_exception destructor
2471
	implementation when _STLP_NO_IOSTREAMS is defined or when
2472
	securized C function strcpy_s exists.
2473
2474
	* stlport/stl/pointers/_set.h: Fixed implementation as _Identity
2475
	is now in private namespace and const_reverse_* functions must
2476
	return const_reverse_* iterators and not simply reverse_*.
2477
2478
	* test/unit/bcompos_test.cpp, bind_test.cpp: Made the tests usable
2479
	when _STLP_NO_EXTENSIONS is defined.
2480
2481
	* build/lib/configure.bat: Fix name of msvc8 compiler.
2482
2483
	* test/unit/mfunptr_test.cpp: Ignore find test when no class
2484
	partial template specialization rather than commenting it.
2485
2486
	* test/unit/type_traits_test.cpp: Ditto for reference_type test.
2487
2488
	* build/Makefiles/nmake/top.mak: Fixed install-shared definition.
2489
2490
	* build/Makefiles/gmake/gcc.mak: Add _STLP_USE_STATIC_LIB when
2491
	building and using STLport static lib under MinGW/Cygwin.
2492
2493
2006-01-04  Francois Dumont  <dums@stlport...>
2494
26b4b53 by dums at 2006-01-04 2495
	* src/acquire_release.h: New file, expose __acquire_*
2496
	functions used in different translation unit.
2497
2498
	* src/num_put.h: Removed, content moved to num_put.cpp that
2499
	was the only translation unit using exposed functions.
2500
2501
	* src/*: Build with Intel C++ 9 compiler reveal that many
2502
	static specification was missing.
2503
2504
	* src/ctype.cpp: Filter out _WCharIndexT specialization for
fa5f907 by dums at 2006-06-19 2505
	Intel compiler that consider wchar_t as unsigned, fixed a
26b4b53 by dums at 2006-01-04 2506
	warning.
2507
2508
	* _STLP_STATIC_ASSERT is now called without trailing ';' that
2509
	is already in the macro definition.
2510
2511
	* src/*: Removed reference to _SgI namespace replaced by the
2512
	STLport private namespace.
2513
2514
	* src/iostream.cpp: Add iostream include to expose cout, cin, cerr
2515
	definition to declaration.
2516
26885e2 by dums at 2006-01-05 2517
2006-01-03  Francois Dumont  <dums@stlport...>
dc6b306 by dums at 2006-01-04 2518
2519
	* stlport/stl/config/_gcc.h: Force use of new/delete based
2520
	allocator under Cygwin/MinGW, default node allocator has
2521
	problem because __node_allocator static datas are sometimes
2522
	duplicated in a dll context.
2523
5c50355 by dums at 2006-01-01 2524
2006-01-01  Francois Dumont  <dums@stlport...>
2525
2526
	* build/Makefiles/gmake/lib/gcc.mak, stlport/stl/config/_gcc.h:
2527
	Change way of building dll with Cygwin/MinGW. No more export of
2528
	all symbols, we use dllexport specification, makes import lib
2529
	really shorter and dll too. Moreover use of the
2530
	enable-auto-image-base linker option to make load of dll faster.
2531
2532
	* stlport/stl/_time_facets.c, _num_put.c, _num_get.c, _monetary.c,
2533
	debug/_debug.c: Adapt existing Cygwin/MinGW workaround for new
2534
	way of generating dlls.
2535
1d40866 by dums at 2005-12-31 2536
2005-12-31  Francois Dumont  <dums@stlport...>
2537
2538
	* doc: Add Borland doc and update cygwin, mingw and msvc.
2539
2540
	* build/lib/README.options: Removed, replaced by configrure
2541
	script.
2542
2543
	* build/test/eh/bcc.mak: Added to build EH tests for Borland.
2544
b8bd9b3 by dums at 2005-12-29 2545
2005-12-29  Francois Dumont  <dums@stlport...>
2546
2547
	* src/c_locale_win32/c_locale_win32.c: Hide _Locale_mbtowc and
2548
	_Locale_wctomb when no wchar_t support is detected thanks Eric
d266489 by complement at 2006-01-24 2549
	Sanford.
b8bd9b3 by dums at 2005-12-29 2550
2551
	* src/c_locale_win32/c_locale_win32.c: Add mapping from Borland
2552
	facet macros to STLport associated string representation array index
d266489 by complement at 2006-01-24 2553
	thanks Eric Sanford. 
b8bd9b3 by dums at 2005-12-29 2554
2555
	* stlport/stl/config/_evc.h: Patch from Michael Fink to generalized
2556
	use of OutputDebugString for Windows CE when we need to trace
2557
	information.
2558
2559
	* build/Makefiles/gmake/bcc.mak, lib/bcc.mak, app/bcc.mak: Fix
2560
	definition of START_OBJ thanks armpit33
2561
2562
	* build/Makefiles/*: Generalize use of install-shared rather than
2563
	list of all shared rules, idem for install-static.
2564
da35ba4 by dums at 2005-12-27 2565
2005-12-27  Francois Dumont  <dums@stlport...>
2566
2567
	* stlport/stl/_string_io.c: Generalized use of _STLP_STATIC_ASSERT
2568
	macro rather that hand writen static assertion.
2569
2570
	* stlport/stl/_fstream.c, _istream.c, src/fstream.cpp, strstream.cpp:
2571
	Add some cast to avoid Borland suspicious pointer arithmetic warnings
37f953a by dums at 2006-01-14 2572
	thanks Eric Sanford.
da35ba4 by dums at 2005-12-27 2573
2574
	* stlport/stl/_limits.c: Fix Borland definition of NaNs and infinity
37f953a by dums at 2006-01-14 2575
	for long double thanks Eric Sanford.
da35ba4 by dums at 2005-12-27 2576
2577
	* stlport/stl/config/_system.h, _gcc.h: Fix config for Windows, MinGW
2578
	and Cygwin platforms.
2579
2580
	* stlport/stl/config/_windows.h: Can now be included by a pure C
2581
	compiler.
2582
2583
	* stlport/stl/config/_warning_off.h: Removed suspicious pointer
37f953a by dums at 2006-01-14 2584
	arithmetic warning for Borland thanks Eric Sanford.
da35ba4 by dums at 2005-12-27 2585
2586
	* stlport/stl/_construct.h: Removed now useless Borland workaround.
2587
2588
	* src/stdio_streambuf.cpp: Ditto.
2589
2590
	* stlport/stl/_alloc.h: Now allocator is tagged as an STLport class
2591
	even without partial template specialization support. This is
2592
	necessary because type_traits is specialized for allocator<char>,
2593
	allocator<wchar_t> and allocator<void*> when partial template
2594
	specialization is not available.
2595
2596
	* test/unit/bitset_test.cpp: Add tests for the STLport
2597
	bitset::_Find_first extension.
2598
06b6259 by complement at 2005-12-27 2599
2005-12-27  Petr Ovtchenkov  <complement@users.sourceforge.net>
2600
2601
	* src/initial_mak: obsolete makes removed (sync with STLPORT_5_0
2602
	branch).
2603
2604
2005-12-24  Petr Ovtchenkov  <complement@users.sourceforge.net>
2605
2606
	* stlport/stl/config/_gcc.h: gcc, builded by Apple is differ
2607
	in behavior from original; in particular, in path to includes;
2608
2609
	* build/Makefiles/gmake/app/gcc.mak: fix gcc options on MacOS X;
2610
	STLport is free from libstdc++ on MacOS now;
2611
2612
	* build/Makefiles/gmake/gcc.mak: fix gcc options on MacOS X; gcc,
2613
	builded by Apple is differ in behavior from original;
2614
	detect this;
2615
2616
	* build/Makefiles/gmake/lib/gcc.mak: fix gcc on MacOS X;
2617
	differentiate gcc from Apple and original;
2618
	STLport is free from libstdc++ on MacOS X now;
2619
2620
	* build/Makefiles/gmake/darwin/rules-so.mak: use 
2621
	gcc instead of c++ for linkage, if only C sources present.
2622
2623
	* build/lib/gcc.mak, build/test/unit/gcc.mak: remove duplication
2624
	of stlport includes.
2625
86c05d0 by complement at 2005-12-22 2626
2005-12-22  Petr Ovtchenkov  <complement@users.sourceforge.net>
2627
2628
	* stlport/stl/config/_windows.h: all system specific configuration
2629
	in one place [moved from stlport/stl/_windows.h]
2630
2631
	* stlport/stl/_windows.h: deleted; all system specific configuration
2632
	in one place [moved to stlport/stl/config/_windows.h]
2633
	
2634
	* stlport/stl/debug/_debug.c, stlport/stl/_threads.h:
2635
	_windows.h included via _prolog.h [i.e. via stl/config/_system.h],
2636
	see changes above.
2637
2638
	* stlport/stl/config/_sunprocc.h: remove include of _solaris.h---it
2639
	already included from _system.h
2640
2641
	* stlport/stl/config/_kai.h: remove include of os configuration files,
2642
	it should be included from _system.h
2643
2644
	* stlport/stl/config/_intel.h: fix path after config headers
2645
	reorganization.
2646
2647
	* stlport/stl/config/_evc.h: idem
2648
2649
	* stlport/stl/_exception.h: idem
2650
2651
	* stlport/stl/config/_prolog.h: idem
2652
2653
	* test/unit/fstream_header_test.cpp: idem
2654
2655
	* test/unit/iomanip_header_test.cpp: idem
2656
2657
	* test/unit/ios_header_test.cpp: idem
2658
2659
	* test/unit/iostream_header_test.cpp: idem
2660
2661
	* test/unit/istream_header_test.cpp: ditto
2662
2663
	* test/unit/locale_header_test.cpp: idem
2664
2665
	* test/unit/ostream_header_test.cpp: idem
2666
2667
	* test/unit/sstream_header_test.cpp: idem
2668
2669
	* test/unit/strstream_header_test.cpp: idem
2670
56aa785 by dums at 2005-12-21 2671
2005-12-21  Francois Dumont  <dums@stlport...>
2672
2673
	* stlport/stl/debug/_debug.h, _debug.c, _string_sum_methods.h:
2674
	Removed some unused parameters reported by Borland compiler.
2675
2676
	* stlport/stl/config/_warnings_off.h: Disable unused parameters
2677
	warning for Borland compiler.
2678
2679
	* build/Makefiles/gmake/targetdirs.mak: Change config in order to
2680
	have each generated application in a different bin folder.
2681
2682
	* stlport/stl/_threads.h: Used _STLP_STATIC_ASSERT macro for a
2683
	static assertion.
2684
a9218f2 by complement at 2005-12-19 2685
2005-12-19  Petr Ovtchenkov  <complement@users.sourceforge.net>
2686
2687
	* build/Makefiles/gmake/lib/gcc.mak: move LDSEARCH flags after
2688
	possible -nostdlib
2689
2690
	* build/lib/gcc.mak: don't add include path, it already included.
2691
2692
	* src/c_locale.h: include stlport_prefix.h to add STLport's
2693
	definitions that used below.
2694
2695
	* stlport/stl_user_config.h, stlport/stl/_config.h: moved 
2696
	to stlport/stl/config catalog and renamed.
2697
2698
	* stlport/stl/_config_compat.h, stlport/stl/_site_config.h: ditto.
2699
2700
	* stlport/config: headers moved to stlport/stl/config catalog,
2701
	renamed and reorganized.
2702
2703
	* stlport/stl/_prolog.h, stlport/stl/_epilog.h, src/stlport_prefix.h:
2704
	reflect changes in configuration files.
2705
bf4f14f by dums at 2005-12-17 2706
2005-12-17  Francois Dumont  <dums@stlport...>
2707
2708
	* stlport/stl/_config.h: Removed ';' in _STLP_STATIC_ASSERT
2709
	definition.
2710
2711
	* stlport/stl/_cwctype.h: Fix native namespace of wide char functions
2712
	for MinGW runtime <= 3.0. Also fix a typo for FreeBDS.
2713
2714
	* src/stdio_streambuf.cpp: Add missing 'defined' when checking
2715
	__OS400__ macro existance.
2716
2717
	* test/unit/resolve_name.cpp, set_test.cpp: Removed useless ';'
2718
	reported by remarks from Intel C++ compiler.
2719
7fb54d2 by dums at 2005-12-16 2720
2005-12-16  Francois Dumont  <dums@stlport...>
2721
2722
	* stlport/stl/_rope.h: Moved overload of __identity_element for
2723
	_Rope_Concat_fn in STLport private namespace where orginal function
2724
	declaration is. Also moved _Rope_Concat_fn at the same time, much more
2725
	many elements of _rope.h should be moved to this namespace...
2726
2727
	* stlport/stl/_monetary.c: Change implementation of __money_do_put for
2728
	Borland compiler, looks like this compiler do not like ternary operator.
2729
2730
	* src/c_locale_win32/c_locale_win32.c: Replace check of category in
2731
	__Extract_locale_name from > LC_ALL by != LC_ALL, there is no reason
2732
	for LC_ALL to be upper or lower to all other categories.
2733
2734
	* build/Makefiles/gmake/cygming/rules-so.mak: Segregate different
2735
	compilers linker calls and add reference to START_OBJ in Borland
2736
	linker invocation.
2737
2738
	* build/Makefiles/gmake/lib/rules-a.mak, cygming/targetsys.mak: Borland
2739
	archiver add option is now '+', before being invocated archive is always
2740
	deleted to avoid warnings because the Borland archiver do not have a
2741
	real add or replace module option.
2742
2743
	* stlport/stl/type_traits.h: Fix for compiler simulating partial
2744
	template specialization (VC6)
2745
2746
	* test/eh/test_rope.cpp: Removed rope test for Borland.
2747
2748
	* test/unit/exception_test.cpp: Commented tests are now ignored.
2749
2750
	* test/unit/locale_test.cpp, string_test.cpp: No more ignored test
2751
	for Borland.
2752
cf12aea by complement at 2005-12-15 2753
2005-12-14  Petr Ovtchenkov  <complement@users.sourceforge.net>
2754
2755
	* build/Makefiles/gmake/sysid.mak: parse two-token target
2756
	system identification string along with three-token one
2757
	[useful when vendor is omitted]; thanks Jonathan Sprinkle.
2758
2759
	* stlport/cwctype, stlport/stl/_cwctype.h: wctype_t and
2760
	others are in global namespace on FreeBSD.
2761
2762
	* build/Makefiles/gmake/app/gcc.mak, lib/gcc.mak: use build
2763
	with -nostdlib on Solaris.
2764
2765
	* src/cxa.c: fix for Solaris
2766
2767
	* stlport/config/stl_solaris.h, stlport/stl/_cmath.h:
2768
	hmm, strange... sometimes MATH_L and MATH_F present on Solaris,
2769
	sometimes not...
2770
f197657 by dums at 2005-12-14 2771
2005-12-14  Francois Dumont  <dums@stlport...>
2772
2773
	* test/unit/cppunit/cppunit_mini.h, file_reporter.h: Add ignore
2774
	test feature, now tests should be ignored rather than commented.
2775
	2 new macros for that CPPUNIT_IGNORE to add in tests declaration,
2776
	all test following this macro won't be run; CPPUNIT_STOP_IGNORE
2777
	optional macro to stop ignoring tests.
2778
2779
	* test/unit/fstream_test.cpp: Ignore custom_facet test when not
2780
	supported rather than comment it.
2781
2782
	* test/unit/hash_test.cpp: Ignore hmap1 test for Borland and Digital
2783
	Mars compilers, looks like rope class is too complicated for those
2784
	compilers.
2785
2786
	* test/unit/locale_test.cpp: Ignore locale_by_name test for compiler
2787
	without exceptions support. Ignore money facet tests for Borland.
2788
2789
	* test/unit/mvctor_test.cpp, rope_test.cpp: Some tests ignored
2790
	depending on various configuration settings.
2791
2792
	* test/unit/type_traits.cpp: Add test for _IsSTLportClass metaprogramming
2793
	tool. Ignored for Borland.
2794
2795
	* test/unit/unordered_test.cpp: Fix test for Digital Mars, unordered
2796
	containers value_type are not necessarily with an immutable key, it is
2797
	more portable to use value type rather than redefining it in the test.
2798
2799
	* test/unit/string_test.cpp: Removed Windows CE macro check replaced
2800
	by WaitForMultipleObjects returned code check, more portable and
2801
	maintenable. Ignore a test for Digital Mars compiler.
2802
2803
	* stlport/stl/type_manips.h, type_traits.h: Simplified metaprograming
2804
	tools implementation; now avoid compilation constant replaced by
2805
	type, Borland compiler has problem with constants.
2806
2807
	* stlport/config/stl_bc.h: Made supported compiler check more accurate
2808
	free compiler is 5.5.1 so it is the oldest supported version. Borland
2809
	compiler do not support IEC559 specifications.
2810
2811
	* build/Makefiles/gmake/bcc.mak: Put startup .obj to link with in
37f953a by dums at 2006-01-14 2812
	START_OBJ rather than LDLIBS, thanks Eric Sanford.
f197657 by dums at 2005-12-14 2813
2814
	* src/c_locale_win32/c_locale_win32.c: Temporarily removed category
2815
	check in __Extract_locale_name function for Borland, looks like LC_ALL
2816
	or LC_MAX has not the right value.
2817
e165a5f by dums at 2005-12-14 2818
2005-12-13  Francois Dumont  <dums@stlport...>
2819
2820
	* src/cxa.c: Add include of stlport_prefix.h first, this file
2821
	should be always included first in STLport translation units,
cf12aea by complement at 2005-12-15 2822
	it prepares some compilers config and define important for Wins
e165a5f by dums at 2005-12-14 2823
	__BUILDING_STLPORT macro.
2824
9d0bbc1 by complement at 2005-12-13 2825
2005-12-13  Petr Ovtchenkov  <complement@users.sourceforge.net>
2826
2827
	* build/Makefiles/gmake/targetdirs.mak: built-in
cf12aea by complement at 2005-12-15 2828
	test in /bin/sh on Solaris has no -e, use external instead.
9d0bbc1 by complement at 2005-12-13 2829
aa2fcae by dums at 2005-12-11 2830
2005-12-11  Francois Dumont  <dums@stlport...>
2831
2832
	* build/Makefiles/gmake/bcc.mak : Add -w-eff to disable 'useless'
2833
	code warning, we had to chose between this warning and the 'used
2834
	parameter' one.
2835
2836
	* build/Makefiles/gmake/targetdirs.mak: Removed comment about folder
2837
	creation action under windows platform. The action is identical to
2838
	the one used in the nmake build system and no one complains about it
2839
	so current situation is not so bad. Only users of Windows before Windows
2840
	98 should eperiment troubles, this is a known limitation.
2841
2842
	* build/Makefiles/gmake/dmc.mak, cygming/rules-so.mak: Change config,
2843
	now we directly invoke the linker, we do not use a compiler call for it.
2844
2845
	* build/Makefiles/gmake/app/bcc.mak: Fix linker option in order to generate
37f953a by dums at 2006-01-14 2846
	a windows executable and not a dll, thanks Eric Sanford.
aa2fcae by dums at 2005-12-11 2847
2848
	* build/Makefiles/gmake/app/rules-install.mak: Add install dir dependency
2849
	rather than doing a folder existence check in rules actions.
2850
2851
	* build/Makefiles/gmake/app/rules.mak: Restore slash rotation for Borland
2852
	linker invocation and fix static rules dependencies to guaranty folder
2853
	creations.
2854
2855
	* build/Makefiles/gmake/lib/bcc.mak: Add missing archiver page size parameters.
2856
2857
	* build/test/unit/bcc.mak: Add _STLP_DEBUG_UNINITIALIZED for static
2858
	debug rules.
2859
2860
	* build/Makefiles/gmake/lib/rules-a.mak: Segregate each archiver invocation.
2861
69e6266 by dums at 2005-12-09 2862
2005-12-09  Francois Dumont  <dums@stlport...>
2863
2864
	* build/lib/configure.bat: Add Borland compiler to compilers
2865
	able to mix a dll build with a static native runtime.
2866
2867
	* build/Makefiles/gmake/bcc.mak, dmc.mak: Complete libs to link
2868
	depending on STLport configuration.
2869
2870
	* build/Makefiles/gmake/targetdirs.mak: roll back modif from Petr
2871
	2005-12-08
2872
2873
	* build/Makefiles/gmake/targets.mak: ditto
2874
2875
	* build/Makefiles/gmake/cygming/lib.mak: Fix for static libs build
2876
	with compiler different than gcc.
2877
2878
	* build/Makefiles/gmake/cygming/targetsys.mak: Add missing info for
2879
	static libs build with Borland and Digital Mars compilers.
2880
2881
	* build/Makefiles/gmake/lib/rules-a.mak: Fix static builds commands
2882
	to use info of above point.
2883
2884
	* build/Makefiles/gmake/lib/rules-install-a.mak: Add install rule
2885
	for windows and missing catalog in dependency tree.
2886
2887
	* build/Makefiles/gmake/windows/rules-install-so.mak: Add missing
2888
	catalog dependency.
2889
9d0bbc1 by complement at 2005-12-13 2890
2005-12-09  Petr Ovtchenkov  <complement@users.sourceforge.net>
0ef694b by dums at 2005-12-08 2891
9d0bbc1 by complement at 2005-12-13 2892
	* build/lib/Makefile.inc: add cxa.c into compilation; this
2893
	is useful for FreeBSD 4.11 C++ ABI workaround.
2894
2895
	* src/cxa.c: use _cxa_atexit and related functions on
2896
	FreeBSD 4.11 [workaround for missed C++ ABI functions].
2897
2898
2005-12-08  Francois Dumont  <dums@stlport...>
69e6266 by dums at 2005-12-09 2899
0ef694b by dums at 2005-12-08 2900
	* stlport/stl/_auto_ptr.h: Add missing Standard throw() specification
2901
	on all auto_ptr members.
2902
2903
	* stlport/config/stl_mycomp.h: Removed recently introduce macro
2904
	_STLP_DFLT_PARAM_INSTANCIATION_BUG, already existing _STLP_DONT_SUP_DFLT_PARAM
2905
	is enough for the moment.
2906
2907
	* stlport/stl/_stream_iterator.h: Small implementation change to make
2908
	Digital Mars compiler happy.
2909
2910
	* stlport/stl/_unordered_map.h: Digital Mars compiler do not like
2911
	immutable keys in associative containers.
2912
ce44496 by complement at 2005-12-08 2913
2005-12-08  Petr Ovtchenkov  <complement@users.sourceforge.net>
2914
e66bf8c by complement at 2005-12-08 2915
	* stlport/ctype.h: forward-declaration for _exception struct
2916
	for WinCE/eVC3; prevents warning message
2917
	../include/stdlib.h(817) : warning C4115:
2918
	'_exception' : named type definition in parentheses
2919
	[Michael Fink's suggestion]
2920
2921
	* stlport/float.h, stlport/limits.h, stlport/setjmp.h: idem.
2922
2923
	* stlport/stdarg.h, stlport/string.h, stlport/stdio.h: idem.
2924
ce44496 by complement at 2005-12-08 2925
	* build/Makefiles/gmake/gcc.mak: check configuration macro
2926
	WITHOUT_STLPORT [useful for tests]; force usage of stlport
2927
	headers first otherwise.
2928
2929
	* build/Makefiles/gmake/targetdirs.mak: fix catalogs creation
2930
	procedure [loop through catalogs required]; comment problematic
2931
	code when we have no good tools.
2932
2933
	* build/Makefiles/gmake/lib/gcc.mak: fix typo [FreeBSD]; fix
2934
	set of libraries when link for FreeBSD; fix typo in macro name
2935
	[FreeBSD again].
2936
2937
	* build/Makefiles/gmake/app/gcc.mak: fix set of libraries when
2938
	link for FreeBSD; insert stlport lib in STDLIB set [when STLPORT
2939
	in force], to avoid set one in application's makefile.
2940
2941
	* build/test/unit/gcc.mak: explicit refrence to libstlport in
2942
	this makefile not required more [see message above].
2943
2944
	* build/Makefiles/gmake/lib/gcc.mak: remove names inherited from
2945
	Complement project.
2946
e66bf8c by complement at 2005-12-08 2947
	* build/Makefiles/gmake/*/rules-install-so.mak: installation
2948
	catalog was missed in dependency tree; ident string removed
2949
	to simplify merge/diff
2950
ce44496 by complement at 2005-12-08 2951
	* Build: building library and unit tests with cross [gcc 3.4.5]
cf12aea by complement at 2005-12-15 2952
	on Linux for FreeBSD 5.3 (except cwctype_test).
ce44496 by complement at 2005-12-08 2953
2954
	* build/Makefiles/gmake/targets.mak: rotate slashes for BCC.
2955
2956
	* build/Makefiles/gmake/app/macro.mak: remove name contruction
2957
	for program; rotate slashes for wins.
2958
2959
	* build/Makefiles/gmake/app/rules-install.mak: remove name
2960
	contruction for program.
2961
2962
	* build/Makefiles/gmake/app/rules.mak: remove name contruction
2963
	for program; objects for static and for dynamic are the same. 
2964
	
2a2ad0b by dums at 2005-12-04 2965
2005-12-04  Francois Dumont  <dums@stlport...>
2966
2967
	* src/num_put_float.cpp: Filter inclusion of stdint.h, required for
2968
	Digital Mars compiler, forbidden for Sun platform.
2969
2970
	* stlport/stl/_cwctype.h: wide types and function are in global
2971
	namespace.
2972
2973
	* build/test/unit/gcc.mak: Modify cygwin/mingw config now that
2974
	default settings for those platform is shared library.
2975
2976
	* build/Makefiles/gmake: Add support of static targets, used
2977
	especially for Borland C++ Compiler and Digital Mars Compiler.
2978
2cb88aa by dums at 2006-05-20 2979
	* build/Makefiles/gmake/app/gcc.mak: Fix typo in FreeBSD
2a2ad0b by dums at 2005-12-04 2980
	configuration.
2981
9fc32fe by dums at 2005-12-02 2982
2005-12-02  Francois Dumont  <dums@stlport...>
2983
2984
	* stlport/config/stl_msvc.h: Fixed configuration detection when building
2985
	STLport dll based on a static native runtime.
2986
2987
	* stlport/stl/_locale.h: Fix warning convertion from size_t to
2988
	__stl_atomic_t that can be of lower size.
e27b835 by dums at 2005-12-02 2989
2990
	* stlport/config/stl_gcc.h, doc/README.mingw, README.cygwin: Made dll
2991
	default settings under cygwin/mingw.
9fc32fe by dums at 2005-12-02 2992
	
d843db9 by dums at 2005-12-01 2993
2005-12-01  Francois Dumont  <dums@stlport...>
2994
2995
	* stlport/stl/_mbstate_t.h: Add workaround for alpha bad WCHAR_MIN and
2996
	WCHAR_MAX definition.
2997
2998
	* stlport/config/stl_gcc.h: Configure STLport for alpha platform as not
2999
	supporting iec559 specification as quiet nan is not correct. If someone
3000
	find the right value then this config will have to be rollbacked.
3001
3002
	* build/Makefiles/gmake/gcc.mak: Restored Sun OS support that use the
3003
	-pthreads option and not -pthread
3004
3005
	* build/Makefiles/nmake/lib/macro.mak: Fixed library name generation
3006
	when using cross runtime version thanks Alexey Ivanov report.
3007
6ba9cd3 by dums at 2005-11-29 3008
2005-11-29  Francois Dumont  <dums@stlport...>
3009
3010
	* stlport/stl_user_config.h: Add _STLP_LIB_NAME_MOTIF macro to give
3011
	users a point of customization of the automatic linking feature.
3012
3013
	* build/Makefiles/nmake/lib/macro.mak, gmake/cygming/lib.mak: Use
3014
	STLP_BUILD_LIB_MOTIF in library name generation algorithm. Also take
3015
	into account cross builds in library name generation.
3016
3017
	* build/lib/configure.bat: Add --lib-motif option to give users a
3018
	way to customize the generated library names.
3019
3020
	* test/eh: Generalized use of msvc.mak rather than all the nmake-vc??.mak
3021
	files. Idem for evc.mak instead of nmake-evc?.mak and icl.mak instead of
3022
	nmake-icl.mak.
3023
3024
	* stlport/stl/_exception.h: Change _msvc_warnings_off.h include in
3025
	_warnings_off.h as this file now also turn off Borland warnings.
3026
3027
	* stlport/config/_detect_dll_or_lib.h: Mutualization of code used to
3028
	detect current STLport type of build or usage (dll or static lib).
3029
3030
	* stlport/config/stl_msvc.h, stl_bc.h, stl_dmc.h: Integration of
3031
	_detect_dll_or_lib.h
3032
3033
	* stlport/config/_auto_link.h: Change auto link algo when we detect
3034
	cross STLport usage that is to say use of STLport as a dll link with
3035
	static native runtime or opposite.
3036
53081e1 by complement at 2005-11-29 3037
2005-11-29  Petr Ovtchenkov  <complement@users.sourceforge.net>
3038
3039
	* src/cxa.c: mutex should be recursive-safe, due to __cxa_finalize
3040
	may be called recursive.
3041
0730738 by dums at 2005-11-28 3042
2005-11-28  Francois Dumont  <dums@stlport...>
3043
3044
	* stlport/stl/_threads.h: Simplified expression used to instanciate
3045
	_Atomic_swap_struct, gcc 2.95 had trouble with the one line expression.
3046
3047
	* src/dll_main.cpp: Fix instanciation of _Swap_lock_struct that has been
3048
	changed and renamed in _Atomic_swap_struct.
3049
3050
	* test/unit/map_test.cpp, set_test.cpp: Simplified call to map constructor
3051
	taking a functor and allocator instance, split it in a creation of a les<int>
3052
	instance then passed to the constructor; gcc 2.95 had trouble with previous
3053
	version.
3054
3055
	* stlport/stl/_cmath.h, _cstdlib.h: Now those files includes each other to
3056
	make sure that all abs overloads are defined when it is imported in STLport
fa5f907 by dums at 2006-06-19 3057
	namespace. gcc 2.95 is very strict on this point and only consider the abs
0730738 by dums at 2005-11-28 3058
	overloads existing at the first import calls, all overloads added after that
3059
	are discarded silently.
3060
3061
	* stlport/stl/_cmath.h: Removed unjustified abs function overloads done
3062
	directly in STLport namespace for gcc 2.95 and before. Those overloads
3063
	clashed on a Linux with gcc 2.95 from the sourceforge compiler farm. 
3064
3065
	* build/Makefiles/gmake/gcc.mak: Generalized definition of _REENTRANT under
3066
	Linux to make detection of a multithreaded build from STLport code easier.
3067
	Problem meet on an alpha linux platform from the sourceforge compiler farm.
3068
3069
	* stlport/stl/_locale.h: Removed _M_delete locale::facet member variable,
3070
	useless if facet instance reference counter is right.
3071
3072
	* src/locale_impl.cpp, message.cpp: Change classic facets initialization code
3073
	to simply set initial counter to 1 rather than incrementing it after construction.
3074
3075
	* test/unit/evc.mak fix path to config file in existance check.
3076
3077
	* stlport/stl/_move_construct_fwk.h, type_manips.h: Add workaround to use
3078
	move constructor with Borland compiler.
3079
c15437c by complement at 2005-11-27 3080
2005-11-28  Petr Ovtchenkov  <complement@users.sourceforge.net>
3081
3082
	* build/Makefiles/gmake/targetdirs.mak: change names of .o output dirs
3083
	to make bcc happy (bug with passing name that contain '-' from
3084
	compiler to linker). Replacement: 'shared' -> 'so', 'static' -> 'ar',
900eb2c by complement at 2005-11-27 3085
	'-' -> '_' (i.e. obj/gcc/shared-stlg -> obj/gcc/so_stlg, a bit shorter)
3086
	[Suggested by Francois Dumont].
c15437c by complement at 2005-11-27 3087
817db42 by complement at 2005-11-27 3088
2005-11-27  Petr Ovtchenkov  <complement@users.sourceforge.net>
3089
3090
	* build/Makefiles/gmake/targets.mak, app/rules.mak, linux/rules-so.mak:
3091
	use gcc instead of c++ as linker if there are no C++ objects.
3092
3093
	* src/cxa.c, build/misc/cxa_atexit/Makefile.inc, build/misc/cxa_atexit/gcc.mak:
3094
	workaround for bugged __cxa_finalize; use builded libcxa.so in LD_PRELOAD or
3095
	/etc/ld.so.preload in Linux system with bugged glibc. See also
3096
	http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24189
3097
3d22101 by dums at 2005-11-27 3098
2005-11-27  Francois Dumont  <dums@stlport...>
3099
3100
	* stlport/stl/type_manips.h: Add import of __true_type and
3101
	__false_type in STLport private namespace as the using namespace
0730738 by dums at 2005-11-28 3102
	directive do not seems to be enough for latest gcc version.
3d22101 by dums at 2005-11-27 3103
67497b3 by dums at 2005-11-27 3104
	* src/time_facets.cpp: Fix buffer size decrementation in __write_formatted_time
817db42 by complement at 2005-11-27 3105
	function thanks Petr Ovtchenkov
67497b3 by dums at 2005-11-27 3106
ccefe38 by dums at 2005-11-26 3107
2005-11-26  Francois Dumont  <dums@stlport...>
3108
2cb88aa by dums at 2006-05-20 3109
	* stlport/stl/_complex.h: Move implementation of generic abs, arg and polar
3110
	after definition of double overload used in implementation. Thanks Kees de
3111
	Bruin
ccefe38 by dums at 2005-11-26 3112
2cb88aa by dums at 2006-05-20 3113
	* stlport/stl/_threads.h, _alloc.h, _alloc.c: Fix lock free node allocator
3114
	implementation thanks Weis.
ccefe38 by dums at 2005-11-26 3115
2cb88aa by dums at 2006-05-20 3116
	* stlport/stl/wrappers: Removed, no more maintained and complicated to fix
ccefe38 by dums at 2005-11-26 3117
	with the debug and pointer specialization implementations.
3118
2cb88aa by dums at 2006-05-20 3119
	* test/unit/stack_allocator.h: Creation of an allocator using a stack buffer.
3120
	This allocator specificity is to not be stateless and not default constructible.
ccefe38 by dums at 2005-11-26 3121
2cb88aa by dums at 2006-05-20 3122
	* test/unit/list_test.cpp, stlport/stl/_list.h, _list.c: Add of a test with the
3123
	StackAllocator. Fix list implementation to correctly handle allocator state
3124
	in the methods moving elements from a list instance to an other.
ccefe38 by dums at 2005-11-26 3125
2cb88aa by dums at 2006-05-20 3126
	* stlport/stl/_carray.h: Creation of a new internal struct _CArray that mimic a C
3127
	array with the additionnal feature of being able to be instanciated with a type
3128
	without default constructor.
ccefe38 by dums at 2005-11-26 3129
2cb88aa by dums at 2006-05-20 3130
	* stlport/stl/debug/_list.h: Adapt iterator invalidation according allocators
3131
	compare result.
ccefe38 by dums at 2005-11-26 3132
2cb88aa by dums at 2006-05-20 3133
	* test/unit/slist_test.cpp, stlport/stl/_slist.h, _slist.c: idem list.
ccefe38 by dums at 2005-11-26 3134
2cb88aa by dums at 2006-05-20 3135
	* stlport/stl/_slist.h: Modification of the splice_after methods signature. Users
3136
	now have to pass the source slist instance, this is mandatory in order to compare
3137
	the 2 slists allocator instance before moving an element from a slist instance to
3138
	an other.
ccefe38 by dums at 2005-11-26 3139
2cb88aa by dums at 2006-05-20 3140
	* stlport/stl/_string_base.h: Fix _M_swap implementation for basic_string instanciation
3141
	with allocator having a state.
ccefe38 by dums at 2005-11-26 3142
2cb88aa by dums at 2006-05-20 3143
	* stlport/stl/_list.c, _slist.c: sort methods now throw an overflow exception when lists
3144
	are too long to be sorted with the current algorithm. This is preferable to a buffer
3145
	overrun.
ccefe38 by dums at 2005-11-26 3146
2cb88aa by dums at 2006-05-20 3147
	* stlport/stl/_alogobase.c: Small equal_range optimization, upper_bound is not called
3148
	anymore when lower_bound returned value is already not equivalent to the search value.
ccefe38 by dums at 2005-11-26 3149
3150
	* build/Makefiles/gmake: Add build system for Digital Mars and Borland C++ compilers
3151
3152
	* build/lib/configure.bat: Add following options
3153
	  --use-boost
3154
	  --not-thread-safe
3155
	  --no-rtti
3156
	see script for explanation. --mingw removed, detected with --compiler option, if
3157
	gcc, dmc or bcc then we are using MinGW tools.
3158
3159
	* build/lib/configure: Add --not-thread-safe option
3160
3161
	* build/Makefiles: Add build options to generate not thread safe libs and no rtti libs,
3162
	all compilers option has not been updated.
3163
3164
	* stlport/c*: Modification of C++ headers wrapping C ones. All code moved to internal
3165
	headers in stlport/stl folder. Internal headers are only included if include comes from
3166
	user code otherwise only native header is included. Limit dependency between STLport
3167
	headers relations and native library once. Reported by problem building with Borland
3168
	compiler.
3169
3170
	* test/unit/cppunit/cppunit_mini.h: Replace cstring include with string.h to avoid
3171
	references to std namespace in headers, should be more portable. Add typedef Base
3172
	definition in CPPUNIT_TEST_SUITE macro, used in calls to base class methods, help
3173
	Borland.
3174
3175
	* Generalize use of secure string functions (strcpy_s for instance) for MSVC compilers
3176
	supporting it and tagging former versions like deprecated. The pragma warning that used
3177
	to disable this warning has been removed.
3178
3179
	* stlport/BC50: Removed, no necassry anymore for supported Borland compiler versions.
3180
3181
	* stlport/stl/debug: Implementation modification, now debug wrapper agregate a non debug
3182
	instance rather than inheriting from it. Makes debug implementation clearer as we are now 
3183
	forced to implement the complete containers interfaces.
3184
3185
	* stlport/stl/pointers: Fix implementation in order to support Standard compilers
3186
	not accepting cast from function pointer to void*.
3187
3188
	* *: Reinforce use of STLport private namespace (stlp_priv or stlport::priv) for all
3189
	internals algorithms.
3190
fe8c645 by dums at 2005-11-21 3191
2005-11-21  Francois Dumont  <dums@stlport...>
3192
3193
	* Fix classic locale facet initial reference counter thanks
3194
	Cabal
3195
23d88b9 by complement at 2005-11-20 3196
2005-11-20  Petr Ovtchenkov  <complement@users.sourceforge.net>
3197
3198
	* src/num_put.h: check that incoming string has enough
3199
	digits for fractional part processing. This check includes
3200
	check for empty incoming string. (Thanks Leonardo [leoapsilva]
3201
	for the bug report).
3202
3203
	* stlport/stl/_monetary.c: fix processing the case when
ccefe38 by dums at 2005-11-26 3204
	number of digits in value less then number of digits in fraction.
23d88b9 by complement at 2005-11-20 3205
3206
	* src/facets_byname.cpp: international currency symbol should
3207
	be the first (not depends upon where currency symbol situated in
3208
	the national format).
3209
ccefe38 by dums at 2005-11-26 3210
	* test/unit/locale_test.cpp: tests for reproducing this problems.
23d88b9 by complement at 2005-11-20 3211
3212
2005-11-20  Gail Baker  <baker88@users.sourceforge.net>
3213
3214
	* build/Makefiles/gmake/CC.mak: Updated compiler option
3215
	to compile larger inline functions inline.
3216
3217
	* build/Makefiles/gmake/lib/CC.mak: Changed how the header
3218
	file linking is done to only do it once instead of with
3219
	every compile.
3220
3221
	* build/lib/README: include instructions for SunPro compiler.
3222
 
3223
	* build/test/unit/CC.mak: allow the STLP_DEBUG version to compile.
3224
3225
2005-11-19  Petr Ovtchenkov  <complement@users.sourceforge.net>
3226
3227
	* stlport/stdlib.h: replace C++ comments by C, to satisfy -ansi
3228
	option of compiler.
3229
e112beb by dums at 2005-11-18 3230
2005-11-18  Francois Dumont  <dums@stlport...>
3231
3232
	* build/Makefiles/nmake/lib/rules-install-so.mak, 
3233
	app/rules-install-so.mak: Add copy of manifest file when exist
3234
	rather than when compiler is Visual Studio 2005.
3235
3236
	* src/stdio_streambuf.cpp: Removed warning for EVC 3 and 4 thanks
3237
	Michael Fink patch.
3238
3239
	* stlport/stl/math.h, stdlib.h: Fix EVC3 warning thanks Michael Fink
3240
	patch.
3241
3242
	* doc/README.evc3: doc update from Michael Fink.
3243
c56e735 by dums at 2005-11-21 3244
	* stlport/*, stlport/*, tests/*: Clean up of trailing blank charaters
3245
	in all source files.
3246
2fde7d0 by complement at 2005-11-18 3247
2005-11-17  Gail Baker  <baker88@users.sourceforge.net>
3248
3249
	* build/Makefiles/gmake/CC.mak, depend.mak, app/CC.mak, lib/CC.mak:
3250
	support of SunPro 5.7 compiler.
3251
3252
	* build/lib/CC.mak: ditto
3253
3254
	* stlport/stl/_rope.c: Removed extra semi-colons.
3255
	
3256
	* stlport/stl/_rope.h: Sunpro compiler had a problem with
3257
	the __ROPE_DEPTH_SIZE macro doing an addition. Changed to
3258
	a fixed value instead.
3259
3260
	* stlport/cstdlib: Updated to allow the compiler to find abs and div
3261
3262
	* stlport/config/stl_sunpro.h: Disabled _STLP_LINK_TIME_INSTANTIATION
3263
	since this nolonger works with current files. The issue here is that
3264
	a number of defines that are required in the C versions of the files
3265
	use defines that are undefed at the end of the include. So, when
3266
	the compiler finally compiles the C version at link time the defines
3267
	are lost and the files don't compile. Also added a minor change
3268
	to allow files that are compiled with cc to include stl_sunpro.h
3269
	without bailing out.
3270
3271
	* stlport/stl/_bvector.h: Added stl/_range_errors.h required by
3272
	an exception that can be called.
3273
3274
	* stlport/stl/_cmath.h: Changed to pull all math functions from std
3275
	namespace for SunPro compiles only.
3276
3277
	* test/unit/fstream_test.cpp: Added SunPro compile to the list
3278
	of compilers that don't use the DO_CUSTOM_FACET_TEST.
3279
3280
	* test/unit/string_test.cpp: Added Sun UI Threads to the list
3281
	of supported thread types in the test.
3282
3283
	* test/unit/valarray_test.cpp: The compiler was having trouble
3284
	finding abs(). Added a "using std::abs" for the SunPro compiler
3285
	which solved the problem.
3286
3287
	* test/unit/cppunit/cppunit_mini.h: Added additional using statements
3288
	for the str* commands.
3289
3290
	* test/unit/cppunit/test_main.cpp: Added "using namespace std;"
3291
	for the SunPro compiler.
3292
3293
	* build/test/unit/CC.mak: support of SunPro 5.7 compiler
3294
3295
2005-11-17  Francois Dumont  <dums@stlport...>
3296
3297
	* stlport/stl/_messages_facets.h, src/messages.cpp: Move message facet
3298
	constructor private to guaranty that it is only called from the _Locale_impl
3299
	class for classic locale facets creation. Change constructor implementation
3300
	as now passed _Message instance is dynamically instanciated so needs to be
3301
	destroy on facet destruction; moreover the facet is also dynamically allocated
3302
	and has to be destroyed when reference counter reach 0.
3303
3304
	* src/locale_impl.cpp: Removed call to now useless free_classic_locale function.
3305
	Change make_classic_locale implementation, now classic locale facets are
3306
	allocated on the heap and have to be destroyed like any ordinary facets
3307
	when reference counter reach 0.
3308
45d4912 by complement at 2005-11-15 3309
2005-11-15  Petr Ovtchenkov  <complement@users.sourceforge.net>
3310
3311
	* stlport/stl/_tree.h: check iterator returned from lower_bound
3312
	in equal_range_unique for end, to avoid increment [useful when
3313
	key not available].
3314
3315
	* test/unit/map_test.cpp: test for problem above.
3316
8760bf8 by dums at 2005-11-09 3317
2005-11-09  Francois Dumont  <dums@stlport...>
3318
3319
	* build/test/eh/gcc.mak: Fix build system for Cygwin/MinGW systems that
3320
	was broken since library naming convention modification.
3321
cd62fe6 by dums at 2005-11-09 3322
2005-11-07  Michael Fink  <vividos@users.sourceforge...>
3323
3324
	* build/lib/configure.bat: Fixed configuring for Visual Studio .NET 2003.
3325
	Fixed jump target names for Win9x OSes: they must be 8 characters or
3326
	shorter.
3327
3328
2005-11-07  Michael Fink  <vividos@users.sourceforge...>
3329
3330
	* build/Makefiles/nmake/evc3.mak, build/Makefiles/nmake/evc4.mak,
3331
	build/lib/configure.bat, stlport/config/stl_evc.h: Added check if
3332
	using x86 emulator configuration; using of proper include paths in
3333
	case.
3334
3335
	* doc/README.evc4: Documentation update
3336
d26635e by complement at 2005-11-01 3337
2005-11-01  Petr Ovtchenkov  <complement@users.sourceforge.net>
3338
3339
	* Repository: STLport 5.0, tag STLPORT_5_0_RELEASE
3340
3341
	* Repository: merge HEAD and STLPORT_5_0 branch.
3342
3343
	* build/Makefiles/gmake/app/rules-install.mak: install-shared rule
3344
	added (patch by Michael Fink).
3345
3346
	* build/Makefiles/gmake/lib/rules-install-a.mak: install-static rule
3347
	added (patch by Michael Fink).
3348
3349
2005-10-12  Francois Dumont  <dums@stlport...>
3350
3351
	* stlport/stl/_threads.h, _threads.c: Fix regression for some platforms
3352
	introduce by modification of _Atomic_swap_ptr implementation thanks
3353
	Albrecht Fritzche.
3354
3355
2005-10-09  Petr Ovtchenkov  <complement@users.sourceforge.net>
3356
3357
	* repository: RC6, tag STLPORT_5_0_RC6
3358
3359
2005-10-09  Francois Dumont  <dums@stlport...>
3360
3361
	* stlport/config/stl_gcc.h: DEC alpha has not *l math functions
3362
3363
2005-10-08  Francois Dumont  <dums@stlport...>
3364
3365
	* stlport/stl/_config.h: Add endianess specification for DEC alpha thanks
3366
	sourceforge compiler farm.
3367
3368
	* stlport/config/stl_intel.h: Remove reference to _STLP_GLOBAL_NEW_HANDLER
3369
	in this file as this macro depends on native Standard library which is
3370
	the back end MSVC compiler one so macro set in stl_msvc.h.
3371
3372
2005-10-07  Francois Dumont  <dums@stlport...>
3373
3374
	* build/Makefiles/gmake/darwin/sys.mak, freebsd/sys.mak: Fix EXT_TEST
3375
	definition to test rather than /usr/bin/test thanks sourceforge
3376
	compiler farm.
3377
3378
2005-10-05  Francois Dumont  <dums@stlport...>
3379
3380
	* build/Makefiles/nmake/vc-common.mak: Remove /Fd option for the icl
3381
	compiler that do not know it.
3382
3383
2005-10-04  Francois Dumont  <dums@stlport...>
3384
3385
	* stlport/stl/debug/_list.h: Fix resize method implementation in safe
3386
	STL mode thanks Ethan Fenn report.
3387
3388
	* test/unit/list_test.cpp: Add test case for list::resize method.
3389
3390
	* build/Makefiles/nmake/lib/rules-install-a.mak, app/rules-install-a.mak:
3391
	Install .pdb files only if exist, Intel C++ compiler do not generate them
3392
	when building static libraries. Thanks Albrecht Fritzsche
3393
3394
	* stlport/stl/_ostream.h, _ostream.c: Move _M_init function implementation
3395
	from .c to .h as .c is not included when _STLP_NO_CUSTOM_IO is defined
3396
	but _M_init might not be exported if compiler fully inline it.
3397
3398
2005-10-03  Francois Dumont  <dums@stlport...>
3399
3400
	* stlport/stl/_tree.h: Fix _S_value method definition that returns
3401
	a value_type& rather than the reference typedef as reference might be,
3402
	depending on the traits used to instanciate _Rb_tree, equivalent to
3403
	a const_reference.
3404
3405
2005-09-30  Francois Dumont  <dums@stlport...>
3406
3407
	* INSTALL, README, doc/FAQ, doc/README.msvc: Documentation updates.
3408
3409
	* doc/stlport_namespaces.txt: Small doc about STLport namespaces and how
3410
	STLport replace native Standard library.
3411
3412
2005-09-26  Francois Dumont  <dums@stlport...>
3413
3414
	* build/*: Finished _STLP_LEAKS_PEDANTIC clean up from all make files.
3415
3416
2005-09-25  Francois Dumont  <dums@stlport...>
3417
3418
	* build/test/unit/gcc.mak: Remove _STLP_LEAKS_PEDANTIC option when building
3419
	unit tests as this option is not defined when building the libs.
3420
3421
2005-09-22  Petr Ovtchenkov  <complement@users.sourceforge.net>
3422
3423
	* build/Makefiles/gmake/sysid.mak: add underscore in architecture recognition,
3424
	to parse targets like x86_64-unknown-linux-gnu.
3425
3426
2005-09-21  Francois Dumont  <dums@stlport...>
3427
3428
	* src/locale.cpp, facets_byname.cpp: Use of _STLP_ATOMIC_INCREMENT rather than
3429
	a lock on a mutex when the macro is available.
3430
3431
2005-09-21  Petr Ovtchenkov  <complement@users.sourceforge.net>
3432
3433
	* src/locale_impl.cpp: some internal functions used before declared.
3434
	Thanks Thomas Kho for report.
3435
3436
2005-09-20  Francois Dumont  <dums@stlport...>
3437
3438
	* stlport/stl/_string.h, _string_workaround.h: code refactoring, substr method
3439
	now use string constructor taking same parameters rather than the range
3440
	constructor, thanks Felix Wyss report. Also add missing allocator parameter
3441
	for non stateless allocators.
3442
3443
	* build/Makefiles/gmake: Restore resource build for Cygwin and MinGW, add
3444
	it for Windows.
3445
3446
	* build/lib/configure.bat: Add --extra-cxxflag to inject additional compilation
3447
	option in the nmake build system.
3448
3449
2005-09-20  Petr Ovtchenkov  <complement@users.sourceforge.net>
3450
3451
	* test/unit/ptrspec_test.cpp: gcc 2.95 fail to roll out template instantiation
3452
	for pointers to member function, skip this test for gcc 2.95.
3453
3454
	* build/Makefiles/gmake/gcc.mak: gcc 2.95 has no -fuse-cxa-atexit option.
3455
3456
	* build/lib/gcc.mak: don't use LEAK_PEDANTIC with gcc 2.95 [but this not help,
3457
	segfault at program termination still happens].
3458
3459
	* stlport/config/stl_gcc.h: gcc 2.95 has problem with llabs, so force to use
3460
	_STLP_NO_VENDOR_STDLIB_L; 2.95 fails to initialize builtin types.
3461
3462
	* stlport/stl/_cmath.h: workaround for gcc 2.95---it has problem with 'using'
3463
	directive [problem with 'abs' with float types as argument].
3464
3465
	* stlport/stl/type_traits.h: workaround for gcc 2.95 [parentheses around
3466
	template argument]. Thanks Thomas Kho.
3467
3468
	* test/unit/fstream_test.cpp: custom facet test compilation fail for gcc 2.95
3469
3470
	* build/Makefiles/gmake/icc.mak, build/test/unit/icc.mak: support icc 9.0,
3471
	thanks John Fisher-Ogden and Thomas Kho.
3472
3473
	* src/c_locale_glibc/c_locale_glibc2.c: use newlocale/freelocale for
3474
	glibc 2.3.x, and __newlocale/__freelocale for glibc 2.2.x. Thanks Gail Baker.
3475
3476
2005-09-19  Francois Dumont  <dums@stlport...>
3477
3478
	* build/Makefiles/nmake/clean.mak, lib/clean.mak, app/clean.mak: Add check
3479
	for file or folder existance before calling del or rd to avoid error
3480
	messages that give a bad feed back to STLport users.
3481
3482
	* build/Makefiles/gmake: Add support to use the GNU make tool in a Windows
3483
	cmd console. For the moment it is used to build STLport using a simple
3484
	MinGW distrib.
3485
3486
	* stlport/stl/type_traits.h: Simplified code removing the _IsConvertibleIfNot
3487
	that has never proved of being useful, it only introduces problem with some
3488
	limited compilers.
3489
3490
	* stlport/stl/_string_workaround.h, _string.h, debug/_string.h: Fix string
3491
	range constructor bug in the VC6 specific workaround implementation that was
3492
	resulting in a memory leak. Thanks Felix Wyss report.
3493
3494
2005-09-18  Petr Ovtchenkov  <complement@users.sourceforge.net>
3495
3496
	* stlport/stl/_hash_fun.h: add hash function for void *.
3497
3498
	* src/facets_byname.cpp, src/message_facets.h: introduce map between
3499
	nl_catd type [that is void * on Linux] and messages_base::catalog
3500
	[that is int by Standard]; this should remove problems on platforms
3501
	where sizeof(int) < sizeof(void *).
3502
3503
2005-09-16  Francois Dumont  <dums@stlport...>
3504
3505
	* stlport/cwchar: Add MinGW 3.8 runtime wide-char to multi-byte functions
3506
	import within STLport namespace thanks Rene Riviera.
3507
3508
2005-09-14  Francois Dumont  <dums@stlport...>
3509
3510
	* stlport/config/stl_gcc.h: Mingw support string wide functions thanks
de9fe41 by dums at 2007-02-02 3511
	Rene Riviera report.
d26635e by complement at 2005-11-01 3512
3513
2005-09-13  Petr Ovtchenkov  <complement@users.sourceforge.net>
3514
3515
	* stlport/stl/_thread.h: fix return type specification
3516
	[volatile void * -> void *].
3517
3518
2005-09-12  Francois Dumont  <dums@stlport...>
3519
3520
	* stlport/stl/_thread.h: Fix _Atomic_swap_ptr implementation in single
3521
	threaded mode and when there is no pointer atomic swap operation.
3522
3523
	* stlport/stl/_site_config.h: Add _STLP_NO_CYGWIN macro to signal use
3524
	of the -mno-cygwin cygwin option.
3525
3526
	* build/lib/configure: Remove automatic generation of stlport/script_config.h.
3527
3528
2005-09-11  Petr Ovtchenkov  <complement@users.sourceforge.net>
3529
3530
	* build/Makefiles/gmake/sysid.mak: provide identification hosted platform.
3531
3532
	* build/Makefiles/gmake/targetdirs.mak: CygWin/MinGW has no /usr/bin/test,
3533
	but built-in test support -e; see record 2005-09-04.
3534
3535
	* build/Makefiles/top.mak: separate hosted platform and target platform
3536
	file extentions, tools, utilites.
3537
3538
	* build/Makefiles/gmake/?/sys.mak, build/Makefiles/gmake/?/targetsys.mak:
3539
	ditto.
3540
3541
2005-09-09  Francois Dumont  <dums@stlport...>
3542
3543
	* src/c_locale_win32.c: Fix _Locale_wchar_[tolower,toupper] implementation
3544
	which was wrong when wint_t was not the same typedef as wchar_t.
3545
3546
	* build/lib/configure: Removed obsolete configure options --with-msvc and
3547
	--with-mssdk. And --no-cygwin option to make build of STLport using -mno-cygwin
3548
	option easier.
3549
3550
	* stlport/script_config.h: New header used to put additionnal macros defined
3551
	by the configure script.
3552
3553
	* stlport/stl/_config.h: Add script_config.h include.
3554
3555
	* stlport/config/stl_gcc.h: Use of the new _STLP_NO_CYGWIN macro to set
3556
	the right _STLP_NATIVE_INCLUDE_PATH macro value.
3557
3558
	* build/Makefiles/gmake/gcc.mak: Change CC and CXX assignment from := to
3559
	?= to take into account an already existing definition.
3560
3561
2005-09-07  Francois Dumont  <dums@stlport...>
3562
3563
	* build/Makefiles/gmake: Adopt a more traditionnal unixes naming
3564
	convention for cygwin and mingw.
3565
3566
	* build/Makefiles/nmake: Attempt to make STLport library names more
3567
	coherent between unixes and windows systems. Now windows use the 5.0
3568
	extension like under unixes even if under unixes the file extension
3569
	is before the 5.0 and under windows it will be after. The other
3570
	difference is that the debug suffix is 'g' when using gcc and 'd' for
3571
	the other compilers. This modification comes from a work to improve
3572
	STLport integration within boost build system, bjam.
3573
3574
	* stlport/config/stl_msvc.h: Modify MSVC auto link feature to reflect
3575
	above modifications.
3576
3577
2005-09-06  Francois Dumont  <dums@stlport...>
3578
3579
	* stlport/config/stl_gcc.h: Fix cygwin config that do have native
3580
	mbstate_t definition.
3581
3582
2005-09-05  Petr Ovtchenkov  <complement@users.sourceforge.net>
3583
3584
	* repository: RC5, tag STLPORT_5_0_RC5
3585
3586
2005-09-04  Petr Ovtchenkov  <complement@users.sourceforge.net>
3587
3588
	* build/Makefiles/gmake/targetdirs.mak: in sh's built-in 'test' no -e
3589
	option on Solaris, use external 'test' instead.
3590
3591
	* build/test/unit/gcc.mak: Fix LDSEARCH recursive problem; fix
3592
	options for ld search path for some platforms.
3593
3594
	* stlport/cstdlib, stlport/stl/_cmath.h: fix usage of native
3595
	?f and ?l math functions on Solaris; hypot for long double should't
3596
	loose precision, if no native C function present.
3597
3598
2005-09-02  Francois Dumont  <dums@stlport...>
3599
3600
	* stlport/config/stl_msvc.h, stl/_move_construct_fwk.h: Add the 
3601
	_STLP_NO_MOVE_SEMANTIC configuration macro to remove move semantic
3602
	support for MSVC .Net 2002 that seems to be unable to support it.
3603
	Maybe we should rather remove this compiler version support...
3604
3605
	* test/unit/mvctor_test.cpp: Add _STLP_NO_MOVE_SEMANTIC check.
3606
3607
2005-08-31  Francois Dumont  <dums@stlport...>
3608
3609
	* build/Makefiles/nmake: Enhance nmake build system to correctly take
3610
	into account the .manifest files generated by VS 2005 Beta.
3611
3612
2005-08-29  Petr Ovtchenkov  <complement@users.sourceforge.net>
3613
3614
	* CVS repository: CVS repository master copied from cvs.stlport.com to SourceForge.
3615
	All history preserved!
3616
3617
2005-08-27  Francois Dumont  <dums@stlport...>
3618
3619
	* stlport/stl/_hashtable.h: Fix move feature integration for the hash_multimap
3620
	container.
3621
3622
	* stlport/stl/_deque.h: Fix _Deque_base move constructor implementation.
3623
3624
	* test/unit/mvctor_test.cpp: Change move constructor tests to use dynamically
3625
	allocated string rather than static ones.
3626
3627
	* build/test/unit/nmake-vc6.mak: Increase compiler maximum heap size to allow
3628
	compilation with stldbg rules.
3629
3630
	* build/test/unit/nmake-evc4.mak: Fix macro typo OPT_STLDBG_STATIC -> 
3631
	OPT_STATIC_STLDBG
3632
3633
	* build/Makefiles/gmake/gcc.mak: Filter out the newly added -fuse-cxa-atexit
3634
	compilation option for Cygwin and Mingw, the granted libc is not compatible
3635
	with it.
3636
3637
2005-08-26  Petr Ovtchenkov  <ptr@island...>
3638
3639
	* stlport/config/stl_solaris.h: C++ comments replaced by C ones,
3640
	this file may be included by C sources. Thanks Matti Rintala.
3641
3642
2005-08-25  Francois Dumont  <dums@stlport...>
3643
3644
	* stlport/stl/_config.h, _epilog.h: Move of stlport namespace alias
3645
	definition from _epilog.h to _config.h to avoid redefinition as _epilog.h
3646
	is reentrant. This is a workaround for a HPUX aCC compiler bug reported
3647
	by Baker.
3648
3649
2005-08-25  Petr Ovtchenkov  <ptr@island...>
3650
3651
	* build/Makefiles/gmake/gcc.mak: usage of -fuse-cxa-atexit strongly
3652
	required for correct order of static objects dtors calls. This is
3653
	used in deinitialization of locale-related objects. Thanks Matti Rintala.
3654
3655
	* stlport/stl/_config.h: use different namespaces for mulithreaded
3656
	and non-multithreaded builds to avoid usage of non-multithreaded
3657
	application with multithreaded libstlport and vice versa;
3658
	[combination non-mt & mt lead to crash due to different instances
3659
	and sizes of allocators for non-mt and mt cases].
3660
3661
2005-08-23  Francois Dumont  <dums@stlport...>
3662
3663
	* stlport/stl/_config_compat.h: Add check of _STLP_NO_OWN_IOSTREAMS
3664
	macro to make remove of its support more explicit thanks to a #error
3665
	directive.
3666
3667
	* stlport/stl/_tree.h, _hashtable.h: Now reference and pointer types
3668
	are taken from the _Traits template parameter used to instanciate
3669
	the class. Doing so now set::reference and hash_set::reference are
3670
	const_reference which is coherent with respective iterators that are
3671
	immutable. Moreover it fixes a VC6 bug in reverse_iterator implementation
3672
	that was trying to transform a const reference to a simple reference
3673
	thanks Russell Miller report.
3674
3675
	* test/unit/set_test.cpp: New test case for set reverse_iterator.
3676
3677
2005-08-23  Petr Ovtchenkov  <ptr@island...>
3678
3679
	* stlport/config/stl_gcc.h: seems HP-UX has no *f variants of math
3680
	functions [ceilf, fabsf, etc.]
3681
3682
2005-08-21  Francois Dumont  <dums@stlport...>
3683
3684
	* stlport/stl/_string.h, _rope.h: Removed __move_traits specialization
3685
	for string wstring crope and wrope. There is no reason to believe that
3686
	its move construtor will be complete as an STLport user has the right
3687
	to specialized the std::allocator<> with char or wchar_t.
3688
3689
	* stlport/stl/_function_base.h, _alloc.h: Generalized use of the
3690
	__stlport_class struct rather than introducing a new helper type
3691
	(__stlport_less or __stlport_alloc) when we need to recognize STLport
3692
	implementation from a user one.
3693
3694
2005-08-20  Francois Dumont  <dums@stlport...>
3695
3696
	* stlport/stl/_list.h, _slist.h: Fix move constructor implementation
3697
	thanks Henrik Goldman (www.x-formation.com) report.
3698
3699
	* stlport/stl/_alloc.h: Fix type_traits specialization for allocator
3700
	type. Now specialization is only apply for the default STLport allocator
3701
	implementation and not for potential user specialization.
3702
3703
	* stlport/stl/_deque.h, _hashtable.h, _string.h, _tree.h, _vector.h:
3704
	Simplification of the move framework application especially in the
3705
	definition of the containers __move_traits specialization. Many
3706
	_AsMoveSource call replaced by explicit call to the move constructor
3707
	when we are sure that there is one.
3708
3709
	* test/unit/mvctor_test.cpp: Add many tests to check move contructor
3710
	implementations.
3711
3712
	* stlport/stl/_function_base.h: Add type_traits specialization for the
3713
	less functor to help the move framework when dealing with associative
3714
	containers.
3715
3716
	* test/unit/mvctor_test.cpp: Add a new test case checking correct move
3717
	semantic support for all STL containers.
3718
3719
	* stlport/stl/_rope.h: Add move semantic support to the rope class.
3720
3721
2005-08-19  Petr Ovtchenkov  <ptr@island...>
3722
3723
	* build/Makefiles/gmake/gcc.mak: fix extraction of gcc version.
3724
	Thanks Thomas Kho.
3725
3726
2005-08-18  Francois Dumont  <dums@stlport...>
3727
3728
	* stlport/stl/_deque.c: Fix _M_erase range for movable types method
3729
	implementation, same bug as below in vector.
3730
3731
	* test/unit/mvctor.cpp: Improve test case on vector to reveal bug
3732
	below and add same tests for deque which is the other container that
3733
	use the move contructor feature.
3734
3735
2005-08-18  Petr Ovtchenkov  <ptr@island...>
3736
3737
	* INSTALL: add some words about multithread options and libraries.
3738
3739
	* stlport/stl/_fstream.c: some code clean to reduce bogus compiler
3740
	warnings with -Wall.
3741
3742
	* stlport/config/stl_gcc.h: seems HP-UX has no llabs and lldiv.
3743
3744
2005-08-17  Francois Dumont  <dums@stlport...>
3745
3746
	* stlport/stl/_vector.h: Fix _M_erase range for movable types
3747
	implementation thanks Sergej Zagursky.
3748
3749
	* build/Makefiles/nmake/vc8.mak: removed /RTC1 compiler option, the platform
3750
	SDK compiler do not support it. STLport users will just have to activate it
3751
	by themself if they want to.
3752
3753
	* stlport/stl/_complex.h: Fix some floating point literals thanks
3754
	 Ulrich Eckhardt report.
3755
3756
	* stlport/stl/_time_facets.c: Complete integration of the '#' MS extension
3757
	in the date/time format string, reported thanks to the recent locale time_get
3758
	new test case.
3759
3760
2005-08-14  Francois Dumont  <dums@stlport...>
3761
3762
	* stlport/config/stl_msvc.h: Fix platform SDK compiler config, even latest
3763
	version that announce to be similar to .Net 2005 beta do not throw bad_alloc
3764
	from the new operator.
3765
3766
	* stlport/cstdio, cstdlib: Replaced some _WIN64 checks by a
3767
	_STLP_USING_PLATFORM_SDK_COMPILER check.
3768
3769
	* test/unit/cmath_test.cpp: Complete test filtering for Microsoft platform SDK
3770
	compiler.
3771
3772
2005-08-14  Petr Ovtchenkov  <ptr@island...>
3773
3774
	* test/unit/locale_test.cpp: tests for time_get facet.
3775
3776
	* stlport/stl/_time_facets.c: fix processing of %p format
3777
	[12:00 PM ~ 12:00, 12:00 AM ~ 00:00].
3778
3779
	* src/time_facets.cpp: substitute expanded equivalent format strings
3780
	instead of %T, %R, %r.
3781
3782
	* stlport/pthread.h: Fix C++ comment in a potentially C header. Thanks Ali
3783
3784
2005-08-11  Francois Dumont  <dums@stlport...>
3785
3786
	* stlport/stl_user_config.h: Add _STLP_USING_PLATFORM_SDK_COMPILER so that
3787
	STLport user can signal they are using platform SDK compiler.
3788
3789
	* stlport/config/stl_msvc.h: Add use of _STLP_USING_PLATFORM_SDK_COMPILER.
3790
3791
	* test/unit/cmath_test.cpp, valarray_test.cpp: Removed tanh calls when using
3792
	AMD 64 platform SDK compiler, looks like they miss something...
3793
3794
2005-08-09  Francois Dumont  <dums@stlport...>
3795
3796
	* src/fstream.cpp: Final fix of basic_filebuf::open method. Now when open
fa5f907 by dums at 2006-06-19 3797
	from a Win32 handle the file will be considered as in binary access with no
d26635e by complement at 2005-11-01 3798
	append action.
3799
3800
2005-08-08  Francois Dumont  <dums@stlport...>
3801
3802
	* src/fstream.cpp: Fix annoying 64 warning and basic_filebuf::open method
3803
	from a low level file descriptor or from an HANDLE (not yet complete).
3804
	Thanks Yves Maliet report.
3805
3806
2005-08-07  Francois Dumont  <dums@stlport...>
3807
3808
	* test/unit/inner_product.cpp: Fix 64 bits portability warning.
3809
3810
	* test/unit/cmath_test.cpp: Removed modf tests for Windows 64 platform
3811
	as the SDK is missing the underlying modff implementation.
3812
3813
	* stlport/cstdlib: Add a div function definition which is missing in the
3814
	Windows 64 SDK.
3815
3816
	* stlport/cstdio: Add vsnprintf definition which is missing in Windows
3817
	64 SDK.
3818
3819
	* stlport/exception: Add flexibility for definition of vendor terminate
3820
	and uncaught_exception function namespace. Can now be defined independantly
3821
	of the unexpected_exception namespace.
3822
3823
	* src/dll_main.cpp: Removed explicit turn off of optimization for Microsoft
3824
	compilers after .Net 2003. There were no comment to explain why optimizations
3825
	were turned off so I guess it was a compiler bug. .Net 2003 being a major
3826
	new version I hope this bug has vanish with this version.
3827
3828
	* src/fstream.cpp: Removed static assertion for windows file handle to be 32
3829
	bits. Under Windows 64, even if the API is still 32 bits handles are still
3830
	defined as void*. We will see when code will run under a real Windows 64 platform
3831
	if it is a problem.
3832
3833
	* stlport/config/stl_msvc.h: Add configuration for Windows 64 Platform SDK.
3834
	Expecially add automatic link to bufferoverflowU.lib to avoid modification
3835
	of STLport build system and STLport users projects.
3836
3837
2005-08-06  Petr Ovtchenkov  <ptr@island...>
3838
3839
	* src/c_locale_glibc/c_locale_glibc2.c: add explicit type conversion
3840
	to avoid warnings on 64-bits platforms; thanks Thomas Kho and
3841
	Karol Szkudlarek for report.
3842
3843
2005-08-05  Francois Dumont  <dums@stlport...>
3844
3845
	* stlport/stl/_valarray.h: Add missing _debug.h header inclusion for
3846
	_STLP_ASSERT macro definition.
3847
3848
	* stlport/stl/debug/_hashtable.h: Fix typo in hashtable move constructor.
3849
	Thanks arabesc report.
3850
3851
2005-08-05  Petr Ovtchenkov  <ptr@island...>
3852
3853
	* doc/FAQ: some words about cross-compilation.
3854
3855
2005-08-04  Francois Dumont  <dums@stlport...>
3856
3857
	* stlport/stl/_hashtable.c: Fix erase(range) implementation thanks
3858
	arabesc.
3859
3860
	* test/unit/hash_test.cpp: Add new test for previous fix.
3861
3862
2005-08-04  Petr Ovtchenkov  <ptr@island...>
3863
3864
	* stlport/csetjmp: sometimes, if native setjmp.h was included first,
3865
	the setjmp functions situated in global namespace, not in vendor's
3866
	std. This may confuse following csetjmp.
3867
3868
	* test/unit/setjmp_header_test2.cpp: test for this.
3869
3870
	* build/test/unit/Makefile.inc: ditto.
3871
3872
2005-08-03  Francois Dumont  <dums@stlport...>
3873
3874
	* INSTALL document updated to signal no longer support of the
3875
	'wrapper' mode.
3876
3877
2005-08-02  Petr Ovtchenkov  <ptr@island...>
3878
3879
	* stlport/stl_user_config.h, stlport/stl/_site_config.h:
3880
	fix some obsolete comments.
3881
3882
2005-07-31  Petr Ovtchenkov  <ptr@island...>
3883
3884
	* test/unit/math_aux.h, cmath_test.cpp: are_equals moved into
3885
	math_aux.h to reuse in other tests.
3886
3887
	* test/unit/sstream_test.cpp: check input to float, inspired by
3888
	Jeff Williams.
3889
3890
2005-07-27  Francois Dumont  <dums@stlport...>
3891
3892
	* stlport/iomanip, stl/_algo.h: Removed some persistent occurences
3893
	of __in and __out keywords reserved by Microsoft.
3894
3895
	* stlport/stl/_pthread_alloc.c: Fix annoying warning reported by gcc.
3896
3897
	* stlport/config/stl_msvc.h: Fix _STLP_VENDOR_UNEXPECTED_STD macro
3898
	definition to empty rather than '1'. Could have produce a compilation
3899
	error with compilers like Intel C++ used with the VC6 native Standard
3900
	library.
3901
3902
	* stlport/queue, stl/_ctraits_fns.h, _hashtable.h, _numeric.h, _string.h
3903
	_tree.h: Fix macro guards used to avoid inclusion of _function.h or
3904
	_function_base.h or functional thanks Dinesh Monga report.
3905
3906
2005-07-26  Petr Ovtchenkov  <ptr@island...>
3907
3908
	* doc/FAQ: description of pseudo-leaks, thanks Michael Fink.
3909
3910
	* STLport (repository): STLport 5.0 RC4
3911
3912
2005-07-25  Francois Dumont  <dums@stlport...>
3913
3914
	* stlport/config/stl_evc.h: Move _DEBUG definition fix up before
3915
	stl_msvc.h inclusion to have correct library link automatically.
3916
	Thanks Michael Fink.
3917
3918
2005-07-24  Francois Dumont  <dums@stlport...>
3919
3920
	* stlport/stl/_string.c, _rope.c: Add instanciation of npos for all
3921
	compilers thanks Simon.
3922
3923
	* test/unit/string_test.cpp: Add creation of a reference to string::npos
3924
	to force compiler to generate memory for it. Used to reveal a link error.
3925
3926
	* test/unit/cppunit/cppunit_mini.h: Removed redondant semi column in 
3927
	CPPUNIT_TEST_SUITE_REGISTRATION macro definition.
3928
3929
	* stlport/config/stl_msvc.h, stl_intel.h: Concidering that compilers
3930
	emulating MSVC compilers use the same native Standard Library headers
3931
	macros _STLP_NEW_PLATFORM_SDK and _STLP_NO_VENDOR_STDLIB_L has been moved
3932
	outside the _STLP_MSVC scope. _STLP_GLOBAL_NEW_HANDLER is now defined
3933
	only for Intel compiler versions before 9.0.
3934
3935
	* stlport/cstdlib, stl/_cmath.h: Because of the previous remark about
3936
	emulators of MSVC using MSVC headers, macro checks for global definition
3937
	of C math functions has been changed from _STLP_MSVC to _MSC_VER. 
3938
3939
2005-07-23  Michael Fink  <vividos@users.sourceforge...>
3940
3941
	* test/unit/locale_test.cpp: Added creating locale pointer in
3942
	test_supported_locale() when no exception handling is available.
3943
3944
	* src/stlport.rc: Added version info defines when not available through
3945
	windows.h. Happens on evc3 MIPS and evc3 SH3.
3946
3947
2005-07-23  Francois Dumont  <dums@stlport...>
3948
3949
	* stlport/stl/_string_sum.h: Fix missing return statement in a compare
3950
	method.
3951
3952
2005-07-22  Francois Dumont  <dums@stlport...>
3953
3954
	* stlport/stl/_algo.c: Fix search_n implementation for random access
3955
	iterator thanks Jim Xochellis
3956
3957
	* test/unit/algo_test.cpp: Add test case for the previous bug thanks
3958
	Michael Fink.
3959
3960
	* src/num_get_float.cpp: Fix gcc Mingwin and Cygwin special version with
3961
	building with -O2 option.
3962
3963
	* build/Makefiles/gmake/gcc.mak: Add -D_REENTRANT definition for cygwin and
3964
	-mthreads for mingwin platform to make STLport thread safe like under the
3965
	other supported platforms.
3966
3967
2005-06-30  Petr Ovtchenkov  <ptr@island...>
3968
3969
	* stlport/wchar.h, src/c_locale.c, stlport/stl/_threads.h: fix Netware
3970
	wcs... functions.
3971
3972
2005-06-30  Francois Dumont  <dums@stlport...>
3973
3974
	* stlport/stl/_rope.h, _rope.c: Duplicate basic_string::npos definition code
3975
	in rope implementation to use a "Standard" static const npos definition when
3976
	possible depending on the compiler features. Thanks caldwed report.
3977
3978
2005-06-30  Michael Fink  <vividos@users.sourceforge...>
3979
3980
	* stlport/cstdlib, stdlib.h: Fixed issue with including stdlib.h after
3981
	setjmp.h; fix from 2005-06-23 wasn't solving the problem.
3982
3983
2005-06-28  Francois Dumont  <dums@stlport...>
3984
3985
	* stlport/stl/_hash_func.h: For MSVC .Net compiler we grant the hash<size_t>
3986
	specialization rather than the hash<unsigned int> one to avoid 64 bits
3987
	warnings when instanciating a hashed container with the size_t key.
3988
3989
	* stlport/stl/_istream_iterator.h: Modify istream_iterator implementation
3990
	to avoid the default read from the istream even if the istream_iterator
3991
	instance is not used.
3992
3993
	* test/unit/istmit_test.cpp: Add many tests for the copy_n/istream_iterator
3994
	combination. Those tests are no active for the moment as they are failing,
3995
	will be fixed after 5.0 release.
3996
3997
	* build/test/unit/nmake-vc-common.mak: Tests are no more built with the
3998
	_STLP_NO_CUSTOM_IO option, see reason below.
3999
4000
	* test/unit/fstream_test.cpp: Add custom_facet test to check that STLport
4001
	support instanciation of basic_fstream with something else that the std::char_traits
4002
	For the moment the test fail when we try to use the stream for I/O operations
4003
	should be fixed after 5.0 release.
4004
4005
2005-06-27  Francois Dumont  <dums@stlport...>
4006
4007
	* src/locale_impl.cpp: Fix locale implementation to avoid to call facet
4008
	destructor when user explicitely required not to do so.
4009
4010
	* stlport/stl/_fstream.c: Fix _M_setup_codecvt method implementation to avoid
4011
	a bad_cast exception on basic_filebuf construction. At this point the locale
4012
	used to instanciate it is the classic locale that might not have the necessary
4013
	codecvt facet. The user is then force to call imbue after basic_filebuf
4014
	construction otherwise I/O operations will fail. When imbue is invoked, if
4015
	the locale still do not have the necesary facet, the stream is put in the fail
4016
	state. Thanks Alexander Pototskiy
4017
4018
2005-06-26  Francois Dumont  <dums@stlport...>
4019
4020
	* stlport/stl/_config_compat.h: Add _STLP_OWN_IOSTREAMS macro for backward
4021
	compatibility with library checking it.
4022
4023
2005-06-23  Francois Dumont  <dums@stlport...>
4024
4025
	* src/complex.cpp, complex_trig.cpp, complex_exp.cpp: Removed code
4026
	duplication between float, double and long double version thanks to
850eea5 by dums at 2006-05-31 4027
	some template functions. Thanks an Ulrich Eckhardt idear.
d26635e by complement at 2005-11-01 4028
4029
	* stlport/cstdlib, stl/stdlib.h: Michael Fink patch to avoid setjmp.h
4030
	inclusion problem as stdlib.h contains a setjmp macro definition.
4031
4032
	* test/eh/main.cpp: Redirection of std::cout and std::cerr for WinCE
4033
	thanks Michael Fink
4034
4035
	* stlport/config/stl_evc.h: Restore long double support for WinCE, there
4036
	is just no *l math functions. Only define _STLP_NATIVE_INCLUDE_PATH
4037
	if not already defined, giving the user a chance to override the defaults
4038
	for yet unknown SDKs. Thanks Michael Fink and Ulrich Eckhardt.
4039
4040
	* build/Makefiles/nmake/evc3.mak, evc4.mak: removed unneeded set of CC
4041
	for SHx; already done by setup batch. Thanks Michael Fink. 
4042
4043
2005-06-21  Francois Dumont  <dums@stlport...>
4044
4045
	* stlport/stl/_ios.h, _ios_base.h, _num_get.c, _num_put.c, _complex.c,
4046
	_istream.c, _time_facets.c: Fix cast expression for the cached facets,
4047
	C casts replaced by static_cast and const added when missing.
4048
	Thanks Oliver Stoeneberg report.
4049
4050
	* test/unit/unary.h: Replaced old STLport with new style ones. Get sqrt
4051
	function in global namespace rather than forcing use of the one in std
4052
	namespace, avoids ambiguity with VC6.
4053
4054
	* test/unit/resolve_name.cpp: Add _STLP_DO_IMPORT_CSTD_FUNCTIONS definition
4055
	at the top of it to force import of C symbols in std even for limited
4056
	compilers like VC6.
4057
4058
	* stlport/stl/_valarray.h: Add global namespace scope to C function calls
4059
	to avoid VC6 ambiguity problem.
4060
4061
2005-06-20  Francois Dumont  <dums@stlport...>
4062
4063
	* stlport/config/stl_gcc.h: Fix gcc 3.4.4 detection under cygwin thanks
850eea5 by dums at 2006-05-31 4064
	Ulrich Eckhardt report.
d26635e by complement at 2005-11-01 4065
4066
	* stlport/stl/c_locale.h: Fix _Locale_mask_t definition for Mingwin.
4067
4068
	* src/c_locale_win32/c_locale_win32.c: Add static assertion to check
4069
	_Locale_mask_t size.
4070
4071
	* src/complex_exp.cpp: Replaced complex log10 function static variables
4072
	with global constant, avoid multithreaded init problem. Thanks Ulrich
850eea5 by dums at 2006-05-31 4073
	Eckhardt report.
d26635e by complement at 2005-11-01 4074
4075
2005-06-17  Francois Dumont  <dums@stlport...>
4076
4077
	* stlport/stl/_alloc.h: Add initialization of the memory buffer in
4078
	allocator::allocate function and reset in allocator::deallocate to
4079
	the _STLP_SHRED_BYTE motif when _STLP_DEBUG_UNINITIALIZED is defined
4080
	to help track missing initialization issue.
4081
4082
	* src/dll_main.cpp: Removed now useless _Node_alloc_helper class.
4083
4084
	* stlport/stl/_alloc.c: Add complete cleanup of the __node_alloc static
4085
	datas in the _S_chunk_dealloc method, this is important if the clean up
4086
	occur before STLport shared lib is unloaded.
4087
4088
	* stlport/stl/_alloc.c: Add a static instance of __node_alloc_cleaner in the
4089
	_S_alloc_call method and change init number of allocation to 1 to force
4090
	release of memory pool only on shared library unload.
4091
4092
2005-06-11  Francois Dumont  <dums@stlport...>
4093
4094
	* stlport/cstdlib, stl/_cmath.h: Add _STLP_NO_CSTD_FUNCTION_IMPORTS macro
4095
	check before import of global C functions in STLport namespace. Required
4096
	for VC6 compiler to avoid ambiguity issue.
4097
4098
	* src/complex.cpp, complex_epx.cpp, complex_trig.cpp: Scope math function
4099
	call with the global namespace to avoid VC6 ambiguity issue. It is safe
4100
	for the other compilers as STLport do define those function in global
4101
	namespace.
4102
4103
2005-06-10  Francois Dumont  <dums@stlport...>
4104
4105
	* stlport/stl/c_locale.h: Fix Cygwin configuration, separate alpha mask
4106
	from lower and upper one to avoid all lower character to also be upper
4107
	and opposite.
4108
4109
	* src/ctype.cpp: Add static assertion to detect platform where
4110
	alpha = lower | upper which is wrong for STLport use.
4111
4112
2005-06-10  Francois Dumont  <dums@stlport...>
4113
4114
	* stlport/stl/_hashtable.c: Fix max_load_factor management, Standard says
4115
	that load_factor <= max_load_factor and not <; the function detecting need
4116
	for rehash used to launch one even if the number of bucket do not change which
4117
	was counter performant. Fix the _M_insert_noresize method that was breaking
4118
	element order inserting elements in the middle of 2 equal elements.
4119
	Thanks Dieter Freismuth report.
4120
4121
	* stlport/config/stl_gcc.h: Fix relative include path for latest gcc cygwin
4122
	package.
4123
4124
2005-06-10  Petr Ovtchenkov  <ptr@island...>
4125
4126
	* build/Makefiles/gmake/mwccnlm.mak: fix compiler version collection.
4127
4128
	* build/Makefiles/gmake/netware/extern.mak: fix useful paths.
4129
4130
	* src/c_locale.c: put here wrappers for some wfuncs, due to bogus
4131
	system libs in Netware.
4132
4133
	* stlport/cwchar: use STLport's wchar.h to take wchar_t/wint_t for
4134
	Netware.
4135
4136
	* stlport/wchar.h: use correct C declaration of some wfuncs, thanks
4137
	again to ugly Netware libs.
4138
4139
	* stlport/ciso646, stlport/iso646.h, stlport/wctype.h: headers absent
4140
	for Novell Netware.
4141
4142
	* stlport/cwctype: Metrowerks define __MSL__, but we don't use MSL libs
4143
	if we have STLport for Netware.
4144
4145
	* stlport/cstdlib: div function from Novell Netware clib and libc lead to
4146
	system crash.
4147
4148
2005-06-08  Francois Dumont  <dums@stlport...>
4149
4150
	* build/test/unit: Removed references to the now useless CPPUNIT_MINI
4151
	macro.
4152
4153
	* test/unit/type_traits_test.cpp: Add new test case for trivial destructor
4154
	detection.
4155
4156
	* stlport/stl/_fstream.h: Add missing basic_fstream construction from a
4157
	Win32 file handle, was already done for basic_ifstream and basic_ofstream,
4158
	thanks Alex Cosealin report.
4159
4160
2005-06-07  Francois Dumont  <dums@stlport...>
4161
4162
	* build/test/unit/Makefile.inc: Fix syntax error at last line.
4163
4164
2005-06-06  Petr Ovtchenkov  <ptr@island...>
4165
4166
	* build/lib/configure: add config options for Metrowerks compiler for
4167
	Novell NetWare platform [references to root of MW headers/libs and to Novell's
4168
	SDK headers/libs].
4169
4170
	* build/Makefiles/gmake/mwccnlm.mak: fixes for Metrowerk/NetWare.
4171
4172
	* build/Makefiles/gmake/app/mwccnlm.mak: idem.
4173
4174
	* build/Makefiles/gmake/netware/extern.mak: idem.
4175
4176
	* build/lib/mwccnlm.mak: idem.
4177
4178
	* build/test/unit/mwccnlm.mak: idem.
4179
4180
2005-06-03  Francois Dumont  <dums@stlport...>
4181
4182
	* test/unit/locale_test.cpp: Remove the very platform dependent LColl
4183
	class that was listing supported locales. STLport already do so and
4184
	report it using a runtime_error exception when not supported. When
4185
	compiler do not support exception only the C locale is checked.
4186
4187
	* build/Makefiles/nmake: Patches from Michael Fink to
4188
	  - check platform before linking to crtrtti.lib
4189
	  - check right configuration when using a nmake-evc?.mak file
4190
	  - update STATUS file.
4191
4192
2005-06-02  Francois Dumont  <dums@stlport...>
4193
4194
	* src/c_locale_win32/c_locale_win32.c: Add workaround for a Windows PSDK bug
4195
	concerning currency international symbol, the separation character is missing.
4196
4197
	* src/locale_impl.h, locale_impl.cpp: Fix implementation to make classic locale
4198
	implementation a normal instance that is released when the counter reach 0, the
4199
	only difference is that no delete is performed on this instance. Idem for classic
4200
	locale implementation facets.
4201
4202
	* stlport/cwctype: And _GLIBCPP_USE_WCHAR_T check when using GLibC as in this
4203
	case wide char functions are not imported in std and must be imported from the
4204
	global namespace.
4205
4206
2005-06-01  Francois Dumont  <dums@stlport...>
4207
4208
	* src/locale_impl.h, locale_impl.cpp: Change classic locale initialization
4209
	implementation for limited compiler like MSVC6.
4210
4211
2005-06-01  Petr Ovtchenkov  <ptr@island...>
4212
4213
	* stlport/stl/c_locale.h: check gcc on MacOS X. Patch by Zdenek Nemec
4214
4215
	* build/Makefiles/nmake/evc3.mak, evc4.mak, targets.mak:
4216
	support SH3/SH4 platform. Patch by Michael Fink.
4217
4218
	* build/Makefiles/nmake/app/evc3.mak, evc4.mak: ditto.
4219
4220
	* build/Makefiles/nmake/lib/evc3.mak, evc4.mak: ditto.
4221
4222
	* build/lib/configure.bat, src/stlport.rc: ditto.
4223
4224
2005-05-30  Francois Dumont  <dums@stlport...>
4225
4226
	* src/locale_impl.h, locale_impl.cpp, stlport/stl/_locale.h: An other pass
4227
	throught the classic locale initialization. Now all needed static variables
4228
	are in _Locale_impl::make_classic_locale method. Removed useless _Stl_aligned_buffer
4229
	union use in this locale initialization. Removed now useless _Locale_impl::free_classic_locale
4230
	method.
4231
4232
2005-05-30  Petr Ovtchenkov  <ptr@island...>
4233
4234
	* stlport/stl/_windows.h: worry about Windows CE when check Interlocked
4235
	API for MIPS. Patch by Michael Fink.
4236
4237
	* build/lib/configure.bat: remove the -p option by autodetecting platform.
4238
	Patch by Michael Fink.
4239
4240
	* build/Makefiles/nmake/evc3.mak, evc4.mak: corrects the evc4 makefiles
4241
	to always use the /GF switch [string pooling]. Patch by Michael Fink.
4242
4243
	* doc/README.evc3, doc/README.evc4: reflect changes above.
4244
	Patch by Michael Fink.
4245
4246
	* stlport/errno.h, stlport/time.h: when building for evc, including
4247
	errno.h and time.h often outputs the message in the #pragma statement
4248
	that including this file won't include the native one, since there is no
4249
	native include file. Now the text is only output when not building the library
4250
	and when the file is included directly, not via another STLport header file.
4251
	[Patch by Michael Fink.]
4252
4253
2005-05-29  Francois Dumont  <dums@stlport...>
4254
4255
	* test/unit/locale_test.cpp: Add opendir returned value when listing
4256
	installed locale under linux.
4257
4258
	* build/Makefiles/gmake: Patch from Zdenek Nemec for Mac OS X support.
4259
4260
2005-05-27  Francois Dumont  <dums@stlport...>
4261
4262
	* src/locale_impl.cpp: Add an initialization segment specification to make
4263
	global static variable ios_base::Init instance initialization prioritized
4264
	compare to STLport static global variable. iostreams like cout can be used
4265
	in global static variable initialization.
4266
4267
2005-05-26  Francois Dumont  <dums@stlport...>
4268
4269
	* build/Makefiles/nmake/evc4.mak: Patch from Ulrich Eckhardt to use CC
4270
	environment variable defined by WCE*.bat script rather than redefining
4271
	it.
4272
4273
	* src/locale.cpp, locale_impl.cpp, locale_catalog.cpp: New pass to move
4274
	static global variable in function to make initialization order clear.
4275
4276
2005-05-25  Francois Dumont  <dums@stlport...>
4277
4278
	* stlport/ciso646: Creation of this missing C++ standard header STLport
4279
	wrapper.
4280
4281
	* stlport/stl/_istream.h, _num_get.c, _algo.c, _monetary.c, _time_facets.h,
4282
	_time_facets.c: Replaced occurences of __in and __out reserved by Microsoft.
4283
4284
2005-05-24  Francois Dumont  <dums@stlport...>
4285
4286
	* stlport/headers: Patch from Michael Fink to avoid inclusion of headers
4287
	not available under evc3.
4288
4289
	* test/unit/*_header_test.cpp: Fix tests for no iostreams mode.
4290
4291
	* src/locale_impl.cpp, locale_impl.cpp: Modify implementation to force 
4292
	correct initialization order of static instances.
4293
4294
	* stlport/strstream: Add _ioserr.h file to avoid inclusion in no iostreams
4295
	mode.
4296
4297
2005-05-23  Petr Ovtchenkov  <ptr@island...>
4298
4299
	* stlport/stl/_config.h: detect endianness for Intel's 64bit Pentium and
4300
	Itanium processors. Thanks Albrecht Fritzsche for contribution.
4301
4302
2005-05-20  Francois Dumont  <dums@stlport...>
4303
4304
	* build/test/eh: Patch from Michael Fink to add EVC4 support for this test
4305
	suite.
4306
4307
	* src/fstream.cpp: Use of Wlodek Szafran implementation for the _Filebuf_base::_M_read
4308
	method which is more performant than the previous one.
4309
4310
	* test/unit/fstream_test.cpp: Add of a test for the special Win32 file format.
4311
4312
	* test/unit: Add of many test to check Standard C/C++ headers independancy
4313
	and correct C header implementation.
4314
4315
2005-05-18  Francois Dumont  <dums@stlport...>
4316
4317
	* src/fstream.cpp: Fix buffer overflow in _Filebuf_base::_M_read method
4318
	for the Win32 platform implementation thanks Wlodek Szafran report.
4319
4320
	* src/c_locale_dummy/c_locale_dummy.c: Patch from Michael Fink for wrong C
4321
	prototype.
4322
4323
2005-05-17  Petr Ovtchenkov  <ptr@island...>
4324
4325
	* test/unit/locale_test.cpp: some fixes in moneypunct test, related
4326
	to international currency format; some problems still remains, due to
4327
	unclear specifications---if international currency 3-chars abbreviation
4328
	used in suffix form, additional space will be appended
4329
	['1 234.56 RUR ']. This is due to intl_fmp.curr_symbol() == "RUR ",
4330
	and the last is conform to OpenGroup spec.
4331
4332
2005-05-16  Petr Ovtchenkov  <ptr@island...>
4333
4334
	* src/c_locale_stub.cpp: "stub" implemntation moved into
4335
	c_locale_dummy/c_locale_dummy.c, this file removed
4336
4337
	* src/c_locale.c: include c_locale_dummy/c_locale_dummy.c, in case of
4338
	no real locale implementation.
4339
4340
	* src/c_locale_dummy/c_locale_dummy.c: This is a "stub" implementation
4341
	of the "c_locale.h" interface, intended for operating systems where
4342
	we have not yet written a real implementation. A C++ library using
4343
	this stub implementation is still standard-conforming, since
4344
	the C++ standard does not require that any locales other
4345
	than "C" be supported.
4346
4347
	* build/lib/Makefile.inc: src/c_locale_stub.cpp removed.
4348
4349
	* src/facets_by_name.cpp: add comments in the _Init_monetary_formats.
4350
4351
	* src/c_locale_glibc/c_locale_glibc2.c: annotate some monetary-related
4352
	functions.
4353
4354
2005-05-14  Petr Ovtchenkov  <ptr@island...>
4355
4356
	* build/Makefiles/gmake/aCC.mak: HP's aCC compiler and HP-UX os support.
4357
	This isn't really checked and should be fixed on real system.
4358
4359
	* build/Makefiles/gmake/app/aCC.mak, gmake/lib/aCC.mak: ditto.
4360
4361
	* build/Makefiles/gmake/hp-ux/extern.mak, lib.mak: ditto.
4362
4363
	* build/Makefiles/gmake/hp-ux/rules-install-so.mak, rules-so.mak: ditto.
4364
4365
	* build/Makefiles/gmake/hp-ux/gmake/hp-ux/sys.mak: ditto.
4366
4367
	* build/lib/aCC.mak: ditto.
4368
4369
	* build/test/unit/aCC.mak: ditto.
4370
4371
	* build/test/unit/gcc.mak: remove dbg-shared tag from default build;
4372
	if you need unit tests with debug info and without _STLP_DEBUG, make this
4373
	tag explicitly.
4374
4375
2005-05-14  Francois Dumont  <dums@stlport...>
4376
4377
	* stlport/stl/_config.h, _config_compat_post.h, _cwchar.h, _epilog.h:
2cb88aa by dums at 2006-05-20 4378
	Patch from Albrecht Fritzsche to remove C++ comment from files accessible
4379
	by a pure C compiler.
d26635e by complement at 2005-11-01 4380
4381
	* stlport/stl/c_locale.h: idem.
4382
4383
	* src/c_locale.h, c_locale_glibc/c_locale_glibc2.h: idem.
4384
4385
	* src/gcc_localeinfo.h, c_locale_win32/c_locale_win32.c: idem.
4386
4387
	* build/Makefiles/gmake/gcc.mak: Add the -ansi option to the C compiler
2cb88aa by dums at 2006-05-20 4388
	command to know if any regression occur concerning use of C++ comment
4389
	in C files.
d26635e by complement at 2005-11-01 4390
4391
2005-05-13  Francois Dumont  <dums@stlport...>
4392
4393
	* src/c_locale_win32/c_locale_win32.c: Improve the locale name recognition
4394
	system to be more unix compliant. Now you can pass locale name like
4395
	lang_country[.codepage] with lang being one of the ISO 639 values and
4396
	country one of the ISO 3166 ones.
4397
4398
	* test/unit/locale_test.cpp: Add a test case for the ctype facet.
4399
4400
	* test/unit/locale_test.cpp: Now list all the installed locales under
4401
	Win32 to test more locale than the simple french one.
4402
4403
	* stlport/config/stl_msvc.h: Removed _WINDLL macro check when trying
4404
	to guess what type of library (dynamic/static) the STLport user want
4405
	to link with. _WINDLL is defined when generating a dll but it do not
4406
	imply anything on the user wish.
4407
4408
	* src/ctype.cpp: Improve the ctype::scan_is method, you can now scan
4409
	for a character conforming to several ctype_base::mask and not only to one.
4410
4411
	* src/ctype.cpp: Idem previous for ctype::scan_not which returns the first
4412
	character that do not conform to any of the passed mask.
4413
4414
	* test/eh: Restore exception handling test suite. Removed some equality
4415
	tests that is no more valid for hash containers, this kind of test
4416
	is better in the unit tests. Add makefiles for MSVC compilers.
4417
4418
	* stlport/stl/_tree.c: Fix _M_insert method that was leaking in case of
4419
	exception thrown by the comparison operator, reported by eh tests.
4420
4421
2005-05-09  Francois Dumont  <dums@stlport...>
4422
4423
	* stlport/stl/_ctype.h, src/ctype.cpp: Reenforce data encapsulation of the
4424
	ctype<char> template specialization class. class static arrays
4425
	_S_upper, _S_lower, _S_classic_table removed from the definition and hiden
4426
	in the .cpp file.
4427
4428
	* src/dll_main.cpp: Change _STLP_UNIX macro check in _STLP_PTHREADS check
4429
	as per thread allocator is only supported if the Posix pthread API is used,
4430
	thanks a Albrecht Fritzsche remarked.
4431
4432
2005-05-07  Francois Dumont  <dums@stlport...>
4433
4434
	* stlport/config/stl_gcc.h: Patch from John Smith for Mac OS X support.
4435
4436
	* test/unit/locale_test.cpp: Idem previous.
4437
4438
	* build/Makefiles/gmake/cygming/lib.mak, sys.mak: Import lib extension
4439
	change from .lib to .dll.a for Mingw like under Cygwin. ld linker
4440
	looks for .dll.a before .lib, avoid conflict with Cygwin lib.
4441
4442
2005-05-07  Petr Ovtchenkov  <ptr@island...>
4443
4444
	* stlport/errno.h: use C++ 'using' construction only for C++. Thanks Gary.
4445
4446
	* build/Makefiles/gmake/lib/gcc.mak: option for libname for Darwin.
4447
4448
	* build/Makefiles/gmake/app/mwccnlm.mak: build for Novell NetWare 5
4449
	with MetroWerks 7 and 8 compilers.
4450
4451
	* build/Makefiles/gmake/lib/mwccnlm.mak: ditto
4452
4453
	* build/lib/mwccnlm.mak: ditto
4454
4455
	* build/Makefiles/gmake/mwccnlm.mak: ditto
4456
4457
	* build/Makefiles/gmake/netware/extern.mak: ditto
4458
4459
	* build/Makefiles/gmake/netware/lib.mak, sys.mak: ditto
4460
4461
	* src/_stdio_file.h, num_get_float.cpp, num_put_float.cpp: ditto
4462
4463
	* stlport/cstdio, cwchar, cwctype, stdio.h, wchar.h: ditto
4464
4465
	* stlport/config/stl_mwerks.h: ditto
4466
4467
	* stlport/stl/_config.h, _fstream.h, _hashtable.c, _sstream.c: ditto
4468
4469
	* stlport/stl/_threads.h, c_locale.h, char_traits.h: ditto
4470
4471
	* build/Makefiles/gmake/sysid.mak: treat mwccnlm as cross-compiler,
4472
	set correct TARGET_OS and OS-related macros.
4473
4474
	* stlport/stl/_valarray.h: remove exhaustive this->.
4475
4476
2005-05-04  Francois Dumont  <dums@stlport...>
4477
4478
	* stlport/config/stl_msvc.h: Change configuration for MSVC .Net 2003 and
4479
	2005 that seems to have a bug in the namespace management.
4480
4481
	* stlport/stdlib.h: Add errno.h inclusion from this file for gcc mingw
4482
	as this	compiler version do define errno macro in stdlib.h as MSVC do.
4483
4484
2005-05-03  Francois Dumont  <dums@stlport...>
4485
4486
	* stlport/stl_user_config.h, stl/_site_config.h, config/stl_gcc.h, _prolog.h,
4487
	_epilog.h: Use strict Ansi C comments (/**/) for headers accessible thought 
4488
	the STLport C headers.
4489
4490
	* stlport/C headers: Cleaned from C++ style comments.
4491
4492
2005-05-02  Francois Dumont  <dums@stlport...>
4493
4494
	* build/Makefiles/nmake/vc-common.mak: Restore of LDFLAGS_A_REL introduce
4495
	the 2004-10-30 and lost the 2005-04-16, it avoids warning due to use
4496
	of the whole program optimization with VC.Net 2003 and 2005.
4497
4498
	* stlport/stl/_string_io.c: Modification of the basic_string i/o operators
4499
	in the way it deals with the size_type and streamsize difference; it is
4500
	equivalent with the former one but do not generate warning with gcc
4501
	(mingwin).
4502
4503
	* stlport/stddef.h, stdlib.h, errno.h: Fix issue under MSVC compilers where
4504
	native stdlib.h and stddef.h are defining errno macro without including
4505
	errno.h forbiding STLport to do so. Now errno.h will report this problem with
4506
	an explicit #error.
4507
4508
	* test/unit/test_errno.cpp: Improvement of the test to reveal the previous
4509
	issue.
4510
4511
2005-05-02  Petr Ovtchenkov  <ptr@island...>
4512
4513
	* makesystem (repository): restore experimental support of MetroWerks
4514
	compiler for NetWare, with help of GNU make and Cygwin environment.
4515
4516
2005-04-29  Francois Dumont  <dums@stlport...>
4517
4518
	* stlport/stl/_time_facets.c: gcc warnings reveal that we were missing some
4519
	ctype::widen method call to compare things like month or day names.
4520
	Also simplified implementation of the __match and __get_formatted_time that
4521
	do not really need all the template parameters passed to it.
4522
4523
	* stlport/stl/_num_put.c: Add a cast to make call to the function min more
4524
	clear, it will perhaps help EVC++ builds correctly.
4525
4526
	* src/strstream.cpp, stlport/stl/_sstream.c: Removed static assertion
4527
	replaced by modified implementation that takes into account the difference
4528
	between size_t and streamsize.
4529
4530
2005-04-28  Francois Dumont  <dums@stlport...>
4531
4532
	* test/unit/limits_test.cpp: Improve integral types limit test for type
4533
	of unknown sign. In this case we check the min value of this integral type,
4534
	if 0 the type is unsigned. Moreover we check, except for the bool type,
4535
	the sign of -1 cast to the integral type, bool is a special type that
4536
	generate warning when built from -1 (MSVC).
4537
4538
	* src/ctype.cpp: Creation of a small helper structure to check the validity
4539
	of a wchar_t value used as an index. This helper struct takes into account
4540
	the compiler representation of the wchar_t type, is it a sign type or not.
4541
	This helper avoids warning when wchar_t is unsigned.
4542
4543
	* src/num_get.cpp: Removed unused _Initialize_get_digit function and
4544
	associated narrow_digits and narrow_xdigits arrays.
4545
6f2ba42 by ptr at 2005-04-29 4546
2005-04-28  Petr Ovtchenkov  <ptr@island...>
4547
d26635e by complement at 2005-11-01 4548
	* stlport/stl/_sstream.h, _num_put.c: __in replaced by __imode, __out
4549
	by __omode or __oi due to MS privatize __in and __out. Thanks Michael Fink.
6f2ba42 by ptr at 2005-04-29 4550
4551
2005-04-27  Francois Dumont  <dums@stlport...>
4552
d26635e by complement at 2005-11-01 4553
	* src/fstream.cpp: Fix Win32-64 file stream implementation. _M_read and
4554
	_M_write can now correctly handle respectively read and write of really
4555
	big buffers ( > 2Go)
4556
6f2ba42 by ptr at 2005-04-29 4557
	* using/iosfwd.h, stlport/strstream.h, stl/_rope.h, _rope.c, _complex.h: Removed 
d26635e by complement at 2005-11-01 4558
	references to the _STLP_USE_NEW_IOSTREAMS macro, STLport only support "new"
6f2ba42 by ptr at 2005-04-29 4559
	iostreams.
4560
d26635e by complement at 2005-11-01 4561
	* test/unit/max_test.cpp, min_test.cpp: Add tests to check that min and
4562
	max are not defined as macros.
4563
4564
	* test/fstream_test.cpp: Add check in creation of test_file.txt
4565
	as following tests depends on its content.
4566
4567
	* src/strstream.cpp, stdio_streambuf.cpp: Fix potential issue because of
4568
	the difference between streamsize and size_t of ptrdiff_t.
4569
	Add static assertion to clearly specify how streamsize must be to have
4570
	a correct behavior.
4571
4572
	* stlport/stl/_num_put.c, _num_get.c, _fstream.c, _moneraty.c: ditto.
4573
4574
	* src/ctype.cpp: Restore check on wchar_t positivity as according
4575
	2005-02-22 Petr Ovtchenkov reports wchar_t can be signed.
4576
6f2ba42 by ptr at 2005-04-29 4577
2005-04-26  Francois Dumont  <dums@stlport...>
4578
4579
	* src/num_get_float.cpp: Fix mingwin support for 64bits integer type 
4580
	thanks Wlodek Szafran
4581
4582
2005-04-25  Francois Dumont  <dums@stlport...>
4583
4584
	* stlport/stl/_time_facets.c: Fix __pos type in __match function and removed
4585
	unused __max_pos definition and initialisation.
d26635e by complement at 2005-11-01 4586
6f2ba42 by ptr at 2005-04-29 4587
	* src/c_locale_win32/c_locale_win32.c: Add some cast to remove warnings.
d26635e by complement at 2005-11-01 4588
6f2ba42 by ptr at 2005-04-29 4589
	* stlport/stl/_moneraty.c: Fix __witdh definition to use streamsize rather
4590
	than size_t to avoid warnings.
4591
4592
2005-04-25  Petr Ovtchenkov  <ptr@island...>
4593
d26635e by complement at 2005-11-01 4594
	* build/test/gcc.mak: workaround for [bug?] gmake, that sometimes lose
6f2ba42 by ptr at 2005-04-29 4595
	increment of target-specific macro and, may be, under condition.
4596
	Thanks Jeff Williams.
4597
4598
	* build/Makefiles/gmake/icc.mak: add icc 8.1 compiler-specific libs
4599
4600
	* build/Makefiles/gmake/icc.mak: detect icc version; add includes
4601
	from compiler to include path
4602
4603
	* test/unit/cppunit/test_main.cpp, cppunit_mini.h: add option -x, run all
4604
	except specified CLASS::TEST.
4605
4606
2005-04-23  Francois Dumont  <dums@stlport...>
4607
4608
	* stlport/stl/_ioerr.h: #error message modification thanks Michael Fink.
d26635e by complement at 2005-11-01 4609
6f2ba42 by ptr at 2005-04-29 4610
2005-04-22  Francois Dumont  <dums@stlport...>
4611
d26635e by complement at 2005-11-01 4612
	* stlport/stl/_istream.c: Fix _M_read_buffered function implementation,
4613
	there used to be a wrong implicit conversion from streamsize to ptrdiff_t,
4614
	which fail when sizeof(streamsize) > sizeof(ptrdiff_t).
4615
	See 2005-04-21 Petr report.
4616
4617
	* test/unit/: Replaced all _STLP_NO_IOSTREAMS occurences with the STLport
4618
	internal equivalent _STLP_USE_NO_IOSTREAMS. The first one is defined
4619
	by the client while the second depends on the first and on the compiler
4620
	abilities, makes the unit tests more portable.
4621
4622
	* stlport/stl/_cmath.h: Fix for Intel C++ compiler that also have all
4623
	C math functions in global namespace.
6f2ba42 by ptr at 2005-04-29 4624
4625
2005-04-21  Francois Dumont  <dums@stlport...>
4626
4627
	* stlport/stl/_hashtable.h: Extend the hashtable template methods extension
4628
	to the method computing the bucket from the key thanks Dominik Siatkowski.
d26635e by complement at 2005-11-01 4629
4630
	* stlport/stl/_threads.h: Disable 64 bits portability warning for
4631
	MSVC compilers. MSVC do not see that the called function comes from
4632
	a macro that is different under Win32 and Win64.
4633
6f2ba42 by ptr at 2005-04-29 4634
2005-04-21  Petr Ovtchenkov  <ptr@island...>
4635
4636
	* test/unit/sstream_test.cpp, fstream_test.cpp: integral type for
2cb88aa by dums at 2006-05-20 4637
	ptrdiff_t shorter than for streamsize; this cause problem on
d26635e by complement at 2005-11-01 4638
	Win32 platform, that support files larger than 4GB.
6f2ba42 by ptr at 2005-04-29 4639
	Thanks Timothy Tenebekov for report.
4640
4641
2005-04-20  Francois Dumont  <dums@stlport...>
4642
4643
	* stlport/stl/debug/_debug.c: Small Borland compiler fix to avoid call to
4644
	vsnprintf before version 0x550 thanks esanfo.
d26635e by complement at 2005-11-01 4645
6f2ba42 by ptr at 2005-04-29 4646
	* src/dll_main.cpp: Fix bug reported by Intel C++ (icl) compiler.
d26635e by complement at 2005-11-01 4647
6f2ba42 by ptr at 2005-04-29 4648
2005-04-20  Petr Ovtchenkov  <ptr@island...>
4649
4650
	* src/num_get_float.c: use uint64_t for 64-bit, but unsigned long long
4651
	for constants. This fix problem on linux x86_64 [amd64].
4652
7fe9a66 by ptr at 2005-04-18 4653
2005-04-16  Francois Dumont  <dums@stlport...>
4654
4655
	* test/unit/cppunit/test_main.cpp: Patch from Michael Fink to improve
4656
	the macro filter for including windows.h (UNDER_CE rather than WIN32).
4657
4658
	* build/test/unit/STATUS: Update from Michael Fink and myself.
4659
4660
	* build/Makefiles/nmake: Apply Michael Fink patch to generate .pdb file
4661
	even in release mode and to install them in bin and lib folders next to
4662
	the .dll and .lib files.
4663
d26635e by complement at 2005-11-01 4664
	* stlport/stl/_algobase.c: Add missing const in return type of the const
7fe9a66 by ptr at 2005-04-18 4665
	version of find specialized for const char*.
4666
4667
2005-04-16  Petr Ovtchenkov  <ptr@island...>
4668
4669
	* stlport/stl/_algobase.c: memchr return NULL if value not found,
d26635e by complement at 2005-11-01 4670
	while find() [specialization for char *] should return last
7fe9a66 by ptr at 2005-04-18 4671
	[see record 2005-02-27 below]. Thanks Joshua Berne for report.
4672
4673
	* test/unit/find_test.cpp: if char not found, char specialization of
4674
	find() should return last, not NULL.
4675
4676
2005-04-14  Petr Ovtchenkov  <ptr@island...>
4677
4678
	* stlport/stl/_list.h, _slist.h: add this-> resolution to get_allocator
4679
	[required in the member templates to resolve possible ambiguity]
4680
4681
2005-04-13  Francois Dumont  <dums@stlport...>
4682
4683
	* stlport/stl/_list.h, _slist.h: Add missing get_allocator() call when
4684
	building temporary list or slist instances in insert methods.
4685
4686
2005-04-12  Petr Ovtchenkov  <ptr@island...>
4687
4688
	* stlport/errno.h: solution 2005-04-12 not useful. Simplified schema,
4689
	semantically equivalent to Francois', but without extra function definition
4690
	[see records 2005-03-31 and 2005-04-01]
4691
4692
2005-04-12  Petr Ovtchenkov  <ptr@island...>
4693
4694
	* stlport/errno.h: check if we undefine previously defined errno
4695
4696
2005-04-11  Petr Ovtchenkov  <ptr@island...>
4697
4698
	* stlport/errno.h: save original errno definition
4699
4700
2005-04-10  Petr Ovtchenkov  <ptr@island...>
4701
4702
	* STLport (repository): STLport 5.0 RC3
4703
4704
2005-04-08  Francois Dumont  <dums@stlport...>
4705
d26635e by complement at 2005-11-01 4706
	* test/unit/locale_test.cpp: Add __FreeBSD__ macro check for the workaround
7fe9a66 by ptr at 2005-04-18 4707
	announced as Free BSD specific by the comment next to it.
d26635e by complement at 2005-11-01 4708
4709
	* stlport/stl/_config.h: Add undef of _STLP_USE_DYNAMIC_LIB when in
4710
	NO_IOSTREAMS mode, this macro was generating buggy code in this case
4711
	for some commpilers (gcc mingwin).
4712
7fe9a66 by ptr at 2005-04-18 4713
2005-04-07  Francois Dumont  <dums@stlport...>
4714
4715
	* build/lib/nmake-vc-common.mak: Removed useless add of STLport/lib to 
4716
	library paths when building STLport lib.
d26635e by complement at 2005-11-01 4717
7fe9a66 by ptr at 2005-04-18 4718
	* build/Makefiles/nmake/*: Removed useless specification of the MSVC default
4719
	install	directory, all the job is done by the vcvcars32.bat script that sets
4720
	the LIB env variable to the real MSVC install directory.
d26635e by complement at 2005-11-01 4721
7fe9a66 by ptr at 2005-04-18 4722
	* test/unit/unordered_test.cpp, locale_test.cpp: Removed gcc mingw warnings.
d26635e by complement at 2005-11-01 4723
7fe9a66 by ptr at 2005-04-18 4724
	* build/Makefiles/nmake/icl.mak, app/icl.mak, lib/icl.mak: Removed the
4725
	whole program optimization option, looks like it is confusing icl.
d26635e by complement at 2005-11-01 4726
7fe9a66 by ptr at 2005-04-18 4727
	* stlport/stl/debug/*.h: Removed useless _Get_base non-const overload. 
4728
	In addition to being useless Intel compiler emit compilation error about it.
4729
4730
2005-04-06  Petr Ovtchenkov  <ptr@island...>
4731
4732
	* test/unit/cppunit/test_main.cpp: windows.h required here
4733
	[see 2005-04-04; patch by Michael Fink].
4734
4735
	* stlport/stl/_istream.h: __is replaced by __istr, due
4736
	to MS privatize __is.
4737
4738
	* stlport/stl/_num_get.h: __in replaced by __ii, due to MS
4739
	privatize __in too.
4740
4741
	* stlport/stl/_config.h: Visual C++ 8 uses _M_AMD64 to identify
4742
	EM64T and AMD64 platforms [thanks Mike Roberts].
4743
4744
2005-04-05  Francois Dumont  <dums@stlport...>
4745
4746
	* stlport/config/stl_evc.h: apply patch from Michael Fink to add support for
4747
	various EVC SDK.
d26635e by complement at 2005-11-01 4748
7fe9a66 by ptr at 2005-04-18 4749
	* stlport/stl/_cmath.h: An other adaptation to the Intel C++ compiler.
d26635e by complement at 2005-11-01 4750
7fe9a66 by ptr at 2005-04-18 4751
	* build/lib/nmake-vc-common.mak, test/unit/nmake-vc-common.mak: Removed check
4752
	of STLP_BUILD_FORCE_[STATIC,DYNAMIC]_RUNTIME environment variables,
4753
	moved in a common build system file.
d26635e by complement at 2005-11-01 4754
7fe9a66 by ptr at 2005-04-18 4755
	* build/Makefiles/nmake/vc-common.mak: Add checks of 
4756
	STLP_BUILD_FORCE_[STATIC,DYNAMIC]_RUNTIME variables.
d26635e by complement at 2005-11-01 4757
7fe9a66 by ptr at 2005-04-18 4758
	* build/lib/configure.bat: Add a clean option to remove the hidden 
4759
	Makefiles/config.mak file.
d26635e by complement at 2005-11-01 4760
7fe9a66 by ptr at 2005-04-18 4761
	* stlport/stdexcept: Disable 'non dll-interface class used as base' warning
4762
	when building STLport dll linked with the static runtime.
d26635e by complement at 2005-11-01 4763
7fe9a66 by ptr at 2005-04-18 4764
2005-04-04  Francois Dumont  <dums@stlport...>
4765
4766
	* test/unit/mfunptr_test.cpp: Add necessary macro checks for a test
4767
	that require partial template specialization compiler support.
4768
4769
2005-04-04  Petr Ovtchenkov  <ptr@island...>
4770
4771
	* errno.h, time.h, test_errno.cpp: evc3 and evc4 has no errno.h
4772
	and time.h headers [patch by Michael Fink].
4773
4774
	* stl_evc.h, _windows.h, test_main.cpp: workaround to not include
4775
	<windows.h> in STLport headers (it is still needed for building
4776
	the lib and the unit tests, but that should be no problem).
4777
	Occurences of GetCurrentProcess() used in _STLP_ABORT were replaced
4778
	with the result of the inline function, which returns a pseudo-
4779
	HANDLE value. [patch by Michael Fink]
4780
4781
	* cwchar, wchar.h, stl/_cwchar.h: fix access to mbstate and wint_t
4782
	for FreeBSD.
4783
4784
	* build/Makefiles/gmake/sysid.mak, app/gcc.mak, lib/gcc.mak:
4785
	FreeBSD before 5.3 require linkage with libc_r, while 5.3 and
4786
	later use libpthread.
4787
4788
	* test/unit/locale_test.cpp: add std:: namespace qualifier for
4789
	gcc 3.3.2 and/or FreeBSD.
4790
4791
	* libstlport, test/unit: library build and most tests pass for
4792
	FreeBSD 5.3 and FreeBSD 4.10.
4793
4794
2005-04-02  Francois Dumont  <dums@stlport...>
4795
4796
	* stlport/cstdlib: Fix missing div taking long definition for VC71.
4797
4798
2005-04-01  Francois Dumont  <dums@stlport...>
4799
4800
	* stlport/errno.h: Add comments to explain the file code.
d26635e by complement at 2005-11-01 4801
7fe9a66 by ptr at 2005-04-18 4802
	* stlport/stl/_string_io.h: Yet an other fix to the i/o basic_string
4803
	operators that was not right under cygwin/mingwin.
4804
4805
	* build/Makefiles/gmake/gcc.mak: Merge the 2 distinct cygmin blocks
4806
	in one and add -Wall and -Wsign-promo warnings.
d26635e by complement at 2005-11-01 4807
7fe9a66 by ptr at 2005-04-18 4808
2005-04-01  Petr Ovtchenkov  <ptr@island...>
4809
4810
	* test/unit/test_errno.cpp: fix test, errno may be non-zero without
4811
	any error, but it reflect error code after some function fail.
4812
	This not the same.
4813
4814
	* test/unit/mfunptr_test.cpp: add step-by-step test how compiler
4815
	recognize bind of member function for find_if. Not all compilers may
4816
	understand this. Thanks Markus for test idea.
4817
4818
2005-03-31  Francois Dumont  <dums@stlport...>
4819
4820
	* stlport/errno.h: Fixed for MSVC compilers, should still be fine for
4821
	others.
d26635e by complement at 2005-11-01 4822
7fe9a66 by ptr at 2005-04-18 4823
	* test/unit/test_errno.cpp: Modified to be a real unit test. Also test
4824
	errno assignment.
d26635e by complement at 2005-11-01 4825
7fe9a66 by ptr at 2005-04-18 4826
2005-03-30  Francois Dumont  <dums@stlport...>
4827
4828
	* stlport/stl/_fstream.c: Try to fix ambiguous type deduction in a max
4829
	call under WinCE.
d26635e by complement at 2005-11-01 4830
7fe9a66 by ptr at 2005-04-18 4831
	* stlport/stl/_cmath.h: Fix missing non Standard hypot function under
4832
	WinCE thanks Michael Fink.
d26635e by complement at 2005-11-01 4833
7fe9a66 by ptr at 2005-04-18 4834
	* stlport/stl/_cmath.h: Attempt to fix the WinCE math function support
4835
	where neither *f nor *l functions are present even if the compiler
4836
	support the long double type.
d26635e by complement at 2005-11-01 4837
7fe9a66 by ptr at 2005-04-18 4838
2005-03-30  Petr Ovtchenkov  <ptr@island...>
4839
4840
	* stlport/assert.h, float.h, iso646.h, limits.h, errno.h:
4841
	added in accordance with Standard D.5 [compatibility with standard
4842
	C library] to prevent wrong std interpretation in ill-formed native
4843
	headers [definition of namespace std in C headers].
4844
4845
	* test/unit/test_errno.cpp: check correct processing of errno.h
4846
	header.
4847
4848
	* build/test/eh: build eh tests again.
4849
4850
	* test/eh/LeakCheck.h, TestClass.cpp, TestClass.h: fix and clear.
4851
d26635e by complement at 2005-11-01 4852
	* test/eh/test_hash_map.cpp, test_hash_set.cpp: hash_set/hash_map
7fe9a66 by ptr at 2005-04-18 4853
	has no == operator [no container equality]; this fix is quick-and-dirty
4854
4855
2005-03-29  Petr Ovtchenkov  <ptr@island...>
4856
4857
	* build/Makefiles/gmake/app/rules.mak, freebsd/rules-so.mak,
4858
	linux/rules-so.mak, openbsd/rules-so.mak, sunos/rules-so.mak:
4859
	fix link sequence---the end objects should be really last, i.e. after libs.
4860
	This affected by linkage without libstdc++.
4861
4862
	* stlport/stl/_cwchar.h, stlport/wchar.h: workarounds for FreeBSD.
4863
4864
	* due to change in link sequence most tests [including exceptions] pass
4865
	for uClibc.
4866
4867
	* stlport/mmemory.h: garbage, removed.
4868
4869
	* stlport/export: ditto.
4870
4871
2005-03-28  Francois Dumont  <dums@stlport...>
4872
4873
	* stlport/stl/_istream.h, _ostream.h: Fix assignment operators prototypes
4874
	for the sentry struct. Thanks -Weffc++ feature of gcc.
4875
4876
	* build/Makefiles/gmake/cygmin/rules-install-so.mak: Add missing folder
4877
	creation in the install process thanks Charlemagne report.
4878
4879
	* build/Makefiles/nmake/icl.mak: Fix Intel compiler build system under
4880
	Windows.
d26635e by complement at 2005-11-01 4881
7fe9a66 by ptr at 2005-04-18 4882
2005-03-28  Petr Ovtchenkov  <ptr@island...>
4883
4884
	* src/num_put_float.cpp: in FreeBSD no *cvt* functions now, use sprintf;
4885
4886
	* stlport/config/stl_gcc.h: in FreeBSD no math *l functions and llabs.
4887
4888
	* test/unit/string_test.cpp: more test with assignment.
4889
4890
2005-03-25  Petr Ovtchenkov  <ptr@island...>
4891
4892
	* stlport/stddef.h: fix typo in header id---this mistake prevent
4893
	inclusion _epilog.h.
4894
4895
	* test/unit/epilog_test.cpp: regression test for bug above.
4896
4897
	* stlport/cstdio: fix header id to avoid possible errors.
4898
4899
2005-03-24  Petr Ovtchenkov  <ptr@island...>
4900
4901
	* build/Makefiles/gmake/lib/gcc.mak, build/Makefiles/gmake/app/gcc.mak:
4902
	code reorganization to simplify platform configuration with or without
4903
	-nostdlib [avoid link with libstdc++ or libestdc++]; now link without
4904
	libstdc++/libestdc++ supported on Linux and OpenBSD.
4905
4906
	* build/Makefiles/gmake/openbsd/rules-so.mak: idem.
4907
4908
	* build/Makefiles/gmake/freebsd/rules-so.mak: idem.
4909
4910
	* src/num_put_float.cpp: clean float convertions for OpenBSD and FreeBSD;
4911
	OpenBSD and FreeBSD use STLport code instead of sprintf now.
4912
4913
	* stlport/stl/_cwchar.h: allow masquarade to use mbstate_t from native
4914
	cwchar header on OpenBSD.
4915
4916
	* stlport/config/slt_gcc.h: llabs and *l math functions absent in OpenBSD;
4917
	define __unix, that missed in OpenBSD.
4918
4919
2005-03-23  Petr Ovtchenkov  <ptr@island...>
4920
4921
	* build/Makefiles/gmake/app/gcc.mak, build/Makefiles/gmake/lib/gcc.mak:
4922
	incorporate gcc language support library into libstlport.so
4923
	[add ~100k to library],	but libsupc++ don't required more in link stage
4924
	for applications and libraries that use stlport, as in case with
4925
	libstdc++.
4926
4927
2005-03-22  Francois Dumont  <dums@stlport...>
4928
4929
	* stlport/stl/_string_io.c: Fix basic_string stream output operator 
4930
	implementation for cygwin.
d26635e by complement at 2005-11-01 4931
7fe9a66 by ptr at 2005-04-18 4932
	* stlport/stl/_cmath.h: Add fixes for cygwin support that handle long double
4933
	but do not have *l maths function per default.
d26635e by complement at 2005-11-01 4934
7fe9a66 by ptr at 2005-04-18 4935
	* src/complex_exp.cpp: Fix call to logl, replaced by call to log.
d26635e by complement at 2005-11-01 4936
7fe9a66 by ptr at 2005-04-18 4937
	* src/complex_trig.cpp: Fix mingw support by checking M_LN2l existence
4938
	before using it.
4939
4940
	* test/unit/copy_test.cpp: Change test cases to avoid use of iostreams.
4941
4942
	* test/unit/string_test.cpp: Add a small check to test use of istream width
4943
	in the input operator.
4944
4945
	* stlport/cstdlib, stlport/config/stl_msvc.h, stl_gcc.h: Creation of the
4946
	_STLP_NO_VENDOR_STDLIB_L macro to report support of the llabs and lldiv
4947
	function.
4948
4949
2005-03-21  Petr Ovtchenkov  <ptr@island...>
4950
4951
	* stlport/stl/_cmath.h: removed logf, expf, sinf, cosf; option
4952
	-fno-builtin passed to gcc compiler solve the problem with uClibc;
4953
	this imply same option in building uClibc, as it is in normal uClibc build.
4954
	This is partial	rollback of changes 2005-03-16.
4955
4956
	* build/lib/configure, build/Makefiles/gmake/gcc.mak: add ability to pass
4957
	extra flags to C++ compiler
4958
4959
2005-03-18  Francois Dumont  <dums@stlport...>
4960
4961
	* test/unit: Modified some test in order to check the _STLP_NO_IOSTREAMS
4962
	mode. This new mode of tests reveals the following bugs:
d26635e by complement at 2005-11-01 4963
7fe9a66 by ptr at 2005-04-18 4964
	* stlport/stl/_rope.c: Add check of _STLP_USE_NO_IOSTREAMS macro before
4965
	include of iostream header.
d26635e by complement at 2005-11-01 4966
7fe9a66 by ptr at 2005-04-18 4967
	* src/dll_main.cpp, stlport/stl/_string_fwd.h: Removed implementation 
4968
	of __get_c_string, moved to _string.h header, once string has been defined,
4969
	as an inline function.
d26635e by complement at 2005-11-01 4970
7fe9a66 by ptr at 2005-04-18 4971
2005-03-18  Petr Ovtchenkov  <ptr@island...>
4972
4973
	* src/complex_trig.cpp: avoid call log functions during static
4974
	initialization, if possible.
4975
4976
2005-03-17  Francois Dumont  <dums@stlport...>
4977
4978
	* stlport/stl/_string_io.h: Fix implementation that used to think that
4979
	size_t and streamsize was simply aliases. Thanks Jay Amin report.
d26635e by complement at 2005-11-01 4980
7fe9a66 by ptr at 2005-04-18 4981
	* stlport/config/_prolog.h: Add comment about the reason of alignment
4982
	specification when using MSVC compilers. Fix alignment for Win64 platform.
d26635e by complement at 2005-11-01 4983
7fe9a66 by ptr at 2005-04-18 4984
	* stlport/stl/_alloc.h: Fix _ALIGN enum definition for _Win64 platform.
d26635e by complement at 2005-11-01 4985
7fe9a66 by ptr at 2005-04-18 4986
	* src/string_w.cpp: Fix wrong class export under debug mode thanks
4987
	Charlemagne report.
d26635e by complement at 2005-11-01 4988
7fe9a66 by ptr at 2005-04-18 4989
	* build/Makefiles/nmake: Preparation of the build system for icl (Intel cl
4990
	compiler (mimic cl compiler from Microsoft).
d26635e by complement at 2005-11-01 4991
7fe9a66 by ptr at 2005-04-18 4992
2005-03-16  Petr Ovtchenkov  <ptr@island...>
4993
4994
	* stlport/stl/_cmath.h: added logf, expf, sinf, cosf---this fix
4995
	uClibc 0.9.27/gcc problem. Fix one macro for declaration math
4996
	functions in case of absent *f functions.
4997
4998
2005-03-16  Francois Dumont  <dums@stlport...>
4999
5000
	* stlport/config/*: Clean native header include path macro definition. 
5001
	Removed many useless definition simply recreating the default behavior. 
5002
	Removed the unreferenced _STLP_NATIVE_OLD_STREAMS_INCLUDE_PATH macro.
d26635e by complement at 2005-11-01 5003
7fe9a66 by ptr at 2005-04-18 5004
	* stlport/stl/_site_config.h: Update relative path headers macros 
5005
	documentation to reflect more accurately default behavior and add 
5006
	the unreference	_STLP_NATIVE_CPP_RUNTIME_INCLUDE_PATH macro.
5007
5008
2005-03-15  Francois Dumont  <dums@stlport...>
5009
5010
	* stlport/stl/_fstream.h: Fix _Noconv_input helper class default implementation.
5011
	Returns traits::eof() rather than 0.
5012
5013
2005-03-15  Petr Ovtchenkov  <ptr@island...>
5014
5015
	* src/complex.cpp, complex_exp.cpp, complex_io.cpp, complex_trig.cpp:
5016
	use achievements in _cmath.h---use overloaded funcs; mascarade from
5017
	complex_impl.h not required more.
5018
5019
	* src/complex_impl.h: deleted.
5020
5021
	* test/unit/cmath_test.cpp: check nested sqrt(sqrt)---possible problem with macro
5022
5023
2005-03-14  Francois Dumont  <dums@stlport...>
5024
5025
	* stlport/config/stl_msvc.h: _STLP_SAME_FUNCTION_NAME_RESOLUTION_BUG notion
5026
	removed, impossible to reproduce, maybe fixed by the #pragma intrinsic/function
5027
	directives.
d26635e by complement at 2005-11-01 5028
7fe9a66 by ptr at 2005-04-18 5029
	* stlport/stl/_cmath.h, cstdlib: Fix .Net 2003 and .Net 2005 beta support.
d26635e by complement at 2005-11-01 5030
7fe9a66 by ptr at 2005-04-18 5031
	* stlport/stl/_cmath.h: Removed _STLP_SAME_FUNCTION_NAME_RESOLUTION_BUG notion,
5032
	no more _STLP_DO_* macros.
d26635e by complement at 2005-11-01 5033
7fe9a66 by ptr at 2005-04-18 5034
	* test/unit/valarray_test.cpp: New tests to check right compilation of 
5035
	transcendentals valarray functions.
d26635e by complement at 2005-11-01 5036
7fe9a66 by ptr at 2005-04-18 5037
	* stlport/stl/_valarray.h: Replaced all the _STLP_DO_* macros by real 
5038
	function calls.
d26635e by complement at 2005-11-01 5039
7fe9a66 by ptr at 2005-04-18 5040
	* src/fstream.cpp: Add INVALID_SET_FILE_POINTER definition when missing for
5041
	Win32 IO implementation thanks Michael Fink report. Add compilation check 
5042
	of right STLport file descriptor definition.
d26635e by complement at 2005-11-01 5043
7fe9a66 by ptr at 2005-04-18 5044
2005-03-12  Francois Dumont  <dums@stlport...>
5045
5046
	* stlport/stl/_tree.h: Fix equal_range_unique bug thanks Gunter.
d26635e by complement at 2005-11-01 5047
7fe9a66 by ptr at 2005-04-18 5048
	* test/unit/map_test.cpp: Add of the test to reproduce the bug
5049
	above.
d26635e by complement at 2005-11-01 5050
7fe9a66 by ptr at 2005-04-18 5051
2005-03-11  Petr Ovtchenkov  <ptr@island...>
5052
5053
	* build/test/unit/gcc.mak: don't write runtime path to libstlport
5054
	in case of crosscompilation.
5055
5056
	* stlport/stl/_cmath.h: exclude *f and *l variants of math functions
5057
	if ones absent in system; add missed hypot function; few workarounds
5058
	for uClibc and for VC.
5059
5060
	* src/complex.cpp, complex_exp.cpp, complex_trig.cpp: workaround
5061
	for systems without *f and *l variants of math functions.
5062
5063
	* test/unit/resolve_name.cpp: exclude test line that confuse VC.
5064
5065
	* stlport/cstdlib: div isn't intrinsic for VC.
5066
5067
	* stlport/config/stl_gcc.h: don't use *f and *l math functions in
5068
	case of uClibc.
5069
5070
2005-03-09  Petr Ovtchenkov  <ptr@island...>
5071
5072
	* doc/FAQ: FAQ was established.
5073
5074
2005-03-07  Francois Dumont  <dums@stlport...>
5075
5076
	* stlport/stl/_bitset.h, _bitset.c: Avoid include of istream when
5077
	NO_IOSTREAMS mode thanks Bruno report.
5078
5079
	* stlport/stl/char_traits.h: Modification of the streamoff and streamsize
5080
	definition to take into account the 64 bits file access support.
5081
5082
	* test/unit/fstream.cpp: New test for big files ( > 2Go) unactivated by
d26635e by complement at 2005-11-01 5083
	default.
7fe9a66 by ptr at 2005-04-18 5084
5085
2005-03-06  Petr Ovtchenkov  <ptr@island...>
5086
5087
	* stlport/cstdlib, stlport/cmath, stlport/stl/_cmath.h: define
5088
	overloaded functions in the scope of global namespace and then import
5089
	all in stlp_std with 'using' directive. This is better than
5090
	solution from 2005-03-04 below.
5091
5092
	* stlport/cmath: include cstdlib, due to declarations of abs
5093
	with integer types required in overload and when 'using'.
5094
5095
	* src/complex.cpp, src/complex_exp.cpp, src/complex_trig.cpp: replace
5096
	macros that possibly will be removed.
5097
5098
2005-03-05  Francois Dumont  <dums@stlport...>
5099
5100
	* stlport/stl/_construct.h: Simplification of the _Copy_Construct
5101
	function, now only takes a single template parameter and only call
5102
	the strict copy constructor. Creation of the _Param_Construct function
5103
	that replace the former _Copy_Construct implementation.
5104
5105
	* cstdlib: Fix abs definition for MSVC compilers.
5106
5107
	* test/unit: Fixing 64 bits warnings in many tests.
5108
5109
	* src/c_locale_win32/c_locale_win32.c: Fixing 64 bits warnings.
5110
	
5111
	* src/fstream.cpp: Creation of the INVALID_STLP_FD constant to represent
5112
	a portable invalid file descriptor.
5113
5114
	* stlport/stl/_streambuf.c: Explicit instanciation of basic_streambuf
5115
	for wchar_t removed, already exists in _streambuf.h thanks
5116
	Charlemagne report.
5117
5118
	* stlport/stl/char_traits.h: Setup modification, Windows platform now
5119
	use ptrdiff_t to define streamoff, make the code more portable.
5120
5121
2005-03-04  Petr Ovtchenkov  <ptr@island...>
5122
5123
	* stlport/stl/_cmath.h: removed recursive include of cmath header
5124
	
5125
	* src/complex_impl.h: include cmath instead of stl/_cmath.h
5126
5127
	* stlport/stl/_complex.h: idem.
5128
5129
	* stlport/stl/_valarray.h: idem.
5130
5131
	* test/unit/unary.h: workaround for namespace resolution.
5132
5133
	* test/unit/resolve_name.cpp: test to show problem with namespace resolution.
5134
5135
	* stlport/cmath, stlport/stl/_cmath.h: standard require overloaded math
5136
	functions for double and float arguments. Import with 'using' directive
5137
	can't provide such overload. Removed import with 'using', used direct
5138
	inline wrappers in namespace stlp_std instead. Cleaning code.
5139
5140
	* stlport/cstdlib: complement to cmath---the same as above for abs.
5141
5142
	* stlport/stl/_config.h: uClibc declare pthread_spin... but ones absent
5143
	in the library indeed.
5144
5145
2005-03-02  Petr Ovtchenkov  <ptr@island...>
5146
5147
	* build/Makefiles/top.mak: move .PHONY target to the bottom, it work here
5148
	as expected
5149
5150
	* build/Makefiles/gmake/depend.mak, targetdirs.mak: reduce amount of dummy
5151
	targets; fix creation of directories for install.
5152
5153
	* build/Makefiles/gmake/linux/rules-install-so.mak: ditto.
5154
5155
	* stlport/stl/_config.h, stlport/config/stl_gcc.h: support of gcc/linux/uClibc
5156
5157
	* src/_stdio_file.h, num_put_float.cpp, stdio_streambuf.cpp: uClibc support
5158
5159
	* stlport/cwchar: ditto.
5160
5161
2005-03-01  Francois Dumont  <dums@stlport...>
5162
5163
	* stlport/stl/_threads.h, _windows.h, _rope.c: Fix of a 64 bits portage issue
5164
	in the rope implementation under Win64 thanks Patrick Bergeron report.
5165
5166
2005-02-28  Francois Dumont  <dums@stlport...>
5167
5168
	* stlport/stl/_hashtable.c: hashtable::erase fix thanks Patrick Bergeron.
5169
5170
2005-02-27  Francois Dumont  <dums@stlport...>
5171
5172
	* stlport/stl/_algobase.h, _algobase.c: Fix find algo overload for
5173
	char* and const char*. Now the overload is on the __find underlying
5174
	function.
5175
5176
	* test/unit/alg_test.cpp: Add a test case for the search_n algo.
5177
5178
	* stlport/stl/_algo.c: Integration of the search_n algo implementation
5179
	for the random access iterator from Jim Xochellis.
5180
5181
2005-02-25  Francois Dumont  <dums@stlport...>
5182
5183
	* stlport/stl/_slist.h: Fix _M_splice_after method.
5184
5185
	* stlport/stl/debug/_slist.h: Add of many missing checks for the special
5186
	slist before_begin iterator which returns true to the _Dereferenceable
5187
	function call but is not dereferenceable in reality. Passing this
5188
	iterator to method like erase or insert was invalid but was not detected
5189
	by the _Dereferenceable function.
5190
5191
	* test/unit/slist_test.cpp: Add checks for insert, insert_after, splice
5192
	splice_after methods.
5193
5194
	* Patch from Ulrich Eckhardt:
5195
	- Fix macro _MSC_VER macro checks, VC6 should be found using _MSC_VER < 1300
5196
	check rather than _MSC_VER == 1200 to take into account compilers like 
5197
	EVC4 that is a VC6 based compiler with _MSC_VER == 1202.
5198
5199
2005-02-25  Petr Ovtchenkov  <ptr@island...>
5200
5201
	* stlport/stl/_algobase.h: wrong parameters order in call to memchr,
5202
	thanks Patrick Bergeron.
5203
5204
2005-02-24  Francois Dumont  <dums@stlport...>
5205
5206
	* stlport/stl/char_traits.h: Patch from Ulrich Eckhardt fixing a wrong
5207
	_STLP_CALL specification on member operators and some cosmetic changes.
5208
5209
2005-02-22  Petr Ovtchenkov  <ptr@island...>
5210
5211
	* test/unit/limits_test.cpp: wchar_t is treated as signed, except when it
5212
	equiv to unsigned short on Wins systems.
5213
5214
	* Repository: STLport 5.0 RC2
5215
5216
2005-02-20  Francois Dumont  <dums@stlport...>
5217
5218
	* Add many private definition of copy constructor and assignment operators
5219
	to avoid very anoying warnings under some compilers (MSVC 7.0 7.1).
5220
5221
	* build/Makefiles/gmake/cygmin/sys.mak, test/unit/string_test.cpp:
5222
	Mingw fixes thanks Shura Zam.
5223
5224
2005-02-19  Francois Dumont  <dums@stlport...>
5225
5226
	* stlport/stdexcept: Removal of a MSVC 7.0 and 7.1 workaround. Those compilers
5227
	have a bug resulting in the generation of very long compiler message as
5228
	soon as a simple compiler warning or error occur. Those messages are
5229
	template instanciation context of previous disabled warning. Warning message
5230
	are correctly disable but template instanciation context is kept until
5231
	an enable warning or an error happen. There is nothing to do against that
5232
	at STLport level except fixing or disabling warnings for unit tests build.
d26635e by complement at 2005-11-01 5233
7fe9a66 by ptr at 2005-04-18 5234
	* build/Makefiles/nmake/vc70.mak: Add missing file.
d26635e by complement at 2005-11-01 5235
7fe9a66 by ptr at 2005-04-18 5236
2005-02-18  Francois Dumont  <dums@stlport...>
5237
5238
	* stlport/stl/_hashtable.h, _unordered_set.h, _unordered_map.h: Code review
5239
	based on the 12 April 2004 Technical Report document. Add missing hash policy
5240
	and bucket_size methods. Fix of the rehash method behavior. erase method
5241
	bug fix.
5242
5243
2005-02-14  Francois Dumont  <dums@stlport...>
5244
5245
	* stlport/string, /stl/_string.h: Modification of the include schema.
5246
	_string_io.h no more included from _string.h to avoid circular headers
5247
	dependencies as basic_string class is used in iostream implementation.
5248
	This headers is now included from the Standard string header. Useless 
5249
	cctype include removed from _string.h. _string_hash.h also moved from
5250
	_string.h to string for consistency.
5251
5252
	* stlport/stl/_complex.c: Add of the _string_io.h header include that
5253
	was missing after string include schema modification.
5254
5255
	* stlport/stl/_string_base.h, _string.h: basic_string move traits STLport
5256
	struct definition do not depends anymore on the _String_base struct to
5257
	make definition more clear.
5258
5259
2005-02-08  Francois Dumont  <dums@stlport...>
5260
5261
	* stlport/stl/_config.h: Fix endianness for AMD 64 thanks Karol
5262
	Szkudlarek.
5263
5264
2005-02-07  Boris Fomitchev  <boris@stlport...>
d26635e by complement at 2005-11-01 5265
7fe9a66 by ptr at 2005-04-18 5266
	* stlport/stl/_config_compat_post.h, stlport/stl/_relops_hash_cont.h 
5267
	stlport/stl/_list.h, stlport/stl/_slist.h, stlport/stl/_map.h, 
5268
	stlport/stl/_set.h: 4.6 compatibility fix
5269
5270
2005-02-04  Francois Dumont  <dums@stlport...>
5271
5272
	* stlport/stl/_alloc.c: Fix of the _S_refill method in the lock free 
5273
	implementation thanks Felix Wyss.
5274
5275
	* stlport/stl/_hashtable.h: _M_get_elem_ite set as static when possible
5276
	to fix a MSVC6 problem thanks Michael Fink report.
5277
5278
	* stlport/new, config/stl_evc.h: EVC patch for MFC support from Michael Fink.
5279
5280
	* build/Makefiles/nmake/evc3.mak, evc4.mak: Warning level raised to 4
5281
	by Michael Fink.
5282
5283
	* doc/README.evc3, README.evc4 doc update from Michael Fink.
5284
5285
	* src/vc_warning_disable.h: Add warning 4201 and 4214 disabling for EVC.
5286
5287
2005-01-31  Francois Dumont  <dums@stlport...>
5288
5289
	* Mac OS X portage thanks Zdenek Nemec.
5290
5291
	* stlport/stl/_hashtable.c: Fix of the _M_copy_from method thanks Jay.
5292
5293
	* stlport/stl/_vector.c: Fix of the _M_insert_fill_aux method thanks
5294
	Mike Roberts report.
5295
5296
	* test/unit/unordered_test.cpp: Add of a test for the hashtable fix above.
5297
5298
	* src/vc_warning_disable.h: Add of the missing 4503 warning disable for MSVC6.
5299
5300
	* test/unit/nmake-vc-common.mak: Add of the _STLP_DEBUG_UNINITIALIZED macro
5301
	definition for the debug and stldebug rules.
5302
5303
2005-01-28  Francois Dumont  <dums@stlport...>
5304
5305
	* Application of a patch from Michael Fink for EVC MIPS.
5306
5307
2005-01-27  Francois Dumont  <dums@stlport...>
5308
5309
	* stlport/deque, list, map, set, slist, stack, valarray: _STLP_WHOLE_VENDOR_STD
5310
	replaced by the official _STLP_IMPORT_VENDOR_STD macro.
d26635e by complement at 2005-11-01 5311
7fe9a66 by ptr at 2005-04-18 5312
	* stlport/stl/_algobase.h: Add find algo overload for char* and const char* 
5313
	forwarding the call to the memchr C function thanks Jim Xochellis report.
d26635e by complement at 2005-11-01 5314
7fe9a66 by ptr at 2005-04-18 5315
	* test/unit/find_test.cpp: Add check for the new find overload.
d26635e by complement at 2005-11-01 5316
7fe9a66 by ptr at 2005-04-18 5317
	* test/unit/cmath_test.cpp: Fix of the atan and atan2 tests to avoid precision
5318
	problems.
d26635e by complement at 2005-11-01 5319
7fe9a66 by ptr at 2005-04-18 5320
	* test/unit/ptrspec_test.cpp: Add check for containers of function pointers and
5321
	member function pointers.
5322
5323
	* test/unit/set_test.cpp: Add check for equal_range method when the search value
5324
	is not in the set.
5325
5326
	* stlport/stl/_tree.h: Fix equal_range implementation thanks Grisha Spivak report.
5327
5328
	* stlport/stl/_vector.h, _vector.c: Fix of the movable types implementation thanks
5329
	Mike Roberts report.
5330
5331
	* test/unit/mvctor_test.cpp: Add of a test case for vector class.
d26635e by complement at 2005-11-01 5332
7fe9a66 by ptr at 2005-04-18 5333
2005-01-25  Francois Dumont  <dums@stlport...>
5334
5335
	* stlport/stl_user_config.h: Pointer specialization feature is now off 
5336
	by default as it do not handle pointer to function and pointer to member
5337
	methods correctly yet. Feature documentation has been updated to report
5338
	this limitation.
d26635e by complement at 2005-11-01 5339
7fe9a66 by ptr at 2005-04-18 5340
	* src/ctype.h: removal of the '>= 0' check for wchar_t variables reported 
5341
	as a always true condition by gcc.
d26635e by complement at 2005-11-01 5342
7fe9a66 by ptr at 2005-04-18 5343
	* stlport/stl/_hashtable.c: Removal of an unused variable in hashtable::resize
5344
	method thanks Jeff Grills report.
d26635e by complement at 2005-11-01 5345
7fe9a66 by ptr at 2005-04-18 5346
	* stlport/stl/_algo.c: Fix of the search_n algo thanks Jim Xochellis report.
5347
5348
2005-01-24  Francois Dumont  <dums@stlport...>
5349
5350
	* Some more warning fixes. Mostly add of missing char_traits::to_char_type calls.
d26635e by complement at 2005-11-01 5351
7fe9a66 by ptr at 2005-04-18 5352
2005-01-22  Francois Dumont  <dums@stlport...>
5353
5354
	* stlport/stl/_string_workaround.h, debug/_string_workaround.h: Fix of the
5355
	call broadcast to the base class. Non debug workaround always call non debug
5356
	base class methods, debug workaround always calls debug base class methods.
5357
5358
	* Many fixes to avoid warnings using MSVC in level 4 warnings:
5359
		- while (true) replaced by for(;;) which do not produce the conditional
5360
		expression is constant warning
5361
		- removal of unused parameters
5362
		- modification of some template function signature to keep the character type
5363
		information and avoid the wchar_t to char type warning which was surely an
5364
		important warning for the wide streams support.
d26635e by complement at 2005-11-01 5365
7fe9a66 by ptr at 2005-04-18 5366
	* stlport/stl/_monetary.c: removal of the call to the ctype::widen method 
5367
	on the result of the moneypunct<_CharT, false>::decimal_point call as this
d26635e by complement at 2005-11-01 5368
	method is already supposed to return a wide character. 
7fe9a66 by ptr at 2005-04-18 5369
5370
2005-01-19  Francois Dumont  <dums@stlport...>
5371
5372
	* src/msvc_warning_disablers.h: unused file, removed.
5373
5374
	* test/unit/logic_test.cpp: Fix of the tests to avoid warning regarding int
5375
	to bool cast.
5376
5377
	* stlport/stl/pointers/_deque.h, _list.h: Fix of the exported class under MSVC
5378
	compiler thanks Timothy Tenebekov report.
5379
5380
	* build/test/unit/nmake-vc-common.mak, nmake-vc6.mak, nmake-vc70.mak: Modification
d26635e by complement at 2005-11-01 5381
	of the make files to avoid useless inclusion of vc_warning_disable.h file for
7fe9a66 by ptr at 2005-04-18 5382
	MSVC.Net 2003 and MSVC 8 compilers.
5383
5384
	* src/locale_impl.h: Export of the locale facets container for MSVC compilers.
5385
5386
	* src/vc_warning_disable.h: Modification to limit the number of disables depending
5387
	on the compiler.
5388
5389
2005-01-18  Francois Dumont  <dums@stlport...>
5390
5391
	* stlport/stl/_algo.c: Modification of the stable_partition implementation
5392
	to limit the size of the allocated temporary buffer of the begin and end
d26635e by complement at 2005-11-01 5393
	of the range are already at the right place thanks a Stephen Howe idear.
5394
7fe9a66 by ptr at 2005-04-18 5395
	* build/test/unit/nmake-vc-common.mak, nmake-evc-common.mak: Removal of the 
5396
	_STLP_USE_AUTO_LINK macro which is now the default.
5397
5398
2005-01-14  Francois Dumont  <dums@stlport...>
5399
5400
	* stlport/stl/_windows.h, char_traits.h, src/c_locale_win32/c_locale_win32.c:
5401
	Patch from Patrick Bergeron to support 64 bits compilation under Windows using
5402
	VC8.
d26635e by complement at 2005-11-01 5403
7fe9a66 by ptr at 2005-04-18 5404
	* stlport/stl/boost_type_traits.h: boost support check and fixing.
5405
5406
2005-01-13  Francois Dumont  <dums@stlport...>
5407
5408
	* stlport/stl/_algobase.h: Improvment of the iter_swap algo to use the swap
5409
	method when possible thanks David Abrahams and Aleksey Gurtovoy great book
5410
	introduction.
5411
5412
	* stlport/stl/_alloc.h: Deactivation of the lock free allocator implementation
5413
	not mature enough to be release yet.
d26635e by complement at 2005-11-01 5414
7fe9a66 by ptr at 2005-04-18 5415
	* stlport/stl/_uninitialized.h: Fix of non Standard algo signature:
5416
			- uninitialized_fill_n
d26635e by complement at 2005-11-01 5417
5418
	* stlport/stl/_iterator_base.h: Fix of non Standard algo signature:
7fe9a66 by ptr at 2005-04-18 5419
			- distance
d26635e by complement at 2005-11-01 5420
7fe9a66 by ptr at 2005-04-18 5421
	* stlport/stl/_algobase.h: Fix of non Standard algo signature:
5422
			- fill_n
d26635e by complement at 2005-11-01 5423
7fe9a66 by ptr at 2005-04-18 5424
	* stlport/stl/_algo.h: Fix of non Standard algo signature:
5425
			- rotate
5426
			- generate_n
d26635e by complement at 2005-11-01 5427
7fe9a66 by ptr at 2005-04-18 5428
	* stlport/stl/_string.h, debug/_string.h: Fix of the non Standard basic_string
5429
	default constructor.
d26635e by complement at 2005-11-01 5430
5431
	* stlport/stl/_algobase.h, _function.h, _iterator_base.h, _move_construct_fwk.h,
5432
	_ptr_specialize.h, char_traits.h, debug/_debug.h: Fix of the macro name check
7fe9a66 by ptr at 2005-04-18 5433
	before including type_traits.h.
d26635e by complement at 2005-11-01 5434
7fe9a66 by ptr at 2005-04-18 5435
2005-01-08  Francois Dumont  <dums@stlport...>
5436
5437
	* stlport/stl/_codecvt.h: Add of a missing export declaration for the wchar_t
5438
	specialization of the codecvt_byname class.
5439
5440
	* src/stlport.rc: improvement of the information included in the ressource file.
5441
	Especially add of the compiler options.
5442
5443
	* stlport/stl/_stlport_version.h: Creation of a special file containing all the
d26635e by complement at 2005-11-01 5444
	version informations; very useful to avoid problem with the ressource compiler.
7fe9a66 by ptr at 2005-04-18 5445
5446
	* stlport/stl/_config.h: Removal of the unused _STLP_USING_VENDOR_STD macro.
5447
	Inclusion of the _stlport_version.h file. Update of the comment explaining why
5448
	_STLP_USE_DECLSPEC is undefined when user do not use iostreams.
5449
5450
	* build/Makefiles/nmake/vc-common.mak, evc-common.mak, gmake/gcc.mak: Improvement
5451
	of the ressource compiler options.
5452
5453
2005-01-06  Francois Dumont  <dums@stlport...>
5454
5455
	* stlport/config/stl_msvc.h: Move the _STLP_DONT_RETURN_VOID configuration
5456
	macro to the specific MSVC6 compiler as it is the only one that has ever
5457
	reveal this bug.
5458
5459
2005-01-05  Francois Dumont  <dums@stlport...>
5460
5461
	* stlport/stl/_string_sum_methods.h: Fixes reported by gcc.
5462
5463
2005-01-04  Francois Dumont  <dums@stlport...>
5464
5465
	* doc/README.evc3: patched by Michael Fink
5466
5467
	* build/lib/configure.bat: warning fix thanks Michael Fink.
5468
5469
	* build/test/unit/nmake-src-prefix.mak: fixed thanks Michael Fink.
5470
5471
2005-01-02  Francois Dumont  <dums@stlport...>
5472
d26635e by complement at 2005-11-01 5473
	* stlport/stl/_string_sum.h, _string_operators.h: Fix of an assignment bug
7fe9a66 by ptr at 2005-04-18 5474
	in the append method taking a C string wrapper. Modification of the __bstr_sum
d26635e by complement at 2005-11-01 5475
	get_allocator method to avoid a useless allocation.
7fe9a66 by ptr at 2005-04-18 5476
5477
	* build/lib/nmake-src-prefix.mak: Add of missing rules for .c and .rc file type.
5478
5479
2004-12-29  Francois Dumont  <dums@stlport...>
5480
5481
	* stlport/stl/_hashtable.c: Fix missing allocator argument in new slist
d26635e by complement at 2005-11-01 5482
	construction and bad number of buckets thanks See Wong report.
5483
7fe9a66 by ptr at 2005-04-18 5484
	* test/unit/unordered_test.cpp: Add of a test to report the previous
5485
	problem.
5486
5487
	* build/Makefiles/nmake/vc-common.mak, evc-common.mak: Generalization of the 
5488
	/DMACRO compiler command rather than /D "MACRO".
5489
5490
	* test/unit/string_test.cpp: Creation of a new test case for string template
5491
	expression.
5492
5493
	* stlport/stl/_string_sum.h, _string_sum_methods.h: Fixing of many bugs in the
5494
	string template expressions implementation.
d26635e by complement at 2005-11-01 5495
7fe9a66 by ptr at 2005-04-18 5496
	* stlport/stl/_tree.c: Add of a comment in the _M_increment method explaining
5497
	a surprising checks thanks Ulrich Eckhardt.
5498
5499
2004-12-24  Petr Ovtchenkov  <ptr@island...>
5500
5501
	* build/Makefiles: makesystem moved here from src/Makefiles
5502
5503
	* build/lib: makefiles moved here from src catalog.
5504
5505
	* build/test/unit: makefiles moved here from test/unit catalog.
5506
5507
	* INSTALL: updated.
5508
5509
	* README: updated.
5510
5511
2004-12-23  Francois Dumont  <dums@stlport...>
5512
5513
	* stlport/stl/_vector.h, _vector.c: Fix of the code for movable types
5514
	in call to push_back or insert of a value in case of auto referencing
5515
	thanks Benjamin Redelings.
d26635e by complement at 2005-11-01 5516
7fe9a66 by ptr at 2005-04-18 5517
	* stlport/stl/_hashtable.c: Fix of the _M_copy method thanks Timothy
5518
	Tenebekov.
d26635e by complement at 2005-11-01 5519
7fe9a66 by ptr at 2005-04-18 5520
2004-12-22  Francois Dumont  <dums@stlport...>
5521
5522
	* stlport/stl/debug/_string.h: Fix of missing scopes thanks arabesc and
5523
	Benjamin Redelings
d26635e by complement at 2005-11-01 5524
7fe9a66 by ptr at 2005-04-18 5525
	*stlport/config/stl_gcc.h: include schema fix for gcc >= 4.0.0 thanks 
5526
	Oliver Stoeneberg
d26635e by complement at 2005-11-01 5527
7fe9a66 by ptr at 2005-04-18 5528
2004-12-21  Francois Dumont  <dums@stlport...>
5529
5530
	* stlport/stl/_hashtable.c: Fix copy method thanks KL report.
d26635e by complement at 2005-11-01 5531
7fe9a66 by ptr at 2005-04-18 5532
	* stlport/stl/_vector.h, _deque.h: Fix implementation for vector of 
5533
	movable objects when calling erase of a null range thanks to arabesc report.
d26635e by complement at 2005-11-01 5534
7fe9a66 by ptr at 2005-04-18 5535
	* stlport/stl/_string.h, _string_workaround.h, debug/_string.h, 
d26635e by complement at 2005-11-01 5536
	debug/_string_workaround.h: Implementation of the MSVC6 template method bug
5537
	workaround exclusively for MSVC6 and not anymore for all compilers.
5538
7fe9a66 by ptr at 2005-04-18 5539
2004-12-21  Petr Ovtchenkov  <ptr@island...>
5540
5541
	* src: untested (lost support) .mak and installation files moved into
5542
	initial_mak catalog.
5543
5544
	* explore, src: explore catalog moved into src catalog. Makefiles from
d26635e by complement at 2005-11-01 5545
	explore catalog become main makesystem of STLport.
7fe9a66 by ptr at 2005-04-18 5546
5547
2004-12-20  Francois Dumont  <dums@stlport...>
5548
5549
	* stlport/stl/_hashtable.h: Fix of the const begin and end methods of the
5550
	new implementation thanks Timothy Tenebekov report.
5551
5552
2004-12-17  Francois Dumont  <dums@stlport...>
5553
5554
	* stlport/cmath, cstdlib, stl/_cmath.h, config/stl_msvc.h: Configuration
5555
	fixes for .Net 2002.
5556
5557
2004-12-17  Boris Fomitchev  <boris@stlport...>
5558
5559
	* char_traits.h: fixed _STLP_NO_WCHAR_T case
d26635e by complement at 2005-11-01 5560
7fe9a66 by ptr at 2005-04-18 5561
	* src/common_macros.mak: deleted locale.cpp
d26635e by complement at 2005-11-01 5562
7fe9a66 by ptr at 2005-04-18 5563
2004-12-17  Francois Dumont  <dums@stlport...>
5564
5565
	* src/explore/Makefiles/nmake/app/rules-install-a.mak, rules-install-so.mak
5566
	lib/rules-install-so.mak: Creation of the install-shared and install-static
5567
	from Michael Fink.
5568
5569
2004-12-16  Francois Dumont  <dums@stlport...>
5570
5571
	* stlport/stl/debug/_debug.h, _debug.c: Creation of functions to change iterators
5572
	list owner.
d26635e by complement at 2005-11-01 5573
7fe9a66 by ptr at 2005-04-18 5574
	* stlport/stl/debug/_list.h, _slist.h: Modification of the iterator owners in the
5575
	splice, splice_after and merge method which do not invalidate iterators but only
5576
	move them from a [s]list to an other.
d26635e by complement at 2005-11-01 5577
7fe9a66 by ptr at 2005-04-18 5578
	* stlport/stl/_relops_hash_cont.h: removal of the == operator on hashed containers
5579
	This operator is just impossible, or at least very complicated, to implement 
5580
	for this container which do not require any ordering operation on the type used
5581
	to instanciate the container.
d26635e by complement at 2005-11-01 5582
7fe9a66 by ptr at 2005-04-18 5583
	* test/unit/hash_test.cpp: Addition of a commented test showing why the == operator
5584
	is invalid on hashed constainers.
d26635e by complement at 2005-11-01 5585
7fe9a66 by ptr at 2005-04-18 5586
	* stlport/stl/_hashtable.h: Modification of the hashtable implementation based
5587
	on a slist and a vector. Compared to the previous one the advantages are:
5588
		- lighter hashtable::iterator
5589
		- iterator increment operation do no require call to the hash function.
d26635e by complement at 2005-11-01 5590
		- no more special implementation for the debug mode, once validated debug/_hashtable.h
5591
	        will be removed.
7fe9a66 by ptr at 2005-04-18 5592
	The drawback is a small overhead on the insert/erase methods.
d26635e by complement at 2005-11-01 5593
7fe9a66 by ptr at 2005-04-18 5594
	* stlport/unordered_set, unordered_map: Introduction of the almost Standard hash containers.
d26635e by complement at 2005-11-01 5595
	The major difference with hash_set or hash_map containers from SGI is the load factor
7fe9a66 by ptr at 2005-04-18 5596
	that gives the user the ability to change the container ratio of the number of elements per
5597
	bucket.
d26635e by complement at 2005-11-01 5598
7fe9a66 by ptr at 2005-04-18 5599
2004-12-13  Francois Dumont  <dums@stlport...>
5600
5601
	* stlport/stdio.h: patch from Michael Fink to avoid warning on the EVC platform.
5602
5603
	* doc/evc_workaround.txt: Documentation file from Ulrich Eckhardt about the EVC 
5604
	workaround to avoid annoying warnings.
5605
5606
	* stlport/typeinfo: Patch from Ulrich Eckhardt to fix missing type_info struct
5607
	under MSVC6 and EVC and also identation.
5608
5609
2004-12-10  Francois Dumont  <dums@stlport...>
5610
5611
	* stlport/stl/_collate.h, _locale.h: fix of the __locale_do_operator_call internal
5612
	function to make traits and allocator also template parameters.
5613
5614
	* stlport/stl/_locale.h, _collate.h, stlport/config/stl_msvc.h, src/locale.cpp, 
5615
	src/locale_impl.h: restoration of the MSVC6 workaround for the locale class to 
5616
	correctly handle the member template methods.
d26635e by complement at 2005-11-01 5617
7fe9a66 by ptr at 2005-04-18 5618
2004-12-09  Francois Dumont  <dums@stlport...>
5619
5620
	* stlport/stl/_messages_facets.h: fixed messages_base::catalog from long typedef
5621
	to int thanks Ulrich Eckhardt report.
d26635e by complement at 2005-11-01 5622
7fe9a66 by ptr at 2005-04-18 5623
	* stlport/stl_user_config.h, config/stl_msvc.h: addition of the _STLP_VERBOSE_AUTO_LINK 
5624
	config macro to make the automatic linking feature more verbose thanks Ulrich Eckhardt
5625
	patch.
d26635e by complement at 2005-11-01 5626
7fe9a66 by ptr at 2005-04-18 5627
	* stlport/exception: Add check of the _STLP_HAS_SPECIFIC_PROLOG_EPILOG macro before
5628
	including _msvc_warning_off.h to avoid bad resulting warning status when the _epilog.h
5629
	header is not included thanks Gail (baker88) report.
d26635e by complement at 2005-11-01 5630
7fe9a66 by ptr at 2005-04-18 5631
	* stlport/cassert, cerrno, csignal, ctype.h, cwctype, stdarg.h, stdlib.h, string.h,
5632
	config/stl_evc.h: Patch from Michael Fink to fix compilation problem using ressource
5633
	compiler for evc3 and evc4 and problems with cerrno and cassert inclusions reported
5634
	by Ulrich Eckhardt.
5635
5636
2004-12-01  Petr Ovtchenkov  <ptr@island...>
5637
5638
	* stlport/stdexcept: removes some warnings regarding the exception class being derived
5639
	from a non-dll interface class on evc4. Michael Fink contribution.
5640
5641
	* stlport/stl/_cmath.h: push/pop warning level for VCs. Michael Fink contribution.
5642
5643
	* src/_stdio_file.h: Evc4 uses an ugly hack to implement file IO using a FILECE structure
5644
	representing the internal FILE structure. For evc3 Michael Fink implemented a much simpler
5645
	way that also works for evc4.
5646
5647
	* stlport/config/stl_evc.h, stl_msvc.h, stlcomp.h: separate config stuff for stl_evc.h
5648
	and stl_msvc.h. Now all Windows CE specific defines are in stl_evc.h only.
5649
	Michael Fink contribution.
5650
5651
	* stlport/stl/_codecvt.h, _ctype.h, _messages_facets.h, _monetary.h: add friend class
5652
	_Locale_impl.
5653
5654
	* stlport/stl/_num_get.h, _num_put.h, _numpunct.h, _time_facets.h: ditto.
5655
5656
2004-11-30  Petr Ovtchenkov  <ptr@island...>
5657
5658
	* src/explore/configure.bat: added quotes. Thanks Ulrich Eckhardt and Michael Fink.
5659
5660
	* stlport/stl/_locale.h, src/locale_impl.h, src/locale_impl.cpp: added _STLP_DECLSPEC
5661
	and _STLP_CALL for some functions. Thanks Ulrich Eckhardt.
5662
5663
	* stlport/stl/_collate.h, _numpunct.h, _monetary.h, _codecvt.h, _time_facets.h:
5664
	_Locale_imp made friend without relation to _STLP_LEAKS_PEDANTIC. Thanks Ulrich Eckhardt.
5665
5666
	* stlport/stl/_locale.h: remove body of protected constructor to avoid warnings.
5667
	Thanks Kidman and Ulrich Eckhardt.
5668
5669
	* src/locale_impl.cpp: use simple resize of facets_vec; reserve space for facets_vec to be
5670
	sure that allocation don't throw exception during vector resize in insert_*_facets functions.
5671
	Thanks Ulrich Eckhardt.
5672
5673
2004-11-29  Petr Ovtchenkov  <ptr@island...>
5674
5675
	* stlport/stl/_cmath.h: patch from Michael Fink applied.
5676
5677
	* stlport/stl/_locale.h: remove enclose class spec to avoid VC confuse.
5678
	Thanks Ulrich Eckhardt.
5679
5680
	* src/locale_impl.cpp, src/locale_impl.h: remove bogus _STLP_CALL decls.
5681
	Thanks Ulrich Eckhardt.
5682
5683
2004-11-27  Petr Ovtchenkov  <ptr@island...>
5684
5685
	* stlport/stl/_threads.h: direct access to _M_ref_count isn't MT-safe;
5686
	counter value returned by _M_incr and _M_decr methods only.
5687
5688
	* stlport/stl/_rope.h, stlport/stl/_rope.c: adaptation to changes above;
5689
	removed __GC macro dependent code, that was never defined in present
5690
	sources.
5691
5692
	* src/locale.cpp, locale_impl.cpp, locale_impl.h: general revision of locale
5693
	implementation; code clean, corrected, concepts fixed, errors fixed,
5694
	new bugs added.
d26635e by complement at 2005-11-01 5695
7fe9a66 by ptr at 2005-04-18 5696
	* src/ctype.cpp, facets_byname.cpp, locale_catalog.cpp, messages.cpp, monetary.cpp:
5697
	ditto.
5698
5699
	* stlport/stl/_codecvt.h, _collate.h, _ctype.h, _locale.h, _messages_facets.h:
5700
	ditto.
d26635e by complement at 2005-11-01 5701
7fe9a66 by ptr at 2005-04-18 5702
	* _monetary.h, _num_get.h, _num_put.h, _numpunct.h, _time_facets.h: ditto.
5703
5704
	* src/locale_nonclassic.h: removed due to code revision.
5705
5706
	* src/explore/Makefile.inc: locale.cpp is directly included into locale_impl.cpp.
5707
5708
	* src/explore/gcc.mak, test/unit/gcc.mak: use _STLP_LEAKS_PEDANTIC before release
5709
	by default.
5710
5711
2004-11-24  Francois Dumont  <dums@stlport...>
5712
5713
	* stlport/stl/_cmath.h: Fix of the abs definition for the EVC platform
5714
	thanks Michael Fink.
5715
5716
	* stlport/stl/_cmath.h: Fix of the Internal Compiler Error from MSVC6
5717
	when defining math functions in the STLport namespace thanks Ulrich
d26635e by complement at 2005-11-01 5718
	Eckhardt and I.
7fe9a66 by ptr at 2005-04-18 5719
5720
	* stlport/stl/debug: Creation of a debug iterator traits used to make
5721
	an additional test when checking iterator deferencing status, on slist
5722
	before_begin iterators are not dereferenceable but were not detected
5723
	as so.
5724
5725
	* stlport/math.h, stdexcept: patches from Michael Fink to avoid warning 
5726
	on the EVC platform.
5727
5728
2004-11-22  Francois Dumont  <dums@stlport...>
5729
5730
	* src/explore/Makefiles/nmake/evc3.mak, evc4.mak: removal of the useless 
5731
	/DPLATFORM macro definition thanks Ulrich Eckhardt report and Michael Fink
5732
	patch.
5733
5734
	* stlport/cstdlib: extension of the div overload for long input up to MSVC7.1
5735
	thanks Michael Fink report.
5736
5737
	* test/unit/string_test.cpp: patch from Michael Fink for EVC which has limited
5738
	support of the WaitForMultipleObjects API function.
5739
5740
	* stlport/cstdlib, cwchar, using/cstring: patch from Michael Fink to remove
5741
	imports of missing native C functions.
5742
5743
2004-11-16  Francois Dumont  <dums@stlport...>
5744
5745
	* src/explore/configure.bat: Add of the --rtl-static and --rtl-dynamic
5746
	configuration options to force use of static or dynamic C runtime thanks
5747
	Michael Fink.
5748
5749
	* stlport/config/stl_msvc.h: undef of the _STLP_USING_CROSS_NATIVE_RUNTIME_LIB
5750
	for the evc platform that only have the static C runtime version thanks
5751
	Michael Fink.
5752
5753
	* stlport/config/stl_bc.h, stl_dmc.h, stl_solaris.h: Removal of all references
5754
	to the deprecated _STLP_NO_OWN_IOSTREAMS and _STLP_NO_NEW_IOSTREAMS macros.
5755
5756
	* stlport/cmath, stl/_cmath.h: Modification of the import of the pow function
5757
	for MSVC6 that has a bugged overload thanks Michael Fink report.
d26635e by complement at 2005-11-01 5758
7fe9a66 by ptr at 2005-04-18 5759
2004-11-09  Francois Dumont  <dums@stlport...>
5760
5761
	* test/unit/config_test.cpp: Creation of a test case to check correct
5762
	platform/compiler configuration.
5763
5764
	* stlport/config/stl_msvc.h: Definition of the _STLP_HAS_NATIVE_FLOAT_ABS
5765
	now start with MSVC6.
d26635e by complement at 2005-11-01 5766
7fe9a66 by ptr at 2005-04-18 5767
	* stlport/cstdlib, stl/_cmath.h: Addition of some missing math function
5768
	 overloads for MSVC6.
d26635e by complement at 2005-11-01 5769
7fe9a66 by ptr at 2005-04-18 5770
2004-11-05  Francois Dumont  <dums@stlport...>
5771
5772
	* stlport/config/stl_msvc.h: Definition of the _STLP_HAS_NATIVE_FLOAT_ABS
5773
	starting with MSVC .Net 2002 thanks Kevin Bluck report.
5774
5775
	* test/unit/cmath_test.cpp: Creation of a test case to check correct import
5776
	and extensions of C functions.
5777
5778
2004-11-04  Petr Ovtchenkov  <ptr@island...>
5779
5780
	* src/explore/Makefiles: added templates CC.mak for SunPro's CC compilers;
5781
	ones should be checked and fixed with real compiler.
5782
5783
2004-11-04  Francois Dumont  <dums@stlport...>
5784
5785
	* stlport/stl/_function.h, _queue.h, _stack.h, _map.h, _iterator.h: 
5786
	restoration of the Standard names of the protected datas.
d26635e by complement at 2005-11-01 5787
7fe9a66 by ptr at 2005-04-18 5788
	* stlport/stl/_alloc.h, _alloc.c: implementation of a lock free version
5789
	of the default STLport node_allocator. Supported by the Win32 platform
5790
	for the moment.
d26635e by complement at 2005-11-01 5791
7fe9a66 by ptr at 2005-04-18 5792
	* src/ios.cpp, locale.cpp, locale_impl.cpp: use of atomic operations
5793
	under Win32 platform rather than using synchronisation primitives.
d26635e by complement at 2005-11-01 5794
7fe9a66 by ptr at 2005-04-18 5795
	* stlport/stl/_tree.h, _map.h, _set.h: creation of the erase_unique and
5796
	equal_range_unique methods to use the unicity information of the map and
5797
	set containers in binary tree searches.
5798
5799
	* stlport/stl/_string.h: Add _STLP_USE_NO_IOSTREAMS check beforing deciding
5800
	not to include _string.c thanks KL
d26635e by complement at 2005-11-01 5801
7fe9a66 by ptr at 2005-04-18 5802
2004-11-02  Francois Dumont  <dums@stlport...>
5803
5804
	* stlport/stl/pointers/_deque.h: Fix for the problem of the deque<void*>
5805
	instanciation thanks Alex Cosealin report
5806
5807
	* test/unit/ptrspec_test.cpp: Add of a test for the previous problem.
5808
5809
2004-10-31  Francois Dumont  <dums@stlport...>
5810
5811
	* stlport/stl/_rope.h: Fix of the apply_to_pieces qualification thanks Leeya.
5812
5813
	* test/unit/rope_test.cpp: New test case for the previous fix.
5814
5815
2004-10-30  Francois Dumont  <dums@stlport...>
5816
5817
	* src/explore/Makefiles/nmake/vc-common.mak: introductions of the LDFLAGS_A_REL
5818
	macro to fix config problem under VC71 and VC8 beta.
5819
5820
2004-10-29  Petr Ovtchenkov  <ptr@island...>
5821
5822
	* src/explore/Makefiles/gmake/app/gcc.mak: use -fPIC for gcc 2.95.x when build
5823
	application---this is a workaround for bug with running code in static constructors.
5824
5825
	* stlport/config/stl_gcc.h, stlport/stl/_config.h: force usage of mutex instead
5826
	of spinlock for gcc 2.95.x, due to problems with initialization of statics.
5827
	Initialization of mutex has variant with structure filling, while for spinlock
5828
	initialization function call required.
5829
5830
	* test/unit/locale_test.cpp: avoid static object for gcc 2.95.x, due to problems
5831
	with initialization of statics.
5832
5833
2004-10-27  Francois Dumont  <dums@stlport...>
5834
5835
	* stlport/stl/_config.h, _fstream.h, _ios.h, _istream.h, _monetary.h, _num_get.h,
5836
	_num_put.h, _ostream.h, _sstream.h, _streambuf.h, _string.h, _time_facets.h:
5837
	Restoration of the _STLP_NO_CUSTOM_IO feature removed after cleanup reported
5838
	in 2004-09-28 post from Petr.
5839
5840
	* stlport/stl/stl_user_config.h, _config.h, stl_msvc.h: reactivation of the 
5841
	auto link feature for MSVC but only if activated by the client. Moreover the
5842
	new implementation of this feature is more maintenable, stl_msvc.h won't have
5843
	to be edited at each STLport release.
5844
5845
	* test/unit/nmake-vc-common.mak, nmake-evc-common.mak: Adoption of the auto link
5846
	process.
5847
5848
2004-10-25  Francois Dumont  <dums@stlport...>
5849
5850
	* stlport/stl/_config.h: Introduction of the _STLP_DONT_USE_EXCEPTIONS which 
5851
	means that the client do not want to use the C++ exception feature. It is
5852
	different from the _STLP_NO_EXCEPTIONS which means that the compiler do not
5853
	support exceptions at all. The distinction is important for some macros definition.
d26635e by complement at 2005-11-01 5854
7fe9a66 by ptr at 2005-04-18 5855
	* test/unit: Modification of the _STLP_NO_EXCEPTIONS test to the more general
5856
	_STLP_USE_EXCEPTION macro.
5857
d26635e by complement at 2005-11-01 5858
	* stlport/stl/_ios_base.h, src/ios.cpp: rollback of the modifications of the
7fe9a66 by ptr at 2005-04-18 5859
	2004-10-24.
d26635e by complement at 2005-11-01 5860
7fe9a66 by ptr at 2005-04-18 5861
	* stlport/config/stl_msvc.h, stl_gcc.h: Those 2 compilers have a exception 
5862
	support switch, when exceptions are unactivated they now define
5863
	_STLP_DONT_USE_EXCEPTIONS rather than _STLP_NO_EXCEPTIONS.
d26635e by complement at 2005-11-01 5864
7fe9a66 by ptr at 2005-04-18 5865
2004-10-25  Petr Ovtchenkov  <ptr@island...>
5866
5867
	* stlport/stl/_sstream.c: cur direction missed in seekoff. Thanks David Obermann.
5868
5869
	* sstream_test.cpp: test for problem above.
5870
5871
2004-10-24  Francois Dumont  <dums@stlport...>
5872
5873
	* stlport/stl/_ios_base.h, src/ios.cpp: definition of the ios_base::failure
5874
	nested class only when exception support is activated.
d26635e by complement at 2005-11-01 5875
7fe9a66 by ptr at 2005-04-18 5876
	* stlport/stl/_deque.h, _deque.c: Modification of the deque implementation
5877
	to use the internal move framework.
d26635e by complement at 2005-11-01 5878
7fe9a66 by ptr at 2005-04-18 5879
	* test/unit/mvctor_test.cpp: New test case for the use of the move
5880
	framework within the deque container.
d26635e by complement at 2005-11-01 5881
7fe9a66 by ptr at 2005-04-18 5882
2004-10-21  Francois Dumont  <dums@stlport...>
5883
5884
	* stlport/stl/_iostring_stream.h: Simplification of the __stl_alloc_rebind
5885
	 overload to make it less ambiguous for the compilers using it.
d26635e by complement at 2005-11-01 5886
7fe9a66 by ptr at 2005-04-18 5887
2004-10-18  Francois Dumont  <dums@stlport...>
5888
5889
	* stlport/stl/_vector.h, _vector.c: Add of checks to know if a reference
5890
	is in *this before making a systematical copy of it.
5891
5892
2004-10-18  Petr Ovtchenkov  <ptr@island...>
5893
5894
	* stlport/stl/type_manips.h: replace template <> by macro.
5895
5896
	* stlport/stl/debug/_debug.h, _debug.c: __check_if_not_owner should return true
5897
	in case of incompatible types and do check different from __check_if_owner;
5898
	added message for check __check_if_not_owner.
5899
5900
	* test/unit/mvctor_test.cpp, test/unit/ptrspec_test.cpp: fix tests to satisfy
5901
	changes related to 23.1.1 Table 67 in stlport/stl/debug/_vector.h, _deque.h---see
5902
	record 2004-10-14 below.
5903
5904
2004-10-14  Francois Dumont  <dums@stlport...>
5905
5906
	* stlport/stl/debug/_iterator.h: Move of some _DBG_iter_base and _DBG_iter
5907
	methods implementation outside struct definition to fix call on incomplete 
5908
	type compile error generated by the call to the _Incrementable or _Dereferenceable
5909
	functions passing *this as input parameter thanks Alexey Sarytchev
d26635e by complement at 2005-11-01 5910
7fe9a66 by ptr at 2005-04-18 5911
	* test/unit/sstream_test.cpp, fstream_test.cpp: Fix of the tests on streambuf 
5912
	throwing exception for platform with no exception support.
5913
5914
	* stl/_string.h: Add of the missing compare methods on the basic_string 
5915
	implementation used by compilers supporting template methods thanks Patrick
5916
	Bennett report.
5917
5918
	* stlport/stl/debug/_vector.h, _deque.h: Add check on the insert range method, 
5919
	the inserted can not be pointing to the this instance where the insertion occur.
5920
5921
2004-10-13  Petr Ovtchenkov  <ptr@island...>
5922
5923
	* src/explore/Makefiles/gmake: a bit correction of compiled and installed names
5924
	of executables on *nix systems, see record 2004-09-29 by Francois.
5925
5926
2004-10-12  Francois Dumont  <dums@stlport...>
5927
5928
	* stlport/stl/_config.h: typo fix thanks KL
d26635e by complement at 2005-11-01 5929
7fe9a66 by ptr at 2005-04-18 5930
	* stlport/stl/_move_construct_fwk.h, _set.h, _map.h, _hash_set.h, _hash_map.h:
5931
	Extra semicolons removal thanks Wlodek Szafran reports.
5932
5933
2004-10-11  Petr Ovtchenkov  <ptr@island...>
5934
5935
	* stlport/stl/_rope.h: add typename.
5936
5937
2004-10-08  Francois Dumont  <dums@stlport...>
5938
5939
	* stlport/stl/_deque.h, _hashtable.h, _tree.h, _bvector.h: Specialization of the
5940
	__type_traits struct for the iterator types.
d26635e by complement at 2005-11-01 5941
7fe9a66 by ptr at 2005-04-18 5942
	* stlport/stl/_uninitialized.h, _vector.h: Relax of the rules to perform some 
5943
	optimizations, no more POD check, rather use of the trivial copy constructor, 
5944
	trivial assignment operator informations.
d26635e by complement at 2005-11-01 5945
7fe9a66 by ptr at 2005-04-18 5946
	* stlport/stl/_config.h, _epilog.h: Adoption of stlport as the official STLport
5947
	namespace when users cannot use the std namespace.
d26635e by complement at 2005-11-01 5948
7fe9a66 by ptr at 2005-04-18 5949
2004-10-07  Francois Dumont  <dums@stlport...>
5950
5951
	* stlport/stl/_list.h: Specialization of the __type_traits struct for list iterators.
5952
	Move of the == and != operators from the base iterator class to the iterator class
5953
	to make iterator of different list instanciation not comparable anymore.
d26635e by complement at 2005-11-01 5954
7fe9a66 by ptr at 2005-04-18 5955
	* stlport/stl/_slist.h: ditto.
d26635e by complement at 2005-11-01 5956
7fe9a66 by ptr at 2005-04-18 5957
2004-10-06  Francois Dumont  <dums@stlport...>
5958
5959
	* stlport/stl/_rope.h, _rope.c: Code review, use of general STLport tools rather
5960
	than specific rope ones. Use of compile time checks rather than runtime.
d26635e by complement at 2005-11-01 5961
7fe9a66 by ptr at 2005-04-18 5962
	* stlport/stl/_bvector.h: fix to make the vector<bool> specialization movable
5963
	thanks a Kelly Thompson report.
d26635e by complement at 2005-11-01 5964
7fe9a66 by ptr at 2005-04-18 5965
2004-10-05  Francois Dumont  <dums@stlport...>
5966
5967
	* src/explore/Makefiles/nmake: Application of a patch from Michael Fink to simplify
5968
	the evc make system.
d26635e by complement at 2005-11-01 5969
7fe9a66 by ptr at 2005-04-18 5970
	* doc/README.evc4: New version from Zdenek Nemec.
d26635e by complement at 2005-11-01 5971
7fe9a66 by ptr at 2005-04-18 5972
2004-10-04  Francois Dumont  <dums@stlport...>
5973
5974
	* test/unit/type_traits_test.cpp: A new test case to check behavior of
5975
	the numerous helper functions from type_traits.h and type_manips.h.
d26635e by complement at 2005-11-01 5976
7fe9a66 by ptr at 2005-04-18 5977
	* stlport/stl/type_traits.h: Fix of some bugs and addition of the __type_traits
5978
	specializations of const, volatile and const volatile native types.
d26635e by complement at 2005-11-01 5979
7fe9a66 by ptr at 2005-04-18 5980
	* stlport/stl/type_manips.h: Modification of the __bool2type default value
fa5f907 by dums at 2006-06-19 5981
	so that it consider any value as true and only the 0 value false.
d26635e by complement at 2005-11-01 5982
7fe9a66 by ptr at 2005-04-18 5983
	* stlport/config/stl_msvc.h, stlport/stl/_config.h: Modification of the STLport
5984
	std equivalent namespace to be sure that the user rebuild correctly the STLport 
5985
	library when he forces the use of the dynamic or static library.
d26635e by complement at 2005-11-01 5986
7fe9a66 by ptr at 2005-04-18 5987
	* src/explore/Makefiles/nmake/lib/vc-common.mak, app/vc-common.mak: Creation
5988
	of the STLP_BUILD_FORCE_STATIC_RUNTIME that forces use of the static version
5989
	of the native runtime.
d26635e by complement at 2005-11-01 5990
7fe9a66 by ptr at 2005-04-18 5991
	* test/unit: fix of some tests that failed to compile using the 
5992
	_STLP_NO_ANACHRONISMS macro.
d26635e by complement at 2005-11-01 5993
7fe9a66 by ptr at 2005-04-18 5994
2004-09-30  Petr Ovtchenkov  <ptr@island...>
5995
5996
	* test/regression: catalog removed---it obsolete and unsupported; use
5997
	test/unit tests instead; all tests from test/regression was moved in test/unit,
5998
	sometimes in redesigned form.
5999
6000
2004-09-29  Francois Dumont  <dums@stlport...>
6001
6002
	* stlport/stl/_string_io.c: Removal of the native library specific calls of 
d26635e by complement at 2005-11-01 6003
	use_facet, only the STLport standard one is used.
6004
7fe9a66 by ptr at 2005-04-18 6005
	* stlport/stl/_alloc.h, _alloc.c, src/dll_main.cpp: Implementation of a clean
6006
	process for the node_alloc allocator. This clean is active only when 
6007
	_STLP_LEAKS_PEDANTIC is defined and you are using STLport as a dynamic
6008
	library under Win32.
d26635e by complement at 2005-11-01 6009
7fe9a66 by ptr at 2005-04-18 6010
	* src/explore: Updates of several makefiles to conform to the new library
6011
	and binary naming convention.
6012
6013
	* src/c_locale_win32/c_locale_win32.c: fix of the message facet name management
6014
	that was generating a memory leak.
6015
6016
2004-09-29  Petr Ovtchenkov  <ptr@island...>
6017
6018
	* stlport/stl/char_traits.h: WinCE seems don't declare off_t; thanks Michael Fink.
6019
6020
2004-09-28  Petr Ovtchenkov  <ptr@island...>
6021
6022
	* Repository: iostreams and string wrapper mode removed, due to ones has
6023
	a lot of restrictions in usage and frequently lead to hard recognized problems.
6024
	Tonns of *_STREAMS macro replaced by _STLP_USE_NO_IOSTREAMS or _STLP_NO_IOSTREAMS
6025
	as configuration macro; *NATIVE_STRING macro removed by the same reasons.
6026
6027
2004-09-27  Petr Ovtchenkov  <ptr@island...>
6028
6029
	* test/unit/gcc.mak: fix stlport library name for STLP_DEBUG mode for Solaris,
6030
	thanks for separate namespaces in normal and STLP_DEBUG mode, see record
6031
	2004-09-10 below.
6032
6033
2004-09-24  Francois Dumont  <dums@...>
6034
6035
	* stlport/config/stl_gcc.h: Fix of the relative include path used to access the
6036
	native gcc headers. Before version 3.4.0 the 0 patch level was not part of the 
6037
	include	path.
d26635e by complement at 2005-11-01 6038
7fe9a66 by ptr at 2005-04-18 6039
	* stlport/stl/type_traits.h, _vector.h, _algobase.h, _construct.h: Removal
6040
	of the __action_on_move type traits replaced by a generalization of the 
6041
	already existing __move_traits.
d26635e by complement at 2005-11-01 6042
7fe9a66 by ptr at 2005-04-18 6043
	* test/unit/mvctor_test.cpp: New test case for the __move_traits feature.
d26635e by complement at 2005-11-01 6044
7fe9a66 by ptr at 2005-04-18 6045
2004-09-24  Petr Ovtchenkov  <ptr@island...>
6046
6047
	* src/explore/Makefiles/gmake/sunos: 'explore' makesystem adopted to work
6048
	under Solaris with GNU make.
6049
6050
	* test/unit/gcc.mak: ditto.
6051
6052
	* src/explore/Makefiles/gmake/app/gcc.mak: ditto.
6053
6054
	* src/explore/Makefiles/gmake/lib/gcc.mak: ditto.
6055
6056
	* stlport/cmath: fix some math calls for Solaris.
6057
6058
	* test/unit/list_test.cpp: add illustration for list iterator/reverse_iterator questions.
6059
6060
	* src/explore/Makefiles/gmake/unix/lib.mak: moved from linux/lib.mak, as
6061
	common rules for all *nixes.
6062
6063
	* src/explore/Makefiles/gmake/linux/lib.mak: use common for all *nixes rules
6064
	in unix/lib.mak.
6065
6066
	* src/explore/Makefiles/gmake/freebsd/lib.mak: ditto.
6067
6068
	* src/explore/Makefiles/gmake/openbsd/lib.mak: ditto.
6069
6070
	* src/explore/Makefiles/gmake/sunos/lib.mak: ditto.
6071
6072
	* src/explore/Makefiles/gmake/unix/lib.mak, test/unit/gcc.mak: changed library name;
6073
	libraries now named as libstlport, libstlportg, libstlportstlg for optimized, with
6074
	debug symbols, and with debug symbols and _STLP_DEBUG mode libraries respectivly.
6075
6076
2004-09-21  Francois Dumont  <dums@...>
6077
6078
	* stlport/stl/debug: Modification of the __check_range class in the more general
6079
	__check_construct. Now it also checks for null pointers in the string interface.
d26635e by complement at 2005-11-01 6080
7fe9a66 by ptr at 2005-04-18 6081
	* src/explore: Adoption of the new library naming convention for all Microsoft
6082
	compilers thanks Michael Fink
d26635e by complement at 2005-11-01 6083
7fe9a66 by ptr at 2005-04-18 6084
2004-09-20  Francois Dumont  <dums@...>
6085
6086
	* src/explore/Makefiles/gmake/cygwin, mingw: Build configuration files merges
6087
	within a single build system: cygming. Future portage of STLport for compilers
6088
	using the GNU tools will be available from both systems. Removal of the vc6 build
6089
	under cygwin, for mono-platform compilers we support only one build system.
6090
6091
	* stlport/stl/_vector.h: Modification of the destructor implementation to destroyed
6092
	object instances in a reverse order taking advantage of the way elements are
6093
	normaly added to this container.
d26635e by complement at 2005-11-01 6094
7fe9a66 by ptr at 2005-04-18 6095
2004-09-16  Francois Dumont  <dums@...>
6096
6097
	* test/unit/cppunit/cppunit_mini.h, cppunit_proxy.h: Adaptation of the CPPUNIT
6098
	framework to take care of the exception as failures thanks Zdenek Nemec
d26635e by complement at 2005-11-01 6099
7fe9a66 by ptr at 2005-04-18 6100
	* stlport/config/stl_msvc.h, stl_bc.h, stl_mwerks.h, stlport/stl_user_config.h:
6101
	Removal of the non intuitive and difficult to maintain automatic linking feature.
d26635e by complement at 2005-11-01 6102
6103
	* Fixing of the locale implementation mecanism. Classic locale implementation is
7fe9a66 by ptr at 2005-04-18 6104
	also managed by a reference counter to be sure when it is possible to release
6105
	the associated ressources. Fix of a missing locale impl ref counter decrement
6106
	in the template locale constructor taking a facet, it was a possible source of
6107
	memory leak . Addition of a static object within locale_impl.cpp in 
6108
	_STLP_LEAKS_PEDANTIC mode to decrement the global locale impl ref counter when 
6109
	STLport library is unloaded. Addition of all the missing classic locale facets
d26635e by complement at 2005-11-01 6110
	destructor in free_classic_locale.
6111
7fe9a66 by ptr at 2005-04-18 6112
	* src/locale_catalog.cpp: The locale by name constructor checks the "C" name
6113
	to simply copy (increment the ref counter) the classic locale implementation 
d26635e by complement at 2005-11-01 6114
	rather than instanciating a new one.
6115
7fe9a66 by ptr at 2005-04-18 6116
2004-09-15  Francois Dumont  <dums@...>
6117
6118
	* stlport/stl/_list.c: Modification of the _S_sort implementation, the __carry 
6119
	list instance is created using the __that allocator instance copy to be more
6120
	allocator friendly.
d26635e by complement at 2005-11-01 6121
7fe9a66 by ptr at 2005-04-18 6122
2004-09-11  Francois Dumont  <dums@...>
6123
6124
	* stlport/config/stl_intel.h: Configuration update for Win32 Intel 8.0 
6125
	compiler thanks Charlemagne.
d26635e by complement at 2005-11-01 6126
7fe9a66 by ptr at 2005-04-18 6127
2004-09-10  Francois Dumont  <dums@...>
6128
6129
	* stlport/stl/_config.h: The new official namespace is now stlp_std. _STL is
6130
	just an alias. STLPORT macro still contains the STLport std namespace equivalent.
d26635e by complement at 2005-11-01 6131
	Moreover in _STLP_DEBUG mode, which is not binary compatible with the release
7fe9a66 by ptr at 2005-04-18 6132
	or debug mode, the namespace is stlpd_std to generate link error rather
6133
	than runtime crash.
d26635e by complement at 2005-11-01 6134
7fe9a66 by ptr at 2005-04-18 6135
2004-09-09  Francois Dumont  <dums@...>
6136
6137
	* stlport/stl/_config.h: _STLP_DONT_USE_NESTED_TCLASS_THROUGHT_TPARAM 
6138
	renamed to the more intuitive _STLP_DONT_SUPPORT_REBIND_MEMBER_TEMPLATE.
6139
6140
	* stlport/stl/_config.h: Introduction of a new namespace stlp_private
6141
	defined in the global namespace. Everything that is STLport implementation
6142
	details should be in this namespace to avoid polution of the std namespace.
d26635e by complement at 2005-11-01 6143
7fe9a66 by ptr at 2005-04-18 6144
	* stlport/stl/_iterator_base.h: Modification of the macro used to create
6145
	iterator traits for all tree and hashtable based containers to move it in
6146
	the stlp_private namespace rather than defining it as nested struct, limits
6147
	the symbol size.
d26635e by complement at 2005-11-01 6148
7fe9a66 by ptr at 2005-04-18 6149
2004-09-08  Francois Dumont  <dums@...>
6150
6151
	* test/unit/fstream_test.cpp: restauration of the test added by Petr
6152
	the 2004-09-03, it is finaly a different test from the one in sstream_test.cpp.
6153
	Some more checks have also been integrated.
d26635e by complement at 2005-11-01 6154
7fe9a66 by ptr at 2005-04-18 6155
	* stlport/stl/_ostream.c: New fix of the _M_unbuffured_copy method that was
6156
	still bugged in case of a throwing output streambuf, detected thanks to the
6157
	test case.
d26635e by complement at 2005-11-01 6158
7fe9a66 by ptr at 2005-04-18 6159
2004-09-07  Francois Dumont  <dums@...>
6160
6161
	* stlport/config/stl_msvc.h: Add defines of the _STLP_USE_STATIC_LIB
6162
	or _STLP_USE_DYNAMIC_LIB depending on the current kind of build.
d26635e by complement at 2005-11-01 6163
7fe9a66 by ptr at 2005-04-18 6164
	* stlport/stl/_streambuf.h, _streambug.c: Fix an unresolved symbol 
6165
	problem for MSVC6 (and before?) when STLport is used as a static library.
6166
6167
2004-09-06  Francois Dumont  <dums@...>
6168
6169
	* test/unit/nmake-evc-common.mak: Use of the dynamic runtime for the
6170
	*-shared rules rather than the previous static thanks Michael Fink.
d26635e by complement at 2005-11-01 6171
7fe9a66 by ptr at 2005-04-18 6172
	* test/unit/nmake-evc*.mak: end of build code factorisation, use of 
6173
	nmake-evc-common.mak within all makefiles thanks Michael Fink.
d26635e by complement at 2005-11-01 6174
7fe9a66 by ptr at 2005-04-18 6175
	* test/unit/locale_test.cpp: Application of a patch from Michael Fink
6176
	to check the "C" locale on all platforms. Fix of the money_get_put test
6177
	case for the "C" locale.
d26635e by complement at 2005-11-01 6178
7fe9a66 by ptr at 2005-04-18 6179
	* test/unit/allocator_test.cpp: new test case for std::allocator checks.
6180
6181
2004-09-05  Francois Dumont  <dums@...>
6182
6183
	* stlport/stl/_string_hash.h: Performance improvement, multiplication
6184
	replaced by shift operations thanks Greg S.
d26635e by complement at 2005-11-01 6185
7fe9a66 by ptr at 2005-04-18 6186
	* stlport/config/stl_wince_4.h: removed, never used, stl_evc.h has been 
6187
	prefered.
d26635e by complement at 2005-11-01 6188
7fe9a66 by ptr at 2005-04-18 6189
	* test/unit/string_test.cpp: addition of a new test short_string_optim_bug
6190
	to check for a compiler bugs making the short string optim invalid thanks
6191
	Michael Fink.
d26635e by complement at 2005-11-01 6192
7fe9a66 by ptr at 2005-04-18 6193
	* stlport/config/stl_evc.h: Deactivation of the short string optimization
6194
	because of a compiler bug thanks Michael Fink.
d26635e by complement at 2005-11-01 6195
7fe9a66 by ptr at 2005-04-18 6196
	* src/explore: factorisation of the evc build makefiles thanks Michael Fink.
d26635e by complement at 2005-11-01 6197
7fe9a66 by ptr at 2005-04-18 6198
	* src/explore/Makefiles/nmake/lib/clean.mak, macro.mak: Addition of some
6199
	file clean up for the clobber rule thanks Michael Fink.
d26635e by complement at 2005-11-01 6200
7fe9a66 by ptr at 2005-04-18 6201
2004-09-03  Francois Dumont  <dums@...>
6202
6203
	* test/unit/fstream_test.cpp, sstream_test.cpp: Move of the test for the
6204
	infinite loop from FstreamTest test case to SstreamTest, addition of some
6205
	checks.
d26635e by complement at 2005-11-01 6206
7fe9a66 by ptr at 2005-04-18 6207
	* test/unit/full_streambuf.h: streambuf implementation simulating full
6208
	output.
d26635e by complement at 2005-11-01 6209
7fe9a66 by ptr at 2005-04-18 6210
	* stlport/exception: restauration of some modification removed after the
6211
	rollback of the 2004-09-01.
d26635e by complement at 2005-11-01 6212
7fe9a66 by ptr at 2005-04-18 6213
	* stlport/config/stl_gcc.h: homogeneification of the coding standard used
6214
	within STLport, 2 spaces indentations even for preprocessor directives.
6215
	Doing so, discovered a weird configuration for Mac OS platform (__APPLE__)
6216
	concerning the _STLP_NATIVE_INCLUDE_PATH macro definition, fixed.
d26635e by complement at 2005-11-01 6217
7fe9a66 by ptr at 2005-04-18 6218
	* stlport/stl/config/stl_*.mak: removal of all references to the 
d26635e by complement at 2005-11-01 6219
	_STLP_REDEFINED_STD macro as it is now the default and only way STLport 
6220
	use to replace native Standard library.
6221
7fe9a66 by ptr at 2005-04-18 6222
	* test/unit/nmake-vc-common.mak: add inclusion of the vc_warning_disable.h
6223
	file to avoid warnings during build process thanks Michael Fink.
6224
6225
2004-09-03  Petr Ovtchenkov  <ptr@Island...>
6226
6227
	* stlport/stl/_ostream.c: removed infinite loop in case when outgoing stream
6228
	can't accept more chars. Thanks Daniel White, Ulrich Eckhardt, Francois Dumont.
6229
6230
	* test/unit/fstream_test.cpp: test for problem above. Thanks Ulrich Eckhardt.
6231
6232
2004-09-02  Francois Dumont  <dums@...>
6233
6234
	* stlport/exception, stlport/stl/_site_config.h, test/unit/exception_test.cpp:
6235
	Creation of the _STLP_NO_UNEXPECTED_EXCEPT_SUPPORT macro to signal support of
6236
	the unexpected exception mecanism. Related type/function are only brought to the
6237
	STLport namespace if correctly supported, exception_test.cpp check that.
d26635e by complement at 2005-11-01 6238
7fe9a66 by ptr at 2005-04-18 6239
	* New modification of the _Rb_tree and _Hashtable associated iterator structs.
6240
	Removal of the container_type pass through the iterator traits; iterator traits
6241
	is the type that will make each derived container iterator type real different
6242
	type making them uncomparable.
d26635e by complement at 2005-11-01 6243
7fe9a66 by ptr at 2005-04-18 6244
	* stlport/ctype.h: rollback of the above rollback ;-) only of course for the 
6245
	Win CE code fix that was part of the previous commitment.
d26635e by complement at 2005-11-01 6246
7fe9a66 by ptr at 2005-04-18 6247
2004-09-01  Petr Ovtchenkov  <ptr@Island...>
6248
6249
	* Rollback include schema: code is broken.
6250
6251
2004-08-31  Francois Dumont  <dums@...>
6252
6253
	* _STLP_INCOMPLETE_EXCEPTION_HEADER replace by the more intuitive
6254
	_STLP_NO_UNCAUGHT_EXCEPT_SUPPORT macro.
d26635e by complement at 2005-11-01 6255
7fe9a66 by ptr at 2005-04-18 6256
	* Modification of the include schema of all public headers in stlport folder
6257
	that need to be reentrant. Now those files are fully guarded and the specific
6258
	STLport code is only included once at the end of the inclusion, the reentrancy
6259
	only concern inclusion of the native headers.
6260
6261
2004-08-30  Francois Dumont  <dums@...>
6262
6263
	* stlport/stl/_deque.c: Fix of a pseudo 'uninitialized variable used' thanks 
6264
	Oliver Stoeneberg.
d26635e by complement at 2005-11-01 6265
7fe9a66 by ptr at 2005-04-18 6266
2004-08-27  Francois Dumont  <dums@...>
6267
6268
	* .Net 2002 (VC70) portage.
6269
6270
2004-08-27  Petr Ovtchenkov  <ptr@Island...>
6271
6272
	* src/explore/Makefiles/gmake/gcc.mak, app/gcc.mak, lib/gcc.mak: buggy C++
6273
	language support in libsupc++ in gcc before 3.3 not allow to use it;
6274
	link with libstdc++ instead.
6275
6276
	* stlport/config/stl_icc.h: fix features for icc 7.1; fix features for Linux
6277
	platforms.
6278
6279
2004-08-24  Francois Dumont  <dums@...>
6280
6281
	* stlport/config/stl_gcc.h, stl_msvc.h: fixing of configuration concerning
6282
	uncaught_exception and exception handling in general thanks John Roberts.
6283
6284
	* stlport/stl/_tree.h, _tree.c: Modification of the _Rb_tree_iterator	struct
6285
	to be able to distiguish iterator types from different tree based containers
6286
	Removal of the == and != member operators of the _Rb_tree_base_iterator struct
6287
	replaced by global operators taking _Rb_tree_iterator as parameters and checking
6288
	that the iterators are of the same container type thanks Haroon Nassiry report.
6289
	
6290
	* stlport/stl/_map.h, _set.h: Modification of the iterator traits used to 
6291
	instanciate the _Rb_tree class.
6292
	
6293
	* stlport/stl/_hashtable.h, _hashtable.c, _hash_set.h, _hash_map.h: Similar
6294
	modifications to the previous one in order to make for instance the iterator
6295
	from hash_map and hash_multimap not comparable anymore.
6296
	
6297
	* stlport/config/stl_wince.h, stlport/ctype.h: Move of the isspace C function
6298
	Windows CE specific code from the config file to the ctype.h file. This fix
6299
	will also apply to Embedded C++ .Net thanks Dirk report.
6300
6301
2004-08-23  Petr Ovtchenkov  <ptr@Island...>
6302
6303
	* test/unit/cppunit/cppunit_proxy.h, test/init/gcc.mak: CPPUNIT_MINI removed.
6304
6305
	* src/num_get_float.cpp: suggestion to fix problem with float input for gcc 3.4.x
6306
	with optimization flag.
6307
6308
	* test/unit/floatio_test.cpp: test for infinity and near
6309
6310
	* src/explore/Makefiles/gmake/gcc.mak, app/gcc.mak, lib/gcc.mak: fix detection of
6311
	gcc version; gcc before 3.x had libgcc.a that contains some language support,
6312
	so link with it in case when we avoid link with libstd++. This has relation only
6313
	for linux systems.
6314
6315
2004-08-19  Petr Ovtchenkov  <ptr@Island...>
6316
6317
	* src/explore/configure.bat: setting up compiling STLport under Windows.
6318
	Contribution by Michael Fink.
6319
6320
2004-08-13  Francois Dumont  <dums@...>
6321
6322
	* test/unit/gcc.mak: Addition of the _STLP_NO_CUSTOM_IO define to make test
d26635e by complement at 2005-11-01 6323
	build faster.
6324
7fe9a66 by ptr at 2005-04-18 6325
	* stlport/stl/_limits.h, _limits.c: Modification of the _LimG class definition.
6326
	Removal of the static variables, replaced by static method having the same role
6327
	but more portable. Fix link problem with MSVC compilers family when using STLport
6328
	static library.
d26635e by complement at 2005-11-01 6329
7fe9a66 by ptr at 2005-04-18 6330
	* stlport/stl/_bitset.h, _bitset.c: Ditto for the _Bs_G class.
d26635e by complement at 2005-11-01 6331
7fe9a66 by ptr at 2005-04-18 6332
	* stlport/stl/_hashtable.h, _hashtable.c: Ditto for the _Stl_prime class.
d26635e by complement at 2005-11-01 6333
7fe9a66 by ptr at 2005-04-18 6334
	* src/dll_main.cpp: thanks to the previous modification, removal of the 
6335
	concerned code within force_link.
6336
6337
2004-08-13  Petr Ovtchenkov  <ptr@Island...>
6338
6339
	* test/unit/cppunit/cppunit_mini.h, file_reporter.h, test_main.cpp:
d26635e by complement at 2005-11-01 6340
	add function to print mess; remove def of CPPUNIT_MINI, not required; add const
7fe9a66 by ptr at 2005-04-18 6341
	qualifiers.
6342
6343
	* test/unit/locale_test.cpp: print checked locale name; restore table with format
6344
	symbols--partially rollback changes 2004-07-29; add test for possible locale
6345
	init/deinit problem---I don't see problem. Test inspired by Alex Kosilin.
6346
6347
2004-08-11  Francois Dumont  <dums@...>
6348
6349
	* src/explore/Makefiles/nmake: extension of the new build system for VC.Net
6350
	2005 (VC8).
6351
6352
	* src/explore/Makefiles/nmake/app: restauration of the default behavior shared
6353
	rules generates executable using the STLport dynamic library and static rules
6354
	use the static libraries.
6355
d26635e by complement at 2005-11-01 6356
	* stlport/stl/_string.h: Add check of _STLP_NO_IOSTREAMS to force inclusion of
7fe9a66 by ptr at 2005-04-18 6357
	_string.c in this case.
6358
	
6359
	* stlport/stl/_string.c: removal of the _STLP_LINK_TIME_INSTANTIATION macro check 
6360
	before inclusion as the check is already done to include _string.c from _string.h.
6361
6362
	* stlport/stl/_istream.h _istream.c: removal of the _M_put_num function definition
6363
	from the .h and removal of all the inline implementation of the >> operators.
6364
	_M_put_num is now hidden in the .c to avoid to have to deal with export of this
6365
	symbol. Fix errors while using the _STLP_NO_CUSTOM_IO macro.
6366
	
6367
	* stlport/stl/_ostream.h _ostream.c, src/ostream.cpp: ditto but for the _M_get_num
6368
	function.
6369
	
6370
	* stlport/stl/_istream.h _istream.c: _M_init_skip and _M_init_noskip are now inline
6371
	functions defined within the .h to fix link errors when using the _STLP_NO_CUSTOM_IO
6372
	macro.
6373
6374
2004-08-10  Francois Dumont  <dums@...>
6375
6376
	* stlport/stl/_string.h: add check of the _STLP_EXPOSE_STREAM_IMPLEMENTATION
6377
	macro to include the _string.c file. Improve compile time when _STLP_NO_CUSTOM_IO
6378
	is defined.
d26635e by complement at 2005-11-01 6379
6380
	* stlport/stl/_string.h, stlport/stl/debug/_string.h, _string_mem_t.h: restoration
7fe9a66 by ptr at 2005-04-18 6381
	of the template method specialization for backward compatibility between compilers
fa5f907 by dums at 2006-06-19 6382
	implementating template method and the most recent one. It is considered as an 
7fe9a66 by ptr at 2005-04-18 6383
	STLport extension.
6384
6385
2004-08-09  Petr Ovtchenkov  <ptr@Island...>
6386
6387
	* test/compiler: tests to check whether compiler understand or not some
6388
	language construction. It is NOT tests for language support libraries,
6389
	only tests for compiler. The main purposes of this tests is to help
6390
	for developers to find correct workarounds, if compiler don't understand
6391
	some language constructions.
6392
6393
2004-08-09  Francois Dumont <dums@...>
6394
6395
	* stlport/stl/_limits.h, stlport/config/stl_mycomp.h: introduction of a new macro
6396
	configuration to signal no support of the IEC 559 specification for floating point
6397
	numbers.
6398
	
6399
	* stlport/config/stl_msvc.h: fix of the config to signal no IEC 559 support before
6400
	Visual C++ .Net even if the infinity value is fine.
6401
	
6402
	* test/unit/limits_test.cpp: New test case to check the right numeric_limits class
6403
	configuration. Do not check the signaling_NaN yet...
6404
	
6405
	* stlport/config/stl_msvc.h: Visual .Net Beta 2005 portage.
6406
	
6407
	* stlport/stl/_ios.h: Move of the basic_ios::narrow and widen member method 
6408
	specialization before the explicit instanciation of the basic_ios class for
6409
	the char type.
6410
	
6411
	* stlport/stl/_construct.h, _num_put.c: fix of some unused parameter warning
6412
	thanks Oliver Stoeneberg report.
6413
6414
2004-08-05  Francois Dumont <dums@...>
6415
6416
	* Fixes of the internal move framework for compilers not supporting partial
6417
	template specialization. The problem was detected thanks to the boost regression
6418
	test suite.
6419
6420
2004-08-04  Francois Dumont <dums@...>
6421
6422
	* stlport/stl/debug/_list.h, _slist.h: small review of the stlport debug code.
6423
	Removal of any Standard reference in the slist class debug implementation. Removal
6424
	of some unjustified iterator invalidation.
6425
6426
	* stlport/stl/_locale.h, _collate.h, src/locale.cpp, locale_catalog.cpp, locale_impl.cpp:
6427
	Split of the locale class implementation into _LocaleBase base class with no member
6428
	template methods which is exported and the locale class which is not exported. This
6429
	is a workaround for the MSVC6 compiler.
6430
6431
2004-08-03  Francois Dumont <dums@...>
6432
6433
	* stlport/stl/_iterator.h: Fix of the back_insert_iterator, front_insert_iterator
d26635e by complement at 2005-11-01 6434
	and insert_iterator to make them assignable like specify in the Standard requirements
7fe9a66 by ptr at 2005-04-18 6435
	of the output iterators.
6436
6437
	* test/unit/insert_test.cpp, finsert_test.cpp, binsert_test.cpp: Addition of tests for
6438
	the assignment operators on the output iterators.
6439
6440
2004-08-02  Francois Dumont <dums@...>
6441
6442
	* stlport/stl/_string.h, _string.c, debug/_string.h: split of the basic_string
6443
	implementation into a class with no member templates and one with the member 
6444
	templates. Only the one with no member templates is exported. This is a MSVC6
d26635e by complement at 2005-11-01 6445
	bug workaround as this compiler try to look for the class method symbols within
7fe9a66 by ptr at 2005-04-18 6446
	the dynamic library even if this symbol is the one of template method which is 
6447
	not exported. That also make the basic_string implementation more clean so it
6448
	has been adopted for all compilers.
6449
6450
2004-07-29  Francois Dumont <dums@...>
6451
6452
	* test/unit/locale_test.cpp: Fix bad macro _STLP_NO_EXCEPTIONS spelling 
6453
	and add of a check for real locale implementation. Patch done by
6454
	Michael Fink.
6455
6456
	* stlport/stl/debug/_debug.h, _debug.c, _iterator.h: Modification of the
6457
	__check_same_owner_or_null function name to the more intuitive 
6458
	__check_same_or_null_owner thanks a Aleksey Sanin remark.
6459
6460
2004-07-26  Petr Ovtchenkov <ptr@Island...>
6461
6462
	* src/explore/Makefiles/gmake/lib/gcc.mak: avoid linkage with libstd++
6463
	for gcc compilers.
6464
6465
	* src/explore/Makefiles/gmake/linux/rules-so.mak: ditto
6466
6467
	* src/explore/Makefiles/gmake/lib/rules-a.mak: ditto
6468
6469
	* src/explore/Makefiles/gmake/app/top.mak: ditto
6470
6471
2004-07-21  Francois Dumont <dums@...>
6472
6473
	* stlport/config/stl_gcc.h: Fix of a gcc 3.3.0 test that did not handle
6474
	the gcc 2.95.x correctly thanks Jordan Breeding.
d26635e by complement at 2005-11-01 6475
7fe9a66 by ptr at 2005-04-18 6476
	* src/common_rules.mak: Addition of the stlport/stl/pointers folder within
6477
	the folder to be install. Add of a call to ranlib under linux mandatory under
6478
	Mac OS X and without impact under the other Unixes systems.
6479
6480
2004-07-17  Francois Dumont <dums@...>
6481
6482
	* Application of a Mac OSX patch from John Daniel (www.etresoft.com)
6483
6484
2004-07-15  Francois Dumont <dums@...>
6485
6486
	* stlport/stl/_epilog.h: systematical use of the redefined std namespace
6487
	rather than using the namespace inclusion schema.
6488
6489
	* test/unit/set_test.cpp: addition of a test case to show the problem of
6490
	the namespace injection schema.
6491
6492
2004-07-13  Francois Dumont <dums@...>
6493
6494
	* stlport/numeric: removal of the _function.h header include.
6495
6496
	* test/unit/divide_test.cpp: add the missing functionnal header
6497
	inclusion.
6498
6499
	* doc/README.msvc: new doc specific to the MSVC++ family compiler.
6500
6501
2004-07-12  Petr Ovtchenkov  <ptr@Island...>
6502
6503
	* test/unit/fstream_test.cpp: tests for unformatted extraction bug.
6504
6505
	* stlport/stl/_istream.c: _M_read_unbuffered should leave delimiter
6506
	in the stream in case of unformatted input. Thanks Joerg Becker.
6507
6508
2004-07-09  Francois Dumont  <dums@...>
6509
6510
	* src/sgi_mipspro.mak: add the -LANG:libc_in_namespace_std:OFF
6511
	thanks Jack Perdue.
6512
6513
2004-07-08  Francois Dumont  <dums@...>
6514
6515
	* doc/README.evc3: additionnal doc thanks Michael Fink
6516
6517
2004-07-08  Petr Ovtchenkov  <ptr@Island...>
6518
6519
	* test/unit/sstream_test.cpp: added two test for unformatted extraction
6520
	and newline character. Inspired by Joerg Becker.
6521
6522
2004-07-07  Francois Dumont  <dums@...>
6523
6524
	* stlport/stl/_hashtable.h, stlport/stl/_hashtable.c, 
6525
	stlport/stl/_hash_set.h, stlport/stl/_hash_map.h: generalization
6526
	of the iterator traits adopted on the tree class. Now iterator and
6527
	const_iterator on hash_set and hash_multiset are different types
6528
	even if iterator is still immutable.
6529
6530
	* stlport/stl/_deque.h, stlport/stl/_list.h, stlport/stl/_slist.h:
6531
	Modification of the iterator classes to only use the template
6532
	parameter _Traits rather than using an external type traits. It is
6533
	the way hash containers and sorted containers have their iterator
6534
	struct working.
6535
6536
	* stlport/stl/_iterator_base.h: Addition of the immutable traits 
6537
	struct _Const_Const_traits and _Nonconst_Const_traits for 
6538
	implementation of the set, multiset, hash_set, hash_multiset 
6539
	iterators.
6540
6541
	* stlport/stl/c_locale.h, stlport/stl/debug/_debug.h: removal of 
6542
	unjustified _config.h inclusions
6543
6544
	* stlport/stl/_iterator_base.h: inclusion of type_traits.h only
6545
	for compilers that need it.
6546
6547
	* stlport/stl/_algobase.h, stlport/stl/debug/_debug.h: add inclusion 
6548
	of type_traits.h.
6549
6550
	* stlport/stl/_algo.h, stlport/stl/_algo.c: move of the _tempbuf.h
d26635e by complement at 2005-11-01 6551
	inclusion from the .h to the .c that is the only one that need it.
7fe9a66 by ptr at 2005-04-18 6552
6553
	* stlport/stl/_config.h: addition of the boost support section.
6554
6555
2004-07-07  Petr Ovtchenkov  <ptr@Island...>
6556
6557
	* stlport/stl/_monetary.c: iterator __str_first out of range,
6558
	i.e. outside __str_last in 'mismatch' call in __get_string, if 
6559
	size of interval [__first, __last) is larger than size of interval
6560
	[__str_first, __str_last).
6561
6562
	* test/unit/fstream_test.cpp: test for correct report by tellg added.
6563
6564
2004-07-05  Francois Dumont  <dums@...>
6565
6566
	* stlport/stl/_map.h: internal type _Rep_type set as public for use
6567
	in the __move_traits specialization thanks Oliver Stoeneberg.
6568
6569
	* stlport/stl/_set.h: specialization of the __move_traits to make the
6570
	set and multiset movable thanks Oliver Stoeneberg.
6571
6572
	* stlport/stl/_function_base.h, stlport/stl/_heaps.h: removal of the 
6573
	unjustified _config.h inclusion that should only be included from the
6574
	_prolog.h header.
6575
6576
2004-07-05  Petr Ovtchenkov  <ptr@Island...>
6577
6578
	* src/facets_byname.cpp: avoid pass address to member of derived class into
6579
	base class via constructor.
6580
6581
	* src/facets_byname.cpp: remove first member---EOF---of _M_byname_table---one
6582
	not required and lead to wrong reference; this a fix for test in
6583
	locale_test.cpp.
6584
6585
	* src/ctype.cpp: ditto.
6586
6587
	* src/c_locale_win32/c_locale_win32.c: ditto.
6588
6589
	* stlport/stl/_ctype.h: ditto.
6590
6591
2004-07-02  Petr Ovtchenkov  <ptr@Island...>
6592
6593
	* src/c_locale_glibc/c_locale_glibc2.c: message catalog functions dealing
6594
	with message catalog descriptor; but this descriptor not necessary to be
6595
	int; Linux use here void *, i.e. pointer to mmap segment.
6596
6597
	* stlport/stl/_messages_facets.h: ditto.
6598
6599
	* src/messages.cpp: ditto.
6600
6601
	* src/message_facets.h: ditto.
6602
6603
	* src/facets_byname.cpp: ditto.
6604
6605
	* src/c_locale_stub.cpp: ditto.
6606
6607
	* src/c_locale.h: ditto.
6608
6609
	* src/c_locale_glibc/c_locale_glibc2.c: fix _Locale_extract_*_name
6610
	functions.
6611
6612
2004-07-01  Francois Dumont  <dums@...>
6613
6614
	* src/explore/Makefiles/nmake/lib/vc-common.mak: creation of the
6615
	STLP_BUILD_FORCE_DYNAMIC_RUNTIME option to create STLport statix
6616
	versions more easily.
6617
6618
2004-06-30  Francois Dumont  <dums@...>
6619
6620
	* stlport/stl/_function.h: Use a call_traits to avoid the reference
6621
	to reference problem in struct like binder1st or binder2nd.
6622
6623
2004-06-26  Francois Dumont  <dums@...>
6624
6625
	* src/explore/: portage of the explore build system for the 
6626
	MSVC .Net 2003 compiler.
6627
6628
2004-06-24  Francois Dumont  <dums@...>
6629
6630
	* stlport/stl/_site_config.h: Addition of an entry for the per thread
6631
	allocator configuration.
6632
6633
	* stlport/stl/_config.h: Avoid use of the import/export technique
6634
	when not using own iostreams. This way you can use the STLport debug
6635
	mode without building the libraries.
6636
6637
2004-06-23  Francois Dumont  <dums@...>
6638
6639
	* extension of the cygwin link problem workaround for mingw32.
6640
6641
	* src/locale_catalog.cpp: Move of the _STLP_lock object instance 
6642
	declaration to limit the critical section and improve performace.
6643
6644
	* stlport/stl/_pthread_alloc.h: fix of the pthread_allocator and
6645
	per_thread_allocator allocate method to check for the required 
6646
	number of element before multiplication with the size of the objects
6647
	to instanciate.
6648
6649
2004-06-22  Francois Dumont  <dums@...>
6650
6651
	* src/locale_catalog.cpp: fix of the locale facets registration system.
d26635e by complement at 2005-11-01 6652
	The hash container use string as key rather than char const* so that
7fe9a66 by ptr at 2005-04-18 6653
	a copy of the facet name is stored rather than a copy of the string
6654
	pointer that might be freed. We also extract the complete facet name
6655
	before storing it to avoid store of facet aliases that cannot be retrieved
6656
	at release.
6657
6658
2004-06-21  Francois Dumont  <dums@s...>
6659
6660
	* Restauration of the cygwin support (using gcc 3.3.1). Extension of the
6661
	explore build system, workaround of a link problem when using shared
6662
	libraries.
6663
6664
2004-06-13  Petr Ovtchenkov  <ptr@Island...>
6665
6666
	* src/c_locale_glibc/c_locale_glibc2.c:	locale_data for glibc 2.3 is differ
6667
	from one for glibc 2.2.
6668
6669
2004-06-11  Francois Dumont  <dums@...>
6670
6671
	* test/unit: Modification of some tests to make the assertion
6672
	clearer. Mainly add of check of the streams state before check
6673
	of the stream content.
6674
6675
	* test/unit/locale_test.cpp: fix of the thousands separator which is
6676
	0xa0 under Win32 and not a simple ' ' for the french locale.
6677
6678
2004-06-07  Francois Dumont  <dums@...>
6679
6680
	* stlport/stl/_algo.c: rollback of the sort algo implementation
6681
	to the 4.5.3 version.
6682
6683
2004-06-03  Francois Dumont  <dums@...>
6684
6685
	* stlport/stl/pointers/README, doc/pointer_specialization.txt: move and
6686
	rename of the doc about pointer partial template specialization feature.
6687
6688
	* doc/README.ecv4: Creation of a documentation about the install and use
6689
	of STLport within Embedded Visual C++ 4 thanks Zdenek Nemec.
6690
6691
	* doc/README.ecv3: Creation of a documentation about the process installment
6692
	with the Embedded Visual C++ 3 thanks Michael Fink.
6693
6694
	* stlport/stl/_slist.h: fix of an invalid reference to a _M_node member data
6695
	on a _Slist_node_base struct (thanks gcc 3.4.0).
de9fe41 by dums at 2007-02-02 6696
7fe9a66 by ptr at 2005-04-18 6697
	* stlport/stl/_string.c, stlport/stl/_string.h: fix of missing scopes to 
6698
	access the base template class _String_base _DEFAULT_SIZE enum member.
6699
	(thanks gcc 3.4.0)
de9fe41 by dums at 2007-02-02 6700
7fe9a66 by ptr at 2005-04-18 6701
	* stlport/stl/_string_base.h: fix of the anonymous union used as a parameter
6702
	of the template function swap. (thanks gcc 3.4.0)
de9fe41 by dums at 2007-02-02 6703
7fe9a66 by ptr at 2005-04-18 6704
	* stlport/stl/_ostream.h: fixes of the missing scopes to access the basefield enum
6705
	within the base template class basic_ios from the basic_ostream. (thanks gcc 3.4.0)
de9fe41 by dums at 2007-02-02 6706
7fe9a66 by ptr at 2005-04-18 6707
	* stlport/stl/_debug.c: clean up of a no more use template function. 
6708
	(thanks gcc 3.4.0)
de9fe41 by dums at 2007-02-02 6709
7fe9a66 by ptr at 2005-04-18 6710
	* stlport/stl/_rope.h: fix of the missing scope to access base template class 
6711
	data member. (thanks gcc 3.4.0)
de9fe41 by dums at 2007-02-02 6712
7fe9a66 by ptr at 2005-04-18 6713
2004-06-02  Petr Ovtchenkov  <ptr@island...>
6714
6715
	* src/num_put_float.cpp: some fixes for systems that use snprintf for
6716
	output, i.e. for FreeBSD and OpenBSD
6717
6718
	* test/unit/floatio_test.cpp: less precise request, this should work
6719
	with static buffer for systems that use snprintf
6720
6721
	* stlport/stl/_config.h: detect MT for OpenBSD
6722
6723
	* stlport/stl/_threads.h: use original spinlock for OpenBSD
6724
6725
2004-05-28  Francois Dumont  <dums@...>
6726
6727
	* stlport/config/stl_gcc.h: fix for the gcc3.4.0 compiler. Modification
6728
	of the include path macro to generate 3.4.0 rather than 3.4 . Need
6729
	template keyword to reveal use of a nested template class.
6730
6731
	* stlport/stl/_config.h: creation of the _STLP_LONG_DOUBLE macro that 
6732
	extend to long double on compiler supporting it and double on the other
6733
	as a workaround.
6734
6735
	* stlport/stl/_num_put.h, stlport/stl/_num_put.c, src/num_put_float.cpp:
6736
	Addition of functions to get the digits from a long double for the monetary
6737
	facet.
6738
6739
	* stlport/stl/_monetary.h, stlport/stl/_monetary.c, src/monetary.cpp:
6740
	Implementation of the missing money_put::put method taking a long double.
6741
	Fixing of the grouping application.
6742
6743
	* test/unit/Makefile.inc, test/unit/locale_test.cpp: Creation of a unit test
6744
	for the locale support. At creation it tests the num_put, num_get, money_put,
6745
	money_get facets.
6746
6747
	* src/facets_byname.cpp: fix of the monetary format determination from
6748
	the locale platform API informations.
6749
6750
2004-05-28  Petr Ovtchenkov  <ptr@Island...>
6751
6752
	* src/explore/Makefiles/gmake/sysid.mak: correctly detect Mingw
6753
6754
	* src/explore/Makefiles/gmake/mingw: compilation under Mingw
6755
6756
2004-05-27  Petr Ovtchenkov  <ptr@Island...>
6757
6758
	* Makefiles/gmake/linux/extern.mak: fix lib catalog name in case of cross-compilation
6759
6760
	* Makefiles/gmake/freebsd/extern.mak: ditto
6761
6762
	* Makefiles/gmake/openbsd/extern.mak: ditto
6763
6764
2004-05-26  Petr Ovtchenkov  <ptr@Island...>
6765
6766
	* Repository: STLport 5.0 RC1
6767
6768
2004-05-24  Francois Dumont  <dums@...>
6769
6770
	* stlport/stl/_iostream_string.h:
6771
	Fix of the iostring_allocator rebind embedded struct and implementation
d26635e by complement at 2005-11-01 6772
	of the missing __stl_alloc_rebind and __stl_alloc_create useful for compiler
7fe9a66 by ptr at 2005-04-18 6773
	not supporting or buggy on the member template feature (VC6 for instance).
6774
6775
2004-05-22  Francois Dumont  <dums@...>
6776
6777
	* src/num_put_float.cpp, stlport/stl/_num_put.h, stlport/stl/_num_put.c:
6778
	Correction of the locale grouping schema application in case of the scientific
6779
	output when there is no decimal point.
6780
6781
2004-05-19  Petr Ovtchenkov  <ptr@Island...>
6782
6783
	* stlport/stl/_tree.h, stlport/stl/debug/_tree.h: fix template parameters, see rec
6784
	2004-05-14 below.
6785
6786
2004-05-16  Petr Ovtchenkov  <ptr@Island...>
6787
6788
	* Repository: STLport 5.0 branch
6789
4f28628 by ptr at 2004-05-16 6790
2004-05-14  Francois Dumont  <dums@...>
eae1324 by dums at 2004-05-14 6791
4f28628 by ptr at 2004-05-16 6792
	* stlport/stl/_tree.h, stlport/stl/_tree.c, stlport/stl/_set.h, stlport/stl/_map.h:
6793
	Modification of the _Rb_tree implementation to restore the non mutability of the set
6794
	iterators but to keep distinct type between it and the const_iterator.
eae1324 by dums at 2004-05-14 6795
4f28628 by ptr at 2004-05-16 6796
2004-05-13  Francois Dumont  <dums@...>
dd73f7c by dums at 2004-05-13 6797
4f28628 by ptr at 2004-05-16 6798
	* stlport/config/stl_evc.h, test/unit/nmake-evc3.mak: Portage to the WinCE 3 platform.
6799
	Thanks Michael Fink.
dd73f7c by dums at 2004-05-13 6800
4f28628 by ptr at 2004-05-16 6801
2004-05-13  Francois Dumont  <dums@s...>
dd73f7c by dums at 2004-05-13 6802
4f28628 by ptr at 2004-05-16 6803
	* stlport/stl/_set.h: Addition of the const/non-const methods for many methods now that
6804
	iterator are not const_iterator anymore. Correction of the multiset interface to be
6805
	homogeneous with the set interface.
dd73f7c by dums at 2004-05-13 6806
4f28628 by ptr at 2004-05-16 6807
2004-05-09  Francois Dumont  <dums@...>
bfc9426 by dums at 2004-05-12 6808
4f28628 by ptr at 2004-05-16 6809
	* stlport/stl/char_traits.h: Addition of the specific wchar_t static methods similar
6810
	to the one of the char specialization calling the wide functions.
bfc9426 by dums at 2004-05-12 6811
19191d5 by ptr at 2004-05-08 6812
2004-05-08  Petr Ovtchenkov  <ptr@Island...>
6813
6814
	* stlport/stl/_set.h: fix definition of const/non-const for find and *_bound
6815
	methods. Thanks KL for report.
6816
21fd7bd by ptr at 2004-05-07 6817
2004-05-07  Petr Ovtchenkov  <ptr@Island...>
0d343f1 by dums at 2004-04-28 6818
19191d5 by ptr at 2004-05-08 6819
	* stlport/stl/_set.h: fix definition of const/non-const iterators.
6820
	Thanks Ilya Chvetsov for report.
0d343f1 by dums at 2004-04-28 6821
21fd7bd by ptr at 2004-05-07 6822
	* test/unit/set_test.cpp: test that detect bug above.
7b6a0d1 by dums at 2004-04-26 6823
21fd7bd by ptr at 2004-05-07 6824
2004-04-27  Francois Dumont  <dums@s...>
6825
6826
	* stlport/stl/_complex.h: removal of a macro guard on the template != operator.
6827
6828
	* test/unit/complex_test.cpp: creation of a test case for the complex class.
6829
6830
2004-04-26  Francois Dumont  <dums@s...>
6831
6832
	* stlport/stl/_fstream.h, src/fstream.cpp: extension of the fstream interface to accept Win32
6833
	HANDLE on construction and in the open method.
7b6a0d1 by dums at 2004-04-26 6834
4b88492 by ptr at 2004-04-26 6835
2004-04-26  Petr Ovtchenkov  <ptr@Island...>
6836
19191d5 by ptr at 2004-05-08 6837
	* stlport/stl/_istream.h: don't change value while input error happens.
6838
	Thanks Nix.
4b88492 by ptr at 2004-04-26 6839
19191d5 by ptr at 2004-05-08 6840
	* test/unit/sstream_test.cpp, test/unit/fstream_test.cpp: added test for error
6841
	flags and unchanged value when input error occur.
4b88492 by ptr at 2004-04-26 6842
64e946a by ptr at 2004-04-23 6843
2004-04-23  Petr Ovtchenkov  <ptr@Island...>
6844
6845
	* stlport/stl/_rope.h: allow search of rope, like done in string
6846
c3920d9 by dums at 2004-04-21 6847
2004-04-21  Francois Dumont <dums@...>
64e946a by ptr at 2004-04-23 6848
c3920d9 by dums at 2004-04-21 6849
	* stlport/stl/pointers/README: Creation of a documentation on the new
6850
	pointer partial specialization feature.
6851
6852
2004-04-20  Francois Dumont <dums@s...>
64e946a by ptr at 2004-04-23 6853
c3920d9 by dums at 2004-04-21 6854
	* stlport/stl/_pair.h: modification of the make_pair signature. After the latest
6855
	Standard revision it takes params per value and not reference to const.
6856
e60d6a8 by ptr at 2004-04-20 6857
2004-04-20  Petr Ovtchenkov  <ptr@Island...>
6858
6859
	* stlport/stl/pointers/_list.h: 'clear' method was forgot.
6860
6861
	* test/unit/list_test.cpp: check presence of 'clear'
6862
e8acc2b by ptr at 2004-04-15 6863
2004-04-15  Petr Ovtchenkov  <ptr@Island...>
6864
6865
	* test/unit/partial_test.cpp: wrong comparison during test
6866
6867
	* test/unit/sort_test.cpp: ditto
6868
6869
	* test/unit/rm_cp_test.cpp: #ifndef not required---should work
6870
6871
	* test/unit/unique_test.cpp: ditto
6872
d2c5abe by ptr at 2004-04-14 6873
2004-04-14  Petr Ovtchenkov  <ptr@Island...>
6874
7a69b3a by ptr at 2004-04-14 6875
	* stlport/typeinfo, stlport/config/stl_wince_4.h, stlport/stl/debug/_debug.c: adaptation for Win CE .NET;
6876
	Thanks Zdenek Nemec.
6877
d2c5abe by ptr at 2004-04-14 6878
	* stlport/stl/_algobase.h: calculate difference once
6879
7a69b3a by ptr at 2004-04-14 6880
	* stlport/stl/pointers/_vector.h: missed returns. Thanks KL.
6881
6882
	* stlport/stl/pointers/_list.h: idem.
6883
6884
	* stlport/stl/pointers/_deque.h: idem.
6885
6886
	* stlport/stl/pointers/_slist.h: idem.
d2c5abe by ptr at 2004-04-14 6887
6888
	* stlport/stl/_vector.c, stlport/stl/_vector.h: big enough functions moved to non-inline section
6889
6890
	* stlport/stl/_iterator.h: use reference instead of pointer for stored container
6891
80dfde3 by ptr at 2004-04-06 6892
2004-04-06  Petr Ovtchenkov  <ptr@Island...>
6893
6894
	* stlport/stl/_prolog.h: when we in _STLP_REDEFINE_STD mode, we really
6895
	need to #undef std, see mistake 2004-02-19 below.
6896
6897
	* stlport/config/stl_msvc.h: partially undo workaround 2004-03-30,
6898
	not required; problem was solved by #undef std in _prolog.h
6899
6900
	* stlport/stl/_abbrevs.h: add new abbrevs---VC6 has problems in debug mode
6901
5641aea by ptr at 2004-04-05 6902
2004-04-03  Petr Ovtchenkov  <ptr@Island...>
6903
6904
	* stlport/stl_user_config.h: expose _STLP_DONT_FORCE_MSVC_LIB_NAME for
6905
	configuration.
6906
	
6907
	* stlport/config/stl_msvc.h: incorporate content of stl_select_lib.h and
6908
	vc_select_lib.h; a bit cleaned.
6909
6910
	* stlport/config/stl_select_lib.h: removed.
6911
6912
	* stlport/config/vc_select_lib.h: removed.
6913
c6cd2bf by ptr at 2004-04-02 6914
2004-04-02  Petr Ovtchenkov  <ptr@Island...>
6915
6916
	* src/time_facets.cpp: add #include <cstdio> for sprintf; remove
6917
	c_copy_string function.
6918
6919
	* stlport/stl/_time_facets.h: fix for _STLP_LEAKS_PEDANTIC.
6920
85aa263 by ptr at 2004-04-01 6921
2004-04-01  Petr Ovtchenkov  <ptr@Island...>
6922
6923
	* stlport/stl/_string.h: reorder of in-class template and
6924
	quazi-specialization function make VC happy, ref. 2004-03-29
6925
6926
	* stlport/stl/debug/_string.h: fix insert and replace for
6927
	iterators that refer to same string in _STLP_DEBUG mode.
6928
be4589e by ptr at 2004-03-31 6929
2004-03-31  Petr Ovtchenkov  <ptr@Island...>
6930
6931
	* src/explore/nmake-evc4-arm.mak, src/explore/nmake-evc4-x86.mak, etc.:
6932
	rules for eVC4 compilers---ARM and ix86 target architectures.
6933
	Contribution by Zdenek Nemec.
6934
d068a84 by ptr at 2004-03-30 6935
2004-03-30  Petr Ovtchenkov  <ptr@Island...>
6936
bc73a71 by ptr at 2004-03-30 6937
	* stlport/stl/_algo.c: workaround for VC compilers---ones pass reference
6938
	to parent object directly, pay no regard for temporary object
6939
d068a84 by ptr at 2004-03-30 6940
	* stlport/new, stlport/stl/_new.h, stlport/typeinfo, stlport/config/stl_msvc.h:
6941
	workaround for VC6's problem with 'using' directive, while import native
6942
	bad_alloc and some other classes into STLport's namespace
6943
6944
	* stlport/stl/_streambuf.h: export template class, to make VCs to be happy.
6945
6946
	* stlport/stl/_valarray.h: use <new>, not <stl/_new.h>
6947
6948
	* src/explore/Makefiles/nmake/lib/macro.mak, test/unit/nmake-vc6.mak:
6949
	fix static library names
6950
74feb87 by ptr at 2004-03-29 6951
2004-03-29  Petr Ovtchenkov  <ptr@Island...>
6952
6953
	* stlport/stl/_set.h: fix problems with erase functions.
6954
64d9048 by ptr at 2004-03-29 6955
	* stlport/stl/_string.h: VC compiler expect only one variant---template
6956
	or not---of replace function with four iterators in parameters.
6957
6958
	* test/unit/nmake-src-prefix.mak: really know what do with sources
6959
	in cppunit.
6960
696bc58 by ptr at 2004-03-29 6961
2004-03-25  Petr Ovtchenkov  <ptr@Island...>
6962
6963
	* stlport/stl/_string_base.h: enlarge default string static buffer size
6964
6965
	* stlport/stl/debug/_string.h: avoid attempt to invalidate iterators beyond
6966
	string size range.
6967
6968
	* stlport/config/stl_gcc.h: instantiation scheme that idefault used---witout
6969
	--repo option---in gcc 3 made void of sense explicit instantiation within
6970
	library---nothing except increased library size.
6971
	Define _STLP_NO_FORCE_INSTANTIATE is default now for gcc 3.x.
6972
6973
	* stlport/stl/_streambuf.h: remove specialization of
6974
	basic_streambuf<char, char_traits<char> >---reference to FILE struct here
6975
	isn't required and really not used anyware. Functionality of standard io
6976
	streams, including synchronization with C std io streams provided in
6977
	src/stdio_streambuf.cpp
6978
6979
	* stlport/stl/_iosfwd.h: same.
6980
6981
	* src/fstream_impl.h, src/iostream.cpp, src/stdio_streambuf.cpp: same.
6982
	
6983
	* src/streambuf.cpp: removed.
6984
6985
	* stlport/stl/_stdio_file.h: moved...
6986
	* src/_stdio_file.h: ...here
6987
6988
	* stlport/stdio_streambuf: moved...
6989
	* src/_stdio_file.h: ...here
6990
6991
	* src/explore/Makefile.inc: remove streambuf.cpp
6992
2f6cf64 by ptr at 2004-03-24 6993
2004-03-24  Petr Ovtchenkov  <ptr@Island...>
6994
6995
	* c_locale_glibc2.c: real locale implementation for glibc 2.3.x.
6996
6997
2004-03-15  Petr Ovtchenkov  <ptr@Island...>
57a0f12 by ptr at 2004-03-15 6998
6999
	* test/unit: unit test suite intended for test/regression replacement.
7000
	Zdenek Nemec contribution.
7001
40aadd4 by dums at 2004-03-01 7002
2004-03-01 Francois Dumont <dums@s...>
7003
cfd3e16 by ptr at 2004-03-03 7004
	* _hash_fun.h: Correction of the hash struct specialization for the _STLP_LONG_LONG
7005
	type. Thanks Vianney Lecroard
40aadd4 by dums at 2004-03-01 7006
cfd3e16 by ptr at 2004-03-03 7007
	* type_traits.h: Integration of the boost (www.boost.org) type traits within STLport.
40aadd4 by dums at 2004-03-01 7008
7009
2004-02-21 Francois Dumont <dums@s...>
7010
cfd3e16 by ptr at 2004-03-03 7011
	* _tree.h: Modification of the base class implementtion to avoid the systematical
7012
	dynamic allocation of a node as the root note of the RB tree.
40aadd4 by dums at 2004-03-01 7013
cfd3e16 by ptr at 2004-03-03 7014
	* Addition of many missing macro guards in the stlport public headers to avoid to break
7015
	the stlport prolog/epilog include framework.
40aadd4 by dums at 2004-03-01 7016
2f6cf64 by ptr at 2004-03-24 7017
2004-02-19  Petr Ovtchenkov  <ptr@Island...>
399c06e by ptr at 2004-02-19 7018
7019
	* _slist.h, debug/_slist.h,, dll_main.cpp: remove excess slist redefinitions
7020
7021
	* debug/_slist.h: comment explicit usage of namespace with functions---under
7022
	some conditions this hangs gcc compilers.
7023
7024
	* _config.h, _cwchar.h, _epilog.h, _iterator_base.h, debug/_debug.c: multiple import
7025
	of _STL namespace into std, as multiple import VENDOR_CSTD namespace into _STL
7026
	namespace lead to crash of gcc compilers. Import of _STL namespace into std
7027
	namespace done once in the _config.h, not in _epilog.h.
7028
7029
	* _prolog.h: undef std not required in all cases; instead this is useful only
7030
	for redefinition of std namespace, and should be done in the _config.h.
7031
7032
	* _epilog.h: include of _config.h has no sense here.
7033
7034
	* _threads.h: wrong import of _STL namespace into global namespace
7035
81c57e1 by dums at 2004-02-18 7036
2004-02-18  Francois Dumont <dums@s...>
7037
399c06e by ptr at 2004-02-19 7038
	* _list.h: Modification of the base list class based on the slist implementation.
7039
	The list do not allocate a node systematically anymore even for the empty list.
81c57e1 by dums at 2004-02-18 7040
2f6cf64 by ptr at 2004-03-24 7041
2004-02-14  Petr Ovtchenkov  <ptr@Island...>
6d2bd80 by ptr at 2004-02-14 7042
7043
	* debug/_relops_cont.h, debug/_string.h: fix typos in template specializations.
7044
2f6cf64 by ptr at 2004-03-24 7045
2004-02-12  Petr Ovtchenkov  <ptr@Island...>
336c88c by ptr at 2004-02-12 7046
7047
	* explore/icc.mak: experimental make system support Intel's icc compiler
7048
	on Linux.
7049
2f6cf64 by ptr at 2004-03-24 7050
2004-02-05  Petr Ovtchenkov  <ptr@Island...>
7980216 by ptr at 2004-02-05 7051
7052
	* iostream.cpp, _ios_base.h, iostream, locale_impl.h, locale_impl.cpp:
7053
	revise standard iostream and locale initialization, remove worrits about
7054
	order of static objects initialization as soon as possible; all real
7055
	initialization situated in the locale_impl.cpp; locale initialization
7056
	moved to _Locale_impl constructor---locale will be correctly initialized
7057
	either via direct locale usage, or during standard iostream initialization,
7058
	as ios_base member. This changes may lead to problems with Digital Mars
7059
	and Borland compilers---should be checked and fixed.
7060
8d0e5c6 by dums at 2004-02-03 7061
2004-02-03  Francois Dumont <dums@s...>
336c88c by ptr at 2004-02-12 7062
	
8d0e5c6 by dums at 2004-02-03 7063
	* integration of a portage to the Windows CE .NET (eMebedded Visual
7064
	C++ 4) compiler thanks Zdenek Nemek
de9fe41 by dums at 2007-02-02 7065
2f6cf64 by ptr at 2004-03-24 7066
2004-02-02  Petr Ovtchenkov  <ptr@Island...>
98a1f2d by ptr at 2004-02-02 7067
7068
	* _iostream_string.h: avoid usage of iostring in the _STLP_DEBUG mode,
7069
	due to iostring::iterator not convertable into string::iterator in this
7070
	mode.
7071
2f6cf64 by ptr at 2004-03-24 7072
2004-01-29  Petr Ovtchenkov  <ptr@Island...>
84a3155 by ptr at 2004-01-30 7073
7074
	* _string.c: avoid 'insert( iterator, const_iterator, const_iterator )'
7075
	instantiation in the 'replace'---VC6 has problem here.
7076
db33c69 by dums at 2004-01-29 7077
2004-01-29  Francois Dumont <dums@s...>
336c88c by ptr at 2004-02-12 7078
	
db33c69 by dums at 2004-01-29 7079
	* facets_byname.cpp: correction of the typeid use thanks to Ulrich Eckhardt.
7080
7081
	* _iostream_string.h: creation and integration of a special string used within
84a3155 by ptr at 2004-01-30 7082
	the iostream implementation to display floating point numbers. It mixes a static
7083
	buffer with a dynamic one to improve performance.
db33c69 by dums at 2004-01-29 7084
09e670f by dums at 2004-01-22 7085
2004-01-22  Francois Dumont <dums@s...>
7086
8e9f30d by ptr at 2004-01-29 7087
	* _new.h: check of the _STLP_USE_EXCEPTIONS before correction of the new
7088
	operator behavior and bad_alloc exception definition.
09e670f by dums at 2004-01-22 7089
8e9f30d by ptr at 2004-01-29 7090
	* _ios_base.h: removal of the _M_get_facet function not fully implemented
7091
	and unused thanks Ulrich Eckhardt.
09e670f by dums at 2004-01-22 7092
8e9f30d by ptr at 2004-01-29 7093
	* _algo.h: correction of the __less_2 helper struct to remove
7094
	copy thanks Sergey Volk
09e670f by dums at 2004-01-22 7095
2f6cf64 by ptr at 2004-03-24 7096
2004-01-19  Petr Ovtchenkov  <ptr@Island...>
f0e83fb by dums at 2004-01-11 7097
8e9f30d by ptr at 2004-01-29 7098
	* _debug.c: avoid recursive locks in __owner_list's mutex---equivalent
7099
	code use underlie iterators, not debug wrapper iterators. By the way this
7100
	approach faster---no excessive checks; solved by Boris Fomitchev.
09e670f by dums at 2004-01-22 7101
8e9f30d by ptr at 2004-01-29 7102
	* _thread.h, _debug.h: recursive-safe mutex structure removed---not
7103
	required more; see reason just above.
4908cbb by ptr at 2004-01-19 7104
7105
2004-01-09  Francois Dumont <dums@s...>
7106
8e9f30d by ptr at 2004-01-29 7107
	* type_manip.h: Correction of the _IsSame struct to have both partial template
7108
	specialization version and the other behaving similarly.
f0e83fb by dums at 2004-01-11 7109
4908cbb by ptr at 2004-01-19 7110
2004-01-07  Francois Dumont <dums@s...>
f0e83fb by dums at 2004-01-11 7111
8e9f30d by ptr at 2004-01-29 7112
	* _deque.c: Mysterious copies of instance to store in the containers
7113
	has been removed.
f0e83fb by dums at 2004-01-11 7114
4908cbb by ptr at 2004-01-19 7115
2004-01-05  Francois Dumont <dums@s...>
f0e83fb by dums at 2004-01-11 7116
8e9f30d by ptr at 2004-01-29 7117
	* _list.h, _slist.h: Implementation of the pointer specialization for list
7118
	and slist.
f0e83fb by dums at 2004-01-11 7119
2f6cf64 by ptr at 2004-03-24 7120
2003-12-31  Petr Ovtchenkov  <ptr@Island...>
3e1a64f by dums at 2003-12-20 7121
8e9f30d by ptr at 2004-01-29 7122
	* _vector.h, _vector.c, _hashtable.h: remove excess vector redefinitions
3e1a64f by dums at 2003-12-20 7123
8e9f30d by ptr at 2004-01-29 7124
	* debug/_vector.h: pointer specialization for vector not derived
7125
	from _Vector_base, so we should avoid references on _Vector_base
7126
	class members in debug wrapper.
7127
7128
2003-12-22  Francois Dumont  <dums@s...>
7129
7130
	* _string.h: use _STLP_FORCE_STRING_TERMINATION flag to enforce
7131
	null-termination of data associated with string.
de9fe41 by dums at 2007-02-02 7132
4908cbb by ptr at 2004-01-19 7133
2003-12-20  Francois Dumont  <dums@s...>
4f48aa9 by dums at 2003-11-30 7134
d042593 by ptr at 2003-12-31 7135
	* _vector.h: Implementation of the pointer specialization for vector to 
7136
	avoid code bloat.
7137
4908cbb by ptr at 2004-01-19 7138
2003-11-29  Francois Dumont  <dums@s...>
d042593 by ptr at 2003-12-31 7139
4908cbb by ptr at 2004-01-19 7140
	* _string.h: Implementation of the short string optimization.
7141
	basic_string have now a short static buffer to avoid call
7142
	to the allocator when the string is short.
de9fe41 by dums at 2007-02-02 7143
2f6cf64 by ptr at 2004-03-24 7144
2003-11-29  Petr Ovtchenkov  <ptr@Island...>
b9dd8d1 by dums at 2003-11-17 7145
c40f8b8 by ptr at 2003-11-29 7146
	* cwchar, _config.h, _cwchar.h, _stdio_file.h, c_locale.h:
7147
	support for OpenBSD, gcc 3.3.1
7148
	
7149
	* src/explore/Makefiles/gmake/...: support for OpenBSD, gcc 3.3.1
7150
7151
2003-11-17  Francois Dumont  <dums@s...>
7152
7153
	* _alloc.h: Move of the definition of _Alloc_Traits before inclusion
7154
	of _pthread_alloc.h; thanks Diego Klabjan
b9dd8d1 by dums at 2003-11-17 7155
2f6cf64 by ptr at 2004-03-24 7156
2003-11-16  Petr Ovtchenkov  <ptr@Island...>
79fa815 by dums at 2003-11-15 7157
7747539 by ptr at 2003-11-16 7158
	* _algobase.h, _algo.c: iter_swap and __insertion_sort don't
7159
	properly deduce value type of iterator, instead uses dereference's
7160
	return type; this occur	when dereference return some proxy object,
7161
	convertible into value type.
7162
	Thanks Przemek Kuczmierczyk <przemekk834@tlen.pl> for report, test
7163
	and solution.
79fa815 by dums at 2003-11-15 7164
7747539 by ptr at 2003-11-16 7165
	* iterswp0.cpp, iterswp1.cpp, iterswp.cpp, stl_test.cpp,
7166
	stl_test.h, Makefile.inc (test/regression): move iterswp0_test,
7167
	iterswp1_test into iterswp.cpp, add new tests for properly deduce
7168
	value type of iterator, when dereference return some proxy object.
7169
c40f8b8 by ptr at 2003-11-29 7170
2003-11-15  Francois Dumont  <dums@s...>
7747539 by ptr at 2003-11-16 7171
7172
	* _string.h: implementation of the expression template for string
7173
	addition with other string or C string or char.
7174
7175
	* _ostream.h: adoption of the classic (even if not clear in
7176
	the standard) ouput for short and int negative values in hexa
7177
	or octo bases that is display according its size for the compiler.
7178
	thanks Tanaka.
79fa815 by dums at 2003-11-15 7179
2f6cf64 by ptr at 2004-03-24 7180
2003-11-14  Petr Ovtchenkov  <ptr@Island...>
f8f5d1a by ptr at 2003-11-14 7181
7182
	* src/c_locale.c, src/c_locale_glibc/c_locale_glibc2.c:	step to
7183
	real locales support with glibc >= 2.2.x
7184
7185
	* src/c_locale_glibc/c_locale_glibc.c: bit fixes for locales
7186
	support with glibc < 1.90, and, possible, 1.90 <= glibc < 2.1;
7187
	we can't support this old code, so file
7188
	src/c_locale_glibc/c_locale_glibc.c is obsolete, and will be
7189
	removed.
7190
7191
	* src/explore, test/regression/explore: exprimental make system.
7192
2f6cf64 by ptr at 2004-03-24 7193
2003-11-13  Petr Ovtchenkov  <ptr@island...>
8fd8302 by ptr at 2003-11-13 7194
7195
	* STLport (repository): current development moved to CVS HEAD stream.
7196
7197
	* STLport (repository): current development stream marked as STLport 5.0.
7198
f8f5d1a by ptr at 2003-11-14 7199
2003-11-02  Francois Dumont  <dums@s...>
8fd8302 by ptr at 2003-11-13 7200
7201
	* _limits.c: Correction of the quiet and signaling NaN that was inverted
7202
	for several platform; thanks Alexey Sarytchev.
d26635e by complement at 2005-11-01 7203
f8f5d1a by ptr at 2003-11-14 7204
2003-11-01  Francois Dumont  <dums@s...>
8fd8302 by ptr at 2003-11-13 7205
7206
	* _string.c: judicious correction for string::find_first_not_of to
7207
	improve performance; thanks Stephen Cleary.
d26635e by complement at 2005-11-01 7208
8fd8302 by ptr at 2003-11-13 7209
	* _bitset.h: integration of a workaround for up to MSVC6 compilers
7210
	for the bitset input and output operators; thanks Jesse Booher.
d26635e by complement at 2005-11-01 7211
8fd8302 by ptr at 2003-11-13 7212
	* _ostream.h, _istream.h: fix of a non-standard behavior of the seekp
de9fe41 by dums at 2007-02-02 7213
	and seekg calls and conformance to the latest 2003 standard; thanks Tanaka.
d26635e by complement at 2005-11-01 7214
f8f5d1a by ptr at 2003-11-14 7215
2003-10-26  Francois Dumont  <dums@s...>
8fd8302 by ptr at 2003-11-13 7216
de9fe41 by dums at 2007-02-02 7217
	* _monetary.c: fix an other memory overrun on monetary display;
7218
	thanks Tanaka.
8fd8302 by ptr at 2003-11-13 7219
2f6cf64 by ptr at 2004-03-24 7220
2003-10-26  Petr Ovtchenkov  <ptr@island...>
8fd8302 by ptr at 2003-11-13 7221
7222
	* ioiter.cpp, gcc.mak, stl_test.h, stl_test.cpp, stl_test.exp
7223
	(test/regression): tests for postfix increment operator and
7224
	indirection of istreambuf_iterator.
7225
2f6cf64 by ptr at 2004-03-24 7226
2003-10-25  Petr Ovtchenkov  <ptr@island...>
8fd8302 by ptr at 2003-11-13 7227
7228
	* _istreambuf_iterator.h: fix postfix increment operator
7229
	of istreambuf_iterator to provide conformance with
7230
	ISO/IEC 14882:1998(E), 24.1.1, p.511, i.e.
7231
	*r++ equivalent to { T tmp = *r; ++r; return tmp; }.
7232
	Thanks Tanaka for the report.
7233
f8f5d1a by ptr at 2003-11-14 7234
2003-10-23  Francois Dumont  <dums@s...>
2382382 by ptr at 2003-11-02 7235
	
8fd8302 by ptr at 2003-11-13 7236
	* debug/: modification of the invalidation of iterators to avoid
7237
	invalidation of the end iterator for the associative containers,
7238
	hashed containers and list on calls to clear/assign/assignment
7239
	operator. (thanks  Alexey  Sarytchev)
de9fe41 by dums at 2007-02-02 7240
8fd8302 by ptr at 2003-11-13 7241
	* _rope.h: Correction of the rope::iterator and rope::const_iterator
7242
	copy constructor and assignment operator (thanks Bradley Grainger)
7243
f8f5d1a by ptr at 2003-11-14 7244
2003-10-16  Francois Dumont  <dums@s...>
8fd8302 by ptr at 2003-11-13 7245
7246
	* _alloc.h: Add of the throw() specification on allocator comparision.
d26635e by complement at 2005-11-01 7247
8fd8302 by ptr at 2003-11-13 7248
	* _iterator.h: Correction of the operator++(int) signature to conform
7249
	to the standard.
d26635e by complement at 2005-11-01 7250
8fd8302 by ptr at 2003-11-13 7251
	* _ctype.h: tolower and toupper for wchar_t types.
d26635e by complement at 2005-11-01 7252
8fd8302 by ptr at 2003-11-13 7253
	* _valarray.h: gslice_array::operator = (const value_type&) not
7254
	const anymore
d26635e by complement at 2005-11-01 7255
8fd8302 by ptr at 2003-11-13 7256
	* _valarray.h: slice_array idem
d26635e by complement at 2005-11-01 7257
8fd8302 by ptr at 2003-11-13 7258
	* _valarray.h: valarray<T> operator [](const gslice&) former version
7259
	was taking a copy of gslice
d26635e by complement at 2005-11-01 7260
8fd8302 by ptr at 2003-11-13 7261
	* _codecvt.h: correction of the default codecvt class definition and
7262
	correction of the out method 
d26635e by complement at 2005-11-01 7263
8fd8302 by ptr at 2003-11-13 7264
	(all thanks Richard Peng)
d26635e by complement at 2005-11-01 7265
f8f5d1a by ptr at 2003-11-14 7266
2003-10-16  Francois Dumont  <dums@s...>
8fd8302 by ptr at 2003-11-13 7267
7268
	* debug/: add of the iterator range check on all container constructors.
7269
7270
	* _string.h: correction of a bug on string auto referencing throught
7271
	some method like insert and replace. (thanks Tanaka)
7272
7273
	* _valarray.h: correction of the missing slice_array copy constructor
7274
	and assignment operator in the private section (thanks Tanaka)
7275
2f6cf64 by ptr at 2004-03-24 7276
2003-10-11  Petr Ovtchenkov  <ptr@island...>
8fd8302 by ptr at 2003-11-13 7277
7278
	* _sstream.c: [io]?stringstream must do equivalent of seek at end,
7279
	after opened with ios_base::ate; this behaviour useful only when buffer
7280
	initialized by string; thanks Tanaka for the report.
7281
	
7747539 by ptr at 2003-11-16 7282
2003-10-06  Francois Dumont  <dums@s...>
8fd8302 by ptr at 2003-11-13 7283
7284
	* _istreambuf_iterator.h, _ostreambuf_iterator.h: correction
7285
	of the missing iterator base class (Thanks Tanaka)
d26635e by complement at 2005-11-01 7286
f8f5d1a by ptr at 2003-11-14 7287
2003-10-05  Francois Dumont  <dums@s...>
8fd8302 by ptr at 2003-11-13 7288
7289
	* _string.h: correction of the replace implementation badling form
7290
	for self referencing
7291
d26635e by complement at 2005-11-01 7292
	* _string.h, _string.c: Modification of the _M_copy method
8fd8302 by ptr at 2003-11-13 7293
	to _M_move as basic_string do not correctly handled self referecing;
7294
	thanks Tanaka
d26635e by complement at 2005-11-01 7295
7747539 by ptr at 2003-11-16 7296
2003-09-25  Francois Dumont  <dums@s...>
d26635e by complement at 2005-11-01 7297
7747539 by ptr at 2003-11-16 7298
	* como 4.3.0 on linux support (thanks Synge Todo and Karel Gardas)
d26635e by complement at 2005-11-01 7299
7747539 by ptr at 2003-11-16 7300
	* Quazy-leak patch: make memory detection tools happier,
2f6cf64 by ptr at 2004-03-24 7301
	option _STLP_LEAKS_PEDANTIC in _site_config.h. (thanks Petr Ovtchenkov)
d26635e by complement at 2005-11-01 7302
7747539 by ptr at 2003-11-16 7303
2003-09-19  Francois Dumont  <dums@s...>
d26635e by complement at 2005-11-01 7304
7747539 by ptr at 2003-11-16 7305
	* Support of the Linux Intel C++ support (thanks Blaine Kubesh)
8fd8302 by ptr at 2003-11-13 7306
7747539 by ptr at 2003-11-16 7307
	* FreeBSD support update (thanks Guy Middleton).
d26635e by complement at 2005-11-01 7308
8fd8302 by ptr at 2003-11-13 7309
  ----
7310
7311
  * codecvt.cpp: charcode correction in the do_in method (thanks J Hamilton report)
7312
7313
  ----
7314
7315
  * _valarray.h: Correction of the missing explicit keyword in front of one of the valarray constructors
7316
                 (thanks Stephen Clamage)
7317
7318
  ----
7747539 by ptr at 2003-11-16 7319
2003-08-10  Francois Dumont  <dums@s...>
8fd8302 by ptr at 2003-11-13 7320
7747539 by ptr at 2003-11-16 7321
	* stdexcept: Correction of the mysterious 50 messages from VC7.Net (thanks Krish S)
8fd8302 by ptr at 2003-11-13 7322
7323
  ----
7324
7325
  * _vector.h: implementation of the max_size method based on the allocator::max_size method 
7326
               (thanks Gennaro Prota from the boost forum).
7327
7328
  ----
7329
7330
  * _vector.c: add of the standard length_error exception to the reserve method (thanks Steven Youngs).
7331
7332
  ----
7333
7334
  * _alloc.h: add of a check of the number of element require to allocator::allocate to avoid a possible
7335
              size_type overflow (thanks Steven Youngs).
7336
7337
  ----
7338
7339
  * _istream.h: move of the ws implementation within the header to avoid undefined symbol
7340
                under NO_CUSTOM_IO mode (thanks Ulrich Eckhardt)
7341
7342
  ----
7343
7344
  * ctype.cpp : charcode correction (thanks Markus Stier reports and Alberto Barbati correction)
7345
7346
  ----
7347
7348
  * _function.h : all function can now be used in a non-const world (thanks Alexey Kirjushkin)
7349
7350
  ----
7351
7352
  * move constructor framework integration (thanks Francois Dumont)
7353
7354
  ----
7355
7356
  * containers interface correction for standard compliance when using explicit
7357
    intanciation of not default constructible type. (thanks Alexei Agafonov report)
7358
7359
  ----
7360
2382382 by ptr at 2003-11-02 7361
  * iostream.cpp, locale_impl.cpp : static initialization made robust for case of 
8fd8302 by ptr at 2003-11-13 7362
    dynamic loader circular dependancies (Thanks Alexey Sarytchev for the report)
2382382 by ptr at 2003-11-02 7363
	
7364
  ----
7365
	
7366
  * _function.h : integration of a new workaround for mem_fun_* family 
7367
                  for compiler having return void bug (Thanks Pavel Kuznetsov).
7368
7369
  * stl_solaris.h : v8plus compilation fix (Thanks Mukesh Kapoor)
7370
7371
  * num_put_float.cpp : FreeBSD fix 
7372
7373
  * _construct.h : fixed case for compilers with default integer
7374
  constructor bug
7375
	
7376
  ---
7377
	
7378
  * fstream.cpp : text file stream position bug correction (thanks Christopher Kohlert)
8fd8302 by ptr at 2003-11-13 7379
2382382 by ptr at 2003-11-02 7380
  ---
8fd8302 by ptr at 2003-11-13 7381
2382382 by ptr at 2003-11-02 7382
  * _num_put.c : Correction of the display of the min 64 bits signed integer values
7383
                 like numeric_limits<__int64>::min() on WIN32 for instance (thanks Anders Dalvander)
8fd8302 by ptr at 2003-11-13 7384
2382382 by ptr at 2003-11-02 7385
  ---
7386
  * _num_put.c : Add of the '+' sign when requested for the unsigned integer display 
7387
                 (thanks Francois Dumont)
8fd8302 by ptr at 2003-11-13 7388
2382382 by ptr at 2003-11-02 7389
  ---
8fd8302 by ptr at 2003-11-13 7390
2382382 by ptr at 2003-11-02 7391
  * debug : many missing iterator invalidation corrected (thanks Detlev V.Davidson and Francois Dumont)
8fd8302 by ptr at 2003-11-13 7392
2382382 by ptr at 2003-11-02 7393
  ---
8fd8302 by ptr at 2003-11-13 7394
2382382 by ptr at 2003-11-02 7395
  * _new.h : introduction of a new config compiler switch for those which do define
7396
             bad_alloc but that do not throw it! (thanks ?)
7397
  ---
7398
  * _new.h : class nothrow_t changed to struct nothrow_t (Thanks Francois Dumont)
7399
	---
7400
	* _bvector.h : Addition of the |= and &= operator on the _Bit_reference struct (thanks Ed Rice)
7401
	---
7402
	* Performance bug in type_traits.h fixed (Thanks Francois Dumont)
7403
	---
7404
	* Added Linux spin lock code ()
7405
	---
7406
    * Added GCC-3.x configurations
7407
7408
	* Fixed HP aCC support
7409
7410
	* Added OpenWatcom support
7411
	
7412
	* version numbers bumped
7413
7414
	* iostreams ported to EMX (gcc on OS/2) (Thanks Martin Schaffoener)
7415
7416
	* iostreams ported to CRAY Unicos C90, T90, and J90 (Thanks Geir Johansen)
7417
	
7418
	* stl_sunpro.h : fixed mbstate definition for SUN 4.2 (thanks  lengzq)
7419
7420
	* complex.cpp, _complex.h : template<> used for specializations
7421
d26635e by complement at 2005-11-01 7422
	* _num_put.c : unused locale variable removed (thanks Petr Ovtchenkov)
2382382 by ptr at 2003-11-02 7423
7424
	* _algo.h : __reverse beautified (thanks Kabanov)
7425
7426
	* dll_main.cpp : force_link() forced to be linked in
7427
7428
	* stl_msvc.h : config changes for .NET
7429
7430
	* _auto_ptr.h : "struct" changed to "class"
7431
7432
	* _istream.c : M_read_unbuffered fixed (thanks  Stefan Schwarzer )
7433
 	
7434
	* stl_gcc.h : added missing inclusion for SCO platform (thanks Emmanuel Soden)
7435
7436
	* _tree.c : optimized insert_unique (thanks Timothy)
7437
7438
	* _algo.c : relaxed type requirements for lower_bound, upper_bound, binary_search
7439
7440
	* _algo.h : adjacent_find() expressed with compare-function flavour
7441
7442
	* cpp_runtime/typeinfo : made adjustments for .NET (Thanks Daniel)
7443
7444
	* cstd/cassert : guard removed (thanks Evan Cheng)
7445
	
7446
The following changes were made in 4.5.3 since 4.5.1 release:
7447
7448
	* iostreams ported to Windows CE (thanks Andrew Waters)
7449
7450
	* iostreams ported to AmigaOS (thanks Steven Solie)
7451
7452
	* iostreams ported to NCR 3.x (thanks Emmanuel Soden)
7453
	
7454
	* _hash_map::operator[] : enhanced to avoid calling default object constructor
7455
	 (Thanks Yuri Taranenko for the report)
7456
7457
	* Identifier "__value" changed everywhere to "__val" to avoid clashes with Microsoft's "managed C++" keyword (thanks Crow for the report)
7458
7459
	* Most containers : swap() fixed to swap non-stateless allocators correctly (thanks Scott Meyers)
7460
7461
	* _sstream : fix to account for ios_base::app flag properly
7462
7463
	* type_traits.h : _IsOKToMemCpy() fixed to only allow memcpy() for same type arguments (thanks  Ed Brey for the report)
7464
	
7465
	* stl/_num_put.c, stl/_list.c : workarounds for Debian gcc (thanks Levente Farkas)
7466
	
7467
	* <typeinfo> : fixed MS workaround (thanks  Wil Evers,  Andrew Ushakov)
7468
7469
	* _pthread_alloc.h : added per_thread_allocator class; returns memory to the same thread it's been allocated in.
7470
7471
	* _iterator_old.h : restored ->() operator for MSVC (thanks Daniel Anderson)
7472
7473
	* a bunch of MPW fixes (thanks Tsutomu Yoshida)
7474
7475
	* _config_compat.h : fixed compatibility definition for _STLP_NO_EXCEPTIONS (thanks Nicolas)
7476
7477
	* _fstream.c : fixed bug in _M_seek_init (thanks Pavel Kuznetsov)
7478
	
7479
	* _rope.h : rope<>::swap() methods fixed for non-partial ordering case (thanks Eric Musser)
7480
 	
7481
	* comlex_trig.cpp : fixed bug on SGI (thanks Mortis)
7482
7483
	* A bunch of fixes for HP aCC compilation with -AA option (thanks  John Bossom)
7484
7485
	* *.c files : added conditional inclusion of corresponding *.h file to fix xlC issues with -tempinc option (thanks Alla Bogolyubov for the report)
7486
7487
	* _auto_ptr.h : "struct" changed to "class" (thanks Alex Pinsker for the report)
7488
7489
	* _config.h/stl_user_config.h : handling of macro _STLP_WHOLE_VENDOR_STD rectified
7490
7491
	* _num_put.c : do_put(const void*) changed to output pointers in hex format (thanks  Alex Rosenberg)
7492
7493
	* test/eh/test_algobase.cpp : fixed alignment to work on 64-bit architectures
7494
c5580c6 by fbp at 2001-09-11 7495
The following changes were made in 4.5.1 beta 1 since 4.5 release:
7496
fb6fa0e by fbp at 2001-09-30 7497
	* _config.h, _epilog.h : new namespace inclusion schema implemented for own iostreams mode
7498
	 (no std:: redefinition; _STL:: namespace imported into std::, instead of std:: imported to _STL.
7499
	  C library header files wrappers become obsolete if this mode is used and no own namespace is selected.
7500
	  They will be moved out to distinct directory in the next release, and default is going to be no own namespace 
7501
	  with own iostreams.)
8522e41 by fbp at 2001-10-10 7502
 	  For some compilers (VC6), this only works with _STLP_NO_OWN_NAMESPACE and _STLP_OWN_IOSTREAMS settings. 
7503
	
c5580c6 by fbp at 2001-09-11 7504
	* iostreams ported to SCO OpenServer (thanks Emmanuel Soden)
7505
8522e41 by fbp at 2001-10-10 7506
	* sparc_atomic.s : added "stbar" to fix multiprocessor crashes on SPARC
c5580c6 by fbp at 2001-09-11 7507
fb6fa0e by fbp at 2001-09-30 7508
	* dll_main.cpp : forced link of Bs_G static data members (thanks  Sandy Martel). Function wrapped in STLport namespace.
c5580c6 by fbp at 2001-09-11 7509
7fe9a66 by ptr at 2005-04-18 7510
	* _alloc.c : fixed _STLP_CHUNK_MALLOC for debug malloc configuration (thanks  Markus Sch pflin)
d361890 by fbp at 2001-09-15 7511
7512
	* _config_compat.h : fixed compatibility section for _STLP_NO_OWN_IOSTREAMS
7513
fb6fa0e by fbp at 2001-09-30 7514
	* fstram.cpp , vc6.unicode.mak : fixed bug in wide streams handling for VC6 (thanks Jim Dolter)
d361890 by fbp at 2001-09-15 7515
7516
	* etc/*.txt : files list broken up into several categories for future reorganization
b06a7c4 by fbp at 2001-09-17 7517
7518
	* stl_msvc.h : fixed library selection for .NET (Thanks Franz Zetting)
3100646 by fbp at 2001-09-17 7519
8522e41 by fbp at 2001-10-10 7520
	* _ftsream.h, iostream.cpp : fixed compilation for _STLP_NO_EXTENSIONS case (thanks  Ben Dorman for the report)
bbfe699 by fbp at 2001-09-19 7521
7522
	* char_traits.h : fpos<> operators == made members (thanks  Thomas Witt)
7523
7524
	* _threads.h : added using directive for Solaris x86 compile (thanks Mukesh Kapoor)
7525
7526
	* _threads.h : fixed InterlockedXXX definitions for VC++ 6.0 SP5 (thanks AndreasM)
22e4cfe by fbp at 2001-09-19 7527
e7411f1 by fbp at 2001-09-22 7528
	* gcc-install-apple-macosx.mak : INSTALL_STEP set to install_unix (Thanks Tron Thomas)
7529
22e4cfe by fbp at 2001-09-19 7530
	* common.mak : default install directory for Unix set to /usr/local
e7411f1 by fbp at 2001-09-22 7531
fb6fa0e by fbp at 2001-09-30 7532
	* _string.h : _M_null expressed via _STLP_DEFAULT_CONSTRUCTED (Thanks Anthony)
7533
7534
	* _site_config.h : made sure _STLP_NO_THREADS are set if _NOTHREADS is on (Thanks Jeppe Madsen)
7535
7536
	* _config.h : _STLP_WIN32THREADS is set (bugfix) ( thanks to Andreas Malzahn )
a0222f9 by fbp at 2001-10-04 7537
7538
	* _num_put.c, common_rules.mak : patches by Levente Farkas 
75ccd4a by fbp at 2001-10-04 7539
7540
	* etc/STLport-4.5.1.spec : spec file to build STLport-4.5.1 RPM added (thanks Levente Farkas)
8522e41 by fbp at 2001-10-10 7541
7542
	* _auto_ptr.h , _debug.c, _debug.h : debug check for auto_ptr pointer added (thanks Gerd Hoeren for the idea)
7543
7544
	* debug/_vector.h : invalidation for erase() corrected not to invalidate current iterator (Thanks ALberto Barbati)
7545
7546
	* stl_bc.h : restored automatic library link directive for cases when STLport is not a native library
7547
7548
7549
	* _auto_ptr.h : template constructor conversion bug fixed (thanks mbergal)
303bb6e by fbp at 2001-10-28 7550
7551
	* MIngw32 patches integrated (thanks Wu Yongwei)
7552
7553
	* 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) 
7554
7555
	* dll_main.cpp : added __malloc_alloc instantiation (thanks Michael Ehrig)
7556
7557
	* _debug.c : fixed race condition in _M_detach (thanks Achim Stremplat)
7558
7559
	* test/*/hpacc.mak : fixed flags and libs (thanks  Michael Ehrig)
7560
7561
	* typeinfo : added fix for MS VC ::bad_cast confusion (thanks Alberto Barbati)
7562
	
7563
	* debug/_vector.h : removed extra guard for MSCV around member template constructor (thanks Alberto Barbati)
7564
	
a794c5e by fbp at 2001-10-30 7565
	* _fstream.h : added extension basic_fstream<> constructors taking protection parameter (thanks Mukesh Kapoor for the idea)
21f1ef7 by fbp at 2001-11-01 7566
7567
	* stl_sunpro.h : added additional C include directory choice for Solaris 6&7 (thanks John E. Bossom)
303bb6e by fbp at 2001-10-28 7568
	
21f1ef7 by fbp at 2001-11-01 7569
        * _vector.c : added _vector.h inclusion for _STLP_LINK_TIME_INSTANTIATION case (thanks Alex Vanic)
7570
73b6d82 by fbp at 2001-11-11 7571
5d6ecde by fbp at 2001-11-13 7572
	* _num_put.c : fixed overflow case with grouping (thanks Will Evers)
73b6d82 by fbp at 2001-11-11 7573
	
7574
	* _istreambuf_iterator.h : fixed distance_type return type (thanks Anthony Williams)
7575
7576
	* debug/_vector.h : debug version of push_back() added (thanks)
24946e5 by fbp at 2001-11-15 7577
7578
	* Iostreams ported to LynxOS 3.0 (thanks Dmitry Azovtsev)
7579
 	
7580
	* wrappers/*.h : added inclusions of the master header to fix xlC 3.x compile (Thanks Dmitry Azovtsev)
7581
7582
	* Changes for BCB6 integration (thanks Nathan York)
7583
7584
	* Removed all dead code blocks marked by #if OBSOLETE and #if 0
43a86f6 by fbp at 2001-11-16 7585
b56a567 by fbp at 2001-11-22 7586
	* Updates build spec file for Linux rpm (thanks Levene Farkas, Harold van Oostrom)
43a86f6 by fbp at 2001-11-16 7587
7588
	* complex_trig.cpp : limits changed to be static, for performance optimization (thanks Sergei Nikolaev)
7589
7590
	* _algo.c : eliminated default-constructed iterators, to lift unnecessary restriction (thanks Tonci Tomic )
7591
 	
b56a567 by fbp at 2001-11-22 7592
	* _vector.h : fixed bug in assign() : copy used instead of __copy_aux (Thanks Tim Finer)
e182b3d by fbp at 2001-12-01 7593
7594
	* stl_sunpro.h : restored _STLP_HAS_NO_NEW_C_HEADERS switch for SUN CC 4.2
7595
7596
	* <new> : __stl_new definition put into the namespace (thanks Satoshi Nakamura)
7597
7598
	* bcb*.mak : fixed md command and DYN_LINK (thanks Kirby Zhou)
7599
7600
	* stl_user_config.h : added _STLP_USE_CUSTOM_CHAR_TYPES_IO switch to optimize iostreams for default case
7601
	
7602
	* debug/_vector.h : fixed debug check bug (thanks Gerd Hoeren)
7603
7604
	* _alloc.h : allocator::construct uses std::_Construct (thanks Gert Grossmann)
7605
2382382 by ptr at 2003-11-02 7606
	* stl/_alloc_old.h : restored (thanks Gert Grossmann)
7607
7608
	* stl/_threads.h : fixed _STLP_ATOMIC_xxx macros for DEC (thanks Gert Grossman)
7609
7610
	* src/_locale_impl.cpp : added missing guards for codecvt<> in _STLP_NO_MBSTATE_T case
7611
 	
73b6d82 by fbp at 2001-11-11 7612
	
8522e41 by fbp at 2001-10-10 7613
The following changes were made in 4.5 release since 4.5 beta 8 :
7107a86 by fbp at 2001-07-29 7614
	
2382382 by ptr at 2003-11-02 7615
	* _threads.h, debug/_debug.h etc : STLport iostreams library made binary compatible with user code compiler w/o multithreaded switch, for some platforms
b30eece by fbp at 2001-08-20 7616
	
ac60929 by fbp at 2001-07-14 7617
	* config/stl_msvc.h, <cmath> : corrected _STLP_NO_USING_FOR_GLOBAL_FUNCTIONS for VC++ 6.0 SP5 
7618
	  (Thanks Alberto Barbati)
7619
7620
	* src/vc6.mak : RC macro definition restored (Thanks Graham)
7621
7622
	* stl/_cmath.h, <cmath> : parts of code moved to <cmath> as <valarray> uses it (Thanks Synge Todo)
a482b3c by fbp at 2001-07-19 7623
7624
	* stl/_tree.c : fixed insert_unique() with a hint bug (Thanks Serge Pashkov)
7625
 	
7626
	* src/gcc-*.mak : removed -nostdinc++ option
7627
7628
	* stl_solaris.h : definition of _STLP_SUNPRO_EXCLUDE made dependant on _XOPEN macro instead of SUN CC macros (Thanks ecohen for the report)
7629
7630
	* fstream.cpp : mmap_chunk made to be 1M instead of 16M as was originally intended (thanks Alexey Starikovskiy)
7631
	* stl_sunpro.h : _STLP_LIMITED_DEFAULT_TEMPLATES not defined for compat mode anymore ( thanks Michael Kopp)
74788d1 by fbp at 2001-07-25 7632
	* dll_main.cpp : added instantiation for _Swap_lock_struct<> (thanks simonb)
7633
7634
	* _ostream.c : fixed formatting bug for width()==1
ad976cf by fbp at 2001-07-26 7635
7636
	* config/_epilog.h : added option pop section for Borland. 
8c06186 by fbp at 2001-07-29 7637
7638
	* stl/_threads.h : fixed InterlockedXXX declarations for MS .NET (thanks Piers Haken)
7107a86 by fbp at 2001-07-29 7639
7640
	* vc7.mak makefile added for MS VC++ 7.0 (.NET)
7641
7642
	* fixed _STLP_ITERATOR_CATEGORY, etc. for Mwerks CodeWarrior 5.0
87d7497 by fbp at 2001-08-01 7643
7644
	* stl/_num_put.c : fixed operator<<(void*) to use _STLP_LONG_LONG where available.
7645
7646
	* _STLP_WHOLE_VENDOR_STD option is back supported (Thanks anton ephanov for the input)
7647
7648
	* _cmath.h : added guard to mask additional overloads (thanks Tim Smith)
7649
bbf7f66 by fbp at 2001-08-18 7650
	* stl_solaris.h : mbstate_t stuff defined here, old-style C headers used (Thanks Mukesh Kapoor)
7651
7652
	* type_traits.h : __default_constructed() inlined (Thanks Matt Davies)
b30eece by fbp at 2001-08-20 7653
b61bef5 by fbp at 2001-08-21 7654
	* new.h : fix for gcc-3.0 to look in backward directory (Thanks Ken) 
09c3471 by fbp at 2001-08-22 7655
7656
	* stlport/using/h/streambuf.h added (Thanks Gennadiy)
e0a332c by fbp at 2001-09-01 7657
7658
	* A bunch of changes for Borland static and DLL compile (Thanks Nathan York)
7659
7660
	* stl/_algo.c : fixed find_end() bug (Thanks Alberto Barbati)
7661
7662
	* stl/_queue.h : priority_queue<>::_comp renamed to "comp" as standard states (thanks Todd Greer)
7663
6e1115a by fbp at 2001-09-06 7664
        * _limits.c : added correct data member representations for AS400 and Alpha machines (thanks Holger Stash)
7665
 	
7666
	* _vector.h : added check to avoid calling allocator<>::deallocate(0) (thanks Stephen Cleary)
7667
7668
	* config/_prolog.h, config/_epilog.h : added push/pop pack(8) pragmas for MSVC (thanks Todd Greer, Alberto Barbati)
7669
 	
7670
	* gcc.mak's : default spelling for "-pthreads" option changed to "-pthread" as more platforms use that.
e0a332c by fbp at 2001-09-01 7671
	
ac60929 by fbp at 2001-07-14 7672
	
957b18c by fbp at 2001-05-30 7673
The following changes were made in 4.5 beta 8 since 4.5 beta 7 :
a437c12 by fbp at 2001-06-21 7674
	
7675
	* stl/_fstream.c : _M_underflow bug fix for custom codecvt facets (thanks Alberto Barbati)
7676
	
7677
	* bcc55.mak : c_locale.c added to the link command (thanks Steve Loves)
7678
	
ad1d419 by fbp at 2001-05-31 7679
	* _iterator_base.h & many other places : iterator tags are being accepted by const reference 
7680
	   instead of value, to fix segmentation faults experienced on certain platforms with beta7.
7681
	  That also should improve efficiency on same platforms (apparently, empty unreferenced 
a437c12 by fbp at 2001-06-21 7682
	  objects with no constructors/destructors were copied on the stack when passed by value).
f3c44c6 by fbp at 2001-06-01 7683
	  Accompanied change eliminates hardcoded deference hack used in previous beta.
7684
	  Thanks everybody who reported this.
7685
7686
	* stl_user_config.h : added _STLP_GCC_USES_GNU_LD switch. This is for those platforms 
7687
	  where native linker does not let gcc to implement automatic instantiation of static 
7688
	  template data members (Tru64, AIX, HP-UX). 
7689
	  It is being put in this file as there is no automatic way to check if we are using GNU ld or not.
957b18c by fbp at 2001-05-30 7690
	
8c278f3 by fbp at 2001-07-06 7691
	* _range_erors.h : depandancy on <stdexcept> and <string> removed for own iostreams mode
957b18c by fbp at 2001-05-30 7692
	(thanks Doug Gilbert)
7693
7694
	* debug/_list.h : "typename" added in new methods (thanks Doug Gilbert)
7695
7696
	* _config.h, src/common_macros.mak : beta version number bumped 
7697
		
ad1d419 by fbp at 2001-05-31 7698
	* src/ftream.cpp, c_locale_win32.c : fixes for UNICODE compilation (thanks Valo)
7699
f3c44c6 by fbp at 2001-06-01 7700
	* stl_gcc.h, etc : changes for GCC support on Tru64 (thanks Tobias Ernst)
b059616 by fbp at 2001-06-23 7701
7702
	* _alloc.c : for MS VC, malloc_dbg only used when _STLP_DEBUG_ALLOC is set, not for all debug configs
7703
 	  (Thanks Anton Ephanov)
7704
7705
	* test/eh/gcc.mak : directories stuff fixed (Thanks Brodie)
7706
8c278f3 by fbp at 2001-07-06 7707
	* stl/_complex.h : fixed declarations for long double specializations (Thanks Tsutomu Yoshida)
7708
7709
	* locale_byname.cpp, etc. : fixes for Apple compilers by Tsutomu Yoshida.
7710
7711
	* _ios_base.h : __evenk id changed not to clash with MS VC++ 7 (thanks Paul Ghezzi)
7712
7713
	* _fstream.c : added basic_filebuf constructor workaround for compiler which do not initialize builtins
7714
	  to zero when default constructed (thanks Alberto Barbati)
7715
7716
	* _locale.h : relaxed guerd around templated locale constructor (thanks Alberto Barbati)
7717
7718
	* stl_mwerks.h : changes to accomodate CodeWarrior 6.2 (thanks cprosser)
7719
4c7347c by fbp at 2001-06-28 7720
	* stl/_cmath.h : extracted from <cmath> for better decoupling
7721
7722
	* stl/_std_prolog.h, stl/_std_epilog.h : hooks for future alternative namespace inclusion style.
7723
7724
	* config/stl_gcc.h : gcc-3.0 now supported
3cb3f92 by fbp at 2001-06-28 7725
7726
	* src/gcc-beos.h : only static library is being built (dynamic stil don't work) (thanks John Maddock)
7727
7728
	* using/iostream : included using/istream and using/ostream
8c278f3 by fbp at 2001-07-06 7729
7730
	* dll_main.cpp : force_link() fix to prevent numeric_limits static members and 
7731
	  _M_increment/decrement from _tree.c from being optimized out by VC++
7732
	  (thanks Sofus Mortensen, Alberto Barbati )
7733
7734
	* _alloc.c : added CHECK_NULL_ALLOC for _STLP_CHUNK_ALLOC with malloc, to throw exception if malloc returns 0 (thanks ghunt)
7735
7736
	* stl_bc.h, <exception> : fixed Borland C++ import of unexpected handler stuff
bff4053 by fbp at 2001-07-11 7737
7738
	* stl_ibm.h, etc. : fixes for IBM VisualAge 5.02 to compile
7739
00ea5b7 by fbp at 2001-09-04 7740
	* type_traits.h : bool2type<> changed to be parameterized on int, to work around SUN CC bugs (probably others, too)
957b18c by fbp at 2001-05-30 7741
	
7742
The following changes were made in 4.5 beta 7 since 4.1 beta 6 :
ae9fc15 by fbp at 2001-05-11 7743
7744
	* sparc_atomic.s : file missing from the distribution restored
9496a4d by fbp at 2001-05-16 7745
7746
	* etc/ subdirectory created; miscellanous files moved there
7747
3277da3 by fbp at 2001-05-29 7748
	* STLport ported to BeOs, complete with iostreams (thanks John Maddock) 
7749
	
47ad68e by fbp at 2001-05-22 7750
	* Macro _STLP_NO_SGI_IOSTREAMS renamed to _STLP_NO_OWN_IOSTREAMS, old references to SGI removed; 
7751
	
9496a4d by fbp at 2001-05-16 7752
	* "prepare" target added to all makefiles in src/; should be run before using STLport;
7753
	  on most platforms it's empty, on some of them it creates necessary symbolic links, etc.
ae9fc15 by fbp at 2001-05-11 7754
	
7755
	* stl/_deque.h : deque<>::erase bug (introduced in 4.1b4) fixed (thanks to BruceFlorman) 
7756
	               : default parameter in constructor bug fixed (Thanks to Alex Vanic) 
7757
9496a4d by fbp at 2001-05-16 7758
	* stl_msvc.h : explicit template function agruments enabled for VC++; 
7759
7760
	* stl_wince.h : added <windows.h> inclusion
7761
51c99e0 by fbp at 2001-05-15 7762
	* stl/_limits.h : numeric_limits<bool>::digits changed from 0 to 1 (Thanks Mukesh Kapoor)
9496a4d by fbp at 2001-05-16 7763
7764
	* stl/_function_base.h : added __identity_element() (extension name), _numeric.h : this one used instead of identity_element() (Thanks Hafeez)
7765
 
ae9fc15 by fbp at 2001-05-11 7766
	* stl_msvc.h : explicit template function agruments enabled for VC++; 
9496a4d by fbp at 2001-05-16 7767
ae9fc15 by fbp at 2001-05-11 7768
	  use_facet<> now fully conforms to the standard with VC++. (Thanks Jeff Kohn for the input)
7769
7770
	* fstream.cpp : LARGE_INTEGER used to work around Intel shift instruction bug (thanks Thomas Meischner)
7771
	* fstream.cpp : ULL macro fixed for Win32
7772
	* fstream.cpp : Added test for for INVALID_HANDLE_VALUE and NULL base and _M_view_id,
7773
 	  for _M_close on Win32 (Thanks Stephen Baker)
9496a4d by fbp at 2001-05-16 7774
	* fstream.cpp : Fixed corner case with mmap() on EOF (Thanks Jens Maurer)
51c99e0 by fbp at 2001-05-15 7775
9496a4d by fbp at 2001-05-16 7776
        * _istream.c : fixed _M_read_buffered sssso that it does not skip delimiters (Thanks Gerd Hoeren)
7777
	
7778
	* stl/_string.h : operator __std_string() uses constructor with a size to correctly initialize string containing null chars (Thanks Armin)
7779
	
51c99e0 by fbp at 2001-05-15 7780
	* iomanip : added operator for setfill object and istream (was ostream only) (Thanks Mukesh Kapoor)
ae9fc15 by fbp at 2001-05-11 7781
	
7782
	* stl/_locale.h , stl_intel.h : fixes for Intel 5.0 compiler (Thanks Anton and Marcello Pietrobon)
7783
7784
	* stl_solaris.h : added _STLP_NO_NATIVE_WIDE_FUNCTIONS
7785
	
7786
	* New makefiles added for Intel C++ 5.0 and VC++ 6.0 in src/, test/eh, test/regression (Thanks to Marcello Pietrobon)
7787
7788
	* _STLP_NO_LONG_DOUBLE case handled for STLport iostreams as well (thanks John Daniel)
7789
	
7790
	* SUN CC compiler template cache is being properly cleaned up (Thanks Whitney Kew)
7791
9496a4d by fbp at 2001-05-16 7792
	* dll_main.cpp : added extern "C" around DllMain() (Thanks Danny Smith)
7793
	
ae9fc15 by fbp at 2001-05-11 7794
	* type_traits.h : added bool parameter to shut up warnings on some compilers (Thanks glassman)
7795
	
7796
	* stl/_rope.h/.c, src/mrcpp.mak, src/mrc.mak, stl/_tree.h : MPW & MRC fixes by Tsutomu Yoshida
7797
7798
	* stl_gcc.h : added path for <exceptions> et al for gcc-2.95.3 on FreeBSD (Thanks to 
7799
	
7800
	* _tree.h /_tree.c : pointers used as return values instead of iterators for implementation 
7801
	  functions, for efficiency.
7802
7803
	* _algo.h/.c : added leading underscrore to some symbols (Thanks to Ed James-Beckerman for the report)
7804
	
7805
	* dll_main.cpp : fixed nothrow object initialization (Thanks to Dan Ingold)
7806
7807
	* beta suffix in common_macros.mak updated (thanks to Whitney Kew)
7808
7809
	* c_locale_win32.c : incomple fix for locale completed (thanks to Alberto Barbati)
7810
7811
	* c_locale.h : _Locale_ALPHA definition for VC++ and mingw32 fixed (thanks Danny Smith)
7812
	
7813
	* _threads.h : fixed _DECTHREADS block to work on both DEC and HP
7814
7815
	* _hash_set.h : fixed typo in MSVC++ bug workaround ( Thanks to Jon_Hanson for the report)
7816
7817
	* stlport/strstream.h : fixed inclusion for MSVC 6 (Thanks  Joachim Achtzehnter)
7818
	
7819
	* _config.h : _STLP_RETHROW changed to avoid warnings with NO_EXCEPTIONS (thanks Richmond)	
7820
7821
	* _hashtable.c : prime list definition made consistent (thanks Rainer Schnitker)
7822
7823
	* stl_hpacc.h :  _STLP_FORCE_ALLOCATORS workaround used for Version 3.15 also (thanks Rainer Schnitker)
7824
7825
	* stl/_string_io.c : fixed using directive in operator >>() (thanks Rainer Schnitker)
7826
7827
	* debug/_deque.h : a check in erase() fixed (thanks Andreas Malzahn)
7828
9496a4d by fbp at 2001-05-16 7829
	* debug/_list.h : added remove() to do iterator invalidation; range erase() fixed to do invalidation
da9159a by fbp at 2001-05-19 7830
3277da3 by fbp at 2001-05-29 7831
	* stl_watcom.h : added switches; disabled own iosterams by default; 
7832
	                 enabled ->() operator for iterators (thanks Steven Green)
47ad68e by fbp at 2001-05-22 7833
7834
	* <exception> : added throw spec for what(); stl_sgi.h : made _STLP_NO_EXCEPTIONS depend on __EXCEPTIONS macro (Thanks Anton Ephanov)
5adacb6 by fbp at 2001-05-26 7835
7836
	* _string_io.c : operator << : fixed width() interpretation bug
6da715e by fbp at 2001-05-26 7837
7838
	* stl_hpacc.h/cmath : fixed HP aCC settings for -AA option (thanks Doug Gilbert) 
7839
7840
ae9fc15 by fbp at 2001-05-11 7841
	
7842
The following changes were made in 4.1 beta 6 since 4.1 beta 5 :
7843
7844
	* _istream.h, _ostream.h, _ios.h, _fstream.h : guard macros fixed to not clash with .h files in "stlport" directory
7845
	  Also all uses of those macros fixed. (thanks to Gerd Hoeren for the report)
7846
7847
	* _debug.c/_debug.h : fixed swap() for rb_tree and list (thanks to Gerd Hoeren for the report)
7848
	  swap() changed not to invalidate any iterators, as prescribed by the standard 
7849
7850
	* forced _REENTRANT to be defined when compiling with STLport iostreams and _STLP_DEBUG
7851
	  (without _STLP_DEBUG it seems to be binary compatible even without that)
7852
	
7853
	* facets_byname.cpp source introduced to replace all xx_byname.cpp files;
7854
 	  restored separate facets .cpp complilation (they used to be included in locale_impl.cpp)
7855
7856
	* introduced _STLP_USE_PERTHREAD_ALLOC to optionally use per-thread allocator 
7857
	  (_Pthread_alloc from _pthread_alloc.h) as the deafult node allocator. Only works with pthreads for now.
7858
	  
7859
	* Switches _STLP_DONT_REDEFINE_STD and _STLP_WHOLE_VENOR_STD are back (thanks to  Anton Ephanov for the report)
7860
	
7861
	* _vector.h : fixed bug in template version of insert (Thanks to Yotam Medini for the report)
7862
	
7863
	* monetary.cpp : unneded hack for cygwin removed (thanks to Dean Sturtevant) 
7864
7865
	* <iostream> : fixed _STLP_OUTERMOST_HEADER_ID macro
7866
7867
	* cin/cout/cerr redefined if no namespaces and SGI iostreams are used, for all compilers, just in case. 
7868
	* _sparc_atomic.h : fixed and improved atomic ops for gcc
7869
7870
	* test/regression : non-backward-compatible old-style __STL_xx macros use changed to _STLP_xx
7871
7872
	* config/st_gcc.h : disabled non-standard "extern" use for non-DLL templates 
7873
7874
	* mingw32 - used 'windows.h replacement' section in _threads.h (thanks to Danny Smith)
7875
7876
	* locale Win32 bug fixed (thanks to Alberto Balbarti)
7877
7878
	* mingw32 : _STLP_CONST_INIT_BUG defined for dll (thanks to Danny Smith)
7879
7880
	* "make clean" glitches fixed (thanks to Whitney Kew for the report)
7881
7882
	* _fstream.c : fixed codecvt bug for variable width encoding
7883
7884
	* _STLP_ABORT macro introduced to avoid clashes with third-party sw redefining abort() (thanks to Jerry)
7885
7886
	* c_locale_win32 : fixed parse bug in __ParseLocaleString (thanks to Danny Smith)
7887
7888
	* extra declspecs removed from templates to fix VC++ 7.0 ; only concrete classes have specifiers (thanks to Holger Stasch for the report)
7889
7890
	* stl_msvc.h, _hashtable.h/.c : fixes for IA64 compilation (thanks to Rainer Schnitker )
7891
7892
	* fixed bugs in "make install" on Unix (thanks to Carlos Paniago)
7893
7894
	* dll_main.cpp : DisableThreadLibraryCalls used for optimization (thanks to Alberto Barbati)
7895
	
7896
	* dll_main.cpp : a dummy function added to force <limits> guts for static VC++ link (thanks to Alberto Barbati)
7897
7898
	* gcc-linux.mak : flags fixed (thanks to Levente Farkas )
7899
7900
	* stl_msvc.h, stl_intel.h : fixed __ICL version test (thanks to Serge Pashkov)
7901
7902
	* versioning schema changed on Windows to have .dll extension (thanks everybody for the feedback)
7903
7904
	* NetBSD makefiles fixed
7905
7906
	* A bunch of fixes by Tsutomu Yoshida : MPW fixes plus :
7907
	* stl/_config.h : I believe the definition for _STLP_STD under debug/non-debug configurations swapped.
7908
7909
	* typeinfo.h : added check for _STLP_NO_NEW_HEADER for using declaration.
7910
          Otherwise three classes will not be included in the namespace std when #include <typeinfo>.
7911
7912
	* _istream.c : use of bind2nd (which required _function.h inclusion) changed to use alternate functor (thanks to Sergei Nikolaev)
7913
 	
7914
	* 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)
7915
7916
	* _string_io.c : fixed Intel C++ compilation bug in native streams mode
7917
7918
	* fstream.cpp : added write-sharing for fstream file handle (Thanks to Leland Best)
7919
7920
	* 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.
7921
7922
	* KAI C++ 4.0 is now supported on SUN
7923
7924
	* MAC OS X compilation fixed (thanks Patrick Luby for the patch)
7925
7926
	* HP aCC fixes by Michael Tsirkin
7927
	
7928
	* "INF/NAN" string representation for uppercase changed to "Inf/NaN" to behave like printf() on most systems.
7929
	
7930
	* debug/_iterator.c : fixed SUN 6.0 compiler internal error 
7931
7932
	* typeinfo.h : global scope used to import bad_cast, etc. (thanks to Val Melamed)
7933
	
7934
	* debug/_list.h : missing template versions of remove_if(), merge() added. Missing regular sort() added.
7935
	 (Thanks to dgehri)
7936
7937
	* debug/_slist.h : missing sort() (template and regular) interface added
7938
7939
	* _istream.h : eliminated warning about comparison with unsigned (Thanks to Gerd Hoeren for the report)
7940
7941
	* template constructors for containers changed to be one version with default allocator agrument, where possible.
7942
	
7943
        * remaining _STL_ prefixes changed to _STLP_
7944
	
7945
	* Solaris 7 compilation fixed
7946
7947
        * fstream.cpp : seek() allowed to seek past the end of the stream (Thanks to Phillip Toland for the input)
7948
The following changes were made in 4.1 beta 5 since 4.1 beta 4 :
7949
7950
	* All internal macros changed to have prefix _STLP_ instead of __STL or __STLPORT or __SGI_STL.
7951
          That is to allow seamless wrapping on platforms that use SGI STL as native STL/iostreams.
7952
	  For backward compatibility, most of user-settable __STL_xxx macros are accepted.
7953
7954
	* Versioning of shared libraries made UNIX-compliant
f0e83fb by dums at 2004-01-11 7955
ae9fc15 by fbp at 2001-05-11 7956
	
7957
	* Some temporary lifetime problems in SGI iostreams which may introduce memory corruption, fixed.
7958
7959
        * <new> : fixed memory leak bug due to unclever macro expansion in __stl_new (thanks to Joachim Achtzehnter)
7960
7961
	* stl/_tree.h : fixed several bugs in new code for corner cases in insert_equal()/insert_unique() with a hint 
7962
	  (thanks to Micheal Tsirkin for the report and patch)
7963
7964
	* _vector.h:284 : __copy call fixed to be __copy_aux (thanks to Alex Vanic)
7965
7966
	* _config.h : fixed static build bug due to  __STL_EXPOSE_GLOBALS_IMPLEMENTATION typo (thanks to Serge Pashkov)
7967
	
7968
	* fstream.cpp: __pioinfo definition for mingw32 fixed (Thanks to Danny Smith)
7969
7970
	* *.SUNWCCh files changed to regular files; moved to "stlport" directory
7971
7972
	* pthread_alloc : split into <pthread_alloc>/<stl/_pthread_alloc.h>
7973
7974
	* lightweight atomic ops used on SPARC v8plus and v9 (gcc and SUN CC)
7975
	
7976
	* Mac OS X support introduced (thanks to Patrick Luby) 
7977
7978
	* SGI iostreams ported to DJGPP (thanks to Tanes Sriviroolchai)
7979
7980
	* SGI iostreams ported to NetBSD (thanks to Michael Rauch)
7981
7982
	* FreeBSD build fixed, now builds for wchar_t too
7983
7984
	* DEC CXX build fixed; restricted to dynamic lib only
7985
7986
	* SGI MIPSpro build fixed; GNU make has to be used
7987
7988
	* Set of HP fixes by Michael Tsirkin
7989
7990
	* Set of Watcom fixes by Ricardo Gayozo
7991
7992
	* Bunch of Apple MRC/MPW fixes by Tsutomu Yoshida integrated
7993
	
7994
	* Bunch of iostream fixes for Cygwin, Borland and Intel 4.5, by Serge Pashkov	
7995
	
7996
	* debug/_list.h : added checking versions of pop_back/pop_front (thanks to Per Liboriussen)
7997
2f6cf64 by ptr at 2004-03-24 7998
	* src/c_locale_win32.c : fix for VC5sp3 (thanks to Petr Ovtchenkov), fix for day of week order (thanks to Danny Smith),
ae9fc15 by fbp at 2001-05-11 7999
	  fix for null-termination in my_ltoa (thanks to Serge Pashkov)
8000
	
8001
	* Some warnings in debug mode fixed (thanks to Marco)
8002
8003
	* type_traits.h : IsP functions return types changed to be more portable (thanks to Serge Pashkov for the suggestion),
8004
	  __cdecl added for Win (thanks to Todd Wilson)
8005
8006
	* debug/_tree.h : added owner check for erase() (thanks to Alberto Barbati)
8007
8008
	* stl/_ostream.h : << operator specializations added for compilers w/o partial ordering 
8009
	  (thanks to Alberto Barbati for pointing this out).
8010
8011
	* "make install" on UNIX : fixed the target not to remove lib directory; 
8012
	   default installdir restored to be /usr/local (thanks to Jeff de Vries for the input)
8013
	
8014
	* _construct.h : extra cast for __STL_SHRED_BYTE removed (thanks to khesin)
8015
	
8016
 	* _relops.h header obsoleted; some extra includes removed
8017
8018
	* __STL_STATIC_CONST_INIT_BUG use normalized; now it's used for all compilers not able
8019
	  to treat const members as coplile-time constants; enum used for them (e.g VC++).
8020
	  Thanks to  Dean Sturtevant and Gavin Collins for the ideas.
8021
	
8022
	* stlport/cmath : fixed SUN CC 5.0 compatibility mode bug (thanks to ade for the report)
8023
8024
	* debug/_hashtable.h : fixed equal_range() bug (thanks to decraft for the report)
8025
8026
	* streambuf.cpp/_streambuf.h : fixes xsgetn() bug (thanks to Vadim Egorov)
8027
	
8028
	* istreambuf_iterator<> : nonconforming behaviour fixed (thanks to Tom Widmer)
8029
8030
	* _num_put.c : fixed corner case for 0x8000000 output.
8031
	
8032
        * num_get<> : extra get() and do_get() members for "int" and "short" removed; istream operators changed accordingly
8033
	
8034
        * _itreambuf_iterator.h/_ostreambuf_iterator.h introduced to decouple those from num_get/num_put
8035
8036
	* gcc makefiles in src : "-fno-implement-inlines" removed
8037
8038
	* Added workaround for gcc's limits.h and SUN Ultra with -mcpu=ultrasparc in 32-bit mode. 
8039
	
8040
	* ios_base:: type for constants  made "int" for all compilers, as it more efficient and perfectly compliant.
8041
	 	
8042
	* debug/_hashtable.h : fixed typo in swap() ( thanks to Gerd Hoeren for the report)
8043
8044
	* debug/_string.h : +() operators defined unconditionally ( thanks to Gerd Hoeren for the report)
8045
8046
	* _istream.c : removed dependancy on _function.h (thanks to Kenny Simpson for the report)
8047
8048
	* _limits.c : fixed little-endian representation of infinity & NaN (thanks to Rene van Oostrum)
8049
8050
	* _stdio_file.h : fixed postdecr macro for 64-bit Solaris (thanks to Jim Cole)
8051
8052
	
8053
The following changes were made in 4.1 beta 4 since 4.1 beta 3 :
8054
	
8055
	* Simulation of class partial specialization (thanks to  Mat Marcus and Jesse Jones of Adobe)
8056
	  used to provide following enhancements :
8057
	
8058
	 - type_traits are automatically specialized for all pointer types for all compilers, 
8059
	   which makes them able to utilize type_traits-based optimizations when dealing with pointer types, 
8060
	   automatically.
8061
	
8062
	 - all functions specialized for pointers and optimized via __type_traits
8063
	   ( like copy()/copy_backward(), _uninitialized_xx) now enjoy this optimization for all compilers!
8064
        
8065
	- generic __value_type()/__difference_type()/__iterator_category() are written so user does not have
8066
	   to supply any of its own even when partial specialization is not available.
8067
	   (Note : gcc-2.7 and VC++ 5.x, 6.x have bugs which prevents them from using this enhancement, still)
8068
	
8069
	* <iterator> : by default, non-standard iterator query names like 
8070
	  value_type()/difference_type()/iterator_category() are not used
8071
	
8072
	* <algo> : major revision:
8073
	   - algorithms without explicit Compare() function expressed via the one that has it where possible.
8074
	     This considerably reduces header size and reduces code bloat for programs which use both flavours of
8075
	     those algorithms.
8076
	   - some function bodies moved between  .c and .h 
8077
	   - all functions used internally moved out to _algobase.h, so no other header includes <_algo.h> anymore
8078
	   - find() specialized for random access iterators regardless of partial spec.
8079
8080
	* Dynamic libraries (.DLL and .so) : name versioning used to prevent clashes between STLport versions
8081
8082
	* src/ : code regrouped between .cpp files to provide for less executable size with dumb linkers;
8083
8084
	* locale subsystem initialization : startup changed to use statically allocated structures as much as possible;
8085
	
8086
	* <stl/_function.h> : basic stuff moved to _function_base.h ; 
8087
	  other STL headers now include _function_base.h instead
8088
8089
	* _threads.h : MT support for OS/2 added (only tested with VAC++)
8090
8091
	* _stdio_file.h : added support for Solaris in ELF64 mode (thanks to Holger Stasch)
8092
	
8093
	* stl/_hashtable.h : [] operator for hash_map optimized to take no more than find() when element is present
8094
	  (Thanks to Thomas Witt et al.)
8095
8096
	* _ostream.h : fix for default unsigned char (thanks to  Holger Stasch)
8097
	
8098
	* all __STL_ABBREVS abbreviations moved aside in _abbrevs.h header.
8099
8100
	* Fujitsu C++ Compiler support added (thanks to  Holger Stasch)
8101
	
8102
	* Initial SGI iostreams port to OS/390 introduced (thanks to  Holger Stasch).
8103
8104
	* More on SGI iostreams port to xlC 5.0 (thanks to  Holger Stasch).
8105
8106
	* Fixes for SGI MIPSpro compilers (Thanks to Ralph)
8107
8108
	* Fixes for HP aCC compiler (Thanks to Michael Tsirkin)
8109
8110
	* stlport/SC5 directory : removed C library .h files to fix circular inclusion problem with WS6.0 + C programs.
8111
	
8112
        *  hash_map::swap() in debug mode fixed (thanks to Anton) 
8113
	
8114
	* __STL_COMPILE_INSTANTIATE hack for DEC removed (thanks to Ralph)
8115
8116
	* __STL_INLINE_STRING_LITERAL_BUG defined for HP aCC ( thanks to Jason Taylor)
8117
8118
	* _bitset.h - member workaround operators made const (thanks to dzwick) 
8119
8120
	* _bitset.h/.c, hashtable.h -- small bugfixes (thanks to Levente Farkas)
8121
	
8122
	* <exception> - now includes exception.h if only that is available.
8123
8124
	* vector::assign() inplemented for vector::iterator when member templates are not available (Thanks to dzwick)
8125
8126
	* fstream.cpp : __pioinfo used for MinGW32 (thanks to Danny Smith)
8127
	
8128
The following changes were made in 4.1 beta 3 since 4.1 beta 2 :
8129
8130
	* list<>::clear() : protected access bug fixed
8131
8132
	* __STL_MUTEX_INITIALIZER set back to PTHREAD_MUTEX_INITIALIZER for pthreads case, 
8133
	  as some platforms (eg AIX) do not treat zero-initialized mutex as valid one (thanks to Alex Vanic, Jack Andrews for help)
8134
	
8135
	* stl/_limits.c : fixed typo preventing numeric limits constants to be defined for __STL_LITTLE_ENDIAN,
8136
	  constants initialization fixed (thanks to Ingo Donasch)  
8137
8138
	* real implementation of locales for Win32 contributed by Anton Lapach (thanks !) merged in.
8139
	
8140
	* stl_user_config.h, _config.h : changed default to not define relops:: operators
8141
	  in __STL_NO_NAMESPACES mode.
8142
8143
	* _numeric_facets.c/num_put.cpp : printing of integer do not use sprintf() anymore
8144
8145
	* "install" target implemented for UNIX & VC++ Makefiles. It now installs headers and libraries.
8146
8147
	* "src" : files merged to get less compilation time and less space overhead for imperfect compilers
8148
8149
	* "debug" flavour of STLport excluded from default build and auto-select ; 
8150
	  please use __STL_USE_DEBUG_LIB and build debug STLport lib explicitly with "make debug_dynamic" 
8151
	  if you really need it). "all" now builds 2 kinds : "release" and "STLdebug", for static and dynamic builds.  
8152
8153
	* stlport_prefix.h : WIN32_LEAN_AND_MEAN set for Win32 build of STLport library, for speed.
8154
8155
	* FreeBSD compile fixed; makefiles added.
8156
8157
	* All "__init" changed to "_Init" to fix clashes with DEC conventions (thanks to Holger Stasch)
8158
8159
	* _range_errors.h -- fixed to always set __STL_EXTERN_RANGE_ERRORS for SGI iostreams (thanks to Serge Pashkov)
8160
	
8161
	* *gcc* mak : some files renamed to gcc-platform mak 
8162
8163
	* "extern template" extension used for gcc & standard i/o classes, to reduce code bloat in application's .o
8164
8165
	* "extern template" extension used for VC++ & standard i/o classes (was for DLL only)
8166
8167
	* _iterator.h : added template(and non-template) assignment operator for reverse_iterator<> (thanks to psw).  Obsolete HP-style code moved to _iterator_old.h 
8168
8169
	* _alloc.h : obsolete code for raw SGI allocators support moved to separate header, for compile-time improvement
8170
8171
	* More iostreams code conditionally moved out for clients who only use standard i/o and can set __STL_NO_CUSTOM_IO flag
8172
	
8173
	* <iostream>, <locale> : initialization of locale subsystem made independent of standard streams.
8174
	  sync_with_stdio call before iostream initialization now works.
8175
	
8176
	* <fstream>, <fstream.h> : added initialization code for locale , same as in <locale> 
8177
	  (thanks to George Trojan for the report)
8178
8179
	* fstream.cpp : fixed resource leak in case memory map fails on Win32 (thanks to Mark Laffoon)
8180
	
8181
	* <cmath>, <cstdlib> : added additonal overload signatures required by chapter 26.5 of ANSI (thanks to Levente Farkas for
8182
	 the suggestion), plus "long long" flavour where applicable. 
8183
	
8184
	* __STL_LONG_LONG generalized to support __int64 on Win32 (thanks to Adam Gates for the suggestion)
8185
8186
	* _fstream.h : added constructor from file descriptor, as extension (thanks to eric_a_benson)
8187
8188
	* _fstream.h : added basic_filebuf<>::fd() file descriptor accessor, as extension (thanks to George Trojan)
8189
8190
	* stl_sunpro.h : strstream masked for CC 4.2 to avoid virtual table clash (thanks to Ken)
8191
8192
	* stl_msvc.h : member templates allowed for VC5, it's capable of hadling most of them (same restrictions as VC6 -- inline).
8193
	
8194
	* debug/_debug.c : slightly changed format of debug message to please VC++ IDE (thanks for Bruce Dawson for the suggestion)
8195
8196
	* src/sgi_mipspro.mak added, for SGI MIPSPro compilation
8197
2f6cf64 by ptr at 2004-03-24 8198
	* merged series of HP/SUN minor fixes by Petr Ovtchenkov 
ae9fc15 by fbp at 2001-05-11 8199
	
8200
	* merged series of Intel 4.5 fixes by Serge 
8201
8202
	* vc_common.mak : -Yd dropped, as obsolete (thanks to psw)
8203
8204
	* _range_errors.h:95 : unused argument removed (thanks to George Trojan)
8205
8206
	* _string_io.h : refined _WRTLING workaround for Watcom (thanks to Serge Pashkov)
8207
8208
	* _threads.h : fixed SGI threads dafines for gcc on IRIX (thanks to Brett Denner for the report)
8209
8210
	* <typeinfo.h>, <typeinfo> : mutually-exclusive machanism added to allow including both in same unit.
8211
8212
	* Inclusion of SGI iostreams headers put to some order; _streambuf_iterator.h file introduced to resolve circular dependancies
8213
	
8214
The following changes were made in 4.1 beta 2 since 4.1 beta 1 :
8215
	
8216
	* _algobase.h : fixed __STL_DECLARE_COPY_TRIVIAL definition
8217
	(thanks to Charles Burfoot for the report)
8218
8219
	* _algobase.h : added copy_backward specializations for builtin types for compilers w/o partial spec.
8220
8221
	* _char_traits.h : fixed zero-length check for copy (thanks to Michael Tsirkin)
8222
8223
	* msvc_warnings_off.h : fixed "and" typo
8224
	(thanks to Charles Burfoot for the report)
8225
8226
        * num_put_float.cpp : fixed rounding for "g" format (thanks to Bernd Mohr for the report) 
8227
	
8228
	* Initial port of iostreams to xlC 5.0 added (thanks to Jack Andrews)
8229
	
8230
	* stl_sunpro.h : a fix for Forte config (Thanks to Alex Vanic for the report)
8231
8232
	* old_hp/iterator.h : fixed iterator_category()/etc. import
8233
8234
	* _threads.h : __stl_atomic_t used instead of "unsigned long" (thanks to Alex Vanic for the report)
8235
	* using/iomanip : old-streams path used for native iomanip.h (thanks to Michael Tsirkin for the report).
8236
8237
	* _bitset.h , _bitset.c : direct STL_THROW replaced with __stl_throw_xxx calls (thanks to Michael Tsirkin for the report)
8238
8239
	* range_errors.h/cpp : added functions to support throwing of  overflow_error and invalid_argument
8240
8241
	* _threads.h : enganced HP-specific guards for HP-UX 11 (thanks to Matthew Collins for the report)
8242
8243
	* _string.h : compare() bugfix (thanks to Anton Sergeev)
8244
8245
	* moneypunct_byname_w.cpp : rolled back wrong bugfix (thanks to Ken)
8246
8247
	* _vector.h, _deque.h, _list.h : nonstandard versions of push_back()/push_front() 
8248
	  moved under __STL_NO_ANACHRONISMS guard (thanks to Ed Brey)
8249
	
8250
	* _tree.c, _list.c, _slist.c, _debug.c : compile-time improvements
8251
	
8252
	* _tree.h/c, _list.h/c, _slist.h/c, _vector.h/c, _string.h/c : using directive for data members 
8253
	  changed to explicit "this->".
8254
	
8255
	* _complex.h : signatures of some methods changed to take value_type instead of const value_type&, 
2f6cf64 by ptr at 2004-03-24 8256
	   for better conformance (thanks to Petr Ovtchenkov)
ae9fc15 by fbp at 2001-05-11 8257
2f6cf64 by ptr at 2004-03-24 8258
	* Bunch of fixes to compile with gcc on HP-UX 10, 11 (thanks to Petr Ovtchenkov)
ae9fc15 by fbp at 2001-05-11 8259
8260
	* Code duplication for __STL_INLINE_MEMBER_TEMPLATES removed -- corresponding methods are always inlined
8261
8262
	* stl_sunpro.h : fix for "-compat" mode (thanks to Vijay Ramachandran)
8263
8264
	* pthread.h : new wrapper added
8265
8266
	* Added custom prolog/epilog for HP aCC to select kthreads on HP-UX 11 (Thanks to Michael Tsirkin)
8267
8268
	* <new> : fixed throw specification for bad_alloc (has to be inherited)
8269
8270
	* Macro __STL_NATIVE_CPP_RUNTIME_INCLUDE_PATH introduced to specify separate path for <exception>, <typeinfo>, <new>.
8271
	  (thanks to Bryan Byrnes)
8272
	
8273
	* <stdio_streambuf> : moved from stlport/stl to stlport directory, for SGI compatibility
8274
	
8275
The following changes were made in 4.1 beta 1 since 4.0 :
8276
8277
	*  Sun Forte 6.0 C++ configuration provided (thanks to Alexander Vanic for the input)
8278
	
8279
	* _threads.h/_config.h : added efficient support for atomic operations for
8280
	  DEC CXX and Watcom (thanks to Ricardo Gayoso for the input). 
8281
	  Macros __STL_ATOMIC_xxx introduced to facilitate this.
8282
8283
	* _tree.h : optimizations to lower number of comparisons (thanks to Craig Powers for the patch)
8284
8285
	* _tree.h, _hashtable.h and clients : added templated find() as an extension (thanks to Michael Tsirkin for the suggestion)
8286
8287
	* _tree.h : changed some inlining for performance optimization
8288
	
8289
	* __node_alloc:: allocate broken into two functions for better inlining 
8290
8291
	* _threads.h : added PTHREAD_MUTEX_INITIALIZER guard for HP workaround
8292
8293
	* stl_bc.h : option set to control alignment and virtual table  behaviour to be consistent; 
8294
	 library name adjusted to stlport_bcc55_xxx
8295
8296
	* _algobase.h, _uninitialized.h, char_traits.h -- optimized out empty memcpy() calls 
8297
	  (thanks to Michael Tsirkin for the report).
8298
	
8299
	* _iterator.h : fixed reverse_iterator::operator+(int, reverse_iterator) resolution
8300
	  (thanks to Anton Sergeev for the input)
8301
8302
	* _bitset.h : bitset<>::test bugfix (thanks to Anton Sergeev for the patch)
8303
8304
	* complex_trig.cpp : use of __STL_NO_LONG_DOUBLE made consistent, fixes for Borland on Linux
8305
	 (thanks to John Wiegley for the input)
8306
	
8307
	* moneypunct_byname_w.cpp : bugfixes for string copying (thanks to Anton Sergeev for the input)
8308
	
8309
	* Watcom-specific fixes (thanks to Ricardo Gayoso for the input)
8310
8311
	* src/common_macros.mak : some intermediate targets added (thanks to Jeremy for the suggestion) 
8312
	
8313
	* _debug.c : fixes for Win CE (thanks to John Hynes for the patch)
8314
8315
	* Intel CC 4.0-specific fixes (thanks to Sean Cavanaugh for the input)
8316
8317
	* _list.c : workaround for Watcom C++ (thanks to Mike Steed for the report)
8318
8319
	* __STL_NO_NATIVE_WIDE_STREAMS definition fixed (thanks to Glen Summers for the patch)
8320
8321
	* cast macros fixed to be more robust (thanks to Geoff Oakham for the report)
8322
8323
	* "strstream.h" native inclusion for VC 6.0 fixed (thanks to  Sathish T C for the report)
8324
	
8325
	* debug/_string.h : improvement to string with __STL_DEBUG w/o member templates 
8326
	  (thanks to Paul Furnanz for the report)
8327
8328
	* debug/_string.h : fixed internal compiler error for VC++ 5.x (thanks to chvetsov for the report)
8329
	
8330
	* cstdio, stl/_streambuf.h : fixes to allow gcc compilation with -ansi flag
8331
8332
	* workaround for cin/cout renaming on HPUX11 for -D_REENTRANT (thankf to Jeff Sparkes for the report)
8333
8334
	* cin/cout/cerr/clog renaming in STLport for CC 4.0 and SGI iostreams, 
8335
	 to avoid symbol clashes with native ones (thanks to Dirk Schreib for the report)
8336
8337
	* type_info scope fixes for VC++ 6.0 (thanks to Sathish T C for the report)
8338
8339
	* typeinfo.h using fixes (thanks to Glen Summers for the input)
8340
	
8341
	* stlcomp.h : fixes to allow compilation of .c modules with VAC++, Sun CC, DEC CC, Watcom CC
8342
	 (thanks to Dmitry A.Steklenev, Jonathan Richardson for the report)
8343
	
8344
	* debug/_tree.h : fixed insert_unique() bug (thanks to Ben Liblit for the report)
8345
8346
	* regression/gcc.mak made non-dependant on "." in the path 
8347
	  (thanks to Thomas Matelich for the report)
8348
	
8349
	* hmset1.cpp fixed to compile under OS390 ( thanks to Andrey Khovanskiy for the report)
8350