]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/function_types/test/custom_ccs/member_ccs.cpp
add subtree-ish sources for 12.0.3
[ceph.git] / ceph / src / boost / libs / function_types / test / custom_ccs / member_ccs.cpp
1
2 // (C) Copyright Tobias Schwinger
3 //
4 // Use modification and distribution are subject to the boost Software License,
5 // Version 1.0. (See http://www.boost.org/LICENSE_1_0.txt).
6
7 //------------------------------------------------------------------------------
8
9 #define BOOST_FT_AUTODETECT_CALLING_CONVENTIONS
10
11 #include <boost/mpl/assert.hpp>
12 #include <boost/mpl/vector.hpp>
13 #include <boost/function_types/member_function_pointer.hpp>
14 #include <boost/function_types/is_callable_builtin.hpp>
15
16 #ifndef BOOST_FT_CC_STDCALL
17 # error "test not supported with this compiler/platform"
18 #endif
19
20 namespace ft = boost::function_types;
21 namespace mpl = boost::mpl;
22
23 typedef ft::stdcall_cc cc;
24
25 class C;
26
27 BOOST_MPL_ASSERT((
28 ft::is_callable_builtin<
29 ft::member_function_pointer<mpl::vector<int, C &>, cc>::type
30 >
31 ));
32
33 BOOST_MPL_ASSERT((
34 ft::is_callable_builtin<
35 ft::member_function_pointer<mpl::vector<int, C const &>, cc>::type
36 >
37 ));
38
39 BOOST_MPL_ASSERT((
40 ft::is_callable_builtin<
41 ft::member_function_pointer<mpl::vector<int, C volatile &>, cc>::type
42 >
43 ));
44
45 BOOST_MPL_ASSERT((
46 ft::is_callable_builtin<
47 ft::member_function_pointer<mpl::vector<int, C const volatile &>, cc>::type
48 >
49 ));
50