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

source code of boost/boost/cstdlib.hpp