// Copyright 2022 Peter Dimov. // Distributed under the Boost Software License, Version 1.0. // https://www.boost.org/LICENSE_1_0.txt #include struct X1 { char const* begin() const; char const* end() const; }; struct X2 { char const* begin() const; char const* end() const; }; namespace boost { namespace container_hash { template struct is_range; template<> struct is_range: boost::false_type {}; } // namespace container_hash } // namespace boost #include #include int main() { using boost::container_hash::is_range; #if !defined(BOOST_NO_CXX11_DECLTYPE) && !defined(BOOST_NO_SFINAE_EXPR) && !BOOST_WORKAROUND(BOOST_GCC, < 40700) BOOST_TEST_TRAIT_TRUE((is_range)); #endif BOOST_TEST_TRAIT_FALSE((is_range)); return boost::report_errors(); }