2008-05-11 12:09:07 +00:00
|
|
|
|
|
|
|
|
[/ Copyright 2008 Daniel James.
|
|
|
|
|
/ Distributed under the Boost Software License, Version 1.0. (See accompanying
|
|
|
|
|
/ file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) ]
|
|
|
|
|
|
2012-10-11 17:29:19 +00:00
|
|
|
[template ticket[number]'''<ulink
|
|
|
|
|
url="https://svn.boost.org/trac/boost/ticket/'''[number]'''">'''#[number]'''</ulink>''']
|
|
|
|
|
|
2008-05-11 12:09:07 +00:00
|
|
|
[section:changes Change Log]
|
|
|
|
|
|
|
|
|
|
[h2 Review Version]
|
|
|
|
|
|
|
|
|
|
Initial review version, for the review conducted from 7th December 2007 to
|
|
|
|
|
16th December 2007.
|
|
|
|
|
|
Merge in some small documentation fixes.
Merged revisions 47054,47750,47766,47800,47807,47811-47813 via svnmerge from
https://svn.boost.org/svn/boost/trunk
........
r47750 | danieljames | 2008-07-24 11:14:15 +0100 (Thu, 24 Jul 2008) | 2 lines
Remove some old information that's no longer true.
........
r47766 | danieljames | 2008-07-24 19:16:09 +0100 (Thu, 24 Jul 2008) | 1 line
Link to Igor Zlatkovic's xsltproc packages.
........
r47800 | danieljames | 2008-07-25 11:24:50 +0100 (Fri, 25 Jul 2008) | 1 line
Fix a link.
........
r47807 | danieljames | 2008-07-25 18:52:11 +0100 (Fri, 25 Jul 2008) | 1 line
Convert a few 'unacceptable' characters to underscores in generated documentation filenames.
........
r47811 | danieljames | 2008-07-25 22:13:27 +0100 (Fri, 25 Jul 2008) | 1 line
Avoid some more unacceptable characters.
........
r47812 | danieljames | 2008-07-25 22:15:39 +0100 (Fri, 25 Jul 2008) | 1 line
Merge asio details from the release branch.
........
r47813 | danieljames | 2008-07-25 22:25:58 +0100 (Fri, 25 Jul 2008) | 1 line
Fix a typo.
........
[SVN r47819]
2008-07-25 22:47:41 +00:00
|
|
|
[h2 1.35.0 Add-on - 31st March 2008]
|
2008-05-11 12:09:07 +00:00
|
|
|
|
|
|
|
|
Unofficial release uploaded to vault, to be used with Boost 1.35.0. Incorporated
|
|
|
|
|
many of the suggestions from the review.
|
|
|
|
|
|
|
|
|
|
* Improved portability thanks to Boost regression testing.
|
|
|
|
|
* Fix lots of typos, and clearer text in the documentation.
|
|
|
|
|
* Fix floating point to `std::size_t` conversion when calculating sizes from
|
|
|
|
|
the max load factor, and use `double` in the calculation for greater accuracy.
|
|
|
|
|
* Fix some errors in the examples.
|
|
|
|
|
|
|
|
|
|
[h2 Boost 1.36.0]
|
|
|
|
|
|
|
|
|
|
First official release.
|
|
|
|
|
|
|
|
|
|
* Rearrange the internals.
|
|
|
|
|
* Move semantics - full support when rvalue references are available, emulated
|
|
|
|
|
using a cut down version of the Adobe move library when they are not.
|
|
|
|
|
* Emplace support when rvalue references and variadic template are available.
|
|
|
|
|
* More efficient node allocation when rvalue references and variadic template
|
|
|
|
|
are available.
|
2008-07-17 23:33:51 +00:00
|
|
|
* Added equality operators.
|
2008-05-11 12:09:07 +00:00
|
|
|
|
2008-09-18 11:30:59 +00:00
|
|
|
[h2 Boost 1.37.0]
|
|
|
|
|
|
|
|
|
|
* Rename overload of `emplace` with hint, to `emplace_hint` as specified in
|
|
|
|
|
[@http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2008/n2691.pdf n2691].
|
|
|
|
|
* Provide forwarding headers at `<boost/unordered/unordered_map_fwd.hpp>` and
|
|
|
|
|
`<boost/unordered/unordered_set_fwd.hpp>`.
|
|
|
|
|
* Move all the implementation inside `boost/unordered`, to assist
|
|
|
|
|
modularization and hopefully make it easier to track changes in subversion.
|
|
|
|
|
|
Merged revisions 49661-49662,49666,49669,49735,49756,49770,49811 via svnmerge from
https://svn.boost.org/svn/boost/trunk
........
r49661 | danieljames | 2008-11-09 12:03:45 +0000 (Sun, 09 Nov 2008) | 1 line
Move hash detail headers out of boost/functional/detail.
........
r49662 | danieljames | 2008-11-09 12:11:50 +0000 (Sun, 09 Nov 2008) | 1 line
Add a forwarding header for container_fwd.hpp
........
r49666 | danieljames | 2008-11-09 19:12:05 +0000 (Sun, 09 Nov 2008) | 1 line
Avoid comparing default initialised iterators in position_iterator.
........
r49669 | danieljames | 2008-11-09 21:57:38 +0000 (Sun, 09 Nov 2008) | 2 lines
Add link to the header to the synopsis in reference documentation.
Refs #2214
........
r49735 | danieljames | 2008-11-14 12:51:00 +0000 (Fri, 14 Nov 2008) | 1 line
Explicitly specify the template parameters in the unordered container friend, in order to avoid some warnings.
........
r49756 | danieljames | 2008-11-14 16:11:16 +0000 (Fri, 14 Nov 2008) | 1 line
Use pragmas to suppress a Visual C++ warning.
........
r49770 | danieljames | 2008-11-15 13:07:29 +0000 (Sat, 15 Nov 2008) | 1 line
Use the new swap library.
........
r49811 | danieljames | 2008-11-16 23:10:00 +0000 (Sun, 16 Nov 2008) | 1 line
Fix a typo.
........
[SVN r49855]
2008-11-20 22:53:20 +00:00
|
|
|
[h2 Boost 1.38.0]
|
|
|
|
|
|
Merge hash and unordered changes.
Remove deprecated headers, move hash_fwd.hpp into hash subdirectory. And
several minor internal changes.
Mostly minor internal details.
Merged revisions 51262-51263,51407-51409,51504-51505,51644-51646,51667 via svnmerge from
https://svn.boost.org/svn/boost/trunk
........
r51262 | danieljames | 2009-02-15 19:32:04 +0000 (Sun, 15 Feb 2009) | 1 line
Use the new 'boost:' links for the hash, unordered and quickbook documentation.
........
r51263 | danieljames | 2009-02-15 19:32:19 +0000 (Sun, 15 Feb 2009) | 2 lines
Don't copy images for the standalone hash and unordered documentation, was only
really required before the libraries were integrated into boost.
........
r51407 | danieljames | 2009-02-22 23:49:51 +0000 (Sun, 22 Feb 2009) | 1 line
Fix the hash dirname.
........
r51408 | danieljames | 2009-02-22 23:50:04 +0000 (Sun, 22 Feb 2009) | 1 line
Make copy_buckets and move_buckets member functions - so that calling them is a bit simpler.
........
r51409 | danieljames | 2009-02-22 23:50:20 +0000 (Sun, 22 Feb 2009) | 1 line
Move some of the data structure classes out of hash table data.
........
r51504 | danieljames | 2009-03-01 14:15:09 +0000 (Sun, 01 Mar 2009) | 1 line
Add missing return for operator=.
........
r51505 | danieljames | 2009-03-01 14:15:39 +0000 (Sun, 01 Mar 2009) | 3 lines
Make the sort stable.
Doesn't really matter, but it might as well be.
........
r51644 | danieljames | 2009-03-08 09:44:51 +0000 (Sun, 08 Mar 2009) | 1 line
Detab.
........
r51645 | danieljames | 2009-03-08 09:45:11 +0000 (Sun, 08 Mar 2009) | 4 lines
Move hash_fwd into the hash subdirectory.
I should have done this in the last release. But now all of the hash
implementation is in the hash subdirectory.
........
r51646 | danieljames | 2009-03-08 09:45:30 +0000 (Sun, 08 Mar 2009) | 3 lines
Remove deprecated headers.
Fixes #2412.
........
r51667 | danieljames | 2009-03-09 20:56:23 +0000 (Mon, 09 Mar 2009) | 1 line
Update copyright dates in hash and unordered.
........
[SVN r51729]
2009-03-11 22:51:09 +00:00
|
|
|
* Use [@boost:/libs/utility/swap.html `boost::swap`].
|
Merge latest hash and unordered developments, and add support for initialiser
lists to config.
Merged revisions 49338,49924-49927,49955,50029,50118 via svnmerge from
https://svn.boost.org/svn/boost/trunk
........
r49338 | danieljames | 2008-10-15 10:44:41 +0100 (Wed, 15 Oct 2008) | 2 lines
Revert [49229], it fixes the same problem as [48674].
........
r49924 | danieljames | 2008-11-24 22:55:14 +0000 (Mon, 24 Nov 2008) | 1 line
Extra tests for equality with different hash functions.
........
r49925 | danieljames | 2008-11-24 22:55:47 +0000 (Mon, 24 Nov 2008) | 1 line
Document operator==/operator!= as undefined if the equality predicates aren't equivalent.
........
r49926 | danieljames | 2008-11-24 22:56:04 +0000 (Mon, 24 Nov 2008) | 1 line
Use a larger prime number list.
........
r49927 | danieljames | 2008-11-24 23:15:55 +0000 (Mon, 24 Nov 2008) | 1 line
Use aligned storage for the value.
........
r49955 | danieljames | 2008-11-27 11:42:13 +0000 (Thu, 27 Nov 2008) | 1 line
Wild stab at getting destruction working on more compilers.
........
r50029 | danieljames | 2008-11-29 21:47:55 +0000 (Sat, 29 Nov 2008) | 1 line
Workaround another in-place destruction.
........
r50118 | danieljames | 2008-12-04 21:30:19 +0000 (Thu, 04 Dec 2008) | 1 line
Add support for initializer lists to config and the unordered containers.
........
[SVN r50451]
2009-01-03 23:18:33 +00:00
|
|
|
* [@https://svn.boost.org/trac/boost/ticket/2237 Ticket 2237]:
|
|
|
|
|
Document that the equality and inequality operators are undefined for two
|
|
|
|
|
objects if their equality predicates aren't equivalent. Thanks to Daniel
|
|
|
|
|
Krügler.
|
|
|
|
|
* [@https://svn.boost.org/trac/boost/ticket/1710 Ticket 1710]:
|
|
|
|
|
Use a larger prime number list. Thanks to Thorsten Ottosen and Hervé
|
|
|
|
|
Brönnimann.
|
|
|
|
|
* Use
|
Merge hash and unordered changes.
Remove deprecated headers, move hash_fwd.hpp into hash subdirectory. And
several minor internal changes.
Mostly minor internal details.
Merged revisions 51262-51263,51407-51409,51504-51505,51644-51646,51667 via svnmerge from
https://svn.boost.org/svn/boost/trunk
........
r51262 | danieljames | 2009-02-15 19:32:04 +0000 (Sun, 15 Feb 2009) | 1 line
Use the new 'boost:' links for the hash, unordered and quickbook documentation.
........
r51263 | danieljames | 2009-02-15 19:32:19 +0000 (Sun, 15 Feb 2009) | 2 lines
Don't copy images for the standalone hash and unordered documentation, was only
really required before the libraries were integrated into boost.
........
r51407 | danieljames | 2009-02-22 23:49:51 +0000 (Sun, 22 Feb 2009) | 1 line
Fix the hash dirname.
........
r51408 | danieljames | 2009-02-22 23:50:04 +0000 (Sun, 22 Feb 2009) | 1 line
Make copy_buckets and move_buckets member functions - so that calling them is a bit simpler.
........
r51409 | danieljames | 2009-02-22 23:50:20 +0000 (Sun, 22 Feb 2009) | 1 line
Move some of the data structure classes out of hash table data.
........
r51504 | danieljames | 2009-03-01 14:15:09 +0000 (Sun, 01 Mar 2009) | 1 line
Add missing return for operator=.
........
r51505 | danieljames | 2009-03-01 14:15:39 +0000 (Sun, 01 Mar 2009) | 3 lines
Make the sort stable.
Doesn't really matter, but it might as well be.
........
r51644 | danieljames | 2009-03-08 09:44:51 +0000 (Sun, 08 Mar 2009) | 1 line
Detab.
........
r51645 | danieljames | 2009-03-08 09:45:11 +0000 (Sun, 08 Mar 2009) | 4 lines
Move hash_fwd into the hash subdirectory.
I should have done this in the last release. But now all of the hash
implementation is in the hash subdirectory.
........
r51646 | danieljames | 2009-03-08 09:45:30 +0000 (Sun, 08 Mar 2009) | 3 lines
Remove deprecated headers.
Fixes #2412.
........
r51667 | danieljames | 2009-03-09 20:56:23 +0000 (Mon, 09 Mar 2009) | 1 line
Update copyright dates in hash and unordered.
........
[SVN r51729]
2009-03-11 22:51:09 +00:00
|
|
|
[@boost:/libs/type_traits/doc/html/boost_typetraits/category/alignment.html
|
Merge latest hash and unordered developments, and add support for initialiser
lists to config.
Merged revisions 49338,49924-49927,49955,50029,50118 via svnmerge from
https://svn.boost.org/svn/boost/trunk
........
r49338 | danieljames | 2008-10-15 10:44:41 +0100 (Wed, 15 Oct 2008) | 2 lines
Revert [49229], it fixes the same problem as [48674].
........
r49924 | danieljames | 2008-11-24 22:55:14 +0000 (Mon, 24 Nov 2008) | 1 line
Extra tests for equality with different hash functions.
........
r49925 | danieljames | 2008-11-24 22:55:47 +0000 (Mon, 24 Nov 2008) | 1 line
Document operator==/operator!= as undefined if the equality predicates aren't equivalent.
........
r49926 | danieljames | 2008-11-24 22:56:04 +0000 (Mon, 24 Nov 2008) | 1 line
Use a larger prime number list.
........
r49927 | danieljames | 2008-11-24 23:15:55 +0000 (Mon, 24 Nov 2008) | 1 line
Use aligned storage for the value.
........
r49955 | danieljames | 2008-11-27 11:42:13 +0000 (Thu, 27 Nov 2008) | 1 line
Wild stab at getting destruction working on more compilers.
........
r50029 | danieljames | 2008-11-29 21:47:55 +0000 (Sat, 29 Nov 2008) | 1 line
Workaround another in-place destruction.
........
r50118 | danieljames | 2008-12-04 21:30:19 +0000 (Thu, 04 Dec 2008) | 1 line
Add support for initializer lists to config and the unordered containers.
........
[SVN r50451]
2009-01-03 23:18:33 +00:00
|
|
|
aligned storage] to store the types. This changes the way the allocator is
|
|
|
|
|
used to construct nodes. It used to construct the node with two calls to
|
|
|
|
|
the allocator's `construct` method - once for the pointers and once for the
|
|
|
|
|
value. It now constructs the node with a single call to construct and
|
|
|
|
|
then constructs the value using in place construction.
|
|
|
|
|
* Add support for C++0x initializer lists where they're available (currently
|
|
|
|
|
only g++ 4.4 in C++0x mode).
|
Merged revisions 49661-49662,49666,49669,49735,49756,49770,49811 via svnmerge from
https://svn.boost.org/svn/boost/trunk
........
r49661 | danieljames | 2008-11-09 12:03:45 +0000 (Sun, 09 Nov 2008) | 1 line
Move hash detail headers out of boost/functional/detail.
........
r49662 | danieljames | 2008-11-09 12:11:50 +0000 (Sun, 09 Nov 2008) | 1 line
Add a forwarding header for container_fwd.hpp
........
r49666 | danieljames | 2008-11-09 19:12:05 +0000 (Sun, 09 Nov 2008) | 1 line
Avoid comparing default initialised iterators in position_iterator.
........
r49669 | danieljames | 2008-11-09 21:57:38 +0000 (Sun, 09 Nov 2008) | 2 lines
Add link to the header to the synopsis in reference documentation.
Refs #2214
........
r49735 | danieljames | 2008-11-14 12:51:00 +0000 (Fri, 14 Nov 2008) | 1 line
Explicitly specify the template parameters in the unordered container friend, in order to avoid some warnings.
........
r49756 | danieljames | 2008-11-14 16:11:16 +0000 (Fri, 14 Nov 2008) | 1 line
Use pragmas to suppress a Visual C++ warning.
........
r49770 | danieljames | 2008-11-15 13:07:29 +0000 (Sat, 15 Nov 2008) | 1 line
Use the new swap library.
........
r49811 | danieljames | 2008-11-16 23:10:00 +0000 (Sun, 16 Nov 2008) | 1 line
Fix a typo.
........
[SVN r49855]
2008-11-20 22:53:20 +00:00
|
|
|
|
Merge quickbook and hash changelogs. Tweak gcc detection in container_fwd.hpp
Merged revisions 52084,52245-52246,52304,52320,52323 via svnmerge from
https://svn.boost.org/svn/boost/trunk
........
r52084 | danieljames | 2009-03-31 20:43:58 +0100 (Tue, 31 Mar 2009) | 1 line
Changelog for unordered and hash.
........
r52245 | danieljames | 2009-04-08 06:51:31 +0100 (Wed, 08 Apr 2009) | 5 lines
Detect gcc stdlib for gcc 4.0.1.
For some reason the normal macros aren't defined for the standard
library that comes with gcc 4.0.1 (although maybe just on BSDs?). So try
to detect the library for that compiler.
........
r52246 | danieljames | 2009-04-08 11:56:22 +0100 (Wed, 08 Apr 2009) | 7 lines
Include <utility> for some versions of gcc's library.
Sometimes gcc's <cstddef> doesn't define the C++ macros, so check for it
and include <utility> in that case. Also remove a workaround from
container_fwd.hpp
Fixes #2924.
........
r52304 | danieljames | 2009-04-10 20:25:32 +0100 (Fri, 10 Apr 2009) | 4 lines
Don't use debug containers on darwin.
I'm getting errors from the darwin 4.2 debug containers which appear to
a problem with its implementation.
........
r52320 | danieljames | 2009-04-11 08:53:59 +0100 (Sat, 11 Apr 2009) | 1 line
Don't need to include utility now that select_stdlib has been fixed.
........
r52323 | danieljames | 2009-04-11 09:26:20 +0100 (Sat, 11 Apr 2009) | 1 line
Also don't need to check for _GLIBCXX_CSTDDEF.
........
[SVN r52324]
2009-04-11 08:49:33 +00:00
|
|
|
[h2 Boost 1.39.0]
|
|
|
|
|
|
|
|
|
|
* [@https://svn.boost.org/trac/boost/ticket/2756 Ticket 2756]: Avoid a warning
|
|
|
|
|
on Visual C++ 2009.
|
|
|
|
|
* Some other minor internal changes to the implementation, tests and
|
|
|
|
|
documentation.
|
2009-04-12 10:54:44 +00:00
|
|
|
* Avoid an unnecessary copy in `operator[]`.
|
Second try at merging emplace support.
Note that the previously rolled back commit was [53257], not [52357].
Merged revisions 52393-52394,52397,52884-52885,53255 via svnmerge from
https://svn.boost.org/svn/boost/trunk
........
r52393 | danieljames | 2009-04-14 18:23:37 +0100 (Tue, 14 Apr 2009) | 2 lines
Implement full extract_key for compilers without SFINAE and variadic
templates.
........
r52394 | danieljames | 2009-04-14 18:23:51 +0100 (Tue, 14 Apr 2009) | 1 line
Use emplace instead of insert in the backend as it's more appropriate.
........
r52397 | danieljames | 2009-04-14 18:51:34 +0100 (Tue, 14 Apr 2009) | 1 line
Add stream output to the count test helper for unordered.
........
r52884 | danieljames | 2009-05-10 22:24:41 +0100 (Sun, 10 May 2009) | 19 lines
Cherrypick some unordered container changes from sandbox. Not including
anything which depends on the new move library.
------------------------------------------------------------------------
r52746 | danieljames | 2009-05-03 11:12:30 +0100 (Sun, 03 May 2009) | 1 line
Merge latest unordered container changes.
------------------------------------------------------------------------
r52747 | danieljames | 2009-05-03 11:15:35 +0100 (Sun, 03 May 2009) | 4 lines
Put the C++0x emplace implementations before the non-C++0x versions.
I'm going to change the non-C++0x to be macro heavy emulations of the
C++0x versions, so this will put the readable version first.
------------------------------------------------------------------------
r52748 | danieljames | 2009-05-03 11:15:44 +0100 (Sun, 03 May 2009) | 1 line
Refactor the unordered implementation a tad, to make implementing emplace less painful.
------------------------------------------------------------------------
........
r52885 | danieljames | 2009-05-10 22:25:09 +0100 (Sun, 10 May 2009) | 1 line
Merge emplace support for sandbox - but without move support.
........
r53255 | danieljames | 2009-05-25 20:45:06 +0100 (Mon, 25 May 2009) | 1 line
Unordered change log.
........
[SVN r53328]
2009-05-27 21:31:08 +00:00
|
|
|
* [@https://svn.boost.org/trac/boost/ticket/2975 Ticket 2975]: Fix length of
|
|
|
|
|
prime number list.
|
|
|
|
|
|
|
|
|
|
[h2 Boost 1.40.0]
|
|
|
|
|
|
|
|
|
|
* [@https://svn.boost.org/trac/boost/ticket/2975 Ticket 2975]:
|
|
|
|
|
Store the prime list as a preprocessor sequence - so that it will always get
|
|
|
|
|
the length right if it changes again in the future.
|
|
|
|
|
* [@https://svn.boost.org/trac/boost/ticket/1978 Ticket 1978]:
|
|
|
|
|
Implement `emplace` for all compilers.
|
Merge unordered changes, including fixes for Boost.TR1.
Merged revisions 55099-55100,55132,55138,55184-55185 via svnmerge from
https://svn.boost.org/svn/boost/trunk
........
r55099 | danieljames | 2009-07-22 23:37:52 +0100 (Wed, 22 Jul 2009) | 1 line
Fix the insert tests when there is a small number of buckets.
........
r55100 | danieljames | 2009-07-22 23:38:08 +0100 (Wed, 22 Jul 2009) | 1 line
Adjust the unordered defaults so that emplace takes more parameters and less buckets are created by default.
........
r55132 | danieljames | 2009-07-23 18:53:59 +0100 (Thu, 23 Jul 2009) | 1 line
Remove the emulation of single argument C++0x std::pair constructor.
........
r55138 | danieljames | 2009-07-23 23:17:20 +0100 (Thu, 23 Jul 2009) | 1 line
Try to work around an odd Visual C++ 8 bug.
........
r55184 | danieljames | 2009-07-26 19:59:33 +0100 (Sun, 26 Jul 2009) | 1 line
Some extra changelog notes.
........
r55185 | danieljames | 2009-07-26 20:00:40 +0100 (Sun, 26 Jul 2009) | 1 line
Update the reference documentation to mention that emplace is now emulated.
........
[SVN r55189]
2009-07-26 20:22:48 +00:00
|
|
|
* [@https://svn.boost.org/trac/boost/ticket/2908 Ticket 2908],
|
|
|
|
|
[@https://svn.boost.org/trac/boost/ticket/3096 Ticket 3096]:
|
|
|
|
|
Some workarounds for old versions of borland, including adding explicit
|
|
|
|
|
destructors to all containers.
|
|
|
|
|
* [@https://svn.boost.org/trac/boost/ticket/3082 Ticket 3082]:
|
|
|
|
|
Disable incorrect Visual C++ warnings.
|
Merge latest changes for unordered. Improved compatability and a few tweaks.
Merged revisions 53127,53253,53256,53311,53314,53316-53318 via svnmerge from
https://svn.boost.org/svn/boost/trunk
........
r53127 | danieljames | 2009-05-20 07:43:38 +0100 (Wed, 20 May 2009) | 1 line
Better configuration for boost.unordered.
........
r53253 | danieljames | 2009-05-25 20:14:07 +0100 (Mon, 25 May 2009) | 3 lines
Add explicit destructors to the unordered containers. Refs #2908.
Isn't really needed but it doesn't hurt.
........
r53256 | danieljames | 2009-05-25 20:45:23 +0100 (Mon, 25 May 2009) | 1 line
Unordered change log for explicit destructors.
........
r53311 | danieljames | 2009-05-27 18:42:01 +0100 (Wed, 27 May 2009) | 1 line
Missing changelog entry.
........
r53314 | danieljames | 2009-05-27 18:44:09 +0100 (Wed, 27 May 2009) | 1 line
Use lightweight_test for unordered.
........
r53316 | danieljames | 2009-05-27 19:19:32 +0100 (Wed, 27 May 2009) | 1 line
Some workarounds for old versions of Borland.
........
r53317 | danieljames | 2009-05-27 19:32:22 +0100 (Wed, 27 May 2009) | 1 line
Fix a change accidentally included in the last commit.
........
r53318 | danieljames | 2009-05-27 19:32:38 +0100 (Wed, 27 May 2009) | 1 line
Remove an unused function.
........
[SVN r53465]
2009-05-30 17:34:12 +00:00
|
|
|
* Better configuration for C++0x features when the headers aren't available.
|
Merge unordered changes, including fixes for Boost.TR1.
Merged revisions 55099-55100,55132,55138,55184-55185 via svnmerge from
https://svn.boost.org/svn/boost/trunk
........
r55099 | danieljames | 2009-07-22 23:37:52 +0100 (Wed, 22 Jul 2009) | 1 line
Fix the insert tests when there is a small number of buckets.
........
r55100 | danieljames | 2009-07-22 23:38:08 +0100 (Wed, 22 Jul 2009) | 1 line
Adjust the unordered defaults so that emplace takes more parameters and less buckets are created by default.
........
r55132 | danieljames | 2009-07-23 18:53:59 +0100 (Thu, 23 Jul 2009) | 1 line
Remove the emulation of single argument C++0x std::pair constructor.
........
r55138 | danieljames | 2009-07-23 23:17:20 +0100 (Thu, 23 Jul 2009) | 1 line
Try to work around an odd Visual C++ 8 bug.
........
r55184 | danieljames | 2009-07-26 19:59:33 +0100 (Sun, 26 Jul 2009) | 1 line
Some extra changelog notes.
........
r55185 | danieljames | 2009-07-26 20:00:40 +0100 (Sun, 26 Jul 2009) | 1 line
Update the reference documentation to mention that emplace is now emulated.
........
[SVN r55189]
2009-07-26 20:22:48 +00:00
|
|
|
* Create less buckets by default.
|
Merge quickbook and hash changelogs. Tweak gcc detection in container_fwd.hpp
Merged revisions 52084,52245-52246,52304,52320,52323 via svnmerge from
https://svn.boost.org/svn/boost/trunk
........
r52084 | danieljames | 2009-03-31 20:43:58 +0100 (Tue, 31 Mar 2009) | 1 line
Changelog for unordered and hash.
........
r52245 | danieljames | 2009-04-08 06:51:31 +0100 (Wed, 08 Apr 2009) | 5 lines
Detect gcc stdlib for gcc 4.0.1.
For some reason the normal macros aren't defined for the standard
library that comes with gcc 4.0.1 (although maybe just on BSDs?). So try
to detect the library for that compiler.
........
r52246 | danieljames | 2009-04-08 11:56:22 +0100 (Wed, 08 Apr 2009) | 7 lines
Include <utility> for some versions of gcc's library.
Sometimes gcc's <cstddef> doesn't define the C++ macros, so check for it
and include <utility> in that case. Also remove a workaround from
container_fwd.hpp
Fixes #2924.
........
r52304 | danieljames | 2009-04-10 20:25:32 +0100 (Fri, 10 Apr 2009) | 4 lines
Don't use debug containers on darwin.
I'm getting errors from the darwin 4.2 debug containers which appear to
a problem with its implementation.
........
r52320 | danieljames | 2009-04-11 08:53:59 +0100 (Sat, 11 Apr 2009) | 1 line
Don't need to include utility now that select_stdlib has been fixed.
........
r52323 | danieljames | 2009-04-11 09:26:20 +0100 (Sat, 11 Apr 2009) | 1 line
Also don't need to check for _GLIBCXX_CSTDDEF.
........
[SVN r52324]
2009-04-11 08:49:33 +00:00
|
|
|
|
2009-10-20 23:13:33 +00:00
|
|
|
[h2 Boost 1.41.0 - Major update]
|
|
|
|
|
|
|
|
|
|
* The original version made heavy use of macros to sidestep some of the older
|
|
|
|
|
compilers' poor template support. But since I no longer support those
|
|
|
|
|
compilers and the macro use was starting to become a maintenance burden it
|
|
|
|
|
has been rewritten to use templates instead of macros for the implementation
|
|
|
|
|
classes.
|
|
|
|
|
|
|
|
|
|
* The container objcet is now smaller thanks to using `boost::compressed_pair`
|
|
|
|
|
for EBO and a slightly different function buffer - now using a bool instead
|
|
|
|
|
of a member pointer.
|
|
|
|
|
|
|
|
|
|
* Buckets are allocated lazily which means that constructing an empty container
|
|
|
|
|
will not allocate any memory.
|
2009-12-07 19:26:26 +00:00
|
|
|
|
|
|
|
|
[h2 Boost 1.42.0]
|
|
|
|
|
|
|
|
|
|
* Support instantiating the containers with incomplete value types.
|
|
|
|
|
* Reduced the number of warnings (mostly in tests).
|
2009-12-30 22:17:48 +00:00
|
|
|
* Improved codegear compatibility.
|
|
|
|
|
* [@http://svn.boost.org/trac/boost/ticket/3693 Ticket 3693]:
|
|
|
|
|
Add `erase_return_void` as a temporary workaround for the current
|
|
|
|
|
`erase` which can be inefficient because it has to find the next
|
|
|
|
|
element to return an iterator.
|
|
|
|
|
* Add templated find overload for compatible keys.
|
|
|
|
|
* [@http://svn.boost.org/trac/boost/ticket/3773 Ticket 3773]:
|
|
|
|
|
Add missing `std` qualifier to `ptrdiff_t`.
|
2010-01-09 17:17:53 +00:00
|
|
|
* Some code formatting changes to fit almost all lines into 80 characters.
|
2009-10-20 23:13:33 +00:00
|
|
|
|
2010-03-31 21:39:07 +00:00
|
|
|
[h2 Boost 1.43.0]
|
|
|
|
|
|
|
|
|
|
* [@http://svn.boost.org/trac/boost/ticket/3966 Ticket 3966]:
|
|
|
|
|
`erase_return_void` is now `quick_erase`, which is the
|
|
|
|
|
[@http://home.roadrunner.com/~hinnant/issue_review/lwg-active.html#579
|
|
|
|
|
current forerunner for resolving the slow erase by iterator], although
|
|
|
|
|
there's a strong possibility that this may change in the future. The old
|
|
|
|
|
method name remains for backwards compatibility but is considered deprecated
|
|
|
|
|
and will be removed in a future release.
|
2010-04-21 23:00:35 +00:00
|
|
|
* Use Boost.Exception.
|
|
|
|
|
* Stop using deprecated `BOOST_HAS_*` macros.
|
2010-03-31 21:39:07 +00:00
|
|
|
|
2010-10-23 12:02:18 +00:00
|
|
|
[h2 Boost 1.45.0]
|
|
|
|
|
|
|
|
|
|
* Fix a bug when inserting into an `unordered_map` or `unordered_set` using
|
|
|
|
|
iterators which returns `value_type` by copy.
|
|
|
|
|
|
2011-10-17 20:23:27 +00:00
|
|
|
[h2 Boost 1.48.0 - Major update]
|
2011-08-21 19:19:12 +00:00
|
|
|
|
|
|
|
|
This is major change which has been converted to use Boost.Move's move
|
2011-10-17 20:23:27 +00:00
|
|
|
emulation, and be more compliant with the C++11 standard. See the
|
|
|
|
|
[link unordered.compliance compliance section] for details.
|
|
|
|
|
|
|
|
|
|
The container now meets C++11's complexity requirements, but to do so
|
|
|
|
|
uses a little more memory. This means that `quick_erase` and
|
|
|
|
|
`erase_return_void` are no longer required, they'll be removed in a
|
|
|
|
|
future version.
|
|
|
|
|
|
|
|
|
|
C++11 support has resulted in some breaking changes:
|
2011-08-21 19:19:12 +00:00
|
|
|
|
|
|
|
|
* Equality comparison has been changed to the C++11 specification.
|
|
|
|
|
In a container with equivalent keys, elements in a group with equal
|
|
|
|
|
keys used to have to be in the same order to be considered equal,
|
2011-10-17 20:23:27 +00:00
|
|
|
now they can be a permutation of each other. To use the old
|
2011-09-19 18:22:18 +00:00
|
|
|
behavior define the macro `BOOST_UNORDERED_DEPRECATED_EQUALITY`.
|
2011-08-21 19:19:12 +00:00
|
|
|
|
|
|
|
|
* The behaviour of swap is different when the two containers to be
|
|
|
|
|
swapped has unequal allocators. It used to allocate new nodes using
|
|
|
|
|
the appropriate allocators, it now swaps the allocators if
|
|
|
|
|
the allocator has a member structure `propagate_on_container_swap`,
|
|
|
|
|
such that `propagate_on_container_swap::value` is true.
|
|
|
|
|
|
2011-09-04 19:37:45 +00:00
|
|
|
* Allocator's `construct` and `destroy` functions are called with raw
|
|
|
|
|
pointers, rather than the allocator's `pointer` type.
|
|
|
|
|
|
2011-09-19 18:22:18 +00:00
|
|
|
* `emplace` used to emulate the variadic pair constructors that
|
|
|
|
|
appeared in early C++0x drafts. Since they were removed it no
|
|
|
|
|
longer does so. It does emulate the new `piecewise_construct`
|
|
|
|
|
pair constructors - only you need to use
|
|
|
|
|
`boost::piecewise_construct`. To use the old emulation of
|
|
|
|
|
the variadic consturctors define
|
|
|
|
|
`BOOST_UNORDERED_DEPRECATED_PAIR_CONSTRUCT`.
|
|
|
|
|
|
2011-12-11 21:39:18 +00:00
|
|
|
[h2 Boost 1.49.0]
|
|
|
|
|
|
|
|
|
|
* Fix warning due to accidental odd assignment.
|
|
|
|
|
* Slightly better error messages.
|
|
|
|
|
|
2012-05-03 22:05:21 +00:00
|
|
|
[h2 Boost 1.50.0]
|
|
|
|
|
|
|
|
|
|
* Fix equality for `unordered_multiset` and `unordered_multimap`.
|
2012-05-12 08:14:05 +00:00
|
|
|
* [@https://svn.boost.org/trac/boost/ticket/6857 Ticket 6857]:
|
|
|
|
|
Implement `reserve`.
|
|
|
|
|
* [@https://svn.boost.org/trac/boost/ticket/6771 Ticket 6771]:
|
2012-05-03 22:05:21 +00:00
|
|
|
Avoid gcc's `-Wfloat-equal` warning.
|
2012-05-12 08:14:05 +00:00
|
|
|
* [@https://svn.boost.org/trac/boost/ticket/6784 Ticket 6784]:
|
2012-05-03 22:05:21 +00:00
|
|
|
Fix some Sun specific code.
|
2012-05-12 08:14:05 +00:00
|
|
|
* [@https://svn.boost.org/trac/boost/ticket/6190 Ticket 6190]:
|
|
|
|
|
Avoid gcc's `-Wshadow` warning.
|
2012-05-21 22:08:19 +00:00
|
|
|
* [@https://svn.boost.org/trac/boost/ticket/6905 Ticket 6905]:
|
|
|
|
|
Make namespaces in macros compatible with `bcp` custom namespaces.
|
|
|
|
|
Fixed by Luke Elliott.
|
2012-05-03 22:05:21 +00:00
|
|
|
* Remove some of the smaller prime number of buckets, as they may make
|
|
|
|
|
collisions quite probable (e.g. multiples of 5 are very common because
|
|
|
|
|
we used base 10).
|
|
|
|
|
* On old versions of Visual C++, use the container library's implementation
|
|
|
|
|
of `allocator_traits`, as it's more likely to work.
|
|
|
|
|
* On machines with 64 bit std::size_t, use power of 2 buckets, with Thomas
|
|
|
|
|
Wang's hash function to pick which one to use. As modulus is very slow
|
|
|
|
|
for 64 bit values.
|
|
|
|
|
* Some internal changes.
|
|
|
|
|
|
2012-09-30 11:58:06 +00:00
|
|
|
[h2 Boost 1.51.0]
|
|
|
|
|
|
|
|
|
|
* Fix construction/destruction issue when using a C++11 compiler with a
|
|
|
|
|
C++03 allocator ([ticket 7100]).
|
|
|
|
|
* Remove a `try..catch` to support compiling without exceptions.
|
|
|
|
|
* Adjust SFINAE use to try to supprt g++ 3.4 ([ticket 7175]).
|
|
|
|
|
* Updated to use the new config macros.
|
|
|
|
|
|
|
|
|
|
[h2 Boost 1.52.0]
|
|
|
|
|
|
|
|
|
|
* Faster assign, which assigns to existing nodes where possible, rather than
|
|
|
|
|
creating entirely new nodes and copy constructing.
|
2012-10-11 17:29:19 +00:00
|
|
|
* Fixed bug in `erase_range` ([ticket 7471]).
|
2012-09-30 11:58:06 +00:00
|
|
|
* Reverted some of the internal changes to how nodes are created, especially
|
|
|
|
|
for C++11 compilers. 'construct' and 'destroy' should work a little better
|
|
|
|
|
for C++11 allocators.
|
|
|
|
|
* Simplified the implementation a bit. Hopefully more robust.
|
|
|
|
|
|
2012-12-05 22:06:57 +00:00
|
|
|
[h2 Boost 1.53.0]
|
|
|
|
|
|
|
|
|
|
* Remove support for the old pre-standard variadic pair constructors, and
|
|
|
|
|
equality implementation. Both have been deprecated since Boost 1.48.
|
|
|
|
|
* Remove use of deprecated config macros.
|
|
|
|
|
* More internal implementation changes, including a much simpler
|
|
|
|
|
implementation of `erase`.
|
|
|
|
|
|
2008-05-11 12:09:07 +00:00
|
|
|
[endsect]
|