diff options
Diffstat (limited to 'test/std/utilities/function.objects/unord.hash/integral.pass.cpp')
| -rw-r--r-- | test/std/utilities/function.objects/unord.hash/integral.pass.cpp | 112 | 
1 files changed, 0 insertions, 112 deletions
diff --git a/test/std/utilities/function.objects/unord.hash/integral.pass.cpp b/test/std/utilities/function.objects/unord.hash/integral.pass.cpp deleted file mode 100644 index ce87f5918b20b..0000000000000 --- a/test/std/utilities/function.objects/unord.hash/integral.pass.cpp +++ /dev/null @@ -1,112 +0,0 @@ -//===----------------------------------------------------------------------===// -// -//                     The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// - -// <functional> - -// template <class T> -// struct hash -//     : public unary_function<T, size_t> -// { -//     size_t operator()(T val) const; -// }; - -#include <functional> -#include <cassert> -#include <type_traits> -#include <cstddef> -#include <limits> - -#include "test_macros.h" - -template <class T> -void -test() -{ -    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())); -    H h; - -    for (int i = 0; i <= 5; ++i) -    { -        T t(static_cast<T>(i)); -        const bool small = std::integral_constant<bool, sizeof(T) <= sizeof(std::size_t)>::value; // avoid compiler warnings -        if (small) -        { -            const std::size_t result = h(t); -            LIBCPP_ASSERT(result == static_cast<size_t>(t)); -            ((void)result); // Prevent unused warning -        } -    } -} - -int main() -{ -    test<bool>(); -    test<char>(); -    test<signed char>(); -    test<unsigned char>(); -    test<char16_t>(); -    test<char32_t>(); -    test<wchar_t>(); -    test<short>(); -    test<unsigned short>(); -    test<int>(); -    test<unsigned int>(); -    test<long>(); -    test<unsigned long>(); -    test<long long>(); -    test<unsigned long long>(); - -//  LWG #2119 -    test<std::ptrdiff_t>(); -    test<size_t>(); - -    test<int8_t>(); -    test<int16_t>(); -    test<int32_t>(); -    test<int64_t>(); - -    test<int_fast8_t>(); -    test<int_fast16_t>(); -    test<int_fast32_t>(); -    test<int_fast64_t>(); - -    test<int_least8_t>(); -    test<int_least16_t>(); -    test<int_least32_t>(); -    test<int_least64_t>(); - -    test<intmax_t>(); -    test<intptr_t>(); - -    test<uint8_t>(); -    test<uint16_t>(); -    test<uint32_t>(); -    test<uint64_t>(); - -    test<uint_fast8_t>(); -    test<uint_fast16_t>(); -    test<uint_fast32_t>(); -    test<uint_fast64_t>(); - -    test<uint_least8_t>(); -    test<uint_least16_t>(); -    test<uint_least32_t>(); -    test<uint_least64_t>(); - -    test<uintmax_t>(); -    test<uintptr_t>(); - -#ifndef _LIBCPP_HAS_NO_INT128 -    test<__int128_t>(); -    test<__uint128_t>(); -#endif -}  | 
