diff options
| author | Marshall Clow <mclow.lists@gmail.com> | 2017-03-23 02:40:28 +0000 |
|---|---|---|
| committer | Marshall Clow <mclow.lists@gmail.com> | 2017-03-23 02:40:28 +0000 |
| commit | 7c803385a75cf59c1730e8bdcf295c5a47ce36f2 (patch) | |
| tree | a0da2795868760116fffd74d409655c50fe9ce88 /libcxx/test/std/utilities/optional | |
| parent | 6974dd6412cd9cbb0849cc77b7381ad3b2a97fff (diff) | |
| download | bcm5719-llvm-7c803385a75cf59c1730e8bdcf295c5a47ce36f2.tar.gz bcm5719-llvm-7c803385a75cf59c1730e8bdcf295c5a47ce36f2.zip | |
Implement P0599: 'noexcept for hash functions'. Fix a couple of hash functions (optional<T> and unique_ptr<T>) which were mistakenly marked as 'noexcept'. Reviewed as https://reviews.llvm.org/D31234
llvm-svn: 298573
Diffstat (limited to 'libcxx/test/std/utilities/optional')
| -rw-r--r-- | libcxx/test/std/utilities/optional/optional.hash/hash.pass.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/libcxx/test/std/utilities/optional/optional.hash/hash.pass.cpp b/libcxx/test/std/utilities/optional/optional.hash/hash.pass.cpp index ea89dc3bd92..8f94d6be653 100644 --- a/libcxx/test/std/utilities/optional/optional.hash/hash.pass.cpp +++ b/libcxx/test/std/utilities/optional/optional.hash/hash.pass.cpp @@ -36,6 +36,7 @@ int main() { typedef int T; optional<T> opt; + ASSERT_NOT_NOEXCEPT(std::hash<optional<T>>()(opt)); assert(std::hash<optional<T>>{}(opt) == nullopt_hash); opt = 2; assert(std::hash<optional<T>>{}(opt) == std::hash<T>{}(*opt)); @@ -43,6 +44,7 @@ int main() { typedef std::string T; optional<T> opt; + ASSERT_NOT_NOEXCEPT(std::hash<optional<T>>()(opt)); assert(std::hash<optional<T>>{}(opt) == nullopt_hash); opt = std::string("123"); assert(std::hash<optional<T>>{}(opt) == std::hash<T>{}(*opt)); @@ -50,6 +52,7 @@ int main() { typedef std::unique_ptr<int> T; optional<T> opt; + ASSERT_NOT_NOEXCEPT(std::hash<optional<T>>()(opt)); assert(std::hash<optional<T>>{}(opt) == nullopt_hash); opt = std::unique_ptr<int>(new int(3)); assert(std::hash<optional<T>>{}(opt) == std::hash<T>{}(*opt)); |

