diff --git a/test/cxx14_aliases_test.cpp b/test/cxx14_aliases_test.cpp new file mode 100644 index 0000000..3f7d6ab --- /dev/null +++ b/test/cxx14_aliases_test.cpp @@ -0,0 +1,46 @@ + +// Copyright Peter Dimov 2017 +// Use, modification and distribution are subject to the +// Boost Software License, Version 1.0. (See accompanying file +// LICENSE_1_0.txt or copy at http://www.tt.org/LICENSE_1_0.txt) + +#include "test.hpp" +#include "check_type.hpp" +#ifdef TEST_STD +# include +#else +# include +#endif +#include + +TT_TEST_BEGIN(cxx14_aliases_test) +{ +#if !defined(BOOST_NO_CXX11_TEMPLATE_ALIASES) + + BOOST_CHECK_TYPE(tt::add_const_t, int const); + BOOST_CHECK_TYPE(tt::add_cv_t, int const volatile); + BOOST_CHECK_TYPE(tt::add_lvalue_reference_t, int&); + BOOST_CHECK_TYPE(tt::add_pointer_t, int*); + BOOST_CHECK_TYPE(tt::add_rvalue_reference_t, int&&); + BOOST_CHECK_TYPE(tt::add_volatile_t, int volatile); + BOOST_CHECK_TYPE3(tt::common_type_t, int); + BOOST_CHECK_TYPE4(tt::conditional_t, char); + BOOST_CHECK_TYPE4(tt::conditional_t, short); + BOOST_CHECK_TYPE3(tt::copy_cv_t, char const volatile); + BOOST_CHECK_TYPE(tt::decay_t, char const*); + BOOST_CHECK_TYPE(tt::make_signed_t, signed char); + BOOST_CHECK_TYPE(tt::make_unsigned_t, unsigned char); + BOOST_CHECK_TYPE(tt::remove_all_extents_t, int); + BOOST_CHECK_TYPE(tt::remove_const_t, int); + BOOST_CHECK_TYPE(tt::remove_cv_t, int); + BOOST_CHECK_TYPE(tt::remove_extent_t, int); + BOOST_CHECK_TYPE(tt::remove_pointer_t, int); + BOOST_CHECK_TYPE(tt::remove_reference_t, int); + BOOST_CHECK_TYPE(tt::remove_volatile_t, int); + BOOST_CHECK_TYPE(tt::floating_point_promotion_t, double); + BOOST_CHECK_TYPE(tt::integral_promotion_t, int); + BOOST_CHECK_TYPE(tt::promote_t, int); + +#endif +} +TT_TEST_END