Can't test for noexcept on C++03; std::hash<nullptr_t> isn't available until C++17

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@298580 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Marshall Clow
2017-03-23 06:20:18 +00:00
parent af552ba05a
commit 570f32c8dd
3 changed files with 9 additions and 0 deletions

View File

@@ -41,13 +41,16 @@ test()
assert(h(&i) != h(&j));
}
// can't hash nullptr_t until c++17
void test_nullptr()
{
#if TEST_STD_VER > 14
typedef std::nullptr_t T;
typedef std::hash<T> H;
static_assert((std::is_same<typename H::argument_type, T>::value), "" );
static_assert((std::is_same<typename H::result_type, std::size_t>::value), "" );
ASSERT_NOEXCEPT(H()(T()));
#endif
}
int main()