Proposed resolution:
This wording is relative to N4606.
Insert a new paragraph after [unord.hash]/2
[Drafting note: I see no reason to specify whether H<T> is destructible. There's no practical use case for which that would need to be covered. libstdc++ makes it so that H<T> is destructible.]
-2- The template specializations shall meet the requirements of class template hash (20.12.14).
-?- For any type T that is not of integral or enumeration type, or for which neither the library nor the user provides an explicit or partial specialization of the class template hash, the specialization of hash<T> has the following properties:
- is_default_constructible_v<hash<T>> is false
- is_copy_constructible_v<hash<T>> is false
- is_move_constructible_v<hash<T>> is false
- is_copy_assignable_v<hash<T>> is false
- is_move_assignable_v<hash<T>> is false
- hash<T> is not a function object type ([function.objects])
[Note: this means that the specialization of hash exists, but any attempts to use it as a Hash will be ill-formed. — end note]