diff options
-rw-r--r-- | libstdc++-v3/config/os/newlib/ctype_base.h | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/libstdc++-v3/config/os/newlib/ctype_base.h b/libstdc++-v3/config/os/newlib/ctype_base.h index 33654d7..3a7477a 100644 --- a/libstdc++-v3/config/os/newlib/ctype_base.h +++ b/libstdc++-v3/config/os/newlib/ctype_base.h @@ -41,6 +41,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION // NB: Offsets into ctype<char>::_M_table force a particular size // on the mask type. Because of this, we don't use an enum. typedef char mask; +#if defined _U && defined _L && defined _N && defined _S static const mask upper = _U; static const mask lower = _L; static const mask alpha = _U | _L; @@ -52,8 +53,24 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION static const mask cntrl = _C; static const mask punct = _P; static const mask alnum = _U | _L | _N; -#if __cplusplus >= 201103L +# if __cplusplus >= 201103L static const mask blank = space; +# endif +#else + static const mask upper = _ISupper; + static const mask lower = _ISlower; + static const mask alpha = _ISupper | _ISlower; + static const mask digit = _ISdigit; + static const mask xdigit = _ISxdigit | _ISdigit; + static const mask space = _ISspace; + static const mask print = _ISpunct | _ISupper | _ISlower | _ISdigit | _ISblank; + static const mask graph = _ISpunct | _ISupper | _ISlower | _ISdigit; + static const mask cntrl = _IScntrl; + static const mask punct = _ISpunct; + static const mask alnum = _ISupper | _ISlower | _ISdigit; +# if __cplusplus >= 201103L + static const mask blank = _ISspace | _ISblank; +# endif #endif }; |