gcc/libstdc++-v3/include
Ville Voutilainen 509912a611 Make poisoned hashes SFINAE away the call operator of the hash.
* include/bits/functional_hash.h
(__poison_hash::__enable_hash_call): New.
* include/std/optional (__optional_hash_call_base): New.
(hash<optional<_Tp>>): Derive from the new base,
move the hash function into that base.
* include/std/variant (__variant_hash_call_base_impl): New.
(__variant_hash_call_base): Likewise.
(hash<variant<_Types...>>): Derive from the new base,
move the hash function into that base.
* testsuite/20_util/optional/hash.cc: Add tests for is_callable.
* testsuite/20_util/variant/hash.cc: Likewise.

From-SVN: r244748
2017-01-21 17:38:23 +02:00
..
backward Update copyright years. 2017-01-01 13:07:43 +01:00
bits Make poisoned hashes SFINAE away the call operator of the hash. 2017-01-21 17:38:23 +02:00
c Update copyright years. 2017-01-01 13:07:43 +01:00
c_compatibility Update copyright years. 2017-01-01 13:07:43 +01:00
c_global PR79017 workaround incomplete C99 math on darwin 2017-01-09 17:15:58 +00:00
c_std Update copyright years. 2017-01-01 13:07:43 +01:00
debug Update copyright years. 2017-01-01 13:07:43 +01:00
decimal Update copyright years. 2017-01-01 13:07:43 +01:00
experimental PR69321 fix any_cast<T>(any*) for non-copyable T 2017-01-20 01:22:54 +00:00
ext PR69240 Define inequality operators for <random> param types 2017-01-20 15:28:48 +00:00
parallel Update copyright years. 2017-01-01 13:07:43 +01:00
precompiled Update copyright years. 2017-01-01 13:07:43 +01:00
profile Remove unused include from Profile Mode header 2017-01-13 17:20:23 +00:00
std Make poisoned hashes SFINAE away the call operator of the hash. 2017-01-21 17:38:23 +02:00
tr1 Update copyright years. 2017-01-01 13:07:43 +01:00
tr2 Update copyright years. 2017-01-01 13:07:43 +01:00
Makefile.am PR78905 define _GLIBCXX_RELEASE macro 2017-01-19 16:40:46 +00:00
Makefile.in PR78905 define _GLIBCXX_RELEASE macro 2017-01-19 16:40:46 +00:00