Merge branch 'develop'

This commit is contained in:
Daniel James
2018-03-06 22:27:23 +00:00
2 changed files with 33 additions and 3 deletions

View File

@ -54,7 +54,7 @@ First official release.
Document that the equality and inequality operators are undefined for two Document that the equality and inequality operators are undefined for two
objects if their equality predicates aren't equivalent. Thanks to Daniel objects if their equality predicates aren't equivalent. Thanks to Daniel
Krügler. Krügler.
* [@https://svn.boost.org/trac/boost/ticket/1710 Ticket 1710]: * [@https://svn.boost.org/trac/boost/ticket/1710 Ticket 1710]:
Use a larger prime number list. Thanks to Thorsten Ottosen and Hervé Use a larger prime number list. Thanks to Thorsten Ottosen and Hervé
Brönnimann. Brönnimann.
* Use * Use
@ -107,7 +107,7 @@ First official release.
* Buckets are allocated lazily which means that constructing an empty container * Buckets are allocated lazily which means that constructing an empty container
will not allocate any memory. will not allocate any memory.
[h2 Boost 1.42.0] [h2 Boost 1.42.0]
* Support instantiating the containers with incomplete value types. * Support instantiating the containers with incomplete value types.
@ -327,4 +327,34 @@ C++11 support has resulted in some breaking changes:
* Simpler move construction implementation. * Simpler move construction implementation.
* Documentation fixes ([pull_request 6]). * Documentation fixes ([pull_request 6]).
[h2 Boost 1.67.0]
* Improved C++17 support:
* Add template deduction guides from the standard.
* Use a simple implementation of `optional` in node handles, so
that they're closer to the standard.
* Add missing `noexcept` specifications to `swap`, `operator=`
and node handles, and change the implementation to match.
Using `std::allocator_traits::is_always_equal`, or our own
implementation when not available, and
`boost::is_nothrow_swappable` in the implementation.
* Improved C++20 support:
* Use `boost::to_address`, which has the proposed C++20 semantics,
rather than the old custom implementation.
* Add `element_type` to iterators, so that `std::pointer_traits`
will work.
* Use `std::piecewise_construct` on recent versions of Visual C++,
and other uses of the Dinkumware standard library,
now using Boost.Predef to check compiler and library versions.
* Use `std::iterator_traits` rather than the boost iterator traits
in order to remove dependency on Boost.Iterator.
* Remove iterators' inheritance from `std::iterator`, which is
deprecated in C++17, thanks to Daniela Engert
([@https://github.com/boostorg/unordered/pull/7 PR#7]).
* Stop using `BOOST_DEDUCED_TYPENAME`.
* Update some Boost include paths.
* Rename some internal methods, and variables.
* Various testing improvements.
* Miscellaneous internal changes.
[endsect] [endsect]

View File

@ -965,7 +965,7 @@ namespace boost {
#endif #endif
//////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////
// TRAITS TYPE DEDETION MECHANISM // TRAITS TYPE DETECTION MECHANISM
// //
// Used to implement traits that use a type if present, or a // Used to implement traits that use a type if present, or a
// default otherwise. // default otherwise.