//===----------------------------------------------------------------------===// // // The LLVM Compiler Infrastructure // // This file is dual licensed under the MIT and the University of Illinois Open // Source Licenses. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // type_traits // make_signed #include enum Enum {zero, one_}; enum BigEnum { bzero, big = 0xFFFFFFFFFFFFFFFFULL }; int main() { static_assert((std::is_same::type, signed char>::value), ""); static_assert((std::is_same::type, signed char>::value), ""); static_assert((std::is_same::type, signed char>::value), ""); static_assert((std::is_same::type, signed short>::value), ""); static_assert((std::is_same::type, signed short>::value), ""); static_assert((std::is_same::type, signed int>::value), ""); static_assert((std::is_same::type, signed int>::value), ""); static_assert((std::is_same::type, signed long>::value), ""); static_assert((std::is_same::type, long>::value), ""); static_assert((std::is_same::type, signed long long>::value), ""); static_assert((std::is_same::type, signed long long>::value), ""); static_assert((std::is_same::type, int>::value), ""); static_assert((std::is_same::type, const int>::value), ""); static_assert((std::is_same::type, const int>::value), ""); static_assert((std::is_same::type, std::conditional::type>::value), ""); }