]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/callable_traits/test/apply_member_pointer_pmd.cpp
update sources to v12.2.3
[ceph.git] / ceph / src / boost / libs / callable_traits / test / apply_member_pointer_pmd.cpp
1 /*<-
2 Copyright (c) 2016 arett Adair
3
4 Distributed under the Boost Software License, Version 1.0.
5 (See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt)
6 ->*/
7
8
9 #include <boost/callable_traits/apply_member_pointer.hpp>
10 #include "test.hpp"
11
12 struct foo;
13
14 template<typename Input, typename Output>
15 void test_case() {
16 assert_same<TRAIT(apply_member_pointer, Input, foo), Output>();
17 }
18
19 int main() {
20 test_case<int, int foo::*>();
21 test_case<int &, int foo::*>();
22 test_case<int const, int const foo::*>();
23 test_case<int const &, int const foo::*>();
24 test_case<int volatile, int volatile foo::*>();
25 test_case<int volatile &, int volatile foo::*>();
26
27 //member data - function pointer
28 test_case<int(* const)(), int(* const foo::*)()>();
29 test_case<int(* const &)(), int(* const foo::*)()>();
30 }
31