r242402 - in /trunk/libstdc++-v3: ChangeLog inc...
ville@gcc.gnu.org
ville@gcc.gnu.org
Mon Nov 14 21:22:00 GMT 2016
Author: ville
Date: Mon Nov 14 21:22:53 2016
New Revision: 242402
URL: https://gcc.gnu.org/viewcvs?rev=242402&root=gcc&view=rev
Log:
Implement P0513R0, Poisoning the Hash.
* include/bits/functional_hash.h (__poison_hash): New.
* include/bits/unique_ptr.h
(hash<unique_ptr<_Tp, _Dp>>): Derive from __poison_hash.
* include/std/optional (hash<optional<_Tp>>): Likewise.
* include/std/variant (hash<variant<_Types...>>): Likewise.
* testsuite/20_util/default_delete/48631_neg.cc: Adjust.
* testsuite/20_util/default_delete/void_neg.cc: Likewise.
* testsuite/20_util/optional/hash.cc: New.
* testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust.
* testsuite/20_util/unique_ptr/cons/cv_qual_neg.cc: Adjust.
* testsuite/20_util/unique_ptr/hash/1.cc: Add tests for
poisoned fancy pointer hashes.
* testsuite/20_util/variant/hash.cc: New.
Added:
trunk/libstdc++-v3/testsuite/20_util/optional/hash.cc
- copied, changed from r242401, trunk/libstdc++-v3/testsuite/20_util/default_delete/void_neg.cc
trunk/libstdc++-v3/testsuite/20_util/variant/hash.cc
- copied, changed from r242401, trunk/libstdc++-v3/testsuite/20_util/default_delete/void_neg.cc
Modified:
trunk/libstdc++-v3/ChangeLog
trunk/libstdc++-v3/include/bits/functional_hash.h
trunk/libstdc++-v3/include/bits/unique_ptr.h
trunk/libstdc++-v3/include/std/optional
trunk/libstdc++-v3/include/std/variant
trunk/libstdc++-v3/testsuite/20_util/default_delete/48631_neg.cc
trunk/libstdc++-v3/testsuite/20_util/default_delete/void_neg.cc
trunk/libstdc++-v3/testsuite/20_util/unique_ptr/assign/48635_neg.cc
trunk/libstdc++-v3/testsuite/20_util/unique_ptr/cons/cv_qual_neg.cc
trunk/libstdc++-v3/testsuite/20_util/unique_ptr/hash/1.cc
More information about the Gcc-cvs
mailing list