1 // boost/cstdlib.hpp header ------------------------------------------------// 2 3 // Copyright Beman Dawes 2001. Distributed under the Boost 4 // Software License, Version 1.0. (See accompanying file 5 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 6 7 // See http://www.boost.org/libs/utility/cstdlib.html for documentation. 8 9 // Revision History 10 // 26 Feb 01 Initial version (Beman Dawes) 11 12 #ifndef BOOST_CSTDLIB_HPP 13 #define BOOST_CSTDLIB_HPP 14 15 #include <cstdlib> 16 17 namespace boost 18 { 19 // The intent is to propose the following for addition to namespace std 20 // in the C++ Standard Library, and to then deprecate EXIT_SUCCESS and 21 // EXIT_FAILURE. As an implementation detail, this header defines the 22 // new constants in terms of EXIT_SUCCESS and EXIT_FAILURE. In a new 23 // standard, the constants would be implementation-defined, although it 24 // might be worthwhile to "suggest" (which a standard is allowed to do) 25 // values of 0 and 1 respectively. 26 27 // Rationale for having multiple failure values: some environments may 28 // wish to distinguish between different classes of errors. 29 // Rationale for choice of values: programs often use values < 100 for 30 // their own error reporting. Values > 255 are sometimes reserved for 31 // system detected errors. 200/201 were suggested to minimize conflict. 32 33 const int exit_success = EXIT_SUCCESS; // implementation-defined value 34 const int exit_failure = EXIT_FAILURE; // implementation-defined value 35 const int exit_exception_failure = 200; // otherwise uncaught exception 36 const int exit_test_failure = 201; // report_error or 37 // report_critical_error called. 38 } 39 40 #endif 41 42