ReactOS 0.4.16-dev-320-g3bd9ddc
_range_errors.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 1999
3 * Silicon Graphics
4 *
5 * Permission to use, copy, modify, distribute and sell this software
6 * and its documentation for any purpose is hereby granted without fee,
7 * provided that the above copyright notice appear in all copies and
8 * that both that copyright notice and this permission notice appear
9 * in supporting documentation. Silicon Graphics makes no
10 * representations about the suitability of this software for any
11 * purpose. It is provided "as is" without express or implied warranty.
12 *
13 */
14
15#ifndef _STLP_RANGE_ERRORS_H
16#define _STLP_RANGE_ERRORS_H
17
18// A few places in the STL throw range errors, using standard exception
19// classes defined in <stdexcept>. This header file provides functions
20// to throw those exception objects.
21
22// _STLP_DONT_THROW_RANGE_ERRORS is a hook so that users can disable
23// this exception throwing.
24#if defined (_STLP_CAN_THROW_RANGE_ERRORS) && defined (_STLP_USE_EXCEPTIONS) && \
25 !defined (_STLP_DONT_THROW_RANGE_ERRORS)
26# define _STLP_THROW_RANGE_ERRORS
27#endif
28
29// For the STLport iostreams, only declaration here, definition is in the lib
30#if !defined (_STLP_USE_NO_IOSTREAMS) && !defined (_STLP_EXTERN_RANGE_ERRORS)
31# define _STLP_EXTERN_RANGE_ERRORS
32#endif
33
41
42#if defined (__DMC__) && !defined (_STLP_NO_EXCEPTIONS)
43# pragma noreturn(__stl_throw_runtime_error)
44# pragma noreturn(__stl_throw_range_error)
45# pragma noreturn(__stl_throw_out_of_range)
46# pragma noreturn(__stl_throw_length_error)
47# pragma noreturn(__stl_throw_invalid_argument)
48# pragma noreturn(__stl_throw_overflow_error)
49#endif
51
52#if !defined (_STLP_EXTERN_RANGE_ERRORS)
53# include <stl/_range_errors.c>
54#endif
55
56#endif /* _STLP_RANGE_ERRORS_H */
57
58// Local Variables:
59// mode:C++
60// End:
#define _STLP_CALL
Definition: _bc.h:131
void _STLP_FUNCTION_THROWS _STLP_DECLSPEC _STLP_CALL __stl_throw_invalid_argument(const char *__msg)
Definition: _range_errors.c:75
void _STLP_FUNCTION_THROWS _STLP_DECLSPEC _STLP_CALL __stl_throw_length_error(const char *__msg)
Definition: _range_errors.c:72
void _STLP_FUNCTION_THROWS _STLP_DECLSPEC _STLP_CALL __stl_throw_out_of_range(const char *__msg)
Definition: _range_errors.c:69
void _STLP_FUNCTION_THROWS _STLP_DECLSPEC _STLP_CALL __stl_throw_range_error(const char *__msg)
Definition: _range_errors.c:66
_STLP_BEGIN_NAMESPACE void _STLP_FUNCTION_THROWS _STLP_DECLSPEC _STLP_CALL __stl_throw_runtime_error(const char *__msg)
Definition: _range_errors.c:63
void _STLP_FUNCTION_THROWS _STLP_DECLSPEC _STLP_CALL __stl_throw_overflow_error(const char *__msg)
Definition: _range_errors.c:78
#define _STLP_FUNCTION_THROWS
Definition: features.h:872
#define _STLP_BEGIN_NAMESPACE
Definition: features.h:501
#define _STLP_END_NAMESPACE
Definition: features.h:503
#define _STLP_DECLSPEC
Definition: features.h:982