// Copyright Louis Dionne 2013-2017 // Distributed under the Boost Software License, Version 1.0. // (See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt) #include #include #include namespace hana = boost::hana; // This test makes sure that fundamental types are properly embedded in // each other, when sensible. static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); #if CHAR_MIN < 0 // char is signed static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::equal('a', static_cast('a')), ""); #else // char is unsigned static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::is_embedded{}, ""); static_assert(hana::equal('a', static_cast('a')), ""); #endif int main() { }