163d1a8abSmrg// -*- C++ -*- forwarding header. 263d1a8abSmrg 3*ec02198aSmrg// Copyright (C) 1997-2020 Free Software Foundation, Inc. 463d1a8abSmrg// 563d1a8abSmrg// This file is part of the GNU ISO C++ Library. This library is free 663d1a8abSmrg// software; you can redistribute it and/or modify it under the 763d1a8abSmrg// terms of the GNU General Public License as published by the 863d1a8abSmrg// Free Software Foundation; either version 3, or (at your option) 963d1a8abSmrg// any later version. 1063d1a8abSmrg 1163d1a8abSmrg// This library is distributed in the hope that it will be useful, 1263d1a8abSmrg// but WITHOUT ANY WARRANTY; without even the implied warranty of 1363d1a8abSmrg// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 1463d1a8abSmrg// GNU General Public License for more details. 1563d1a8abSmrg 1663d1a8abSmrg// Under Section 7 of GPL version 3, you are granted additional 1763d1a8abSmrg// permissions described in the GCC Runtime Library Exception, version 1863d1a8abSmrg// 3.1, as published by the Free Software Foundation. 1963d1a8abSmrg 2063d1a8abSmrg// You should have received a copy of the GNU General Public License and 2163d1a8abSmrg// a copy of the GCC Runtime Library Exception along with this program; 2263d1a8abSmrg// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see 2363d1a8abSmrg// <http://www.gnu.org/licenses/>. 2463d1a8abSmrg 2563d1a8abSmrg/** @file include/cctype 2663d1a8abSmrg * This is a Standard C++ Library file. You should @c \#include this file 2763d1a8abSmrg * in your programs, rather than any of the @a *.h implementation files. 2863d1a8abSmrg * 2963d1a8abSmrg * This is the C++ version of the Standard C Library header @c ctype.h, 3063d1a8abSmrg * and its contents are (mostly) the same as that header, but are all 3163d1a8abSmrg * contained in the namespace @c std (except for names which are defined 3263d1a8abSmrg * as macros in C). 3363d1a8abSmrg */ 3463d1a8abSmrg 3563d1a8abSmrg// 3663d1a8abSmrg// ISO C++ 14882: <ccytpe> 3763d1a8abSmrg// 3863d1a8abSmrg 3963d1a8abSmrg#pragma GCC system_header 4063d1a8abSmrg 4163d1a8abSmrg#include <bits/c++config.h> 4263d1a8abSmrg#include <ctype.h> 4363d1a8abSmrg 4463d1a8abSmrg#ifndef _GLIBCXX_CCTYPE 4563d1a8abSmrg#define _GLIBCXX_CCTYPE 1 4663d1a8abSmrg 4763d1a8abSmrg// Get rid of those macros defined in <ctype.h> in lieu of real functions. 4863d1a8abSmrg#undef isalnum 4963d1a8abSmrg#undef isalpha 5063d1a8abSmrg#undef iscntrl 5163d1a8abSmrg#undef isdigit 5263d1a8abSmrg#undef isgraph 5363d1a8abSmrg#undef islower 5463d1a8abSmrg#undef isprint 5563d1a8abSmrg#undef ispunct 5663d1a8abSmrg#undef isspace 5763d1a8abSmrg#undef isupper 5863d1a8abSmrg#undef isxdigit 5963d1a8abSmrg#undef tolower 6063d1a8abSmrg#undef toupper 6163d1a8abSmrg 6263d1a8abSmrgnamespace std 6363d1a8abSmrg{ 6463d1a8abSmrg using ::isalnum; 6563d1a8abSmrg using ::isalpha; 6663d1a8abSmrg using ::iscntrl; 6763d1a8abSmrg using ::isdigit; 6863d1a8abSmrg using ::isgraph; 6963d1a8abSmrg using ::islower; 7063d1a8abSmrg using ::isprint; 7163d1a8abSmrg using ::ispunct; 7263d1a8abSmrg using ::isspace; 7363d1a8abSmrg using ::isupper; 7463d1a8abSmrg using ::isxdigit; 7563d1a8abSmrg using ::tolower; 7663d1a8abSmrg using ::toupper; 7763d1a8abSmrg} // namespace std 7863d1a8abSmrg 7963d1a8abSmrg#if __cplusplus >= 201103L 8063d1a8abSmrg 8163d1a8abSmrg#ifdef _GLIBCXX_USE_C99_CTYPE_TR1 8263d1a8abSmrg 8363d1a8abSmrg#undef isblank 8463d1a8abSmrg 8563d1a8abSmrgnamespace std 8663d1a8abSmrg{ 8763d1a8abSmrg using ::isblank; 8863d1a8abSmrg} // namespace std 8963d1a8abSmrg 9063d1a8abSmrg#endif // _GLIBCXX_USE_C99_CTYPE_TR1 9163d1a8abSmrg 9263d1a8abSmrg#endif // C++11 9363d1a8abSmrg 9463d1a8abSmrg#endif 95