diff options
author | Zhihao Yuan <zy@miator.net> | 2017-12-12 18:42:04 +0000 |
---|---|---|
committer | Zhihao Yuan <zy@miator.net> | 2017-12-12 18:42:04 +0000 |
commit | bcde6e715ef0fd2ae3e092b4104cc9c79bd73cf6 (patch) | |
tree | e80680d1b6be5c2976c2770b63c31fd0ca0d6441 /libcxx/include/variant | |
parent | 81a4a02cbc02143576275dbc6807b9b99c18961e (diff) | |
download | bcm5719-llvm-bcde6e715ef0fd2ae3e092b4104cc9c79bd73cf6.tar.gz bcm5719-llvm-bcde6e715ef0fd2ae3e092b4104cc9c79bd73cf6.zip |
[libcxx] P0604, invoke_result and is_invocable
Summary:
Introduce a new form of `result_of` without function type encoding.
Rename and split `is_callable/is_nothrow_callable` into `is_invocable/is_nothrow_invocable/is_invocable_r/is_nothrow_invocable_r` (and associated types accordingly)
Change function type encoding of previous `is_callable/is_nothrow_callable` traits to conventional template type parameter lists.
Reviewers: EricWF, mclow.lists, bebuch
Reviewed By: EricWF, bebuch
Subscribers: lichray, bebuch, cfe-commits
Differential Revision: https://reviews.llvm.org/D38831
llvm-svn: 320509
Diffstat (limited to 'libcxx/include/variant')
-rw-r--r-- | libcxx/include/variant | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libcxx/include/variant b/libcxx/include/variant index 4bb38b72129..8a66add865a 100644 --- a/libcxx/include/variant +++ b/libcxx/include/variant @@ -582,7 +582,7 @@ struct __variant { private: template <class _Visitor, class... _Values> static constexpr void __std_visit_exhaustive_visitor_check() { - static_assert(is_callable_v<_Visitor(_Values...)>, + static_assert(is_invocable_v<_Visitor, _Values...>, "`std::visit` requires the visitor to be exhaustive."); } |