- 
          Added two new in-place constructors. They work similarly to emplace()functions: they initialize the contained value by perfect-forwarding the
          obtained arguments. One constructor always initializes the contained value,
          the other based on a boolean condition.
- 
          Syntax o =
          {}now correctly un-initializes
          optional, just like instd::optional.
- 
          Fixed Trac #12203.
        
- 
          Fixed Trac #12563.
        
- 
          Now boost::optionalis specialized for reference
          parameters. This addresses a couple of issues:
- 
                the sizeofof 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 (Trac
          #5193).
        
- 
          Made the perfect-forwarding constructor SFINAE-friendly, which fixes Trac #12002.
          However, this only works in the newer platforms that correctly implement
          C++11 <type_traits>.
- 
          Fixed Trac #10445.
        
- 
          Changed the implementation of boost::noneagain. Now it is a const object with internal linkage (as any other tag).
          This fixes Trac
          #11203.
- 
          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 Trac #11241.
        
- 
          boost::none_tis no longer convertible from
          literal0. This avoids a bug
          whereoptional<rational<int>> oi = 0;would
          initialize an optional object with no contained value.
- 
          Improved the trick that prevents streaming out optionalwithout headeroptional_io.hppby using safe-bool idiom. This addresses Trac
          #10825.
- 
          IOStream operators are now mentioned in documentation.
        
- 
          Added a way to manually disable move semantics: just define macro BOOST_OPTIONAL_CONFIG_NO_RVALUE_REFERENCES.
          This can be used to work around Trac
          #10399.
- 
          It is no longer possible to assign optional<U>tooptional<T>whenUis not assignable or convertible toT(Trac #11087).
- 
          Value accessors now work correctly on rvalues of optional<T&>(Trac
          #10839).
- 
          Git pull #9:
          "Supply <string>to fix C++03 compile error onlogic_error("...")".
- 
          Added support for rvalue references. Now optional<T>works with moveable but non-copyableT's,
- 
          Improved swap(now uses
          move operations),
- 
          Added function emplace(). This is the last of the requests from
          Trac #1841,
- 
          optionalis moveable, including
          conditionalnoexceptspecifications,
          which make itmove_if_noexcept-friendly,
- 
          Using explicit operator bool() on platforms that support it (Trac
          #4227) (breaking change),
        
- 
          Forward declaration of operator<<(ostream&, optional
          const&)to prevent inadvertent incorrect serialization of optional objects,
- 
          Removed deprecated function reset()from examples (Trac
          #9005),
- 
          Equality comparison with boost::nonedoes not require thatTbe EqualityComparable,
- 
          Optional rvalue references are explicitly disallowed,
        
- 
          Binding temporaries to optional references is explicitly disallowed (breaking
          change),
        
- 
          More ways to access the contained value, functions value(),value_or(),value_or_eval(),
- 
          Updated and reorganized documentation, added tutorial and quick guide sections.