//===----------------------------------------------------------------------===// // // 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. // //===----------------------------------------------------------------------===// // #include #include #include #ifdef isalnum #error isalnum defined #endif #ifdef isalpha #error isalpha defined #endif #ifdef isblank #error isblank defined #endif #ifdef iscntrl #error iscntrl defined #endif #ifdef isdigit #error isdigit defined #endif #ifdef isgraph #error isgraph defined #endif #ifdef islower #error islower defined #endif #ifdef isprint #error isprint defined #endif #ifdef ispunct #error ispunct defined #endif #ifdef isspace #error isspace defined #endif #ifdef isupper #error isupper defined #endif #ifdef isxdigit #error isxdigit defined #endif #ifdef tolower #error tolower defined #endif #ifdef toupper #error toupper defined #endif int main() { static_assert((std::is_same::value), ""); static_assert((std::is_same::value), ""); static_assert((std::is_same::value), ""); static_assert((std::is_same::value), ""); static_assert((std::is_same::value), ""); static_assert((std::is_same::value), ""); static_assert((std::is_same::value), ""); static_assert((std::is_same::value), ""); static_assert((std::is_same::value), ""); static_assert((std::is_same::value), ""); static_assert((std::is_same::value), ""); static_assert((std::is_same::value), ""); static_assert((std::is_same::value), ""); static_assert((std::is_same::value), ""); assert(isalnum('a')); assert(isalpha('a')); assert(isblank(' ')); assert(!iscntrl(' ')); assert(!isdigit('a')); assert(isgraph('a')); assert(islower('a')); assert(isprint('a')); assert(!ispunct('a')); assert(!isspace('a')); assert(!isupper('a')); assert(isxdigit('a')); assert(tolower('A') == 'a'); assert(toupper('a') == 'A'); }