Merge branch 'develop'

Conflicts:
	doc/91_relnotes.qbk
	doc/html/boost_optional/relnotes.html
	doc/html/index.html
	include/boost/none_t.hpp
This commit is contained in:
Andrzej Krzemienski
2016-02-22 23:21:32 +01:00
87 changed files with 8992 additions and 1137 deletions

View File

@ -1,7 +1,7 @@
[/
Boost.Optional
Copyright (c) 2015 Andrzej Krzemienski
Copyright (c) 2015, 2016 Andrzej Krzemienski
Distributed under the Boost Software License, Version 1.0.
(See accompanying file LICENSE_1_0.txt or copy at
@ -11,11 +11,25 @@
[section:relnotes Release Notes]
[heading Boost Release 1.61]
* Now `boost::optional` is specialized for reference parameters. This addresses a couple of issues:
* the `sizeof` of optional reference is that of a pointer,
* some bugs connected to copying optional references are gone,
* all run-time bugs caused by incorrect reference binding on some compilers are now turned into compile-time errors,
* you can swap optional references: it is like swapping pointers: shalow, underlying objects are not affected,
* optional references to abstract types work.
* Documented nested typedefs ([@https://svn.boost.org/trac/boost/ticket/5193 Trac #5193]).
* Made the perfect-forwarding constructor SFINAE-friendly, which fixes [@https://svn.boost.org/trac/boost/ticket/12002 Trac #12002]. However, this only works in the newer compilers that implement variadic macros and `decltype` correctly.
[heading Boost Release 1.60]
* Changed the implementation of `boost::none` again. Now it is a const object with internal linkage (as any other tag). This fixes [@https://svn.boost.org/trac/boost/ticket/11203 Trac #11203].
[heading Boost Release 1.59]
[heading Boost Release 1.59]
* For C++03 compilers, added 0-argument overload for member function `emplace()`, and therewith removed the dependency on `<boost/utility/in_place_factory.hpp>`.
* Fixed [@https://svn.boost.org/trac/boost/ticket/11241 Trac #11241].