1// -*- C++ -*- 2//===---------------------------- ctype.h ---------------------------------===// 3// 4// The LLVM Compiler Infrastructure 5// 6// This file is dual licensed under the MIT and the University of Illinois Open 7// Source Licenses. See LICENSE.TXT for details. 8// 9//===----------------------------------------------------------------------===// 10 11#ifndef _LIBCPP_CTYPE_H 12#define _LIBCPP_CTYPE_H 13 14/* 15 ctype.h synopsis 16 17int isalnum(int c); 18int isalpha(int c); 19int isblank(int c); // C99 20int iscntrl(int c); 21int isdigit(int c); 22int isgraph(int c); 23int islower(int c); 24int isprint(int c); 25int ispunct(int c); 26int isspace(int c); 27int isupper(int c); 28int isxdigit(int c); 29int tolower(int c); 30int toupper(int c); 31*/ 32 33#include <__config> 34 35#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) 36#pragma GCC system_header 37#endif 38 39#include_next <ctype.h> 40 41#ifdef __cplusplus 42 43#if defined(_LIBCPP_MSVCRT) 44// We support including .h headers inside 'extern "C"' contexts, so switch 45// back to C++ linkage before including these C++ headers. 46extern "C++" { 47 #include "support/win32/support.h" 48 #include "support/win32/locale_win32.h" 49} 50#endif // _LIBCPP_MSVCRT 51 52#undef isalnum 53#undef isalpha 54#undef isblank 55#undef iscntrl 56#undef isdigit 57#undef isgraph 58#undef islower 59#undef isprint 60#undef ispunct 61#undef isspace 62#undef isupper 63#undef isxdigit 64#undef tolower 65#undef toupper 66 67#endif 68 69#endif // _LIBCPP_CTYPE_H 70