| 1 |
5.2: |
| 2 |
|
| 3 |
- Major modifications: |
| 4 |
|
| 5 |
* Use of #include_next to access native platform/compiler headers when the |
| 6 |
preprocessor support it. Enhance STLport portability as native header path do |
| 7 |
not have to be adapted each time the header structure is modified. |
| 8 |
|
| 9 |
* Yet a modification of the include schema in all C++ Standard headers. Now |
| 10 |
_STLP_WHOLE_NATIVE_STD mode works as expected, used in conjonction with |
| 11 |
_STLP_DONT_REDEFINE_STD it is possible to use STLport in stlport namespace at |
| 12 |
the same time as using native library in std namespace. |
| 13 |
|
| 14 |
* Use of the gcc visibility feature for gcc versions after 4.0. |
| 15 |
|
| 16 |
* For builds under Windows, STLport now adapt to the PSDK used to build it. It |
| 17 |
should be the same as the one used when building an application using the |
| 18 |
STLport libs. A compatibility detection mecanism has been implemented in order |
| 19 |
to report not homogeneous build environment with a link error rather than undefined |
| 20 |
runtime error. |
| 21 |
|
| 22 |
- Enhancements: |
| 23 |
|
| 24 |
* Use of malloc based allocator on system having GlibC 2.3 and later, keep |
| 25 |
node allocator for others. |
| 26 |
|
| 27 |
* Delay instanciation of type traits type in vector and deque implementation to |
| 28 |
be able to use some of the nested types like iterator even if type used to |
| 29 |
instanciate the container is not completely defined. |
| 30 |
|
| 31 |
* Container pointer specialization feature now works even with incomplete types |
| 32 |
thanks to use of partial template specialization. |
| 33 |
|
| 34 |
5.1: |
| 35 |
|
| 36 |
- Major modifications |
| 37 |
|
| 38 |
* Folder architecture: All configuration files are now in stlport/stl/config folder. |
| 39 |
stlport/stl_user_config.h renamed and moved as stlport/stl/config/user_config.h. |
| 40 |
stlport/stl/_site_config.h renamed and moved as stlport/stl/config/hosts.h. |
| 41 |
STLport configuration now also try to seperate platform configuration from compiler |
| 42 |
one. |
| 43 |
|
| 44 |
* Allocators implementation is in src folder to enhance encapsulation. Default |
| 45 |
allocator when using STLport without building it (_STLP_NO_IOSTREAMS) is the simple |
| 46 |
new/delete based allocator, node allocator is the default when building the lib. |
| 47 |
|
| 48 |
* Access to native headers has been modified to make STLport less dependant on |
| 49 |
native headers internal includes, should improve portability. |
| 50 |
|
| 51 |
* Segregation of headers has been improved. You might have to add now missing |
| 52 |
functional or algorithm Standard headers include in your code. |
| 53 |
|
| 54 |
- Enhancements |
| 55 |
|
| 56 |
* Support enhancements: |
| 57 |
- Borland compilers starting with the free one (5.5.1) |
| 58 |
- HP aC++/ANSI C B3910B A.06.06 |
| 59 |
- Visual Studio 2005 for Windows CE |
| 60 |
- Use of intrinsic type traits support of Visual Studio 2005 |
| 61 |
|
| 62 |
* Improved meta programming techniques especially in uninitialized_* algorithms. |
| 63 |
If you need a vector of null pointer prefer to write 'vector<void*> v(10)' rather |
| 64 |
than 'vector<void*> v(10, (void*)0)'. |
| 65 |
|
| 66 |
* Fully functional pointer specialization feature (_STLP_USE_PTR_SPECIALIZATIONS). |
| 67 |
|
| 68 |
* Extension of template search methods in associative and hashed container has |
| 69 |
been completed. |
| 70 |
|
| 71 |
* STL safe mode: Now detect badly implemented strict weak ordering functors, assert |
| 72 |
if a < b && b < a. Same for equivalent functor used in hash container implementation, |
| 73 |
assert if a <=> b but !(b <=> a). |
| 74 |
|
| 75 |
* Improved locale creation delay on Windows platform. |
| 76 |
|
| 77 |
* STL containers implementation now correctly handle allocators with state. This kind |
| 78 |
of allocator has to overload swap method if any specific action has to be made when |
| 79 |
swaping 2 instances. |
| 80 |
|
| 81 |
* STLport is ready for safe string functions *_s (_STLP_USE_SAFE_STRING_FUNCTIONS) |
| 82 |
|
| 83 |
* Many bug fixes, see etc/ChangeLog-5.1. |
| 84 |
|
| 85 |
5.0: |
| 86 |
|
| 87 |
- Major modifications |
| 88 |
|
| 89 |
* No more wrapper mode: you can use STLport iostreams or no iostreams |
| 90 |
at all. |
| 91 |
|
| 92 |
* _STLP_NO_CUSTOM_IO now also hide basic_string implementation |
| 93 |
|
| 94 |
* internal namespace schema has been modified, see doc folder for additionnal |
| 95 |
informations. |
| 96 |
|
| 97 |
- Enhancements |
| 98 |
|
| 99 |
* Support of many modern C++ compilers and platforms |
| 100 |
- gcc 3.4.0 and later |
| 101 |
- MSVC .Net 2002, 2003 and MSVC 2005 Beta |
| 102 |
- Windows CE |
| 103 |
see build/test/unit/STATUS for a complete list of tested platforms/compilers |
| 104 |
|
| 105 |
* Move semantic: vector or deque of any other STL containers are using |
| 106 |
move semantic when resized or modified rather than copy. |
| 107 |
|
| 108 |
* New checks in safe STL mode like null pointer or check of iterator range |
| 109 |
pass to container constructors. |
| 110 |
|
| 111 |
* Expression template for string concatenation operations (available |
| 112 |
throught the _STLP_USE_TEMPLATE_EXPRESSION config option) |
| 113 |
|
| 114 |
* Implementation of the short string optimization trick, basic_string have |
| 115 |
a small static buffer in this case. |
| 116 |
|
| 117 |
* STL containers vector, deque, list and slist pointer specialization to |
| 118 |
limit code bloats (see _STLP_USE_PTR_SPECIALIZATIONS on config file) |
| 119 |
|
| 120 |
* Use of boost type_traits rather than internal equivalent when requested |
| 121 |
(see _STLP_USE_BOOST_SUPPORT in config file) |
| 122 |
|
| 123 |
* set/multiset, or map/multimap iterators cannot be compared anymore. |
| 124 |
|
| 125 |
* unordered_set, unordered_multiset, unordered_map, unordered_multimap hash |
| 126 |
containers implementation specified in the TR1 document. |
| 127 |
|
| 128 |
* Thanks to the _STLP_LEAKS_PEDANTIC config option you can ask STLport to |
| 129 |
clean its memory pool before being unloaded, useful to only detect real |
| 130 |
memory leak problems. |
| 131 |
|
| 132 |
* Creation of configuration scripts to make STLport configuration easier. |
| 133 |
|
| 134 |
* Improvment of some algorithm like search_n or stable_sort. |
| 135 |
|
| 136 |
* Ported to 64 bits platforms. |
| 137 |
|
| 138 |
* Large file ( > 4 Go) stream support on Win32 platform. |