This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[v3 PATCH] Cross-port exception-safety and move fixes of std::any to std::experimental::any.


Tested on Linux-x64. Ok for trunk?

I don't plan to backport this unless somebody shouts.

2016-10-24  Ville Voutilainen  <ville.voutilainen@gmail.com>

    Cross-port exception-safety and move fixes of std::any to
    std::experimental::any.
    * include/std/any (operator=(const any&)):
    Make strongly exception-safe.
    (operator=(any&&)): clear() unconditionally in the case where
    rhs has a value.
    (_Manager_internal<_Tp>::_S_manage): Move in _Op_xfer, don't copy.
    * testsuite/experimental/any/assign/2.cc: Adjust.
    * testsuite/experimental/any/assign/exception.cc: New.
    * testsuite/experimental/any/cons/2.cc: Adjust.
    * testsuite/experimental/any/misc/any_cast_neg.cc: Ajust.

Attachment: any-fixes_crossport.diff
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]