]>
git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/callable_traits/test/is_noexcept.cpp
2 Copyright (c) 2016 Barrett Adair
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)
8 #include <boost/callable_traits/detail/config.hpp>
10 #include <boost/callable_traits/is_noexcept.hpp>
13 template<typename Noexcept
, typename NotNoexcept
>
16 CT_ASSERT( is_noexcept
<Noexcept
>::value
17 // for old compilers, TEST_NOEXCEPT_QUAL is empty so types are same
18 || std::is_same
<Noexcept
, NotNoexcept
>::value
);
20 CT_ASSERT(! is_noexcept
<NotNoexcept
>::value
);
23 #define TEST_NOEXCEPT(not_noexcept) test<not_noexcept BOOST_CLBL_TRTS_NOEXCEPT_SPECIFIER, not_noexcept>()
27 TEST_NOEXCEPT(int(*)());
29 #ifndef BOOST_CLBL_TRTS_DISABLE_ABOMINABLE_FUNCTIONS
30 TEST_NOEXCEPT(int() const);
31 TEST_NOEXCEPT(int(...) volatile LREF
);
34 TEST_NOEXCEPT(int(*)(...));
38 TEST_NOEXCEPT(int(foo::*)());
39 TEST_NOEXCEPT(int(foo::*)() const volatile);
40 TEST_NOEXCEPT(int(foo::*)(...));
41 TEST_NOEXCEPT(int(foo::*)(...) const volatile RREF
);