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