📄 changelog
字号:
0.2.2- Fixed default flags for ios- Implemented locale::name() for compatability reasons- Found embarassing = instead of == in code. Fixed.- Made algotest active.- Ifdef out GCC specific pragmas and attribute foo to be more portable. Thanks to asierllano.- Stop initializing variables in destructor.- Have destruction of ostream objects cause the buffers to be flushed.- Implement deque::swap- Remove variable name to avoid unused variable declaration warning.0.2.1- Now export std::calloc & std::realloc- Implement std::ws- Implement istream>> (*pf)(istream)- Implement istream>> (*pf)(ios_base)- Implement string::find_last_not_of- Convert some string functions to use traits::eq in spec compliance- String now accepts resize filler character- String::assign(iterator first, iterator last) now implemented- Clean up double-semicolons- Add parent class scoping as appropriate- Make ios::Init() exported again- Replace cwchar and cstdio with my own versions, getting rid of GNU badness- Add eh_alloc to source - replacing more objects from the GNU implementation- Add configurable use of TLS as appropriate (migrating this way - no support deprecated)- Make ostream formating more accurately reflect specification (curtesy Gavin Lambert)- Make streams respect the ios_base::app flag. Added test case to check for this in fstream- Elliminate unuse architecture config code (Thanks to Mike Frysinger)- Added preliminary implementation of <limits>- Fixed memory error in list::remove implementation- Fix memory leak in vector0.2.0- Now can compare set iterators and const_iterators- Now can compare map iterators and const_iterators- Now can get a const value from operator* on set/map iterator- Added fixed to std::map / std::multimap- Clean up test suite- Map test now tests for some additional error conditions- Map iterators still invalidated improperly- Fix to functional binder using wrong type- Long double support now depends on float support0.1.12- Add missing const declarators to some data types (thanks to asierllano)- Fix list::swap to alter the nubmer of elements- Fix map and mmap code find functions- Add const operator== and operator!= to multiple containers- Removied 3-argument string::compare and substituted 5-arguement compare with defaults- Re-instituted basic_ios() constructor. istream/ostream now manually call protected init()- Fixed implementation of uflow() (Thanks tommi)- badbit now set if data not written in ostream code- fix implementation of traits::copy- Call flush far less often- Now with multimap::operator== (thanks to tommi)- Implementation of istreambuf_iterator::equal() (Thanks to tommi)- Fix certain exception implementations- Istream now sets error bits correctly (thanks to tommi)- Change implementation of streambuf::xsputn- Fix of binder2nd operator implementation- Elliminated unneccessary pointers in ostream and istream - use pointers in base class instead- Added tests of utilities- Now handle calls to new() requesting 0 bytes without throwing exception- Changed behaviour of sstream to more closely match standard, GNU libstdc++ and the rest of iostream- Fix implementation for man_fun to use mem_fun1_t as appropriate- Fix const on mem_fun1_t- Remove const from auto_ptr::release()- Add const to map::const_iterator operator->()- Add const to set::const_iterator operator->()- Provide for default argument to vector::resize()- Implemented std::ends- Implemented [multi]set comparison operators- Fixed deque operator==- Deque const_iterator now works properly- Fix auto_ptr() copy constructor to not be const- Better fix for deque const_iterator- Undef min/max in algorithm to get rid of macro versions- Yet Another Implementation of deque::iterator- Implemented swap(string, string)- Change algorithms swap to use copy constructor instead of default constructor- Added a little more from gslice_array- Created comparison operatators for list- Added binary operators to valarray- Added trig operators to valarray- Fixed typos in valarray (thanks to psm)- Broke spec slightly in slice_array to allow copying to make borken apps/compilers work- More fixes to auto_ptr const correctness- Fix deque constness in deque const_iterator typenames- Fix stringstream buffer xsputn implementation0.1.11- Expanding basic_string<char> automatically expands vector<char>, even if not explicitly expanding vector for other data types. No cost and may save space.- Explicitly share istream code for tokenizing stream- Fix of bind2nd in function (Thanks to Ted Schroeder)- Properly implement fstream::sync() - now works- Added std::streamoff- Added operators for fpos in ios- Fix resize() call in string wrapping non-existant resize() call- Fix operator >= in string- Performance speedup in vector/string (now *use* preallocated buffer space)- Showbase is no longer on by default- i|ostream now call the constructor for basic_ios properly- Fixes to how snextc() works. Code now fixed- seekoff() and thus tellg now returns ftell to give useful information- General iostream cleanups- Additions to io and other tests- Added test for streambuf- Made changes to iostream - now reads first and last character!- Update istream::read to list amount of data last read successfully- Add configuration option to avoid expanding pesky [con|de]structors- Implemented std::auto_ptr - don't know how I missed that one- Now able to have all support libraries imported (libgcc_eh)- wchar output now works properly - note that performance sucks necessarily- Fix to string::erase() so it now actually erases0.1.10- Implemented clog and changed cerr to meet spec (unbuffered)- Implemented wcout, wcin, wcerr and wclog- Added functions to support conversion of wchar to appropriate types- Cleanup of #includes in header files to reduce bloat and compilation time- Added ostream support for wchar- Fixed missing const declaration in functional causing problems with algorithmsPeter S. Mazinger: Added -z defs to $(CC) -shared- Fixed wchar enhancements if wchar is not enabled- Cleaned up tests system to be much easier to add additional tests- Fixed problems in getline() code- Major performance increase on fstream input code (4.5X, approximately)- Move libgcc_eh and libsupc++ code into separate directories- More code expansion into the library to make executibles much smaller- Remove unneeded typedefs to clean up the code and make it easier to understand- <complex> nearly complete - only need to implement pow()- Fixed problem with failing to handle end-of-file notification- Removed certain enhancements until I can figure out why they are spewing warnings0.1.9Peter S. Mazinger: wchar cleanups across the board- Make sure that operator= changes the number of elements in the vector.- Fix to string::pop_back function scope- reverse_iterator copying fixed- Have max string length test aginst proper variable (oops)- Change sstream to use append instead of push_back all of the time- Make string::append start reading at the correct location- Convert sstream to allow seeking on write stream without truncation- Convert sstream xsputn to use either append or replace- Elliminate duplicate size_t definition - now use C library version- Make sure string assign(size_type n, Ch c) clears the string before resizing- Fix string insert functions to move the correct amount of data- Reimplemented cstring, cassert, cerrno, cstdlib0.1.8- Fixed problem in <map> which returned this instead of *this for operator=- Fixed an problem using . instead of -> Oops.- Added string find, rfind, find_first_of and find_last_of functions- Moved operator+(string, string) into library binary.- Added <iomanip> header. Forgot that little thing. Oops.- Fixed insert for vector<int>. Technique shamelessly stolen from glibc++- fix problem in list which incorrectly handles pointers- Create native std::string::find(Ch) instead of calling through string constructor.- Fix of istream getline (only sets failbit if extracted 0 chars, not copied 0 chars)- Fix string::find so we can scan the last character in the string.- Fix map iterator overloading class definion- Fix map iterator returning value not reference- Change tests to check changes- Change ios::operator() to return 1 instead of this- Fix [i|o]stream to check open() return value- Change fstream open functions to use the proper bitwise operators- Change allocator functionality so that it works according to spec.- Conversion of STL to use allocator::construct/destroy- Make test suite nicer.0.1.7 - 2004-12-23- Significant changes to the library- Converted a lot of forced instanteation from double definitions to ifdef tricks- Merged some of the helper functions into the main files- Split off i/ostream string code from core string header- Lots of little bugfixes done involving function definitions, etc.- Fixed a spec error in list code - erase now returns a pointer after deleted elements, not before- Fixed a spec error in streambuf - now call pbackfail instead of returning error.- Added more code to valarray - now supports slice_array - untested- Modified test suite (by popular demand). Now the process can be automated- Added targets make tests and make test. tests builds tests and test runs them0.1.6 - 2004-11-30- Fixed problem with straembuf where a value was being returned instead of a pointer- Fixed a problem where a buffer was not flushed on close of an fstraem- Added basic test for fstream- Started working on better way to expand symbols in library0.1.5 - 2004-09-26- Added code for all algorithms- Fixed map/set code to prevent infinite loops. Oops.- Fixed list code to prevent most memory leaks. 1 still remains, but unknown location- stlport v 1.00 test suite now compiles, links and runs. Some issues remain- Fix deque constructor using the wrong end_pointer value- Added erase capability to vector- Changed multimap::find to point to first matching element instead of any matching element- Added more tests to test suite based upon problems from stlport test suite- Altered istream_iterator template so that it handles begining of stream conditions properly- Fixed make_heap and sort_heap functions to sort in the correct order- Fixed a few pedantic errors in std::string as it relates to the vector base- All (known) stlport issues have been resolved. Compiles and runs properly.0.1.4 - 2004-09-10- Fixed minor previous errors- Added <algorithm> heap functions. Just treat as a descending sorted list- Added more code to <valarray>- Added <, <=, >, >= comparisons to deque iterators (don't know why I missed them in the first place)- Making Makefiles a little bit better.0.1.3 - 2004-09-06- Compiles with gcc 3.4, thus it is far more "correct" than previously- Started adding code for valarray0.1.2 - 2004-09-05- Completed all core code for set, multiset, map and multimap. Rewrote to use inheritance to cut code duplication- Added more algorithms- Now compiles the stlport 1.0 testsuite (some minor changes to not test extensions needed)- Does not yet link stlport testsuite - missing implementations of a number of functions- Added sort algorithm - using a bubble sort for now.- sort_stable will likely remain bubble sort for some time (It is both stable and in-place)- sort will likely be converted to a heap sort eventually (It is in-place, but non-stable)- List sort is a bubble sort. Might change later (insertion sort?), but it is difficult to work with list limitations- Split iterator code into two sections to cut down on dependency hell- Compiles ncurses c++ library and test application0.1.1 - 2004-09-01- Removed semicolons on the closing of namespaces. My compiler doesn't warn, so I may have missed one or two- Fixed a problem with the istream code which caused it to fail to read in the first character of input.- Changed compiler flags to not generate some warnings on >=GCC 3.4- Changed build process to prevent misconfiguration under certain circumstances- Added stringstream and all of it's incarnations- Added <bitset>- Added <set> - code is considered 'under development' - not finished0.1.0 - 2004-08-28- Nearly done all algorithms- Added some SGI extensions- Completed numerics libraries- Only multimap has yet to be started of containers- Lots of bug fixes- Coompiles all of the stlport C++ STL tests up to mmap1.cpp (no multimap)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -