mirror of
https://github.com/reactos/reactos.git
synced 2024-08-28 22:28:36 +00:00
3089 lines
124 KiB
Plaintext
3089 lines
124 KiB
Plaintext
2008-12-10 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* Repository: STLport release 5.2.1
|
|
|
|
2008-12-03 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* build: HP-UX/ia64 with aC++ compiler; verified on HP-UX 11.23
|
|
and 11.31 with aC++ A.06.17; [4 of 436 tests, 4 ignored (2 explicit),
|
|
and 4 of 360 tests, 2 ignored]; submitted by Boris Gubenko.
|
|
|
|
2008-11-27 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* build: EVC9 (Visual Studio 2008) by Johan Andersson.
|
|
|
|
2008-11-19 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* Repository: STLport release 5.2.0
|
|
|
|
2008-08-26 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* Repository: branch for STLport 5.2, r3618
|
|
|
|
2008-07-21 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/type_traits: decay, conditional, ebable_if added.
|
|
|
|
2008-07-18 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* configure.bat: Specifying the compiler is now mandatory and
|
|
must be first.
|
|
|
|
2008-07-17 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stdlib.h, cstdlib: Fix errno workaround for gcc MinGW.
|
|
Latest gcc version (4.3.0) includes stdlib.h in cstdlib using
|
|
include_next so skipping workaround in STLport stdlib.h. So errno.h
|
|
must also be included from cstdlib.
|
|
|
|
2008-07-17 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
src/details/fstream_unistd.cpp: fix bug #2001222, opening with
|
|
ios_base::app should rewind write pointer to the end of the file;
|
|
fix treatment of ios_base::ate (it should rewind pointer
|
|
to the end of the file once) and ios_base::app (offset will be set
|
|
to the end of the file prior to each write); references ---
|
|
http://www.open-std.org/Jtc1/sc22/wg21/docs/papers/2008/n2691.pdf
|
|
27.8.1.4; http://www.opengroup.org/onlinepubs/7990989775/xsh/fopen.html;
|
|
http://www.opengroup.org/onlinepubs/7990989775/xsh/open.html
|
|
|
|
test/unit/fstream_test.cpp: add sample with fopen as reference point.
|
|
|
|
2008-07-14 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* build/Makefiles/gmake: Build system updated for gcc under Cygwin,
|
|
MinGW. Under Cygwin, with or without -mno-cygwin option, STLport
|
|
is now a full replacement for libstdc++, building an application
|
|
with it do not require -lsupc++ anymore as it is completely
|
|
integrated in STLport. Under MinGW it didn't work resulting in a
|
|
crash when starting an application using STLport so -lsupc++ is
|
|
necessary both when linking STLport _and_ when linking the
|
|
application using it.
|
|
|
|
2008-07-10 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/num_put_float.cpp: Use an union based technique to find out
|
|
the sign of floating point values. It will maybe replace use of
|
|
platform specific functions in a future version.
|
|
|
|
* src/stdio_streambuf.cpp, test/unit/iostream_test.cpp: Change
|
|
behavior of stdio_istreambuf implementation that now always return 0 on
|
|
showmanyc call. Returning -1 means that reading attempt will
|
|
necessarily fail which is not the case, 0 is prefered as it means that
|
|
we don't know. It is also similar to other std implementations like
|
|
libstdc++.
|
|
|
|
2008-07-02 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* configure.bat: After a very interesting debate the consesus
|
|
is to put configure scripts in root folder.
|
|
|
|
* stlport/stl/_string_sum_methods.h: Bug report #2003308,
|
|
compilation error with _STLP_USE_TEMPLATE_EXPRESSION.
|
|
Regression due to remove of POD type support in basic_string
|
|
implementation.
|
|
|
|
2008-06-26 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_fstream.c: Consider read file failure in
|
|
_M_underflow_aux method to avoid infinite looping on some
|
|
platforms. Thanks Pawel Sikora.
|
|
|
|
2008-06-26 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* build/Makefiles/gmake/unix/rules-install-so.mak: do
|
|
install-headers tags when make install or install-release-shared.
|
|
|
|
2008-06-24 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* build/Makefiles/gmake: Cygwin/MinGW upgrade, now build
|
|
without referencing libstdc++.
|
|
|
|
* stlport/stl/_threads.h: Move definition of __stl_atomic_t next
|
|
to definition of atomic operations to guaranty coherency.
|
|
|
|
2008-06-18 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* build: configure.bat moved to build folder. lib/Makefile,
|
|
test/unit/Makefile removed from SVN, now generated by configure
|
|
scripts. Under GNU make use include rather than link to
|
|
reference the right make file, link seems not supported by
|
|
Cygwin/MinGW make. Remove default value of STLPORT_DIR,
|
|
already set in internal make files and moreover the absolute
|
|
path generated in the script leads to trouble under Cygwin/MinGW.
|
|
|
|
* src/num_get_float.cpp: Use an union to generate double value
|
|
from 64 bits int to avoid gcc type-punned pointer warning.
|
|
|
|
2008-06-16 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* build/test/unit/gcc.mak: pass runtime pathes as absolute;
|
|
removed LDSEARCH macro, use LDFLAGS instead;
|
|
|
|
* Makefile: clean in test/unit too.
|
|
|
|
2008-06-13 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_iterator_base.h: Add a funny feature, when
|
|
using both STLport and native STLs it was not possible
|
|
to use std iterators in STLport containers because of the
|
|
missing iterator category that is defined in std:: and
|
|
not in stlport::. So now STLport map std iterator categories
|
|
in stlport ones. Now it is possible to write something like
|
|
that:
|
|
std::string stdstr("std");
|
|
stlport::string stlportstr("stlport and ");
|
|
stlportstr.append(stdstr.begin(), stdstr.end());
|
|
However the other side is not supported except when STLport
|
|
iterators are simply pointers.
|
|
|
|
2008-06-05 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/num_get_float.cpp: Remove useless skip of white
|
|
space at begining of buffer in _Stl_string_to_double function.
|
|
__read_float, the function that generate that buffer do not
|
|
put white space at the first place.
|
|
|
|
* stlport/stl/_new.h, _range_errors.c: Remove unused
|
|
_STLP_RTTI_BUG macro. Moreover __stl_new was not correctly
|
|
implemented with this macro, there was no check for failed
|
|
allocation.
|
|
|
|
* test/unit/limits_test.cpp: Remove code supposed to hide
|
|
numeric_limits::max value to MSVC 8 compiler, this code was
|
|
introducing a test regression. If it is producing a warning
|
|
a #pragma warning should be use to hide it.
|
|
|
|
* test/unit/num_put_get_test.cpp: Add test showing problem
|
|
with code that used to be in limits test. Those tests will be
|
|
activated for 5.3 to check that there is really nothing wrong
|
|
with it.
|
|
|
|
2008-06-07 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* configure: don't duplicate options in config.mak, that
|
|
has default values in makefiles.
|
|
|
|
2008-06-06 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* configure: put it on common place for ./configure;
|
|
|
|
* build/Makefiles/gmake/targetdirs.mak: use $(DESTDIR)
|
|
as in common practice (change root of installation, but
|
|
don't change run paths);
|
|
|
|
* build: by default use make for gcc;
|
|
|
|
* Makefile: top makefile for common project task;
|
|
|
|
* build/Makefiles/gmake/depend.mak: fix options for ctags
|
|
and etags;
|
|
|
|
* configure, build/Makefiles/gmake/top.mak: take into account
|
|
extra flags for linker.
|
|
|
|
2008-06-05 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_function_adaptors.h: Fix instantiation of
|
|
unary_function and binary_function as base type of _Mem_fun0_ref,
|
|
_Mem_fun1_ref, _Const_mem_fun0_ref, _Const_mem_fun1_ref,
|
|
_Void_mem_fun0_ref, _Void_mem_fun1_ref, _Void_const_mem_fun0_ref,
|
|
_Void_const_mem_fun1_ref. Those classes are use as a workaround for
|
|
compiler missing class partial template specialization or that don't
|
|
support return of void. Instantiation is now done without reference
|
|
qualifier as specified by the Standard and as done in the
|
|
implementation used when workaround is not necessary.
|
|
|
|
2008-06-03 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/ios.cpp, stlport/stl/_complex.c, _ios.c, _ios.h, _ios_base.h,
|
|
_istream.c, _num_get.c, _num_put.c: Remove invalid cached facet
|
|
pointers in ios_base class. This class can be used in a char or
|
|
wchar_t instantiation context making cast to ctype<char> or
|
|
ctype<wchar_t> invalid resulting in an application crashed. The
|
|
only safe access to facet instances from a ios_base instance is through
|
|
the use_facet<Facet>(getloc()) function. Only _M_cached_ctype has been
|
|
kept in basic_ios class even if small bench hasn't show real
|
|
enhancement compared to using use_facet.
|
|
|
|
* stlport/stl/_time_facets.c: In addition to above modifications
|
|
time_get implementation has been simplified as localized info are
|
|
now stored as wchar_t for wide char instantiation. We do not need
|
|
to use ctype.widen method anymore.
|
|
|
|
* test/unit/time_facets_test.cpp: Add test for time_get wchar_t
|
|
instantiation.
|
|
|
|
* test/unit/cppunit/cppunit_mini.h: Fix report of ignored/explicit
|
|
tests.
|
|
|
|
2008-05-27 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_alloc.h: Code simplification, clean up null
|
|
pointer checks as allocators should never return it but rather
|
|
throw a bad_alloc exception.
|
|
|
|
2008-05-27 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* test/unit/cppunit/cppunit_mini.h, file_reporter.h: Fix
|
|
counting of failed test, won't report more failures than tests
|
|
anymore. Now also report explicit tests.
|
|
|
|
2008-05-15 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/allocators.cpp, locale_catalog.cpp, num_put_float.cpp:
|
|
Use static method returning static instance to mutex rather than
|
|
direct access to a static mutex instance to control initialization
|
|
order of static variables thanks Peter Hrenka report.
|
|
|
|
2008-04-26 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_function.h, type_traits.h: Adoption of Defect Report 109
|
|
Missing binders for non-const sequence elements.
|
|
|
|
* test/unit/bind_test.cpp: Test for DR above.
|
|
|
|
2008-05-11 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/stl/_string.c: from formal (ISO/IEC 14882:2003) point of view
|
|
string s; string::size_type p = s.find( "", 0, 0 ); should return 0 in p,
|
|
i.e. position out-of-bound of string; people near Standard commete has
|
|
opinion that Standard correct in this point and not require clarification
|
|
(opposite to my opinion); even if it looks like bogus behavior for me,
|
|
it fixed to conform standard; see bugreport #1872656;
|
|
|
|
* test/unit/string_test.cpp: test for issue above.
|
|
|
|
2008-05-10 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/stl/_istream.c, stlport/stl/_ostream.h: ISO/IEC 14882:2003
|
|
(and 1998 too) assume change as get as put positions with
|
|
seekg and seekp (27.6.1.3, par 38; 27.6.2.4 par 2), but this
|
|
contradict to common practice and proposed draft N2588
|
|
(27.6.1.3, par 41; 27.6.2.5, par 4); now STLport implement
|
|
(i.e. change present behavior) the draft's point of view;
|
|
this reflect patch #1650657 by Jan Echternach;
|
|
|
|
* test/unit/sstream_test.cpp: test for issue above.
|
|
|
|
2008-04-26 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* Patches #1940126, #1941267, #1941814 from Johan Andersson for evc8
|
|
Pocket PC support and build of tests without warnings.
|
|
|
|
2008-04-24 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* Patch 1937823 from Johan Andersson to add Microsoft Visual
|
|
Studio 2008 support.
|
|
|
|
* stlport/stl/_algobase.h: Patch 1935497 from Andrey Semashev to
|
|
apply a common optimization in STLport algos for random access
|
|
iterators to fill and fill_n algos.
|
|
|
|
2008-04-23 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* src/num_put.cpp: remove ambiguity of char to int conversion
|
|
(comparison with integers, check for negative value); remove
|
|
ambiguity with postfix increment in index in conditional
|
|
expression.
|
|
|
|
2008-04-22 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* build/Makefiles/gmake/gcc.mak, build/lib/configure: take
|
|
into account CFLAGS, EXTRA_CFLAGS, because of C compiler in use too.
|
|
|
|
2008-04-17 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_string.h: Remove support for non POD type in basic_string
|
|
implementation.
|
|
|
|
2008-04-08 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* build/Makefiles/gmake/lib/gcc.mak: try to create $(PRE_OUTPUT_DIR) before
|
|
run lipo; impact only MacOS;
|
|
|
|
* build/Makefiles/gmake/sysid.mak: uname -m on MacOS return
|
|
power-macintosh, but identify architechture as ppc.
|
|
|
|
2008-03-28 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/assert.h: Bug #1894882: Apply a technique similar to the
|
|
one used in errno.h to detect when assert has been defined before
|
|
including assert.h.
|
|
|
|
2008-03-21 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* Patch 1876529 from Johan Andersson to add support for VS 2005
|
|
bundled Pocket PC 2003 SDK.
|
|
|
|
2008-03-18 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/stl/_string.c: derived from patch #1914475, wrong
|
|
replace for selfreferencing string; thanks Farid Zaripov;
|
|
|
|
* test/unit/string_test.cpp: test for problem above.
|
|
|
|
2008-03-17 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_stdexcept_base.h, _stdexcept_base.c,
|
|
type_manips.h, src/num_put_float.cpp,
|
|
test/unit/num_put_get_test.cpp: Borland patch from Eric Sanford.
|
|
No need for a __Named_exception workaround anymore. Force
|
|
floating point control word when testing special floating point
|
|
operations. Change implementation _Copyable and add a workaround
|
|
to correctly render long double max value that is consider as
|
|
equal to double max value.
|
|
|
|
2008-03-10 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* build/Makefiles: Normalization of --with-static-rtl and
|
|
--with-dynamic-rtl extended to configure script for Borland
|
|
and DMC compilers.
|
|
|
|
2008-03-08 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* test/unit/cppunit/cppunit_mini.h: New mini cppunit framework
|
|
feature, the explicit tests that have to be explicitly tested
|
|
thanks to the -t option to run.
|
|
|
|
* test/unit/unordered_test.cpp: benchmark1 and benchmark2 tests
|
|
are now explicit.
|
|
|
|
* stlport/stl/_stdexcept_base.h, _stdexcept_base.c:
|
|
__Named_exception that contains dynamically allocated memory
|
|
require a copy constructor and assignment operator. Thanks bug
|
|
report #1908626 from Ilya Dogadaev.
|
|
|
|
* build/Makefiles: Normalized some configure options:
|
|
--without-thread, --without-rtti, --with-lib-motif.
|
|
|
|
2008-03-06 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* Fix rtti management:
|
|
- no rtti support do not imply no type_info struct definition.
|
|
- #error message in typeinfo to signal missing rtti support
|
|
has been removed.
|
|
- locale implementation do not use typeid anymore to enhance
|
|
runtime_error message thrown by combine message when we cannot
|
|
find the combined facet. It was introducing an annoying dependency
|
|
making use of the lib without rtti support impossible.
|
|
|
|
2008-03-05 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_range_errors.h: Signal function responsible
|
|
for throwing excepions as not returning to the DMC compiler.
|
|
|
|
2008-03-03 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* build/Makefiles/gmake: Eric Sanford patch to make generation
|
|
of debug symbols optional when using Borland compiler to build
|
|
unit tests.
|
|
|
|
* stlport/stl/config: Normalization of verbose mode used to get
|
|
feedback about build context when using STLport.
|
|
_STLP_VERBOSE_AUTO_LINK has been renamed in _STLP_VERBOSE and
|
|
report additional information like rtti, exception support,
|
|
mono/multi threaded, static/dynamic library.
|
|
|
|
* stlport/stl/_check_config.h: Unused, removed.
|
|
|
|
* stlport/typeinfo: Report use of this header when there is no
|
|
RTTI support, only when we can detect it of course.
|
|
|
|
2008-02-29 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* build/Makefiles/gmake: Several modif for Digital Mars support.
|
|
|
|
* stlport/stl/_function_base.h: Hide protected constructor not
|
|
supported by Borland compiler.
|
|
|
|
* stlport/stl/config/_bc.h: Now detect Rtti support.
|
|
|
|
2008-02-28 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* build/Makefiles/gmake/gcc.mak: use more convenient option
|
|
-dumpversion to detect compiler's revision; check that
|
|
-fuse-cxa-atexit really required; remove -fident option;
|
|
|
|
* build/Makefiles/gmake/targetdirs.mak: take into account DESTDIR;
|
|
|
|
* build/lib/configure: write DESTDIR as prefix for installation pathes;
|
|
|
|
* stlport/type_traits: type traits, close to JTC1/SC22/WG21
|
|
C++ 0x working draft
|
|
[http://www.open-std.org/Jtc1/sc22/wg21/docs/papers/2008/n2521.pdf]
|
|
|
|
2008-02-26 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* Rationalization in detection of real localization implementation.
|
|
_STLP_REAL_LOCALE_IMPLEMENTED removed, the whole detection mecanism
|
|
is now in c_locale.h/c_locale.c and is based on API specific macros.
|
|
For the moment real localization is used for windows platforms
|
|
(_STLP_WIN32 except Windows CE) and when Glibc 2.2 or newer with
|
|
GNU extensions (_GNU_SOURCE) is detected.
|
|
|
|
2008-02-25 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/type_traits.h: Generalize technique used by Borland
|
|
compiler to detect pointer types const or volatile qualified and
|
|
avoid trivial copy in this case.
|
|
|
|
* Eric Sanford patch for Borland compiler for Linux.
|
|
|
|
2008-02-22 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/c_locale.h, src/c_locale.h,
|
|
c_locale_win32/c_locale_win32.c, c_wlocale_win32.c: Major code
|
|
simplification. Definition of _Locale_UPPER, _Locale_LOWER, etc...
|
|
used to be platform dependant requiring a lot of macro checks and
|
|
additionnaly exposing STLport to wrong definitions. When for
|
|
instance _Locale_PRINT was defined as
|
|
_Locale_UPPER|_Locale_LOWER|..., marking a character as printable
|
|
was also making it a upper and lower character!
|
|
In fact those masks have to be platform specific only when
|
|
STLport directly expose platform masks which is only the case when
|
|
using GlibC. So now those mask are hard coded in STLport using
|
|
values defined in the C++ Standard 22.2.1. Under Windows the
|
|
localisation implementation has been adapted to map Win32 mask values
|
|
to the STLport ones. A number of now useless workaround has been
|
|
removed.
|
|
|
|
* src/c_locale_dummy/c_locale_dummy.c, ctype.cpp,
|
|
test/unit/ctype_facets_test.cpp: Removed the hard coded table of
|
|
character types that was duplicating the one in src/ctype.cpp. Now
|
|
a table is build during library initialisation using C functions
|
|
isspace, isalpha... Doing so and adding a test in
|
|
LocaleTest::ctype_by_name will show if STLport and the C runtime
|
|
agree on character classification.
|
|
|
|
2008-02-20 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/allocators.cpp: Change management of _S_heap_size, now bit
|
|
translation is done on the value used to increment it rather than
|
|
when using _S_heap_size. Thanks to this modif, when _S_heap_size is only a 32
|
|
bits value it won't roll before 16Go has been allocated. Thanks to
|
|
an additional unsigned cast the effect won't be notice before 32 Go
|
|
are allocated.
|
|
|
|
2008-02-19 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/c_locale_dummy/c_locale_dummy.c: Fix implementation of
|
|
_WLocale_toupper/_WLocale_tolower, call to respectively
|
|
towupper/towlower was inverted.
|
|
|
|
* src/allocators.cpp: __stlp_chunk_malloc/__stlp_chunck_free
|
|
renamed respectively in __stlp_new_chunk/__stlp_delete_chunck as
|
|
those functions behavior are closer to the new operator behavior
|
|
rather than to malloc. __stlp_new_chunk implementation fixed, it
|
|
was using _STLP_CHECK_NULL_ALLOC reserved to check allocations
|
|
performed through new operator. Fix code to correctly take into account
|
|
bad_alloc exceptions.
|
|
|
|
2008-02-18 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_algobase.h: Removed namespace specification on
|
|
swap invocation in iter_swap implemenation because it was breaking
|
|
template function resolution for gcc. Whether this is a gcc bug
|
|
or simply correct Standard C++ is not clear yet so namespace has
|
|
been removed independant of compiler in use.
|
|
|
|
* stlport/stl/_alloc.h, _new.h, src/locale.cpp, locale_impl.cp:
|
|
Generalize use of _STLP_THROW_BAD_ALLOC macro to throw the
|
|
bad_alloc exception. Definition of this macro is now in _new.h
|
|
header.
|
|
|
|
* stlport/stl/_valarray.h: Use __stl_new rather than malloc to get
|
|
exception management without additional code. It also gives users
|
|
a Standard way to detect memory starvation through the new handler.
|
|
|
|
2008-02-16 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* Removed anachronous and unmaintained raw SGI allocator mode.
|
|
|
|
2008-02-15 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/details/fstream_win32io.cpp: Fix wrong use of Win32 API.
|
|
SetFilePointer do not take SEEK_CUR macro but FILE_CURRENT.
|
|
|
|
* src/allocators.cpp, stlport/stl/_alloc.h, _alloc_old.h,
|
|
_construct.h, _new.h, _pthread_alloc.h, _rope.h, config/_evc.h,
|
|
features.h: Code cleanup; __THROW_BAD_ALLOC normalized in
|
|
_STLP_THROW_BAD_ALLOC; _STLP_NEW, _STLP_PLACEMENT_NEW and
|
|
_STLP_BROKEN_BAD_ALLOC_CLASS macros removed.
|
|
|
|
2008-02-14 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/c_locale_glibc/c_locale_glibc2.c: Manualy handle the "C" locale
|
|
to guaranty consistency with the default "C" facet implementations in
|
|
the lib.
|
|
|
|
* * test/unit/time_facets_test.cpp, num_facets_test.cpp,
|
|
monetary_facets_test.cpp, ctype_facets_test.cpp: Enhance tests by using
|
|
a third way of generating locale instance from names.
|
|
|
|
2008-02-13 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/fstream_impl.h, details/fstream_win32io.cpp,
|
|
fstream_unitstd.cpp, fstream_stdio.cpp, stdio_streambuf.cpp: __stdin_size
|
|
function revomed making fstream_impl.h useless.
|
|
|
|
2008-02-12 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/type_manips.h, type_traits.h: Borland patch from Eric
|
|
Sanford to fix regressions introduced with recent modifications of
|
|
some helper struct used to detect potential optimizations.
|
|
|
|
* config/_bc.h, features.h: New configuration, Borland do not support
|
|
following syntax:
|
|
typename std::iterator_traits<>::value_type. It breaks on association
|
|
of typename keyword with namespace specification. As Borland do not
|
|
require typename keyword in this case it is now possible avoid it
|
|
thanks to the _STLP_NO_TYPENAME_BEFORE_NAMESPACE macro.
|
|
|
|
* stlport/stl/_limits.c: Borland, like gcc 4, prefer additional brackets
|
|
in initialization of struct associated to computation of numeric limits
|
|
values.
|
|
|
|
2008-02-01 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* General code review to look for Standard or internal functions
|
|
called with namespace scope in order to avoid ambiguous calls
|
|
when compiler implement Argument Dependant Lookup. See ListTest::adl
|
|
test case to see what it means.
|
|
|
|
* stlport/stl/config/features.h: _STLP_PRIV now contains full
|
|
namespace path starting at global namespace that is to say
|
|
::stlport::priv:: when private namespace is in use and ::stlport::
|
|
when it is not. Idem for _STLP_TR1 that now contains ::stlport::tr1::.
|
|
|
|
* stlport/stl/debug/_string.h: Call to std::distance removed to avoid
|
|
reading input iterators before reading their contents. Now all
|
|
basic_string::assign methods invalidate all iterators like other
|
|
containers.
|
|
|
|
* stlport/stl/_iterator_base.h: Remove implementation of __value_type
|
|
__distance_type and __iterator_category when compiler support partial
|
|
template specialization. In this case we directly use iterator_traits,
|
|
we do not need those functions. Removed special __distance implementations
|
|
use in an anachronous implementation of distance taking an initial value
|
|
to start counting. Now this function use __distance functions already
|
|
used by the std::distance function. The MSVC _Distance function is also
|
|
considered as anachronous.
|
|
|
|
2008-01-31 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_string.h, test/unit/string_test.cpp: Add swap
|
|
implementation when there is no support for template function
|
|
partial ordering.
|
|
|
|
2008-01-30 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/fstream_impl.h, details/fstream_stdio.cpp, fstream_unistd.cpp,
|
|
fstream_win32io.cpp, stdio_streambuf.h, stdio_streambuf.cpp: Hide
|
|
__is_regular_file only used in fsteam implementation specific files.
|
|
Rename __file_size in __stdin_size as this function is only used
|
|
to get stdin FILE* size. Under Win32 this function now always returns
|
|
0 as it looks like Windows do not consider FILE* as allowing
|
|
position operations. Move platform specific code from stdio_streambuf
|
|
implementation to associated fstream_*.cpp file.
|
|
|
|
2008-01-29 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* build/test/unit/gcc.mak: option for run-time path to libstlport
|
|
on HP-UX;
|
|
|
|
* build/Makefiles/gmake/hp-ux/targetsys.mak: HP-UX IA64 use so
|
|
as shared object extention, while PA-RISC use sl;
|
|
|
|
* build/Makefiles/gmake/gcc.mak: use -fno-reorder-blocks for PA-RISC;
|
|
|
|
* src/cxa.c: use cxa_atexit fix similar to trick on Solaris and FreeBSD;
|
|
|
|
* src/num_get_float.cpp: stdint.h on HP-UX;
|
|
|
|
* stlport/wctype.h, stlport/stl/_cwctype.h: HP-UX has problems with
|
|
wchars; changes suggested by KBac.
|
|
|
|
2008-01-28 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/config/_cygwin.h: Cygwin do not define _STLP_USE_GLIBC
|
|
anymore, platform API is closer to a Standard C lib than to the Gnu
|
|
lib C.
|
|
|
|
2008-01-26 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/fstream_stdio.cpp, fstream_win32io.cpp, fstream_unistd.cpp:
|
|
Removed unused uint64.h include and definition of ULL macro.
|
|
|
|
* src/uin64.h: Removed, _compound_int class defined in it is simply
|
|
not used anymore.
|
|
|
|
* src/_stdio_file.h: Major cleanup, only _FILE_fd is still in use.
|
|
|
|
* src/locale.cpp, locale_impl.cpp, build/lib/Makefile.inc: Restore
|
|
independency between those 2 translation units, code duplication is
|
|
very limited. This is a 1st step to make build of STLport easier by
|
|
having all sources in src folder buildable.
|
|
|
|
* src/locale_impl.h, locale_impl.cpp: _copy_Locale_impl removed,
|
|
only use to create initial global locale that can simply reference
|
|
classic locale incrementing its reference counter by one.
|
|
|
|
* stlport/stl/_locale.h: Fix locale implementation when MSVC6 workaround
|
|
is used. The base class _NoMem_loc do not have to have a virtual
|
|
destructor, it only need a protected one. Moreover fix constructor
|
|
taking an other locale instance and a facet instance, _M_impl was
|
|
not released before being assigned resulting in a memory leak.
|
|
|
|
* src/fstream_stdio.cpp, fstream_unistd.cpp, fstream_win32io.cpp:
|
|
Moved to details sub-folder. Now building STLport means build all
|
|
.cpp, .c and optionnaly .rc files from src folder.
|
|
|
|
2008-01-22 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* build/test/unit/gcc.mak: check confguration and set
|
|
ALL_TAGS before inclusion top.mak, to correctly set
|
|
targets for 'all'.
|
|
|
|
2008-01-21 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* build/test/unit/icl.mak: Add /fp:strict option to build unit tests
|
|
as we need strict floating point number operations respect to have
|
|
numeric limits to work correctly.
|
|
|
|
* stlport/stl/config/_intel.h: Looks like ICL since version 9 support
|
|
static constant correctly.
|
|
|
|
* stlport/stl/config/features.h, src/c_locale_win32/c_locale_win32.c:
|
|
New macro _STLP_MARK_PARAMETER_AS_UNUSED to offer a compiler specific
|
|
way of marking parameters as unused. Default behavior is to cast the
|
|
parameter to void*.
|
|
|
|
* src/c_locale_win32/c_wlocale_win32.c: Fix _WLocale_strxfrm function
|
|
implementation thanks Kai Khcyt. Despite taking a pointer to wchar_t*
|
|
LCMapStringW writes bytes to it.
|
|
|
|
* build/Makefiles/gmake/bcc.mak, lib/bcc.mak, app/bcc.mak, stlport/cerrno,
|
|
errno.h, stl/type_manips.h, type_traits.h: Borland patch from Eric
|
|
Sanford to build Borland libs with GNU make build system.
|
|
|
|
2008-01-18 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* test/unit/locale_test.cpp, ctype_facets_test.cpp,
|
|
money_facets_test.cpp, num_facets_test.cpp, time_facets_test.cpp:
|
|
test_supported_locale function do not have to be template, might
|
|
avoid ICL wring code generation.
|
|
|
|
* stlport/stl/_function_base.h: Based on an idea from Herb Sutter in
|
|
his excellent book "Exceptional C++ Style", derived class destructor
|
|
should be protected non virtual or public virtual. unary_function
|
|
and binary_function struct are intended to be derived but they
|
|
are not polymorphic so destructor should be protected non virtual.
|
|
According the book it is even not breaking library Standard conformity
|
|
in doing so. What is sure is that it will help users detect bad
|
|
code.
|
|
|
|
2008-01-17 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/debug/_list.h: Remove use of std::distance in STL
|
|
safe mode, it is invalid for pure input iterators. Now assign
|
|
invalidate all iterators which make the code simpler.
|
|
|
|
* Remove the difficult to implement and maintain _AreSameUnCVTypes,
|
|
doing so has a number of impact on the lib:
|
|
- Remove usage of it in debug/_string.h and debug/_deque.h, we
|
|
rather use function specialization to detect self reference. In string
|
|
implementation it is almost impossible to detect self referencing in
|
|
insert and assign method even with use of _AreSameUnCVTypes, so
|
|
we systematically creation an intermediate string instance.
|
|
- Creation of _AreCopyable helper class to detect when it is safe
|
|
to do a memcpy or memmove between 2 types. This class returns false
|
|
when any type is volatile qualified or when trying to copy to a const
|
|
qualified type.
|
|
- Creation of _AreSameTypes only really implemented thanks to partial
|
|
template specialization, only used in _IsOkToSwap struct.
|
|
|
|
* test/unit/copy_test.cpp: Add test showing bug 1806558.
|
|
|
|
2008-01-17 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* build/lib/configure: Don't override COMPILER_NAME, if already
|
|
defined;
|
|
|
|
* stlport/stl/config/_prolog.h: remove suspicious comments.
|
|
|
|
2008-01-15 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/stl/config/_hpux.h: define _POSIX_C_SOURCE 199506;
|
|
suggested by KBac, patch #1869229.
|
|
|
|
2008-01-14 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_string.h, _string.c: Restore code to support non-POD
|
|
types in basic_string implementation as specified in basic_string
|
|
comments.
|
|
|
|
* stlport/stl/_limits.c: Use double numeric limits for long double
|
|
when sizeof(double) == sizeof(long double).
|
|
|
|
* stlport/stl/debug/_debug.h, _deque.h, _list.h, _vector.h: Prefer to
|
|
use overloading of member method to activate additional check of
|
|
23.1.1 table 67 Standard conformity rather than using metaprogrammng
|
|
technique.
|
|
|
|
2008-01-12 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* build/Makefiles/gmake/lib/gcc.mak: gcc 3.3 has useful
|
|
libsupc++, but some builds not; prefer normal situation,
|
|
not marginal; see record 2007-10-10;
|
|
|
|
* build/Makefiles/gmake/gcc.mak: fix reference to _FORCE_CXX macro;
|
|
|
|
* build/Makefiles/gmake/CC.mak: ditto;
|
|
|
|
* build/Makefiles/gmake/aCC.mak: ditto;
|
|
|
|
* build/lib/configure: keep compiler and default compiler --- gcc
|
|
is most common defualt and plans to switch to default makefile.
|
|
|
|
2008-01-11 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_limits.c: Adapt long double numeric limits for
|
|
Intel C++ compiler 9 for Windows.
|
|
|
|
* test/unit/cppunit/test_main.cpp: Add command usage output when
|
|
option is not recognise.
|
|
|
|
* build/lib/configure: Remove specification of COMPILER_NAME default
|
|
value gcc. COMPILER_NAME is already set in all root make scripts like
|
|
gcc.mak, aCC.mak, dmc.mak ... Doing so forces users to specify their
|
|
compiler family using configure script which is redundant.
|
|
|
|
2008-01-10 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_prolog.h: Remove code duplication by including
|
|
_cprolog.h.
|
|
|
|
* stlport/errno.h, cerrno: Move import of errno from errno.h to
|
|
cerrno.
|
|
|
|
* src/ctype.cpp, facets_byname.cpp, time_facets.cpp,
|
|
test/unit/codecvt_test.cpp: Several small modifications to make
|
|
Intel C++ compiler happier. Mostly avoid warnings and use
|
|
unary_function to avoid some typedef.
|
|
|
|
2008-01-09 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_uninitialized.h: Fix implementation of
|
|
__uninitialized_copy_copy in order to make the function exception
|
|
safe. Detected thanks to the EH test suite.
|
|
|
|
2008-01-08 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_ios_base.h: _S_was_synced renamed in _S_is_synced
|
|
because it reflects what the sync state is and not what it was.
|
|
|
|
* src/iostream.cpp: Use auto_ptr to avoid use of the catch(...)
|
|
blocks. Changed management of the _STLP_REDIRECT_STDSTREAMS macro.
|
|
cout, cerr and clog streams are not ofstream anymore but classic
|
|
ostream instances, only streambuf is a filebuf when the macro is
|
|
defined. Improve _S_initialize robustness to exceptions, now
|
|
exceptions like bad_alloc are not silently eaten. _S_initialize
|
|
guaranty that on exception, Standard streams will be valid, it do
|
|
not offer however strong guaranty, global state might still have
|
|
been modified. Idem for sync_with_stdio. Moreover this method is
|
|
now Standard compliant, it returns the new sync state and not the
|
|
old one.
|
|
|
|
2008-01-07 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/c_locale_dummy/c_locale_dummy.c: Upgrade to take into account
|
|
recent localization Api modifications.
|
|
|
|
2008-01-04 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/fstream_win32.cpp: Change detection of regular file, only reject
|
|
handlers identified as folders.
|
|
|
|
* stlport/stl/_codecvt.h: Add assertion to check buffer ranges pass to
|
|
the codecvt facet.
|
|
|
|
* src/fstream.cpp, stlport/stl/_fstream.c: Complete bug #1854345 fix,
|
|
get buffer was not reset at the right place.
|
|
|
|
* stlport/stl/_fstream.h, _fstream.c: Several modifications in the
|
|
seekoff method:
|
|
- Remove limitation of positioning to binary file stream, setting
|
|
position in a text file stream is not a problem.
|
|
- Fix mbstate_t instance returned in the file_pos instance when
|
|
getting position in a file stream with variable encoding.
|
|
- Move all the sanity check code to the debug mode.
|
|
|
|
2008-01-02 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* test/unit/fstream_test.cpp: Change FstreamTest::seek test to reveal
|
|
bug #1854345.
|
|
|
|
* src/fstream.cpp: #1854345 bug fixed.
|
|
|
|
2008-01-01 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_time_facets.h, _time_facets.c, src/time_facet.cpp,
|
|
c_locale_glibc/c_locale_glibc2.c: Restore GlibC++ support after
|
|
2007-12-27 modifications.
|
|
|
|
2007-12-29 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* Borland patch from Eric Sanford mainly to enable move constructor.
|
|
|
|
* stlport/stl/_string_base.h, _string.h, _string.c,
|
|
_string_sum_methods.h: Attempt to make string implementation more
|
|
clear: _M_allocated renamed in _M_start_of_storage,
|
|
_M_Buffers._M_dynamic_buffer renamed in _M_Buffers._M_end_of_storage,
|
|
_M_end_block renamed in _M_end_of_storage too. To respect current
|
|
naming convention _capacity has been renamed in _M_capacity and
|
|
_rest in _M_rest.
|
|
|
|
* stlport/stl/_string_workaround.h: Updated to take into account recent
|
|
modification in string data model.
|
|
|
|
* etc/autoexp.dat: Updated to take into account string data model
|
|
modifications, new model is really simpler to map to.
|
|
|
|
2007-12-27 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/c_locale.h, c_locale_dummy/c_locale_dummy.c,
|
|
c_locale_glibc/c_locale_glibc.c, c_locale_glibc2.c,
|
|
c_locale_win32/c_locale_win32.c, facets_byname.cpp, time_facets.cpp,
|
|
stlport/stl/_codecvt.h, _ctype.h, _numpunct.h, _time_facets.c,
|
|
_time_facets.h: Major internal localization API modification. Add
|
|
several _WLocale_* functions to allow native support of access to
|
|
wide char representation of localization information. The time facet
|
|
support has been the most impacted. GlibC based implementation
|
|
still have to be updated.
|
|
|
|
2007-12-23 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* build/Makefiles/nmake/evc8.mak, targets.mak, src/_stdio_file.h,
|
|
fstream_win32io.cpp, iostream.cpp, locale_catalog.cpp: Patch from
|
|
Johan Anderson for Evc 3/4/8 to:
|
|
- fix the opening console issue on this platform.
|
|
- add EVC8 SH4 support.
|
|
|
|
* test/unit: Add CPPUNIT_FAIL macro to force failure without
|
|
using a constant conditional expression. Many tests updated to
|
|
use this new macro.
|
|
|
|
* stlport/stl/config/_evc.h, debug/_debug.h, _debug.c: Patch
|
|
from Michael Fink to allow _STLP_DEBUG mode when using WCE ARM
|
|
platform.
|
|
|
|
2007-12-20 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_monetary.c: Remove test of existing space at end of
|
|
stream when last pattern field is none because on ouput stream
|
|
space are only added optionaly. Small code duplication removed.
|
|
|
|
* build/lib/configure.bat, evc.mak, msvc.mak, test/unit/evc.mak,
|
|
msvc.mak: Config file moved to Makefiles/nmake folder. Add
|
|
--without-stlport option to build unit tests without STLport.
|
|
|
|
* test/unit/money_facets_test.cpp: Add validation that moneypunct
|
|
"C" facet is identical to the one contained in locale::classic().
|
|
|
|
* src/c_locale_dummy/c_locale_dummy.c,
|
|
c_locale_win32/c_locale_win32.c, facets_byname.cpp: Fix to have
|
|
moneypunct by name facet build from "C" similar to locale::classic()
|
|
one. Now default format in _Init_monetary_formats is the C++ default
|
|
one.
|
|
|
|
2007-12-20 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* test/unit/fstream_test.cpp: test for seek, inspired by Soren
|
|
(stsoe, #1854345); report not confirmed.
|
|
|
|
2007-12-17 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_limits.c: Add brackets on union initialization for gcc
|
|
starting with version 4.
|
|
|
|
2007-12-17 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/stl/config/_linux.h: if not explicitly specified another,
|
|
use threads.
|
|
|
|
2007-12-14 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/c_locale_win32/c_locale_win32.c: Fix implementation of
|
|
_Locale_mbtowc and _Locale_wctomb functions. Reveal limitation of
|
|
the MultiByteToWideChar function that cannot be used to implement
|
|
more complicated encodings that have a real shift state like the
|
|
JIS one. Add support for UTF7 and UTF8 encodings.
|
|
|
|
* test/unit/codecvt_test.cpp: New test case to check support for
|
|
2 encodings, the Windows specific code page 936 and the UTF8 one.
|
|
Those tests are coming from chinese test samples proposed by Victor
|
|
Xie.
|
|
|
|
2007-12-14 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/stl/_string_base.h, stlport/stl/_string.h, stlport/stl/_string.c:
|
|
experimental string buffer---start of buffer in _M_allocated._M_data now,
|
|
end of buffer either end of local short buffer, or stored in pointer
|
|
within local short buffer; this potentially reduce amount of pointer
|
|
arithmetic; prefer Traits::assign to uninitialized fill, it more
|
|
optimized for POD types, such as chars [experimental too].
|
|
|
|
2007-12-13 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/c_locale.h, c_locale_dummy/c_locale_dummy.c,
|
|
c_locale_glibc/c_locale_glibc.c, c_locale_glibc2.c,
|
|
c_locale_win32/c_locale_win32.c: Remove unused _Locale_wctob and
|
|
_Locale_btowc localization API functions.
|
|
|
|
2007-12-13 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* build/test/unit/gcc.mak, test/unit/...: allow build unit tests
|
|
with libstdc++, without STLport; useful for reference and comparison.
|
|
|
|
2007-12-12 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* build/Makefiles/gmake/unix/rules-install-so.mak, build/lib/gcc.mak:
|
|
install-headers usable; it use user-defined macro HEADERS_BASE
|
|
[catalog and all files, keeping directory structure] and HEADERS
|
|
[for single files]; target catalog is INSTALL_HDR_DIR, by default
|
|
it is ${BASE_INSTALL_DIR}/include.
|
|
|
|
2007-12-07 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/stl/_uninitialized.h: comment unused parameter;
|
|
|
|
* stlport/stl/_limits.c: 64-bits systems may has [and really has]
|
|
size of long double 16, not 12; but IEEE 854 still in force, and
|
|
only 10 bytes of long double taken into account. This should fix
|
|
limits<long double> on 64-bits systems. Thanks joebishop
|
|
[aka Denis Cheremisov] for granted access to 64-bit linux.
|
|
|
|
2007-12-05 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/c_locale_glibc/c_locale_glibc2.c: Fix a one byte memory overrun
|
|
when passing a very locale name.
|
|
|
|
* src/c_locale_win32/c_locale_win32.c: Simplified Win32 localization
|
|
code. Remove useless calls to strcpy. Remove useless call to the
|
|
__Extract_locale_name once in the _Locale_*_create functions as
|
|
name has already been extracted at this moment.
|
|
|
|
2007-12-05 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/c_locale_glibc/c_locale_glibc2.c: Removed many checks useless
|
|
as the C functions are called in a well defined and safe context. Also
|
|
remove useless strcpy calls when it is safe to return the internal
|
|
string.
|
|
|
|
2007-12-04 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* Add the _Locale_codecvt localization data structure for 2 purposes:
|
|
- in the win32 implementation it simplify _Locale_ctype data structure.
|
|
- in the glibc implementation it helps making clear that this
|
|
implementation do not support the codecvt facet for the moment.
|
|
|
|
2007-12-03 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/fstream_win32io.cpp: Fix management of Ctrl-Z when reading
|
|
text file stream thanks Hector Chu patch.
|
|
|
|
2007-11-30 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/acquire_release.h, facets_byname.cpp, locale.cpp,
|
|
locale_impl.cpp, locale_impl.h, messages.cpp, time_facets.cpp:
|
|
Localization code modification, now locale instances will adopt
|
|
a normalized name rather than the name used to create them. This
|
|
way identical locale instances will compare equals even if created
|
|
from name aliases like 'french' and 'fr_FR'. Moreover default
|
|
locale built from an empty string won't have an empty name.
|
|
|
|
* test/unit/locale_test.cpp, ctype_facets_test.cpp,
|
|
money_facets_test.cpp, num_facets_test.cpp, time_facets_test.cpp:
|
|
Enhance localization tests, add test of default locale when possible.
|
|
Add test for the locale instances built from a mix of the
|
|
locale::classic instance and a named category.
|
|
|
|
2007-11-27 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_ios_base.h, _ios.c: Add qualification on the cached
|
|
ctype and numpunct facets, we can keep them as const pointers.
|
|
Moreover, prefer to use the use_facet function rather than _M_get_facet
|
|
to access those instances to avoid direct reference to the facet::id
|
|
static instance.
|
|
|
|
* Some evolution in the localization code:
|
|
- Hide _Locale_name_hint in internal implementation, facets *_byname
|
|
constructor are now respecting the C++ Standard signature.
|
|
- numpunct facet: Remove unused _M_grouping field, move hard coded
|
|
values of the "C" facet in the sources. Only the numpunct_byname<wchar_t>
|
|
keeps internal wstring representation of true and false names.
|
|
- time facets: Use the non template time_base class for initialization
|
|
of the _Time_Info instance, it is more coherent with other facets
|
|
implementations. Many functions like __acquire_time and __release_time
|
|
are now hidden in the library.
|
|
|
|
2007-11-26 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/char_traits.h, _stdexcept_base.c: Borland patch
|
|
from Eric Sanford, add a missing header and change
|
|
__Named_exception implementation because of a Borland compiler
|
|
bug.
|
|
|
|
* src/c_locale_win32/c_locale_win32.c: Add LANG_INVARIANT
|
|
definition when SDK are missing it.
|
|
|
|
2007-11-24 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_monetary.h: Add missing explicit keyword on
|
|
money_get and money_put constructors.
|
|
|
|
* stlport/stl/_numpunct.h: Removed friend relation between
|
|
numpunct and num_get, looks like it is useless with current
|
|
implementation.
|
|
|
|
* stlport/stl/config/stl_mycomp.h, features.h, _watcom.h, _sunprocc.h,
|
|
_mwerks.h, _msvc.h, _ibm.h, _dec_vms.h, _dec.h, _as400.h: Removed
|
|
_STLP_NO_FRIEND_TEMPLATES, _STLP_FRIEND_TEMPLATES macros unused
|
|
since fix above regarding numpunct/num_get friend relation.
|
|
|
|
* test/unit/collate_facets_test.cpp: Fix "C" facet by name test,
|
|
Standard do not define any special behavior for the "C" transform
|
|
method so transformed result should simply follow the normal transform
|
|
behavior.
|
|
|
|
* src/locale_impl.cpp: Removed useless holes in locale facets table.
|
|
Now the table contains 26 non null entries rather than 38 entries with
|
|
some begin null.
|
|
|
|
2007-11-23 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/locale.cpp, locale_impl.h, locale_impl.cpp: Some small
|
|
modifications to limit necessary friend class _Locale_impl
|
|
declaration in several facet classes. Moreover, num_get, num_put,
|
|
money_get, money_put facets that do not depend on any name are
|
|
not allocated anymore in the functions responsible for generating
|
|
facets for a given category.
|
|
|
|
* stlport/stl/_codecvt.h, _collate.h, _ctype.h, _messages_facets.h,
|
|
_monetary.h, _num_get.h, _num_put.h, _numpunct.h, _time_facets.h:
|
|
Removed many useless friend class _Locale_impl declarations.
|
|
|
|
2007-11-23 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* build/lib/configure: make configuration suitable for installation
|
|
procedure and package building.
|
|
|
|
2007-11-22 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/c_locale_dummy/c_locale_dummy.c: Now implements the "C" locale
|
|
to respect the C++ Standard.
|
|
|
|
* test/unit/collate_facets_test.cpp: Fix test checking that collate
|
|
facet build from the "C" name behave like the one coming from the
|
|
locale::classic() locale.
|
|
|
|
* src/c_locale.h, locale.cpp, c_locale_glibc/c_locale_glibc.c,
|
|
c_locale_glic2.c, c_locale_win32/c_locale_win32.c, locale.cpp: Removed
|
|
_Locale_compose_name from the STLport internal localization API.
|
|
Composition of locale names will now be the responsibility of STLport
|
|
itself and not of the platform localization implementations one.
|
|
|
|
2007-11-20 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_iterator_base.h, _ptrs_specialize.h: Avoid inclusion
|
|
of _ptrs_specialize.h while still in stlport namespace scope thanks
|
|
Christof Meerwald report.
|
|
|
|
2007-11-17 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* _STLP_STATIC_MEMBER_DECLSPEC workaround removed. Thanks to
|
|
_GetFacetId other workaround it should now be useless. There
|
|
are still some tests to confirm especially testing the
|
|
gcc visibility feature.
|
|
|
|
2007-11-16 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_fstream.c: Fix implementation of
|
|
basic_filebuf<_CharT, _Traits>::_M_underflow_aux() to take
|
|
into consideration already read external buffer even if
|
|
reading from file failed. Thanks Hector Chu report and patch.
|
|
|
|
* test/unit/codecvt_test.cpp: New test for problem above,
|
|
CodecvtTest::imbue_while_reading thanks Hector Chu.
|
|
|
|
* test/unit/fstream_test.cpp: Remove useless
|
|
FstreamTest::special_encoding test replaced by new test in
|
|
CodecvtTest. Fix FstreamTest::custom_facet test that is now using
|
|
a specialization of codecvt rather than a class inheriting from
|
|
codecvt.
|
|
|
|
2007-11-14 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/c_locale_win32/c_locale_win32.c: Fix to support creation
|
|
of locale facet from the 'C' name.
|
|
|
|
* test/unit/collate_facets_test.cpp, locale_test.cpp,
|
|
money_facets_test.cpp, num_facets_test.cpp, time_facets_test.cpp:
|
|
Add test to check build from names "" or "C", on platform without
|
|
real localization support, "" should result in "C". Also check
|
|
for some facets that the one build from "C" name is similar to
|
|
the one taken from locale::classic() locale.
|
|
|
|
2007-11-12 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* test/unit/fstream_test.cpp: testcase for bug #1830513;
|
|
__read_unbuffered wrongly process valid streamsize 0;
|
|
[was derived from original report of Anton Samokhvalov and Oleg Obolenskiy]
|
|
|
|
* stlport/stl/_istream.c: fix for bug #1830513 above;
|
|
check boundary condition in the beginning of loop.
|
|
|
|
2007-11-09 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* build/Makefiles/gmake: Add missing cygming folder comming
|
|
from task branch, required for Cygwin/MinGW builds.
|
|
|
|
* stlport/stl/_bvector.h, _deque.h, _hashtable.h, _list.h,
|
|
_rope.h, _slist.h, _string_base.h, _tree.h, _vector.h: Removed
|
|
useless instantiation of _Alloc_traits to define nested
|
|
allocator_type in several containers. STLport users will simply
|
|
have to correctly instantiate containers when they specify
|
|
the allocator to use.
|
|
|
|
2007-10-30 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* etc/autoexp.dat: New file containing description of STLport
|
|
data structures in the Visual Studio C++ debugger language.
|
|
|
|
2007-10-21 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* Merged with STLPORT_5_1 up to revision 3229.
|
|
|
|
2007-10-20 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* _STLP_NO_MBSTATE_T removed, STLport cannot really live without
|
|
any mbstate_t definition. Moreover we were already defining our own
|
|
definition when _STLP_NO_MBSTATE_T is defined, we now simply generalize
|
|
this behavior. So definition of _STLP_NO_MBSTATE_T has been replaced
|
|
with _STLP_NO_NATIVE_MBSTATE_T.
|
|
|
|
2007-10-14 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/bitset.cpp: Add const qualifier on static arrays used in
|
|
bitset implementation. Thanks a Andrey Semachev remark.
|
|
|
|
2007-10-12 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_hash_map.h, _hash_set.h, _unordered_set.h,
|
|
_unordered_map.h: Because of the hashtable data model, number
|
|
of bucket should not be to high compare to the number of
|
|
elements. For this reason, default constructor of all hash
|
|
containers is now passing 0 as the initial size rather than 100.
|
|
|
|
* stlport/stl/_hashtable.h, _hashtable.c: For the same reason exposed
|
|
above, the hashtable number of buckets is decrease when removing
|
|
elements from the container. All is done in the newly introduce
|
|
_M_reduce method that should be called each time elements are
|
|
removed.
|
|
|
|
* test/unit/unordered_test.cpp: Two new test in UnorderedTest test
|
|
fixture, benchmark1 and benchmark2. Those tests are rather, as indicated
|
|
by their name, bench to compare performance of hashed containers.
|
|
It can be used with the -m unit test console option that display
|
|
timing of tests. For instance, thanks to the reduction policy exposed
|
|
above, benchmark1 is running 20 times faster while benchmark2 is
|
|
almost identical.
|
|
|
|
* stlport/stl/_hashtable.h: Container might now be rehash when user
|
|
modified max load factor in order to respect
|
|
load_factor() <= max_load_factor() rule. hashtable::resize fixed,
|
|
according SGI doc it should behave as Standard unordered_*::rehash that
|
|
is to say it gives number of buckets and not number of elements.
|
|
|
|
* stlport/stl/_hashtable.c: Fix Code warrior workaround that was only
|
|
showing a limited number of prime numbers.
|
|
|
|
2007-10-10 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* build/Makefiles: merge r2883:3223 from tasks/STLport-Makefiles;
|
|
revision of build system, from 'complement' project, adopted for
|
|
STLport requirements; support build of static lib and build unit
|
|
tests with this lib; gmake-specific files moved into gmake catalog;
|
|
top.mak (gmake-specific) moved into gmake catalog; add include
|
|
option for boost's headers, if STLP_BUILD_BOOST_PATH defined;
|
|
config.mak has make-dependent features, so it moved to gmake or
|
|
nmake catalog; settings from gmake/windows/sysid.mak should
|
|
be present in common gmake/sysid.mak file; gcc 3.3 has bad or
|
|
absent libsupc++, at least in debian; don't use -lstlport, when
|
|
build it; removed windows platform support that used to represent
|
|
the environment given by the cmd shell with MinGW additional commands
|
|
i.e. MinGW require not only gmake, but other POSIX file utils too;
|
|
install target by default install to /usr/local/lib on POSIX-like
|
|
platforms; added distclean target; added install-headers target;
|
|
|
|
* build/test/unit: top.mak (gmake-specific) moved into gmake catalog;
|
|
|
|
* build/test/unit/gcc.mak: see just build stlport libs, not
|
|
installation path [default install path is /usr/local/lib on POSIX-like
|
|
platforms].
|
|
|
|
2007-10-07 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* 5.1.4 released, trunk merged with STLPORT_5_1 branch up to
|
|
revision 3221.
|
|
|
|
2007-10-04 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_codecvt.h, _fstream.c, src/codecvt.cpp: Fix non
|
|
Standard conformity in codecvt::length and associated
|
|
codecvt::do_length methods. Those methods was taking const reference
|
|
to mbstate_t but the Standard specify that it must be a simple
|
|
reference.
|
|
|
|
* src/facets_byname.cpp: Add a real implementation of
|
|
codecvt<wchar_t, char, mbstate_t>::do_length based on the
|
|
_Locale_mbtowc locale API function.
|
|
|
|
* test/unit/codecvt_test.cpp: Add a test for codecvt::length.
|
|
|
|
* test/unit/fstream_test.cpp: Add a test that indirectly test
|
|
codecvt facet and integration of it in the basic_filebuf
|
|
implementation.
|
|
|
|
2007-10-02 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* test/unit/deque_test.cpp, hash_test.cpp, list_test.cpp, map_test.cpp,
|
|
set_test.cpp, slist_test.cpp, unordered_test.cpp, vector_test.cpp:
|
|
Allow test on incomplete types even when pointer specialization is
|
|
activated as long as partial template specialization is supported.
|
|
|
|
* stlport/stl/_fstream.c, src/facets_byname.cpp,
|
|
test/unit/codecvt_test.cpp:
|
|
Fixed codecvt_byname<wchar_t, char, mbstate_t>::do_in and do_out
|
|
methods. They now both correctly take into account to_end pointer.
|
|
Thanks Vistor (finalvistory) report on sourceforge Developer forum.
|
|
|
|
2007-09-28 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/num_put_float.cpp: Modification in _Stl_ecvtR and _Stl_fcvtR
|
|
long double overloads, if value can be converted to double without
|
|
precision loss we can rely on the double overload. Moreover _Stl_fcvtR
|
|
has been fixed.
|
|
|
|
* stlport/stl/pointer/_tools.h: Use class partial specialization to
|
|
enhance usability of the container pointer specialization feature.
|
|
Thanks to it, container can be instanciated with incomplete types.
|
|
Modification based on bug report 1799048 from Andrey Semashev.
|
|
|
|
* trunk merged with STLPORT_5_1 up to revision 3211.
|
|
|
|
2007-09-27 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src: Modification in the internal localization API.
|
|
_Locale_errno removed, now an int pointer is passed to all
|
|
_Locale_*_create and all _Locale_extract_*_name functions so
|
|
that they can return an error code. This method avoid multithreaded
|
|
issues.
|
|
|
|
* src/locale_catalog.cpp: Modification in __acquire_category
|
|
function. If create_obj return null, the null pointer is not
|
|
stored anymore in cached as creation failure reason might be
|
|
temporary like in case of memory starvation.
|
|
|
|
* stlport/stl/_locale.h: Error reporting enhancement. In combine
|
|
method we use a typeid call to report the unknown facet type. In other
|
|
situation we report both the facet category being built and the name
|
|
used to build it.
|
|
|
|
* test/unit/locale_test.cpp, collate_facets_test.cpp,
|
|
messages_facet_test.cpp, money_facets_test.cpp, num_facets_test.cpp,
|
|
time_facets_test.cpp: Add checks for construction of facets from
|
|
very long facet name.
|
|
|
|
2007-09-27 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* test/unit/find_test.cpp: array initialization missed.
|
|
|
|
2007-09-19 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* trunk merged with STLPORT_5_1 up to revision 3193.
|
|
|
|
2007-09-11 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/stl/_algobase.c: keep check for symmetry in
|
|
lexicographical compare---algorithm assume symmetry comparator;
|
|
remove check for symmetrical comparator in search and find,
|
|
due to double checks not better then single (the same check
|
|
done in algorithm, and algorithm not require symmetrical
|
|
comparator);
|
|
|
|
* stlport/stl/debug/_hashtable.h: idem;
|
|
|
|
* stlport/stl/debug/_tree.h: idem;
|
|
|
|
* stlport/stl/debug/_debug.h: __symetrical_strict_weak_call
|
|
and __symetrical_equal_call not used anyware.
|
|
|
|
2007-09-10 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_algo.c: Add check for symetrical functor
|
|
in max_element and min_element algo.
|
|
|
|
* stlport/stl/_algobase.c: Restore symetrical functor checks.
|
|
Sometimes simply because the algo was already considering the
|
|
functor as symetrical as in lexicographical_compare. Sometimes
|
|
using specific helpers functions (see below).
|
|
|
|
* stlport/stl/debug/_debug.h: Add __symetrical_strict_weak_call
|
|
and __symetrical_equal_call helper functions to check for
|
|
symetric functors only when invocating the symetrical functor
|
|
is valid that is to say when both parameters are of the same
|
|
type.
|
|
|
|
* stlport/stl/debug/_hashtable.h: Make use of
|
|
__symetrical_equal_call to check that equivalence functor used
|
|
in hashtable instanciation is correctly implemented.
|
|
|
|
* stlport/stl/debug/_tree.h: Make use of
|
|
__symetrical_strict_weak_call to check that functor predicate
|
|
use in tree instanciation is correctly implemented.
|
|
|
|
2007-09-10 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/stl/_string.c: fix bugs in string rfind, find_last_of,
|
|
find_last_not_of [bug #1788700, position 0 was wrongly excluded];
|
|
|
|
* test/unit/string_test.cpp: test for problems above. Thanks
|
|
to Bred Bored for bug report and initial test.
|
|
|
|
2007-09-09 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* test/unit/rope_test.cpp, stlport/stl/_rope.h: test for
|
|
bug #1788615 [bug during copy of rope's iterator] and fix;
|
|
suggested by John Maddock.
|
|
|
|
2007-09-07 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* test/unit/alg_test.cpp: add #include <string>, required for
|
|
comparator symmetry test;
|
|
|
|
* test/unit/string_test.cpp: test for bug in find_last_of,
|
|
bug #1788700, submitted by Bred Bored.
|
|
|
|
2007-09-05 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/stl/_algobase.c: symmetry not required for
|
|
comparator in case of two different sequences comparison or
|
|
searching; symmetrical comparator just may not exist;
|
|
|
|
* stlport/stl/debug/_hashtable.h: symmetry not required for
|
|
comparator in hashtable in case of containers extention;
|
|
symmetrical comparator just may not exist;
|
|
|
|
* test/unit/alg_test.cpp: test for problem above, thanks
|
|
Oleg Obolenskiy.
|
|
|
|
2007-09-03 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* src/dll_main.cpp, stlport/stl/debug/_debug.c: removed
|
|
macro _STLP_STATIC_TEMPLATE_DATA, __PUT_STATIC_DATA_MEMBERS_HERE,
|
|
_STLP_NO_STATIC_TEMPLATE_DATA; only few old compilers
|
|
require this and are good enough to work with STL;
|
|
|
|
* test/eh/test_rope.cpp, stlport/stl/_num_get.c: idem;
|
|
|
|
* stlport/stl/_time_facets.c, stlport/stl/_codecvt.h: idem;
|
|
|
|
* stlport/stl/_monetary.c, stlport/stl/_num_put.c: idem;
|
|
|
|
* stlport/stl/_rope.c, stlport/stl/_rope.h: idem;
|
|
|
|
* stlport/stl/config/user_config.h: idem;
|
|
|
|
* stlport/stl/config/stl_mycomp.h: idem;
|
|
|
|
* stlport/stl/config/_gcc.h: idem;
|
|
|
|
* stlport/stl/_threads.c: idem.
|
|
|
|
2007-09-02 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_algobase.c: Small optimization, add an
|
|
intermediate __eq function to detect when both iterator types
|
|
are identicals. Thanks Jim Xochellis idear.
|
|
|
|
* stlport/stl/_threads.h, _threads.c: Fully apply modification
|
|
of _S_nsec_sleep implementation for Win32 platforms contained
|
|
in bug report 1720635 from Taras Overchuck. It is an optimization
|
|
of the spin lock mutex specifically targetting the multiprocessor
|
|
platforms.
|
|
|
|
2007-08-29 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_algobase.c, _string.c: Some modification in
|
|
__find_first_of_aux2 implementation to reduce number of iterator
|
|
dereferencements.
|
|
|
|
2007-08-26 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/config/user_config.h, host.h: Moved administrative
|
|
_STLP_USE_UNIX_IO, _STLP_USE_STDIO_IO, _STLP_USE_WIN32_IO
|
|
macros to host.h.
|
|
|
|
* Merged with STLPORT_5_1 branch up to revision 3151.
|
|
|
|
2007-08-23 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/stl/debug/_vector.h: only random access iterators
|
|
allow operations 'less-then' and distance; for bidirectional
|
|
iterators removed usage of 'less-then', and for others
|
|
[like forward and input iterators] removed as usage of 'less-then'
|
|
as distance; thanks Oleg Obolenskiy for bug report;
|
|
|
|
* test/unit/ioiter_test.cpp: test for problem above.
|
|
|
|
2007-08-18 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/config/host.h: Removed _STLP_NO_CYGWIN macro
|
|
unused since we are using include_next.
|
|
|
|
2007-08-16 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/config/_gcc.h: Avoid conflict in link model, gcc
|
|
visibility for many platforms or dllimport/dllexport for
|
|
Cygwin/MinGW.
|
|
|
|
* build/Makefiles/gmake/gcc.mak: Looks like Cygwin/MinGW won't
|
|
support visibility for the moment.
|
|
|
|
2007-08-15 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/stl/char_traits.h, src/fstream_unistd.cpp: use 64-bits
|
|
file operations calls, if available on system; streamoff is
|
|
always off64_t, if _LARGEFILE_SOURCE or _LARGEFILE64_SOURCE
|
|
defined, i.e. if 64-bits file operations present;
|
|
|
|
* src/fstream_stdio.cpp, src/stdio_streambuf.cpp: ditto;
|
|
|
|
* stlport/stl/config/user_config.h: add _STLP_USE_DEFAULT_FILE_OFFSET,
|
|
force use off_t for streamoff and appropriate file operations calls;
|
|
note, that this may lead to problems, for example if _FILE_OFFSET_BITS
|
|
defined as 64 somewhere in user's code;
|
|
|
|
* test/unit/fstream_test.cpp: test 64 bits type for filesize and
|
|
file offset.
|
|
|
|
2007-08-13 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* test/unit/memory_test.cpp: MSVC6 do not support this test,
|
|
ignored.
|
|
|
|
* stlport/stl/_string.h: Internal _String_reserve_t moved to
|
|
private namespace.
|
|
|
|
* stlport/stl/_algobase.c, _string.c, char_traits.h: Adoption of
|
|
the find_first_of trick below in string::find_first_of, find_last_of,
|
|
find_first_not_of and find_last_not_of.
|
|
|
|
2007-08-12 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_algo.h, _algobase.h, _algobase.c: find_first_of
|
|
algorithm enhancement based on the Jim Xochellis analysis that you
|
|
can find here:
|
|
http://www.codeproject.com/vcpp/stl/find_first_of.asp.
|
|
|
|
* test/unit/alg_test.cpp: Add several tests to challenge the above
|
|
enhancement.
|
|
|
|
2007-08-08 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/config/feature.h: Removed useless workaround, there
|
|
is no more platform using Win32 threading API and missing bool
|
|
type.
|
|
|
|
* src/num_put_float.cpp, num_get_float.cpp: Fixes for DMC, DMC has
|
|
real long double so it now uses ieee854_long_double Glibc type. DMC
|
|
do not use anymore the sprintf workaround to write floating point
|
|
numbers.
|
|
|
|
* stlport/stl/_auto_ptr.h, test/unit/memory_test.cpp: Fix auto_ptr
|
|
implementation, removed a useless const_cast and change a reinterpret_cast
|
|
in static_cast. Add support for instanciation with the volatile qualifier.
|
|
Thanks Ulrich Eckhardt report.
|
|
|
|
2007-08-03 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/c_locale_win32/c_locale_win32.c: Fix some static buffer size
|
|
to always have a free place for the trailing zero.
|
|
|
|
* test/unit/locale_test.cpp: Add a test when passing a very long name
|
|
as the LC_CTYPE facet name to the locale constructor.
|
|
|
|
* src/system_api.h, system_api.c, build/lib/Makefile.inc,
|
|
src/num_put_float.cpp: Removed system_api workaround to access
|
|
isinfinite, isnan, isinf C functions used with gcc under Hp unix.
|
|
Now __format_nan_or_inf has an implementation entirely based on
|
|
numeric_limits values that avoids access to platform functions.
|
|
|
|
2007-07-30 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_facets_fwd.h, _num_put.h, _num_get.h, _monetary.h,
|
|
_time_facets.h, _locale.h: Fix _GetFacetId workaround for compilers
|
|
like gcc since 3.4 that consider only the context at point on template
|
|
definition and not at the point of instantiation when resolving
|
|
_GetFacetId calls in has_facet or use_facets template functions.
|
|
|
|
2007-07-20 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_mbstate_t.h: We have to define mbstate_t ourself
|
|
on platforms having mbstate_t in cwchar when we want to only use
|
|
C headers.
|
|
|
|
2007-07-22 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* src/fstream_unistd.cpp: force use lseek64/mmap64 for HP-UX,
|
|
if _LARGEFILE64_SOURCE defined; thanks for Michael Klein.
|
|
|
|
2007-07-20 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/config/_gcc.h, stl_mycomp.h: Removed unused
|
|
_STLP_WEAK_ATTRIBUTE macro.
|
|
|
|
* stlport/stl/config/_msvc.h, _intel.h, _gcc.h, features.h: Some
|
|
cleanup concerning _STLP_STATIC_TEMPLATE_DATA macro.
|
|
|
|
2007-07-18 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_num_put.h: Removed __string_to_float declarations only
|
|
used in a num_get context.
|
|
|
|
* src/num_get_float.cpp:
|
|
- Import Glibc ieee854_long_double union for compilers having a real
|
|
long double type but no runtime support to correctly generate it. This
|
|
union is used by gcc under Cygwin and MinGW and by Borland compiler.
|
|
- _Stl_string_to_long_double removed, it was so similar to
|
|
_Stl_string_to_double that everything is done with this function now.
|
|
- Removed check on exponent value while parsing it from buffer, check is
|
|
only done when combining this value with the digits read.
|
|
|
|
* src/num_get_float.cpp:
|
|
- Generalize synchronization code arround the ecvt/fcvt functions when
|
|
the platform do not grant reentrant functions.
|
|
- In __format_float_scientific, removed useless rz temporary variable, removed
|
|
limitation in the number of appended trailing zeros.
|
|
- In __format_float_fixed, removed limitation of number of trailing zeros
|
|
added after decimal point, it is only limited by precision.
|
|
- __format_float: Code to detect infinity or NaN has been moved before call
|
|
to platform specific ecvt/fcvt functions. Thanks to this modification, this
|
|
function is not template anymore.
|
|
- Add _Stl_ecvt/_Stl_fcvt emulation functions when platform do not grant
|
|
the necessary ecvt/fcvt functions for long double. Emulation is based on
|
|
sprintf function using 'L' modifier.
|
|
- In __write_floatT function, fix size of static buffer used by _Stl_ecvt/fcvt
|
|
functions. Fix number of digits in calls to _Stl_fcvt/ecvt in both modes,
|
|
fixed or scientific.
|
|
|
|
* test/unit/num_put_get_test.cpp: Add some tests, somes with a really high
|
|
precision that show problem with static buffer size.
|
|
|
|
2007-07-17 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/stl/_algo.c, stlport/stl/_algobase.c: search, the __tmp and
|
|
__p1 iterators always point at the same position, hence one of them
|
|
is redundant;
|
|
|
|
* stlport/stl/_algobase.c: in the main-loop of search there are two
|
|
successive while-loops doing exactly the same thing; one of them is
|
|
redundant and, since it is inside the main-loop, it slows down
|
|
the algorithm significantly;
|
|
|
|
* stlport/stl/_algo.c, stlport/stl/_algobase.c: in the search the main-loop
|
|
condition "while (__first1 != __last1)" is always true and consequently
|
|
redundant; this is because the initial adn in-loop conditions virtually
|
|
act as guards and will never let the main-loop condition to fail; since
|
|
this condition is evaluated in every main-loop iteration, its removal
|
|
will also improve the performance of the algorithm; thanks for
|
|
Jim Xochellis for this suggestions.
|
|
|
|
2007-07-15 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* src/strstream.cpp: "get end" pointer should be initialized
|
|
to the "begin of get + N" in obsolete strstream; bug #1536503,
|
|
thanks for Jean-Eric Cuendet;
|
|
|
|
* test/unit/strstream_buffer_read_test.cpp, build/test/unit/Makefile.inc:
|
|
test for bug above; [submitted by Jean-Eric Cuendet].
|
|
|
|
2007-07-05 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* build/Makefiles/nmake/vc8.mak: Removed _CRT_SECURE_NO_DEPRECATE
|
|
when building STLport. Not secured version of functions _ecvt and
|
|
_fcvt functions used for floating point numbers output are not
|
|
reentrant.
|
|
|
|
2007-07-04 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* src/num_get_float.cpp: reorder code, one condition go away.
|
|
|
|
2007-07-03 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/num_put_float.cpp: _Stl_ecvtR, _Stl_fcvtR, _Stl_qecvtR,
|
|
_Stl_qfcvtR functions, pass buffer size as a parameter when the
|
|
platform functions need it rather than duplicating the size
|
|
definition. This modification has been applied to the DECC platforms
|
|
and when the GLibC is in use.
|
|
Removed useless islong __format_float_scientific parameter. Removed
|
|
useless x __format_float_fixed parameter, islong parameter
|
|
replaced with direct specification of the maxfsig value.
|
|
In __format_float function, first attempt in detection of NaN or
|
|
infinity is done thanks to the std::numeric_limits and compiler
|
|
support, _Stl_is_nan_or_inf do not correctly handled long double
|
|
values. long double values larger than max double values were always
|
|
displayed as Inf.
|
|
|
|
* src/num_get_float.cpp: Removed useless null buffer checks in
|
|
_Stl_atod functions, we know how this function is called. Replaced
|
|
some hard coded constant with numeric_limits values. Add check that
|
|
there is less than 64 digits before hiding hidden bits in vv.i64, for
|
|
long double it was generating wrong long double value.
|
|
|
|
* test/unit/num_put_get_test.cpp: Add numerous tests to check both
|
|
long double input and output.
|
|
|
|
2007-06-29 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/memory: more forward declarations; fix typo;
|
|
|
|
* stlport/functional: more tricks to compile with boost
|
|
and tr1;
|
|
|
|
* test/unit/boost_check.cpp: problems trace; set 1 in
|
|
appropriate places to check presence of problem, but only
|
|
use one case at a time.
|
|
|
|
2007-06-28 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/locale.cpp, locale_impl.h, stlport/stl/_locale.h,
|
|
config/features.h: Runtime check system do not fully use the
|
|
MSVC6 workaround anymore, it only use the locale workaround,
|
|
not the basic_string one.
|
|
|
|
* src/string.cpp: Fix wrong explicit instanciation.
|
|
|
|
* test/unit/cppunit/cppunit_mini.h, file_reporter.h: Fix
|
|
computation of test failure when both CPPUNIT_CHECK and
|
|
CPPUNIT_ASSERT are used.
|
|
|
|
2007-06-28 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/stl/boost_type_traits.h: reread boost/config.h
|
|
to force usage of stlport in boost and force read essential
|
|
macros from boost/config/suffix.hpp; this is because boost
|
|
included within stlport from one side, and stlport included
|
|
within boost from another side; this make sense with
|
|
_STLP_USE_BOOST_SUPPORT defined in user_config.h;
|
|
checked for boost 1.34;
|
|
|
|
* test/unit/boost_check.cpp, build/test/unit/Makefile.inc:
|
|
test for problem above; this simulate problem when boost's
|
|
header was included before any stlport's one;
|
|
|
|
* stlport/stl/config/features.h: remove definition of
|
|
BOOST_STDLIB_CONFIG, due to it unconditionally defined
|
|
in boost.
|
|
|
|
* stlport/memory: forward declarations for boost required,
|
|
by the same reasons as described above.
|
|
|
|
2007-06-24 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/stl/_function.h, stlport/functional: fix import
|
|
of boost::shared_ptr---moved from _function.h to functional;
|
|
import mem_fn, bind, bad_function_call, function, swap from
|
|
boost to std::tr1.
|
|
|
|
2007-06-23 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_string.h, _string_workaround.h: Some fix for gcc
|
|
that is now expose to the VC6 workaround because of the runtime
|
|
check mechanism under MinGW.
|
|
|
|
2007-06-21 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* test/unit/cstring_test.cpp, limits_test.cpp: Small modif to avoid
|
|
MSVC compiler warning in release build.
|
|
|
|
* stlport/stl/_cwchar.h: Replace a _STLP_MSVC check with a _STLP_MSVC_LIB
|
|
check as WCHAR_MIN and WCHAR_MAX macros definition depends on library
|
|
and not on compiler.
|
|
|
|
2007-06-20 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/memory: import shared_ptr from boost to std::tr1 namespace,
|
|
if no _STLP_NO_EXTENSIONS and present _STLP_USE_BOOST_SUPPORT;
|
|
see ISO/IEC DTR 19768,
|
|
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1836.pdf
|
|
|
|
* test/unit/shared_ptr_test.cpp: test for shared_ptr.
|
|
|
|
2007-06-19 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/debug/_debug.h, _debug.c: Replace __in_range with
|
|
stlp_in_range, __in_range is a macro in the Windows Vista PSDK.
|
|
|
|
* src/locale.cpp, stlport_prefix.h, warning_disable.h,
|
|
stlport/stl/_locale.h, _string.h, config/features.h: Fix some
|
|
regression introduce with the improvment of the runtime compatibility
|
|
check mecanism.
|
|
|
|
* src/c_locale_glibc/c_locale_glibc2.c: Fix implementation of
|
|
_Locale_strcmp and _Locale_strwcmp functions.
|
|
|
|
* stlport/stl/_limits.c: Change technique used to generate NaN or
|
|
infinity floating point numbers. No more reinterpret_cast of a buffer,
|
|
we now use an union based technique. gcc prefer this cleaner method
|
|
especially in release mode.
|
|
|
|
* test/unit/limits_test.cpp: Small test modification as gcc was still
|
|
performing some weird optimization in release mode resulting in
|
|
unexpected behavior.
|
|
|
|
2007-06-19 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/stl/_function.h: import reference_wrapper from boost to
|
|
std::tr1 namespace, if no _STLP_NO_EXTENSIONS and present
|
|
_STLP_USE_BOOST_SUPPORT; see ISO/IEC DTR 19768,
|
|
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1836.pdf
|
|
|
|
* test/unit/reference_wrapper_test.cpp: test for reference_wrapper.
|
|
|
|
2007-06-15 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* build/test/unit/Makefile.inc: macro_checks.cpp instead of cwchar.cpp.
|
|
|
|
2007-06-14 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/dll_main.cpp, locale.cpp, locale_impl.h, locale_impl.cpp,
|
|
stlport/stl/_locale.h, _rope.h, config/_windows.h, features.h:
|
|
Enhance the runtime compatibility mecanism used to detect build
|
|
inconsistency under Windows. We now use the locale class with the
|
|
VC6 workaround coming with it to force a call to the compatibility
|
|
check function. Inconsistency detection is activated if _DEBUG
|
|
or _STLP_DEBUG is defined. If an inconsistency is detected it is
|
|
reported by the linker thanks to an unresolved symbol
|
|
building_for_up_to_windows95_but_library_built_for_at_least_windows98
|
|
or
|
|
building_for_at_least_windows98_but_library_built_for_up_to_windows95
|
|
that are self describing.
|
|
|
|
* test/unit/cwchar.cpp: Renamed in macro_checks.cpp, add many tests for
|
|
all C Standard macros like CHAR_MIN, CHAR_MAX, INT_MIN, INT_MAX...
|
|
|
|
* stlport/stl/_cwchar.h: Add MSVC compilers before Visual Studio 2005
|
|
as not defining WCHAR_MAX correctly.
|
|
|
|
2007-06-11 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/lock_free_list.h: Fix check of _WIN32_WINNT rather than _WIN32_WINDOWS.
|
|
|
|
* stlport/stl/_threads.c: In the Win32 implementation, add a call to
|
|
the SwitchToThread function to potentially avoid a costly call to
|
|
Sleep(1) that can take more time than expected. If SwitchToThread fail
|
|
we call Sleep(1) again. Based on Taras Overchuk bug report 1720635.
|
|
|
|
2007-06-11 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* src/fstream.cpp: integration file; code clean, three implementations
|
|
sublimated, unix-emulation approach removed; this is reorganization
|
|
changeset, functionality was not changed;
|
|
|
|
* src/fstream_win32io.cpp: win32io-based implementation of _Filebuf_base,
|
|
i.e. based on Windows calls CreateFile/CloseHandle/ReadFile/WriteFile +
|
|
CreateFileMapping, MapViewOfFile;
|
|
|
|
* src/fstream_unistd.cpp: unistdio-based implementation of _Filebuf_base,
|
|
based on unistd open/close/read/write + mmap;
|
|
|
|
* src/fstream_stdio.cpp: stdio-based implementation of _Filebuf_base,
|
|
based on stdio fopen/flose/fread/fwrite;
|
|
|
|
* stlport/stl/_fstream.h: detect of _Filebuf_base implementation moved
|
|
into stlport/stl/config files;
|
|
|
|
* stlport/stl/config/*.h: iostreams underline technique depends upon
|
|
OE or user's preferences;
|
|
|
|
* stlport/stl/config/features.h: some system-specific macro moved to
|
|
system- or compiler-specific files;
|
|
|
|
* stlport/stl/_rope.h: rewritten suspicion code, functionality not changed.
|
|
|
|
2007-06-08 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_complex.h: Clean unused _STLP_NO_COMPLEX_SPECIALIZATIONS
|
|
macro and code coming with it.
|
|
|
|
* build/lib/configure, configure.bat: Removed --windows95 option, it is
|
|
useless now that STLport includes windows.h when building the libraries.
|
|
|
|
* build/Makefiles/gmake/bcc.mak, dmc.mak, gcc.mak, nmake/vc-common.mak:
|
|
Removed references to Windows 95 build, if STLport users want to target
|
|
a specific Windows OS they will only have to use --extra-cxxflags to
|
|
give WINVER, _WIN32_WINDOWS or _WIN32_WINNT values.
|
|
|
|
2007-06-05 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/config/features.h: Removed unused _STLP_LDOUBLE_* macros giving
|
|
real long double size.
|
|
|
|
* stlport/stl/_limits.h, _limits.c: Major code upgrade, now computation
|
|
of infinity and NaN is done thanks to some code extracted from the boost
|
|
library (www.boost.org). This code is more portable as it adapts to compiler
|
|
representation of float, double and long double and do not require many
|
|
compiler macro checks. Additionaly STLport numeric_limits now handle real
|
|
denorm_min values.
|
|
|
|
* test/unit/limit_test.cpp: Add many test on dernomalized float and
|
|
some other values of numeric_limits.
|
|
|
|
* stlport/stl/config/_cray.h, _gcc.h, _msvc.h, stl_mycomp.h: Removed
|
|
_STLP_NO_IEC559_SUPPORT macro, meaning was not clear and impact was
|
|
localized to the _limits.h file so use of a global macro was rather
|
|
useless.
|
|
|
|
2007-05-29 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_num_get_.c: Small refactoring, all num_get::do_get for
|
|
float, double and long double are now calling the same __do_get_float
|
|
function. Moreover, when __read_float failed, __sring_to_float is not
|
|
called anymore.
|
|
|
|
2007-05-28 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* test/unit/limits_test.cpp: Add test checking that numeric_limits
|
|
min is really min and max really max.
|
|
|
|
* src/allocators.cpp, locales.cpp, stlport/stl/_threads.h,
|
|
config/_windows.h: Fix detection of Windows OS having limited
|
|
implementation of Interlocked[Increment,Decrement] Win32 API
|
|
functions. _STLP_WIN95 macro has been rename _STLP_WIN95_LIKE
|
|
as it do not only signal Windows 95 build context but also former
|
|
OS versions.
|
|
|
|
2007-05-22 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/c_locale_win32/c_locale_win32.c: gcc MinGW has no thread
|
|
locale storage intrisinc support so for this compiler, locale
|
|
creation failure will always be reported with runtime_error
|
|
exception.
|
|
|
|
* stlport/stl/config/_msvc.h: Configuration fix, check that _STLP_MSVC
|
|
is defined before activating MSVC6 workaround
|
|
(_STLP_USE_MSVC6_MEM_T_BUG_WORKAROUND macro).
|
|
|
|
2007-05-21 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/c_locale.h, locale.cpp, locale_impl.cpp,
|
|
c_locale_dummy/c_locale_dummy.c, c_locale_win32/c_locale_win32.c,
|
|
c_locale_glic/c_locale_glibc.c, c_locale_glibc2.c: Add a _Locale_errno
|
|
function to the small localization framework in order to report more
|
|
accurate locale creation failure. For the moment there are 3 possible
|
|
failure reasons, no more memory, unsupported locale, no platform support.
|
|
In case of memory starvation, we throw a bad_alloc exception.
|
|
|
|
2007-05-19 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_valarray.h, _valarray.c: Add many assertion checks to
|
|
track potential undefined behaviors mostly regarding invalid argument
|
|
size.
|
|
|
|
2007-05-17 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_prolog.h: Hide _debug.h when including C standard
|
|
headers. Some platforms (Win32) include C headers in an 'extern "C"'
|
|
scope that do not accept templates exposed in _debug.h.
|
|
|
|
2007-05-16 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/config/_auto_link.h, build/Makefiles/gmake/cygming/lib.mak,
|
|
build/Makefiles/nmake/lib/macro.mak: Removed version information
|
|
from static libs name for consistency among all supported compilers/
|
|
platform.
|
|
|
|
2007-05-15 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_range_errors.c, _stdexcept_base.c: New files
|
|
containing codes that used to be duplicated in dll_main.cpp.
|
|
|
|
* src/dll_main.cpp: Include _range_errors.c and _stdexcept_base.c
|
|
when necessary.
|
|
|
|
* stlport/stl/_stdexcept_base.h, _stdexcept_base.c: __Names_exception
|
|
do not truncate anymore exception message when longer than internal
|
|
static buffer, a dynamic buffer is allocated through malloc in this
|
|
case. I haven't use __iostring class in this case as it would
|
|
have introduce a cyclic dependency between classes.
|
|
|
|
2007-05-11 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/c_locale.h, c_locale_glibc/c_locale_glibc2.c: Some fixes to
|
|
avoid gcc warnings when compiled with -Wall -Wmissing_prototypes.
|
|
|
|
* stlport/stl/_num_put.c: Fix a cast to avoid a signed/unsigned
|
|
comparison warning.
|
|
|
|
* c_locale_glibc/c_locale_glibc2.c: Use __locale_t __names field
|
|
rather than __locales to access to category names. Thanks to this
|
|
modification we do not need the Glib internal locale_data struct
|
|
definition anymore.
|
|
|
|
* test/unit/fstream_test.cpp: Port the FstreamTest::null_stream for
|
|
unixes platforms that use /dev/null, the test is not ignored anymore.
|
|
|
|
* src/fstream.cpp: Under Windows, check that the file we are
|
|
opening is a real file before trying to truncate it or move to
|
|
the end. Allow use of special file like "NUL" with C++ fstream.
|
|
|
|
2007-05-10 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/stdio_streambuf.cpp: Add checks of error codes returned
|
|
by ftell and fseek functions in stdio_istreambuf::showmanyc
|
|
Windows CE special implementation.
|
|
|
|
* test/unit/fstream_test.cpp: Add new test case to check file streams
|
|
built from platform dependent null pipe (NUL under Windows, /dev/null
|
|
under unixes). Ignored for the moment.
|
|
|
|
2007-05-04 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/locale.cpp, allocators.cpp, stlport/stl/_threads.h,
|
|
config/_windows.h: Change macro checks to detect Windows 95 platform.
|
|
Windows 95 and NT4 has both WINVER == 0x0400 but only Windows 95 has
|
|
limitation impacting STLport code. Distinction between both platforms
|
|
is done thanks to the _WIN32_WINNT macro only defined for NT4. New
|
|
_STLP_WIN95 macro signals Windows 95 platform, it replaces
|
|
_STLP_WIN32_VERSION. Thanks Jan Echternach patch 1707963.
|
|
|
|
* src/c_locale_win32/c_locale_win32.c: Remove all code concerning the
|
|
messages facet, Windows platform do not support it.
|
|
|
|
* src/fstream.cpp: Fix use of fseek in _Filebuf_base::_M_seek in
|
|
_STLP_USE_STDIO_IO mode. fseek do not return the position in file
|
|
but a boolean value indicating if call has succeeded or not, and
|
|
call to ftell to get file position. Thanks Marco Jez bug report
|
|
1704843. I have also integrated a number of small fixes to use
|
|
_STLP_USE_STDIO_IO mode under MSVC or GCC MinGW, it shouldn't be
|
|
really nececarry but it costs nothing and help testing this mode.
|
|
|
|
2007-05-03 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_numpunct.h, _time_facets.h, _ctype.h, _monetary.h,
|
|
_messages_facets.h: Remove friend _Locale_extract_hint function
|
|
declaration replace by the more simple friend class
|
|
_Locale_impl expression.
|
|
|
|
* src/locale_impl.cpp: Change implementation of
|
|
_Locale_impl::insert_*_facets methods. Now only facets used internally
|
|
for iostreams implementation are considered as mandatory when
|
|
instanciating a locale from a name. Other facets like collate or
|
|
messages won't generate a runtime_error exception if the platform is
|
|
not able to grant an implementation. This will make STLport more
|
|
flexible in regards of platform possibilities.
|
|
|
|
* stlport/stl/_messages_facets.h, src/facets_byname.cpp, messages.cpp:
|
|
Simplification of the messages facet implementation. _Messages class
|
|
has no virtual method anymore, _Messages_Impl has been removed. Now
|
|
messages class implementation is a dummy implementation that do not
|
|
allow access to platform messages, real messages implementation is
|
|
available thanks to the messages_byname class.
|
|
|
|
* stlport/stl/_time_facets.h: _Locale_time instance is not kept
|
|
anymore in the facet implementation, it is only used on construction
|
|
to initiliaze _Time_Info struct instance.
|
|
|
|
2007-05-02 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* test/unit/codecvt_test.cpp: Fixed comparison with char_traits::eof
|
|
to use eq_int_type in order to be compatible with platform having
|
|
a default unsigned char built-in type. Thanks Marco Jez report.
|
|
|
|
2007-04-19 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_valarray.h: Integrate C++ Standard defect 253
|
|
signaling that slice_array, gslice_array, mask_array and
|
|
indirect_array copy constructor cannot be private.
|
|
|
|
* test/unit/valarray_test.cpp: Add compilation test to check that
|
|
valarray operator[] taking a slice, gslice, valarray<bool> and
|
|
valarray<size_t> can be called.
|
|
|
|
2007-04-16 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/locale.cpp: Simplified locale::_M_throw_runtime_error
|
|
implementation using std::string rather than C string functions.
|
|
Also change exception message generation to make failure reason
|
|
more obvious.
|
|
|
|
* src/facets_byname.cpp: As, according Standard, *_byname facet
|
|
constructor should behave as locale constructor taking a name
|
|
STLport now throws a runtime_error instance when building
|
|
a facet from a null name.
|
|
|
|
* src/messages.cpp: Now contains all classes implementation involved
|
|
in messages facet support.
|
|
|
|
* stlport/stl/_messages_facets.h, src/messages_facets.h, messages.cpp:
|
|
Simplification of the messages facet implementation. Major modification
|
|
is that the C messages facet has now only one representation which is
|
|
the one given by the _Message class. There used to be an other one
|
|
based on _Messages_impl class using __acquire_messages("C").
|
|
|
|
* src/messages_facets.h: Internal classes _Messages and _Messages_impl
|
|
are not exported anymore.
|
|
|
|
* test/unit/locale_test.cpp: Facet tests has been moved to facet
|
|
category test files.
|
|
|
|
* test/unit/collate_facets_test.cpp, ctype_facets_test.cpp,
|
|
messages_facets_test.cpp, money_facets_test.cpp, num_facets_test.cpp,
|
|
time_facets_test.cpp, build/test/unit/Makefile.inc: New test cases for
|
|
each facet category.
|
|
|
|
* stlport/stl/config/features.h: Define _STLP_NO_TYPEINFO when _STLP_NO_RTTI
|
|
is defined.
|
|
|
|
2007-04-15 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/dll_main.cpp: Removed useless _Atomic_swap_struct export
|
|
that has already been removed from _threads.h and that was generating
|
|
compilation error with MSVC 2005.
|
|
|
|
2007-04-10 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/pointers/_deque.h, _list.h, _set.h, _slist.h:
|
|
Eric Sanford DMC patch to allow pointer specialization feature.
|
|
|
|
* test/unit/map_test.cpp, set_test.cpp, slist_test.cpp,
|
|
unordered_test.cpp: Remove DMC check hiding pointer specialization
|
|
tests.
|
|
|
|
* build/Makefiles/gmake/dmc.mak, app/dmc.mak: Additional fixes from
|
|
Eric Sanford.
|
|
|
|
2007-04-09 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_pair.h, _vector.h, config/_bc.h: Borland patch
|
|
from Eric Sanford, remove move semantic for free compiler.
|
|
|
|
* test/unit/mvctor_test.h: Eric Sanford patch to restore 2 tests
|
|
that has been lost in a previous test modification,
|
|
movable_declaration_assoc and movable_declaration_hash.
|
|
|
|
* test/unit/mvctor_traits_test.cpp: Add some _STLP_NO_MOVE_SEMANTIC
|
|
checks when using __move_traits.
|
|
|
|
2007-04-05 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/config/_gcc.h: Removed undef of _STLP_NEW_PLATFORM_SDK,
|
|
under MinGW, MinGW can use a new SDK and not the one coming with
|
|
MinGW.
|
|
|
|
* Merged with STLPORT_5_1 branch up to revision 2994.
|
|
|
|
2007-04-05 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* src/ctype.cpp: move declaration from loop;
|
|
|
|
* stlport/stl/debug/_debug.c: stl/_cstdlib.h already included;
|
|
|
|
* stlport/stl/_cprolog.h: prolog for C headers can't include
|
|
files with C++ constructions;
|
|
|
|
* stlport/*.h: C headers use prolog that don't include C++
|
|
constructions;
|
|
|
|
* test/unit/stldbg_include.cpp, build/test/unit/Makefile.inc:
|
|
test for problem with inclusion C++ constructions from
|
|
C header.
|
|
|
|
2007-04-04 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* build/lib/configure.bat: Change advise command to build
|
|
STLport after configuration, it is now 'clean all' rather
|
|
than default build command.
|
|
|
|
2007-03-22 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/c_locale_dummy/c_locale_dummy.c: Fixed dummy definition
|
|
for a number of localization functions that are now type safe.
|
|
|
|
2007-03-20 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_prolog.h, config/features.h, debug/_debug.h:
|
|
Normalize the way STLport debug mode macros are defined. All
|
|
debug macro definition are now coming from _debug.h and not
|
|
anymore partially from features.h. _debug.h is now included from
|
|
_prolog.h after all configuration has been completed.
|
|
|
|
* stlport/stl/_alloc.h, _iterator_base.h, _valarray.h: Removed
|
|
_debug.h references now fully integrated in STLport configuration
|
|
phase.
|
|
|
|
* stlport/stl/config/_windows.h: Add some Windows macro before
|
|
inclusion of windows.h when building library to limit Windows
|
|
pollution (NOMINMAX, STRICT). Moreover add definition of
|
|
_STLP_OUTERMOST_HEADER_ID macro before windows.h inclusion to
|
|
avoid indirect include of STLport stuff throught C Standard headers
|
|
included in windows.h as at this moment STLport is not yet completely
|
|
configured.
|
|
|
|
* stlport/stl/config/_evc.h: Removed unjustified macro definition to
|
|
limit inclusion from windows.h, it is a user decision not an STLport one.
|
|
|
|
* build/Makefiles/nmake/vc8.mak: Fix definition of DEFS in this file
|
|
to keep current DEFS value that might exist if configure --extra-cxxflag
|
|
option has been used.
|
|
|
|
* src/allocators.cpp: Add _STLP_NEW_PLATFORM_SDK macro check to
|
|
perform necessary const_cast in _STLP_ATOMIC_ADD macro definition.
|
|
|
|
2007-03-17 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* build/Makefiles/gmake/bcc.mak, dmc.mak, gcc.mak, nmake/vc-common.mak:
|
|
Add WINVER definition when building libraries to signal required OS
|
|
compatibility, per default it is Windows 98 and later ones.
|
|
|
|
* build/lib/configure, configure.bat: Add new configuration option
|
|
--windows95 to signal that we want Windows 95 compatibility.
|
|
|
|
* stlport/stl/_threads.h, config/_windows.h, src/allocators.cpp:
|
|
Move _STLP_ATOMIC_ADD macro definition in source files where it is
|
|
used.
|
|
|
|
* stlport/stl/config/_windows.h:
|
|
- When building the libraries we always include windows.h, when using
|
|
the library we always use own function declaration to avoid windows.h
|
|
inclusion.
|
|
- InterlockedExchangeAdd is not declared anymore.
|
|
- InterlockedExchangePointer is only used when detecting 64 bits
|
|
platform thanks to the _WIN64 macro, otherwise InterlockedExchange
|
|
is used.
|
|
|
|
2007-03-15 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* build/Makefiles/nmake/vc8.mak: Default MSVC 2005 build is now done
|
|
without safe string functions for performance reasons.
|
|
|
|
* stlport/stl/_locale.h, _alloc.h, _rope.h: Moved
|
|
_STLP_CHECK_RUNTIME_COMPATIBILITY_AT_LINK_TIME invocation where problem
|
|
might happen which is in the rope implementation for current use. A future
|
|
use will need to guess where this function has to be invoked.
|
|
|
|
* stlport/stl/config/feature.h: Fixed _STLP_USE_NO_IOSTREAMS check to undef
|
|
_STLP_CHECK_RUNTIME_COMPATIBILITY_AT_LINK_TIME macro.
|
|
|
|
* stlport/stl/config/_windows.h: For performance reason
|
|
_STLP_CHECK_RUNTIME_COMPATIBILITY_AT_LINK_TIME system is only used in debug
|
|
mode (detected thanks to _DEBUG macro).
|
|
|
|
2007-03-13 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* Merged with STLPORT_5_1 branch revision 2963.
|
|
|
|
* src/locale_catalog.cpp: Use C cast for C struct like _Locale_ctype,
|
|
it makes Borland compiler happier.
|
|
|
|
* stlport/stl/_string.h: Made inheritance relation between basic_string
|
|
and _String_base class public for DMC.
|
|
|
|
* src/dll_main.cpp, stlport/stl/config/features.h,
|
|
stlport/stl/_locale.h, _alloc.h: Add a new mecanism to detect library
|
|
build/use inconsisteny at link time.
|
|
_STLP_CHECK_RUNTIME_COMPATIBILITY_AT_LINK_TIME macro contains a
|
|
function name declared in features.h and defined in dll_main.cpp.
|
|
This function name depends on the build context. If, when using the
|
|
library, this macro contains an other function name because of a
|
|
different configuration context an unresolved symbol will appear at
|
|
link time showing the missing function symbol. Function name should
|
|
be chosen carefully to make problem as explicit as possible. For the
|
|
moment function is called in arbitrary places, in std::use_facet
|
|
function and std::allocator constructor.
|
|
|
|
* stlport/stl/config/_windows.h: Use
|
|
_STLP_CHECK_RUNTIME_COMPATIBILITY_AT_LINK_TIME macro to detect
|
|
inconsistency when building STLport for Windows 95 and using it
|
|
in Windows XP or opposite. Depending on targetted platform,
|
|
_Refcount_Base has a different sizeof which lead to undefined
|
|
behavior at runtime if we do not use this trick.
|
|
|
|
2007-03-13 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* test/unit/string_test.cpp: add test for trivial compare with plain
|
|
char array;
|
|
|
|
* test/unit/exception_test.cpp: add test for what().
|
|
|
|
2007-03-10 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/config/_windows.h: Major modification, when building
|
|
STLport libs windows.h or afx.h, when _STLP_USE_MFC is defined, is
|
|
systematically included in order to detect the SDK version used to
|
|
the libraries. _windows.h is now the only place is the library where
|
|
windows.h is included.
|
|
|
|
* src/dll_main.cpp, fstream.cpp, lock_free_slist.h,
|
|
c_locale_win32/c_locale_win32.c: Removed references to windows.h now
|
|
included from _windows.h.
|
|
|
|
* stlport/stl/_istream.c: Add parenthesis on a use_facet call to make
|
|
VC6 happy when building the library.
|
|
|
|
* test/unit: Disable tests checking instanciation and use of
|
|
containers with an incomplete type when pointer specialization is
|
|
enable.
|
|
|
|
* stlport/stl/config/user_config.h: Add comment about limitation
|
|
of pointer specialization.
|
|
|
|
* stlport/stl/_string.h, _string_workaround.h: Now that _STLP_DEBUG
|
|
mode do not use inheritance anymore, use private rather than
|
|
protected members in basic_string implementation. Only exception
|
|
is when using VC6 workaround, this is what _STLP_PRIVATE macro is
|
|
for.
|
|
|
|
* src/allocators.cpp, stlport/stl/config/features.h: Removed
|
|
unjustified _STLP_PRIVATE macro.
|
|
|
|
2007-03-09 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/stl/config/_msvc.h: use MS's safe string functions only
|
|
if _CRT_SECURE_NO_DEPRECATE not defined (see bug #1674974).
|
|
Thanks Bronek Kozicki.
|
|
|
|
2007-03-08 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* src/num_get_float.cpp: experimental support of correct input
|
|
of long doubles on Linuxes.
|
|
|
|
* test/unit/num_put_get_test.cpp: test for correct input of float,
|
|
double and long double, including values out of type range.
|
|
|
|
* stlport/stl/config/_linux.h: mark that Alpha, PowerPC,
|
|
32-bit SPARC, 32-bit MIPS, ARM, SH4 has no long double.
|
|
|
|
2007-03-05 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* Synchronization with STLPORT_5_1 branch revision 2945.
|
|
|
|
2007-02-19 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl: swap workaround review, now when swap implementation
|
|
detect that a STLport class is being swapped it calls the
|
|
_M_swap_workaround member method. We do not use the swap method
|
|
anymore because the way the workaround is implemented would have
|
|
forces us to add a swap method to queue, priority_queue and stack
|
|
containers that do not have a swap method according the C++ Standard.
|
|
|
|
2007-02-15 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* Synchronization with STLPORT_5_1 branch up to revision 2918.
|
|
|
|
2007-02-13 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/config/features.h, _msvc.h, stl_mycomp.h: Removed
|
|
_STLP_USING_NAMESPACE_BUG macro config. STLport private namespace
|
|
is now always nested in stlport one. Makes namespace management
|
|
easier.
|
|
|
|
* stlport/stl/_algobase.h: Restore workaround for compilers
|
|
not supporting template function partial ordering feature, was
|
|
resulting in regression for a number of compilers, VC6, Borlands.
|
|
A template class like _SwapImplemented do not have to be specialized
|
|
to be useful, this class is used to detect types having a swap
|
|
method. Detection is based on the class being flagged as STLport
|
|
class thanks to the __stlport_class inheritance.
|
|
|
|
* test/unit/swap_test.cpp: Add macro checks to ignore test for
|
|
compilers we know not being able to support it.
|
|
|
|
2007-02-12 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/config/features.h: Add necessary macro to work
|
|
with tr1 namespace of the C++ technical report.
|
|
|
|
* stlport/stl/_unordered_set.h, _unordered_map.h: Put unordered
|
|
containers in tr1 namespace.
|
|
|
|
* test/unit/unordered_test.cpp, mvctor_test.cpp,
|
|
mvctor_declaration_test.cpp: Add necessary using directive
|
|
to access tr1 namespace.
|
|
|
|
2007-02-12 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* Repository: revert back r2908;
|
|
|
|
* test/unit/swap_test.cpp: test that swap( a, b ) has specialization
|
|
a.swap( b ), when required;
|
|
|
|
* stlport/stl/_algobase.h: _SwapImplemented useless, because it never
|
|
specialized elsewhere---remove swap specialization here, use instead
|
|
swap specialization from _relops_cont.h, when required.
|
|
|
|
2007-02-07 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* locale_impl.cpp, monetary.cpp, num_get.cpp, num_put.cpp,
|
|
time_facets.cpp: Moved all _GetFacetId implementations in
|
|
the same translation unit as the one where id are initialized.
|
|
|
|
2007-02-05 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_alloc.h, allocators.cpp: Moved _ALIGN and
|
|
_ALIGN_SHIFT constant definition in source file where it is used
|
|
_MAX_BYTES is used in deque implementation. Moreover those
|
|
constant value now depends on sizeof(void*) to avoid preprocessor
|
|
check like _WIN64.
|
|
|
|
* stlport/stl/_vector.h, _vector.c: Moved __type_traits
|
|
instanciations in methods that need it in order to be able to
|
|
access nested types like iterator even if type used to instanciate
|
|
the vector is not yet completely defined.
|
|
|
|
* stlport/stl/_deque.h, _deque.c: Removed useless __type_traits
|
|
instanciations. For the same reason than above, __buffer_size
|
|
constant has been replaced by a function computing deque buffer
|
|
size at runtime.
|
|
|
|
* stlport/stl/_hashtable.h, _hashtable.c: For the same reason than
|
|
above, hashtable do not contains anymore an instance of the _ExK type
|
|
which is used to extract the key part from a value instance. This
|
|
instance was not returned in any method of the hashtable type. An
|
|
unused constructor taking an instance of this type has been removed.
|
|
|
|
* test/unit/vector_test.cpp, deque_test.cpp, list_test.cpp,
|
|
slist_test.cpp, map_test.cpp, set_test.cpp, hash_test.cpp,
|
|
unordered_test.cpp: Add compilation tests to check that the container
|
|
iterator nested type is accessible even if type used to instanciate
|
|
the container is not yet completely defined.
|
|
|
|
2007-02-02 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/c_locale.h: Add type information for the following functions
|
|
of the localization support API:
|
|
- _Locale_*_create
|
|
- _Locale_*_destroy
|
|
- _Locale_*_name
|
|
Also add some variable name to make associated documentation more
|
|
explicit.
|
|
|
|
* src/c_locale_win32/c_locale_win32.c,
|
|
src/c_locale_glibc/c_locale_glibc.c, c_locale_glibc2.c: Adapted to
|
|
conform to new localization API functions prototypes. Adaptation
|
|
in glibc before 2.2 has been updated but compilation hasn't been
|
|
completed because of the lack of the glibc required version.
|
|
|
|
* src/locale_catalog.cpp: Now wrapper functions are used to
|
|
offer a homogeneous prototype to type safe localization API
|
|
functions.
|
|
|
|
2007-02-02 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* test/unit/hash_test.cpp: add test for hash_multimap, equivalent
|
|
keys problem on some data sets [this is regression test, suggested
|
|
by tef for 5.0.2, bug report #1606308].
|
|
|
|
2007-01-29 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/stl/debug/_deque.h: typename required.
|
|
|
|
* test/unit/sstream_test.cpp: test for seekp added.
|
|
|
|
2007-01-28 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* build/Makefiles/gmake: Borland patch from Eric Sanford to install
|
|
.tds file for Borland debugger.
|
|
|
|
* trunk synchronized with STLPORT_5_1 branch up to revision 2895.
|
|
|
|
* stlport/stl/_threads.h: Changed way of including headers for
|
|
_STLP_UITHREADS platform. We now include internal STLport headers
|
|
rather than Standard ones. It was especially important for Sun
|
|
Studio compiler that natively include Standard headers only once.
|
|
|
|
2007-01-25 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* src/facets_byname.cpp: we search within scope, specified by mask,
|
|
so _Locale_wchar_ctype return can't be beyond of this mask.
|
|
|
|
* src/c_locale_glibc/c_locale_glibc2.c: _Locale_wchar_ctype
|
|
implemented.
|
|
|
|
* test/unit/locale_test.cpp: test for ctype facet for wchar_t added.
|
|
|
|
2007-01-23 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_locale.h: Introduction of the _GetFacetId function
|
|
to isolate access to facet id instance in one place. It guaranty that
|
|
the facet id instances initialized in _Stl_loc_assign_ids function
|
|
are the same as the ones used by streams to format output. Many compilers
|
|
have problem with template class static variable and duplicate them
|
|
arround the different shared library depending on STLport.
|
|
|
|
* stlport/stl/_monetary.h, _num_get.h, _num_put.h, _time_facets.h:
|
|
Add _GetFacetId overloads for money_get, money_put, num_get, num_put,
|
|
time_get, time_put facets that are exposed as template facets. Other
|
|
facets are fully specialized template classes whose id should be
|
|
correctly handle by compilers like for any static variable in a non
|
|
template class.
|
|
|
|
* src/monetary.cpp, num_get.cpp, num_put.cpp, time_facets.cpp: Add
|
|
_GetFacetId implementation.
|
|
|
|
* stlport/stl/_collate.h: Use _GetFacetId in __locale_do_operator_call
|
|
implementation, not required but more consistent.
|
|
|
|
* stlport/stl/_monetary.c, _num_put.c, _num_get.c, _time_facets.c,
|
|
src/locale_impl.cpp: Removed now useless gcc Cygwin or MinGW and
|
|
Borland workarounds.
|
|
|
|
* test/unit/locale_test.cpp: Removed facet_id test case, facet id
|
|
indexes are STLport internal stuff that shouldn't be part of a unit
|
|
test. Wrong facet id management will be shown by other tests. Moreover
|
|
this test was failing for compilers duplicating template class
|
|
static instances.
|
|
|
|
2007-01-20 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_cmath.h, _cstdlib.h, config/_watcom.h: Small
|
|
evolution for Open Watcom support.
|
|
|
|
* Synchronization of trunk from STLPORT_5_1 branch from revision
|
|
2750 to revision 2871.
|
|
|
|
* stlport/stl/config/features.h, _gcc.h, _intel.h, _msvc.h, _sgi.h:
|
|
Major exception policy modification, _STLP_NOTHROW default value
|
|
is now throw() when exception support is activated. Compilers not
|
|
supporting is should define this macro as empty. Configuration files
|
|
of compilers already managing this feature have been updated.
|
|
|
|
2007-01-19 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/stl/config/host.h: define one of __SunOS_5_x macro
|
|
for gcc (during installation?) on Solaris; note, that Solaris
|
|
system may has patch with MATH_F and MATH_L functions.
|
|
|
|
* stlport/stl/config/_solaris.h: reminder for __SunOS_5_x
|
|
macro definition for gcc; turn on/off MATH_F/MATH_L functions
|
|
present: see beacon that depends upon Solaris version and patch present,
|
|
as defined by SunPro compilers or in host.h. Thanks to Graham Reed.
|
|
|
|
* stlport/stl/config/_sunprocc.h: if use new-c-headers, SunPro
|
|
include iso/stdlib_iso.h instead of stdlib.h; note, that this exclude
|
|
usage of long double, long long, etc. functions, even when ones present
|
|
in OS. Thanks to Graham Reed. Bugreport 1630943.
|
|
|
|
2007-01-18 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_num_put.c: Add cast to avoid gcc warning.
|
|
|
|
* stlport/stl/_pair.h, _construct.h: Add _STLP_NO_MOVE_SEMANTIC
|
|
before inclusion of _move_construct_fwk.h.
|
|
|
|
* stlport/stl/_istream.c: Removed useless cast to num_get facet.
|
|
|
|
* src/system_api.c: Move macro check to at least include math.h
|
|
in order to avoid an empty translation unit which can generate
|
|
compilation warning.
|
|
|
|
2007-01-17 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/stl/_cmath.h: move hypot in global namespace for SunSoft;
|
|
suggested by Graham Reed.
|
|
|
|
2007-01-15 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* test/unit/locale_test.cpp: Upgrade Russian currency abbreviation
|
|
'RUR' to 'RUB'. Thanks Tiziano Muller, bug report 1634886.
|
|
|
|
* test/unit/cstring_test.cpp: Fix test to avoid some gcc warnings.
|
|
|
|
* stlport/stl/config/_gcc.h: Add _STLP_NOTHROW definition for
|
|
this compiler for C++ Standard compliancy. It might also help the
|
|
compiler not to emit false warning about potential use of
|
|
uninitialized variable (-Wall mode).
|
|
|
|
* build/lib/Makefile.inc, src/system_api.h, system_api.c: New source
|
|
file used for platform exposing some features only to C compiler. for
|
|
the moment used under Hp Unix for GNU compiler access to platform
|
|
isfinite, isnan and isinf functions.
|
|
|
|
* src/num_put_float.cpp: Replace a lot of unofficial Hp Unix specific
|
|
code to access functions isfinite, isinf or isnan. Replaced by
|
|
system_api.h.
|
|
|
|
* build/Makefiles/gmake/hp-ux/sys.mak: Looks like install command
|
|
on this platform is rather exotic, use cp instead.
|
|
|
|
2007-01-14 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/config/_system.h: Add __SUNPRO_C macro check to
|
|
detect Sun Pro C compiler. Thanks Graham Reed bug report 1630916.
|
|
|
|
* stlport/stl/_cstdlib.h: Add __SUNPRO_CC macro check before
|
|
defining abs(long) and div(long, long) as Sun pro already
|
|
defined them. Thanks Graham Reed bug report 1630972.
|
|
|
|
2007-01-07 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl: Add _STLP_NO_MOVE_SEMANTIC macro checks to
|
|
completely hide move semantic framework when not necessary.
|
|
|
|
2007-01-05 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* test/unit/bitset_test.cpp: Check _STLP_NON_TYPE_TMPL_PARAM_BUG
|
|
macro before doing tests that depends on it.
|
|
|
|
* stlport/stl/_list.h: Add assertion to signal potential stack
|
|
overflow in recurssive calls to list::insert and list::splice thanks
|
|
Aleksey Sanin idear.
|
|
|
|
* build/Makefiles/gmake/lib/gcc.mak: Removed obsolete -C ld option
|
|
on Hp Unix platform.
|
|
|
|
* stlport/stl/_mbstate_t.h: Attempt to fix STLport config for compilers
|
|
coming with a native lib defining mbstate_t only for C++ compilers.
|
|
For those compilers native mbstate_t definition won't be used for
|
|
the moment, STLport simply grant a dummy definition in C. Test
|
|
under Hp Unix has shown that it works.
|
|
|
|
2006-12-29 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/iostream.cpp, stlport/stdio.h, stl/_cstdio.h: Eric Sanford
|
|
patch to move a Borland workaround from cstdio to stdio.h.
|
|
|
|
* stlport/stl/debug: Generalize _STLP_NO_MOVE_SEMANTIC check
|
|
to hide move constructors like already done in non debug
|
|
implementation.
|
|
|
|
* stlport/stl/config/_msvc.h: Restore move semantic for MSVC6. AFAIR
|
|
only MSVC .Net 2002 had problem with it.
|
|
|
|
* test/unit/strstream_test.cpp: Made the tests for _STLP_LONG_LONG
|
|
a little bit more portable.
|
|
|
|
2006-12-20 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* test/unit/strstream_test.cpp: New test case for sourceforge
|
|
bug report 1615554. Not confirm for the moment.
|
|
|
|
* test/unit/math_aux.h, mvctor_test.h, string_test.cpp: Fixes
|
|
to correctly take into account _STLP_USE_NAMESPACES.
|
|
|
|
2006-12-19 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* test/unit/bvector_test.cpp: Fix macro check for namespace
|
|
support.
|
|
|
|
* test/unit/num_put_get_test.cpp: disable warning about float
|
|
overflow for MSVC.
|
|
|
|
2006-12-17 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* test/unit: One more cleanup for compilers not supporting the
|
|
namespace feature. This time we avoid namespace specification when
|
|
doing template specialisation of Standard functor like less or
|
|
allocator.
|
|
|
|
2006-12-15 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/config/_dm.h, test/unit/map_test.cpp: Eric Sanford
|
|
patch for DMC.
|
|
|
|
2006-12-13 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* test/unit/test_main.cpp: Clean up use of namespace feature.
|
|
|
|
* test/unit: Clean up use of std namespace or ignore tests if
|
|
necessary.
|
|
|
|
2006-12-13 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport, src: Orphan code removed [Symantec without maintainance a long time;
|
|
gcc prior 2.95 and 2.96 can't work with current code in any case;
|
|
NetWare unsupported too]
|
|
|
|
2006-12-13 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/config/feature.h: Fix and generalize the mutable
|
|
workaround for compilers missing this feature. Replace
|
|
_STLP_ASSIGN_MUTABLE with _STLP_MUTABLE macro that is more flexible
|
|
as not limited to assignment.
|
|
|
|
* stlport/stl/_istreambuf_iterator.h, _stream_iterator.h, _string_sum.h:
|
|
Use _STLP_MUTABLE rather than manually handle _STLP_NEED_MUTABLE macro.
|
|
|
|
* stlport/stl/_sstream.h: Removed useless mutable qualifier for
|
|
basic_stringbuf _M_str member.
|
|
|
|
* test/unit/bind_test.cpp: Use STLport mutable workaround.
|
|
|
|
* src/message_facets.h, facets_byname.cpp: Limit use of the mutable
|
|
qualified to one member in _Message_Impl class and use _STLP_MUTABLE
|
|
in class implementation.
|
|
|
|
2006-12-11 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* test/unit/mvctor_test.cpp: Split in 2 other translation unit
|
|
mvctor_declaration_test.cpp and mvctor_traits_test.cpp without
|
|
impacting number of test case. It helps DMC to perform a correct
|
|
link.
|
|
|
|
* stlport/stl/type_manips.h: Check _STLP_DONT_USE_PRIV_NAMESPACE before
|
|
importing __true_type and __false_type in private namespace.
|
|
|
|
* stlport/stl/config/_dec.h, _apcc.h: Removed references to unused
|
|
_STLP_HAS_NO_NEW_IOSTREAMS macro.
|
|
|
|
2006-12-11 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* src/fstream.cpp, stlport/stl/_fstream.h: non-template friend function
|
|
of template class isn't good idea. Fixed.
|
|
|
|
2006-12-09 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_range_errors.h: To complete 2006-12-04 modification
|
|
fix inclusion to access to string definition. In normal mode we include
|
|
stlport/stl/_string.h rather than string header. There is a special case
|
|
however if cumulating _STLP_NO_IOSTREAMS, _STLP_DONT_REDEFINE_STD and
|
|
_STLP_WHOLE_NATIVE_STD then functions defined in _range_errors.h will
|
|
throw exception from std namespace rather than from stlport.
|
|
|
|
* stlport/stl/config/user_config.h: Documented above modification.
|
|
|
|
* stlport/stl/config/features.h: Modify _STLP_VENDOR_STD definition. This
|
|
internal macro do not have to use __std_alias, within STLport code std is
|
|
not a macro and can be used as the vendor namespace.
|
|
|
|
2006-12-07 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_algobase.c, config/features.h: Removed unused
|
|
_STLP_MPW_EXTRA_CONST macro.
|
|
|
|
* stlport/stl/config/_watcom.h, _dm.h, feature.h: Add new
|
|
_STLP_NO_CONST_IN_PAIR macro config to avoid instanciation of
|
|
pair with a const qualified type. _STLP_CONST is defined based
|
|
on _STLP_NO_CONST_IN_PAIR.
|
|
|
|
* stlport/stl/_map.h, _hash_map.h, _unordered_map.h: Add use of
|
|
_STLP_CONST.
|
|
|
|
* stlport/stl/_num_put.c: Introduce __do_put_bool function containing
|
|
all codes to render bool values. We do not use anymore
|
|
__copy_integer_and_fill function that was difficult to instanciate for
|
|
Open Watcom compiler. Moreover this function was not really adapted for
|
|
being use in this context, code duplication is very limitated and
|
|
absolute number of lines of code hasn't been modified.
|
|
|
|
* stlport/stl/_fstream.h, src/fstream.cpp: Removed useless declaration
|
|
of template specialization for _Noconv_input _Noconv_output and _Underflow.
|
|
_Underflow template specialization now use a function __Underflow_doit
|
|
to avoid the complex syntax of the implementation of a member method of
|
|
a template class specialization in fstream.cpp.
|
|
|
|
* src/message_facets.h: Add missing allocator parameter in hash_map
|
|
instanciation, required for compiler lacking default template parameters
|
|
support.
|
|
|
|
* src/num_get_float.cpp: Add unsigned 64 bits support for Open Watcom.
|
|
|
|
* stlport/stl/_cmath.h, _cstdlib.h: Signal that Open Watcom has already
|
|
all math functions C++ overloads in global namespace.
|
|
|
|
* Cleanup of all workarounds for MSVC before version 6.
|
|
|
|
* build/Makefiles/gmake/gcc.mak: Hide -fvisibility option for windows as
|
|
in this context we are not able to correctly detect gcc version in use.
|
|
|
|
* stlport/stl/_fstream.h: Reorder member variables in _Filebuf_base
|
|
to avoid gcc warning.
|
|
|
|
2006-12-06 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* STLport 5.1.0 released based on STLPORT_5_1 branch revision 2750.
|
|
|
|
* Merge STLPORT_5_1 branch from revision 2711 to 2749.
|
|
|
|
* stlport/stl/config/_hpux.h: Specify that Hp Unix is a unix platform
|
|
_STLP_UNIX. This platform was already recognise as a unix platform
|
|
but it is more clear to put it in Hp Unix configuration file.
|
|
|
|
* src/num_put_float.cpp: Limit Hp Unix workaround to access isfinite
|
|
isnan and some other system functions to the gcc compiler, aCC has
|
|
natively access to it. Tests done by Boris Gubenko.
|
|
|
|
2006-12-04 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/fstream, iomanip, ios, iosfwd, iostream, istream, locale,
|
|
ostream, sstream, streambuf, strstream: Allow use of iostream headers
|
|
even when _STLP_NO_IOSTREAMS is defined if using _STLP_WHOLE_NATIVE_STD.
|
|
|
|
2006-12-02 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_string.c: Use find_end algo rather than internal
|
|
__find_end function, find_end contains workaround for limited
|
|
compilers.
|
|
|
|
* stlport/stl/_algo.c: Avoid a useless default value for last
|
|
parameter of __stable_partition_aux_aux function.
|
|
|
|
* src/num_put.cpp: In __insert_grouping_aux, use template parameter
|
|
Str to get iterator definition rather than getting definition from
|
|
basic_string.
|
|
|
|
* stlport/stl/_num_get.c, _num_put.c: Complete basic_string
|
|
definition for compiler not supporting default template parameters.
|
|
|
|
* stlport/cmath, cstdio, typeinfo: Modified to be reentrant once.
|
|
|
|
* stlport/stl/_alloc.h, _bvector.h, _construct.h, _deque.h,
|
|
_hash_map.h, _hash_set.h, _hashtable.h, _list.h, _map.h, _pair.h,
|
|
_queue.h, _rope.h, _set.h, _slist.h, _stack.h, _string.h,
|
|
_string_base.h, _string_workaround.h, _tree.h, _unordered_map.h,
|
|
_unordered_set.h, _vector.h: Now _STLP_NO_MOVE_SEMANTIC hide all
|
|
calls to _AsMoveSource function.
|
|
|
|
2006-11-30 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* test/unit/stack_allocator.h: Fixed StackAllocator implementation
|
|
for Borland and DMC that required a workaround.
|
|
|
|
* stlport/stl/config/_gcc.h: Starting with gcc 4, use visibility
|
|
feature.
|
|
|
|
* build/Makefiles/gmake/gcc.mak: Starting with gcc 4, add
|
|
-fvisibility=hidden compilation option.
|
|
|
|
2006-11-28 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_alloc.h: Avoid explicit instanciation of template
|
|
function _AsMoveSource. Replace internal allocator::allocate function
|
|
with _M_allocate to avoid use of overloading.
|
|
|
|
* stlport/utility: Fix header reentrancy.
|
|
|
|
* stlport/stl/_ptrs_specialize.h: Fixed instanciation of
|
|
__type_traits_aux.
|
|
|
|
2006-11-25 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/climits, iosfwd, mem.h, string.h, typeinfo.h, wchar.h,
|
|
stl/char_traits:
|
|
Eric Sanford patch to complete use of include_next with Borland
|
|
compilers.
|
|
|
|
* stlport/using/cstring: Fix macro check for Borland compiler.
|
|
|
|
* test/unit/locale_test.cpp: Add test for Borland _fpclass.
|
|
|
|
* src/num_put_float.cpp: Fix potential error in _Stl_is_neg_nan
|
|
for Borland compiler after 0x581.
|
|
|
|
2006-11-24 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* Eric Sanford patch for DMC compiler, allow access to associative
|
|
containers extension.
|
|
|
|
* stlport/typeinfo.h, exception: Workaround for DMC that force
|
|
inclusion of typeinfo.h at the begining of all translation units.
|
|
|
|
2006-11-23 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* test/unit/cstring_test.cpp: New test case to check import of all
|
|
C functions from string.h in STLport namespace.
|
|
|
|
* stlport/using/cstring: Fix import of strcmp and strcpy for Borland.
|
|
|
|
2006-11-20 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/iosfwd, stl/type_manips.h, config/_bc.h, pointers/_tools.h:
|
|
Patch from Eric Sanford to remove useless Borland workaround for
|
|
pointer specialisation and use include_next feature for versions after
|
|
0x580.
|
|
|
|
2006-11-20 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* src/monetary.cpp: template header not allowed in member definition
|
|
of explicitly specialized class
|
|
|
|
2006-11-19 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_ios_base.h: Replace wrong external utility inclusion
|
|
with internal _pair.h header.
|
|
|
|
2006-11-17 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/config/features.h: Modification of the static constant
|
|
workaround implementation to use something similar to the boost
|
|
workaround. _STLP_STATIC_CONST_INIT_BUG macro change definition of
|
|
newly introduce _STLP_STATIC_CONSTANT macro which use an enum or a
|
|
real static const variable. Moreover the new
|
|
_STLP_NO_STATIC_CONST_DEFINITION will hide static constant definition
|
|
when defined.
|
|
|
|
* src/ctype.cpp, ios.cpp, locale.cpp: Add check for
|
|
_STLP_NO_STATIC_CONST_DEFITION.
|
|
|
|
* src/monetary.cpp: Add intl static constant definitions.
|
|
|
|
* stlport/stl/_ctype.h, _ios_base.h, _limits.h, _monetary.h: Use
|
|
_STLP_STATIC_CONSTANT.
|
|
|
|
* stlport/stl/_limits.h: Limits a workaround for long long and unsigned
|
|
long long types that used to be applied for gcc after 2.96 up to version
|
|
3.0.
|
|
|
|
* stlport/stl/_limits.c: Clean all static constant values duplicated from
|
|
_limits.h that was not used in this file. Add static constant definition
|
|
necessary for long long and unsigned long long types for gcc between 2.96
|
|
and 3.0 (see above).
|
|
|
|
* stlport/stl/debug/_string.h: Removed npos static constant definition
|
|
that is only necessary in stlport/stl/_string.c.
|
|
|
|
* stlport/stl/config/_msvc.h: Use real static constant starting with
|
|
VS .Net 2003 (_MSC_VER >= 1310).
|
|
|
|
* test/unit/limits_test.cpp: Modified test to reveal potentially missing
|
|
static constant definitions.
|
|
|
|
2006-11-13 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/config/stl_confix.h: Add some STLport config options based
|
|
on EDG version information using boost common_edg.hpp content.
|
|
|
|
* stlport/stl/: Patch from Eric Sanford for Borland compiler. Allow
|
|
associative container extension (member methods) and use of pointer
|
|
specialization.
|
|
|
|
2006-11-07 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/config/_hpacc.h, stl_confix.h: Thanks to additional info
|
|
from Boris Gubenko STLport now check __EDG_VERSION__ to detect EDG based
|
|
compilers. It use this macro to activate include_next feature. Moreover
|
|
a workaround has been added for aCC6 that was not defining __EDG_VERSION__
|
|
as expected. _hpacc.h has also been cleaned of obsolete config.
|
|
|
|
2006-11-07 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport: All C++ Standard headers are now using the same schema. If
|
|
included from outside (_STLP_OUTERMOST_HEADER_ID not defined) it first
|
|
included internal header (in stl folder) and then, if _STLP_WHOLE_NATIVE
|
|
is defined, include the equivalent native Standard header. If included
|
|
from inside, simply forward to native header include. This schema has
|
|
several advantages:
|
|
- Less dependancy on native library headers interdependancy.
|
|
- Less code included as STLport code is only exposed if headers are
|
|
included from the outside.
|
|
- Restore _STLP_WHOLE_NATIVE_STD configuration (tested with gcc, msvc, bcc)
|
|
The condition for this schema to work is that STLport never include Standard
|
|
headers internaly when it wants to access some STLport code.
|
|
|
|
* stlport/stl/_iomanip.h: New file containing all STLport code that used
|
|
to be in stlport/iomanip.
|
|
|
|
* stlport/stl/_complex.h, _rope.h, _stream_iterator.h, _string_fwd.h: Use
|
|
stl/_iomanip.h rather than iomanip.
|
|
|
|
* stlport/stl/_rope.c: Use stl/_ostream.h and stl/_istream.h rather than
|
|
iostream.
|
|
|
|
* stlport/stl/config/_kai.h, _msvc.h, feature.h: _STLP_MINIMUM_IMPORT_STD
|
|
macro removed, it was only used in vector header to avoid include of
|
|
native vector header even when _STLP_IMPORT_VENDOR_STD was defined. MSVC6
|
|
used to define it but removing it hasn't make compilation failed when
|
|
importing all native std stuff. Looks like it was a workaround necessary
|
|
when STLport was not as clean as it is now or for the former wrapper mode
|
|
that has been removed.
|
|
|
|
* stlport/stl/config/features.h: Add a #error to signal that
|
|
_STLP_WHOLE_NATIVE_STD and _STLP_NO_OWN_NAMESPACE are incompatible
|
|
options.
|
|
|
|
* stlport/stl/config/stl_confix.h
|
|
|
|
2006-11-05 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_sstream.h, _sstream.c: Add 2 helper functions _S_start and
|
|
_S_finish to hide complexity of code required to have read access to the
|
|
aggregated string instance internal buffer. Those 2 functions help keeping
|
|
basic_stringbuf implementation simple without requiring a friend
|
|
declaration in basic_string class and use of inheritance in _STLP_DEBUG
|
|
mode between the debug string and the non debug one.
|
|
|
|
* stlport/stl/_string.h, debug/_string.h, _string_sum_methods.h: Removed
|
|
friend declaration and inheritance (see above). This also avoids to restore
|
|
some workarounds that used to be necessary when _STLP_DEBUG mode was using
|
|
inheritance in all the debug containers.
|
|
|
|
2006-11-04 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* src/num_put_float.cpp: According C Standard number of digits in the
|
|
exponent part of scientific output should be at least 2, C99 even says
|
|
that we shouldn't add zeros if there are more than 3 significant digits.
|
|
|
|
* test/unit/complete_digits.h: Modified according to above rules.
|
|
|
|
2006-11-02 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* Repository: Merged STLPORT_5_1_RC3 tag changes up to r2771 into the trunk.
|
|
Now trunk is really in sync with STLPORT_5_1 branch.
|
|
|
|
* etc/ChangeLog: Now contains only trunk modif, 5.1 changes are in
|
|
ChangeLog-5.1.
|
|
|
|
2006-11-02 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* Repository: merged from 5.1 branch.
|
|
|
|
2006-11-01 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_stdexcept_base.h: Patch from Uli to simplify
|
|
__Named_Exception implementation.
|
|
|
|
2006-10-31 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* build/test/unit/Makefile.inc: Restore STLport version information that
|
|
had mysteriously disappeared in a previous modification.
|
|
|
|
* stlport/stl/_num_put.c: Disable warning for MSVC that signal problem in
|
|
cast from pointer to unsigned long.
|
|
|
|
* src/num_put_float.cpp: Fix buffer overflow introduce by a previous
|
|
modification. Now STLport appends '0' so that floating point scientific
|
|
output has a constant size. MAXESIZ renamed in MAXEDIGITS to make macro
|
|
signification more obvious.
|
|
|
|
* test/unit/complete_digits.h: New file containing the function giving
|
|
platform dependant number of digits in STLport scientific output of
|
|
floating point types.
|
|
|
|
* test/unit/num_put_get_test.cpp, locale_test.cpp: Adapt tests to latest
|
|
STLport modifications.
|
|
|
|
2006-10-30 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport/stl/_stlport_version.h: Upgrade STLport version information
|
|
to reflect built libraries.
|
|
|
|
2006-10-24 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/stl/config/host.h, _linux.h: force usage malloc_alloc as default
|
|
allocator on systems with glibc 2.3.x and later due to better performance.
|
|
|
|
* stlport/stl/_alloc.h: remove _STLP_MALLOC_USABLE_SIZE dependant
|
|
code---not really used.
|
|
|
|
* stlport/stl/_alloc.c: remove recalculation of __n [Francois was right];
|
|
remove _STLP_MALLOC_USABLE_SIZE dependant code---not really used.
|
|
|
|
* src/allocators.cpp: remove additional __malloc_alloc_impl class---not
|
|
required; add mutex lock for custom __malloc_alloc oom handler change/use
|
|
[in multi-threaded environment].
|
|
|
|
2006-10-16 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/stl/c_locale.h, _mbstate_t.h, src/c_locale.h, c_locale.c:
|
|
merge changes from STLPORT_5_1 branch, see 2006-10-12 [Francois Dumont];
|
|
may be problems on Solaris, and FreeBSD---more check required.
|
|
|
|
2006-10-13 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* Repository: merge changes [not all] 2006-10-12 from STLPORT_5_1 branch
|
|
|
|
2006-10-12 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* Repository: merge changes from STLPORT_5_1 branch (records
|
|
from 2006-10-06 to 2006-10-04).
|
|
|
|
* stlport/stl/_alloc.c: Hmm, looks like deallocation size in
|
|
2006-10-06 is wrong.
|
|
|
|
* stlport/stl/_num_put.c: print pointer as in fix width form, and
|
|
with base 0x, independent, zero pointer or not.
|
|
|
|
* test/unit/num_put_get_test.cpp: test for issue above.
|
|
|
|
* test/unit/string_test.cpp: test for overloaded operators
|
|
and temporary string; inspired by problems with some compilers.
|
|
|
|
* stlport/stl/_mbstate_t.h: revert back changes from STLPORT_5_1 branch;
|
|
mbstate_t couple with wchar closely, and sometimes has compex and implicit
|
|
dependance; include wchar.h first required!
|
|
|
|
2006-09-12 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* test/unit/string_test.cpp: add test for bug report #1541499,
|
|
problem not detected; looks like gcc 4.1.1 can compile te_tmp test
|
|
correctly [sum operations under class derived from string, with
|
|
_STLP_USE_TEMPLATE_EXPRESSION].
|
|
|
|
2006-09-08 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* stlport/stl/_sstream.h, _sstream.c: remove double buffering
|
|
on write only underlying string as buffer. Use knowlege about
|
|
string implementation, this should improve performance, and,
|
|
at least simplify code and avoid logic that already present in
|
|
string implementation.
|
|
|
|
* stlport/stl/_string_base.h: basic_streambuf is friend, to access
|
|
to internal function (access to storage pointers).
|
|
|
|
* stlport/stl/debug/_string.h, _string_sum_methods.h: change usage
|
|
of 'non-debug string', from 'use of' relation to 'inherit' releation.
|
|
Useful for access basic_streambuf to string storage in _STLP_DEBUG
|
|
mode too.
|
|
|
|
* test/unit/sstream_test.cpp: test for tellp call; change test
|
|
with inited ostringstream in accordance with another Standard
|
|
treatment.
|
|
|
|
* stlport/stl/_streambuf.h: remove ancient code, that can't
|
|
work with present code in any case.
|
|
|
|
* src/c_locale.c: ditto
|
|
|
|
* build/lib/Makefile.inc: bump minor version (5.2.0)
|
|
|
|
2006-07-27 Francois Dumont <dums@users.sourceforge.net>
|
|
|
|
* stlport: Adopt include_next GNU extension for the following reasons:
|
|
- Standard headers do not have to be categorised anymore to be
|
|
included, we could have a wrong include order if headers are not
|
|
correctly categorized.
|
|
- Package builder can use any folder structure they want for gcc,
|
|
STLport won't have to be customized anymore.
|
|
- Make STLport usable with other library that also use the shadow
|
|
header trick to modify native headers content.
|
|
|
|
* stlport/stl/config/_gcc.h: Add definition of _STLP_HAS_INCLUDE_NEXT
|
|
macro to signal that this compiler preprocessor support include_next.
|
|
Removed all definition of native headers path that are now useless.
|
|
|
|
2006-03-27 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* src/num_put_float.cpp: use buffers that at least longer
|
|
than maximal double [or long double] exponent, so avoid
|
|
potential vulnerabilities; this allow to read really long
|
|
fix-float numbers [with lost of significant digits, of course].
|
|
|
|
* test/unit/floatio_test.cpp: add test for issue above
|
|
|
|
2006-03-23 Petr Ovtchenkov <complement@users.sourceforge.net>
|
|
|
|
* src/cxa.c: remove wrong exclusion of lock for Solaris.
|