Home | History | Annotate | Download | only in v1
      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 
     17 int isalnum(int c);
     18 int isalpha(int c);
     19 int isblank(int c);  // C99
     20 int iscntrl(int c);
     21 int isdigit(int c);
     22 int isgraph(int c);
     23 int islower(int c);
     24 int isprint(int c);
     25 int ispunct(int c);
     26 int isspace(int c);
     27 int isupper(int c);
     28 int isxdigit(int c);
     29 int tolower(int c);
     30 int 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.
     46 extern "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