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 | |