| 5.2: |
| |
| - Major modifications: |
| |
| * Use of #include_next to access native platform/compiler headers when the |
| preprocessor support it. Enhance STLport portability as native header path do |
| not have to be adapted each time the header structure is modified. |
| |
| * Yet a modification of the include schema in all C++ Standard headers. Now |
| _STLP_WHOLE_NATIVE_STD mode works as expected, used in conjonction with |
| _STLP_DONT_REDEFINE_STD it is possible to use STLport in stlport namespace at |
| the same time as using native library in std namespace. |
| |
| * Use of the gcc visibility feature for gcc versions after 4.0. |
| |
| * For builds under Windows, STLport now adapt to the PSDK used to build it. It |
| should be the same as the one used when building an application using the |
| STLport libs. A compatibility detection mecanism has been implemented in order |
| to report not homogeneous build environment with a link error rather than undefined |
| runtime error. |
| |
| - Enhancements: |
| |
| * Use of malloc based allocator on system having GlibC 2.3 and later, keep |
| node allocator for others. |
| |
| * Delay instanciation of type traits type in vector and deque implementation to |
| be able to use some of the nested types like iterator even if type used to |
| instanciate the container is not completely defined. |
| |
| * Container pointer specialization feature now works even with incomplete types |
| thanks to use of partial template specialization. |
| |
| 5.1: |
| |
| - Major modifications |
| |
| * Folder architecture: All configuration files are now in stlport/stl/config folder. |
| stlport/stl_user_config.h renamed and moved as stlport/stl/config/user_config.h. |
| stlport/stl/_site_config.h renamed and moved as stlport/stl/config/hosts.h. |
| STLport configuration now also try to seperate platform configuration from compiler |
| one. |
| |
| * Allocators implementation is in src folder to enhance encapsulation. Default |
| allocator when using STLport without building it (_STLP_NO_IOSTREAMS) is the simple |
| new/delete based allocator, node allocator is the default when building the lib. |
| |
| * Access to native headers has been modified to make STLport less dependant on |
| native headers internal includes, should improve portability. |
| |
| * Segregation of headers has been improved. You might have to add now missing |
| functional or algorithm Standard headers include in your code. |
| |
| - Enhancements |
| |
| * Support enhancements: |
| - Borland compilers starting with the free one (5.5.1) |
| - HP aC++/ANSI C B3910B A.06.06 |
| - Visual Studio 2005 for Windows CE |
| - Use of intrinsic type traits support of Visual Studio 2005 |
| |
| * Improved meta programming techniques especially in uninitialized_* algorithms. |
| If you need a vector of null pointer prefer to write 'vector<void*> v(10)' rather |
| than 'vector<void*> v(10, (void*)0)'. |
| |
| * Fully functional pointer specialization feature (_STLP_USE_PTR_SPECIALIZATIONS). |
| |
| * Extension of template search methods in associative and hashed container has |
| been completed. |
| |
| * STL safe mode: Now detect badly implemented strict weak ordering functors, assert |
| if a < b && b < a. Same for equivalent functor used in hash container implementation, |
| assert if a <=> b but !(b <=> a). |
| |
| * Improved locale creation delay on Windows platform. |
| |
| * STL containers implementation now correctly handle allocators with state. This kind |
| of allocator has to overload swap method if any specific action has to be made when |
| swaping 2 instances. |
| |
| * STLport is ready for safe string functions *_s (_STLP_USE_SAFE_STRING_FUNCTIONS) |
| |
| * Many bug fixes, see etc/ChangeLog-5.1. |
| |
| 5.0: |
| |
| - Major modifications |
| |
| * No more wrapper mode: you can use STLport iostreams or no iostreams |
| at all. |
| |
| * _STLP_NO_CUSTOM_IO now also hide basic_string implementation |
| |
| * internal namespace schema has been modified, see doc folder for additionnal |
| informations. |
| |
| - Enhancements |
| |
| * Support of many modern C++ compilers and platforms |
| - gcc 3.4.0 and later |
| - MSVC .Net 2002, 2003 and MSVC 2005 Beta |
| - Windows CE |
| see build/test/unit/STATUS for a complete list of tested platforms/compilers |
| |
| * Move semantic: vector or deque of any other STL containers are using |
| move semantic when resized or modified rather than copy. |
| |
| * New checks in safe STL mode like null pointer or check of iterator range |
| pass to container constructors. |
| |
| * Expression template for string concatenation operations (available |
| throught the _STLP_USE_TEMPLATE_EXPRESSION config option) |
| |
| * Implementation of the short string optimization trick, basic_string have |
| a small static buffer in this case. |
| |
| * STL containers vector, deque, list and slist pointer specialization to |
| limit code bloats (see _STLP_USE_PTR_SPECIALIZATIONS on config file) |
| |
| * Use of boost type_traits rather than internal equivalent when requested |
| (see _STLP_USE_BOOST_SUPPORT in config file) |
| |
| * set/multiset, or map/multimap iterators cannot be compared anymore. |
| |
| * unordered_set, unordered_multiset, unordered_map, unordered_multimap hash |
| containers implementation specified in the TR1 document. |
| |
| * Thanks to the _STLP_LEAKS_PEDANTIC config option you can ask STLport to |
| clean its memory pool before being unloaded, useful to only detect real |
| memory leak problems. |
| |
| * Creation of configuration scripts to make STLport configuration easier. |
| |
| * Improvment of some algorithm like search_n or stable_sort. |
| |
| * Ported to 64 bits platforms. |
| |
| * Large file ( > 4 Go) stream support on Win32 platform. |