// -*- C++ -*- /*************************************************************************** * * cerrno - C++ Standard library interface to the ANSI C header errno.h * * $Id$ * *************************************************************************** * * Copyright (c) 1994-2005 Quovadx, Inc., acting through its Rogue Wave * Software division. Licensed 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. * **************************************************************************/ #include #ifndef _RWSTD_NO_PURE_C_HEADERS # include #else #ifndef _RWSTD_NO_DEPRECATED_C_HEADERS #ifndef _RWSTD_NAMESPACE_STD_OPEN #define _RWSTD_NAMESPACE_STD_OPEN 3 _RWSTD_NAMESPACE (std) { #endif // _RWSTD_NAMESPACE_STD_OPEN #include _RWSTD_ANSI_C_ERRNO_H #if _RWSTD_NAMESPACE_STD_OPEN == 3 # undef _RWSTD_NAMESPACE_STD_OPEN } // namespace std #endif // _RWSTD_NAMESPACE_STD_OPEN == 3 #else // if defined (_RWSTD_NO_DEPRECATED_C_HEADERS) #ifndef _RWSTD_CERRNO_INCLUDED #define _RWSTD_CERRNO_INCLUDED #if !defined (errno) \ || !defined (EDOM) || !defined (ERANGE) || !defined (EAGAIN) # include _RWSTD_ANSI_C_ERRNO_H #endif // errno ... #if !defined (_RWSTD_NO_NAMESPACE) && !defined (_RWSTD_NO_USING_LIBC_IN_STD) namespace std { // 17.4.1.2, p5 - errno may be a macro #ifndef errno using ::errno; // lwg issue 310 - errno shall be a macro # define errno errno #endif // errno } // std #endif // !_RWSTD_NO_NAMESPACE && !_RWSTD_NO_USING_LIBC_IN_STD #endif // _RWSTD_CERRNO_INCLUDED #endif // _RWSTD_NO_DEPRECATED_C_HEADERS #endif // _RWSTD_NO_PURE_C_HEADERS