// Copyright 2017, 2023, 2024 Peter Dimov. // Distributed under the Boost Software License, Version 1.0. // https://www.boost.org/LICENSE_1_0.txt #include #include #include class X; struct Y { }; struct Z { int a; }; enum E { v }; template void test( bool exp ) { using boost::hash2::is_endian_independent; if( exp ) { BOOST_TEST_TRAIT_TRUE((is_endian_independent)); BOOST_TEST_TRAIT_TRUE((is_endian_independent)); } else { BOOST_TEST_TRAIT_FALSE((is_endian_independent)); BOOST_TEST_TRAIT_FALSE((is_endian_independent)); } } int main() { test( true ); test( true ); test( true); test( true ); test( false ); test( false ); test( false ); test( false ); test( false ); test( false ); test( false ); test( false ); test( false ); test( false ); test( false ); // test( false ); test( false ); test( false ); // test( false ); test( false ); test( false ); test( false ); test( false ); test( false ); // test( sizeof(E) == 1 ); // test( true ); test( false ); test( false ); test( false ); // return boost::report_errors(); }