// -*- C++ -*- /*************************************************************************** * * climits - C++ Standard library interface to the ANSI C header limits.h * * $Id$ * *************************************************************************** * * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed * with this work for additional information regarding copyright * ownership. The ASF licenses this file to you under the Apache * License, Version 2.0 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy of * the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or * implied. See the License for the specific language governing * permissions and limitations under the License. * * Copyright 1994-2008 Rogue Wave Software, Inc. * **************************************************************************/ #ifndef _RWSTD_CLIMITS_INCLUDED #define _RWSTD_CLIMITS_INCLUDED #include #if !defined (_RWSTD_NO_PURE_C_HEADERS) || defined (_RWSTD_NO_LIMITS_H) // 18.2.2, p1 #ifndef CHAR_BIT # define CHAR_BIT _RWSTD_CHAR_BIT #endif // CHAR_BIT #ifndef CHAR_MAX # define CHAR_MAX _RWSTD_CHAR_MAX #endif // CHAR_MAX #ifndef CHAR_MIN # define CHAR_MIN _RWSTD_CHAR_MIN #endif // CHAR_MIN #ifndef SCHAR_MAX # define SCHAR_MAX _RWSTD_SCHAR_MAX #endif // SCHAR_MAX #ifndef SCHAR_MIN # define SCHAR_MIN _RWSTD_SCHAR_MIN #endif // SCHAR_MIN #ifndef UCHAR_MAX # define UCHAR_MAX _RWSTD_UCHAR_MAX #endif // UCHAR_MAX #ifndef SHRT_MAX # define SHRT_MAX _RWSTD_SHRT_MAX #endif // SHRT_MAX #ifndef SHRT_MIN # define SHRT_MIN _RWSTD_SHRT_MIN #endif // SHRT_MIN #ifndef USHRT_MAX # define USHRT_MAX _RWSTD_USHRT_MAX #endif // USHRT_MAX #ifndef INT_MAX # define INT_MAX _RWSTD_INT_MAX #endif // INT_MAX #ifndef INT_MIN # define INT_MIN _RWSTD_INT_MIN #endif // INT_MIN #ifndef UINT_MAX # define UINT_MAX _RWSTD_UINT_MAX #endif // UINT_MAX #ifndef LONG_MAX # define LONG_MAX _RWSTD_LONG_MAX #endif // LONG_MAX #ifndef LONG_MIN # define LONG_MIN _RWSTD_LONG_MIN #endif // LONG_MIN #ifndef ULONG_MAX # define ULONG_MAX _RWSTD_ULONG_MAX #endif // ULONG_MAX #ifndef MB_LEN_MAX # define MB_LEN_MAX _RWSTD_MB_LEN_MAX #endif // MB_LEN_MAX #else // if defined (_RWSTD_NO_PURE_C_HEADERS) # ifdef __GNUC__ # if __GNUC__ >= 3 // silence gcc warnings about #include_next below # pragma GCC system_header # endif // gcc >= 3 // use the gcc extension to #include the compiler's limits.h # include_next # else # include _RWSTD_ANSI_C_LIMITS_H # endif // gcc #endif // _RWSTD_NO_PURE_C_HEADERS #if (MB_LEN_MAX != _RWSTD_MB_LEN_MAX) # undef MB_LEN_MAX # define MB_LEN_MAX _RWSTD_MB_LEN_MAX #endif // MB_LEN_MAX #endif // _RWSTD_CLIMITS_INCLUDED