]>
git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/spirit/test/x3/unused_type.cpp
1 /*=============================================================================
2 Copyright (c) 2019 Nikita Kniazev
4 Use, modification and distribution is subject to the Boost Software
5 License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
6 http://www.boost.org/LICENSE_1_0.txt)
7 =============================================================================*/
9 #include <boost/spirit/home/x3/support/unused.hpp>
10 #include <type_traits>
13 void test_use(boost::spirit::x3::unused_type
) {}
17 using boost::spirit::x3::unused
;
18 using boost::spirit::x3::unused_type
;
20 static_assert(std::is_trivial
<unused_type
>::value
, "");
22 unused_type unused_mut
;
23 static_assert(std::is_same
<decltype((unused
)), unused_type
const&>::value
, "");
24 static_assert(std::is_same
<decltype((unused_mut
)), unused_type
&>::value
, "");
25 static_assert(std::is_same
<decltype(unused
= 123), unused_type
const&>::value
, "");
26 static_assert(std::is_same
<decltype(unused
= unused
), unused_type
const&>::value
, "");
27 static_assert(std::is_same
<decltype(unused
= unused_mut
), unused_type
const&>::value
, "");
28 static_assert(std::is_same
<decltype(unused_mut
= 123), unused_type
&>::value
, "");
29 static_assert(std::is_same
<decltype(unused_mut
= unused
), unused_type
&>::value
, "");
30 static_assert(std::is_same
<decltype(unused_mut
= unused_mut
), unused_type
&>::value
, "");
37 std::cout
<< unused_mut
;
38 std::cin
>> unused_mut
;