diff options
author | bkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-02-16 00:44:44 +0000 |
---|---|---|
committer | bkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-02-16 00:44:44 +0000 |
commit | 85d54afa2782a356e45a52f09862ccb0806f884f (patch) | |
tree | f60e91555ba38a22be308cded2cce3256e60e62a /libstdc++-v3/include/bits/stl_range_errors.h | |
parent | 0aafcf04c9be6bfe5cfb233733a6fb9701797f12 (diff) | |
download | ppe42-gcc-85d54afa2782a356e45a52f09862ccb0806f884f.tar.gz ppe42-gcc-85d54afa2782a356e45a52f09862ccb0806f884f.zip |
2001-02-15 Benjamin Kosnik <bkoz@redhat.com>
Add support for -fno-exceptions.
* include/bits/exception_support.h: Remove.
* include/bits/basic_string.h: Remove exception_support.
(string::_M_check): Replace __OUTOFRANGE with __throw_out_of_range.
(string::at): Same.
(string::substr): Same.
* include/bits/basic_string.tcc (string::reserve): Replace
__LENGTHERROR with __throw_length_error.
(string::_S_create): Same.
(string::resize): Same.
(string::_M_replace): Same.
(string::replace): Same.
(string::copy): Replace __OUTOFRANGE with __throw_out_of_range.
(string::compare): Same.
* include/bits/stl_vector.h: Remove exception_support.
* src/Makefile.am (base_headers): Remove here.
* src/Makefile.in: Regenerate.
* include/bits/stl_range_errors.h: Remove.
* include/bits/stl_deque.h: Use __throw_range_error.
* include/bits/std_deque.h: Include functexcept.h.
* include/bits/std_vector.h: Same.
* src/Makefile.am (base_headers): Remove here.
* src/Makefile.in: Regenerate.
* include/ext/stl_bvector.h (class __BVECTOR): Use __throw_range_error.
* include/ext/bvector: Remove stl_range_errors.h
* include/bits/c++config (_GLIBCPP_USE_EXCEPTIONS): Remove.
* include/bits/functexcept.h: New file.
* src/functexcept.cc: New file. Definitions for function-based
exception routines.
* src/Makefile.am (sources): Add functexcept.cc.
* src/Makefile.in: Regenerate.
* include/bits/stl_config.h (__STL_USE_EXCEPTIONS): Wrap with
__EXCEPTIONS.
* include/bits/localefwd.h: Include functexcept.h.
* include/bits/std_iosfwd.h: Same.
* include/bits/basic_ios.h: Use __throw_ios_failure instead of
throw basic_ios::failure.
* include/bits/fstream.tcc (filebuf::_M_allocate_buffers):
Use __throw_exception_again.
(filebuf::_M_filebuf_init): Same.
* include/bits/streambuf.tcc (__copy_streambufs): Same.
* include/bits/ostream.tcc (ostream::operator<<): Same.
* include/bits/istream.tcc (istream::operator>>): Same.
* include/bits/basic_string.tcc (string::_M_mutate): Same.
(string::_S_construct): Same.
(string::_M_clone): Same.
* include/bits/locale_facets.tcc (use_facet(const locale&)): Use
__throw_bad_cast.
(num_put<_CharT, _OutIter>::do_put): Use __throw_exception_again.
* src/localename.cc (locale::_Imp::_Imp(const _Impl&, size_t): Use
__throw_exception_again.
(locale::_Imp::_Imp(string, size_t): Same.
(locale::_Imp::_M_replace_facet): Use __throw_runtime_error.
* src/locale.cc (locale::_M_coalesce): Use __throw_exception_again.
(locale::locale(const char*)): Use __throw_runtime_error.
(locale::classic): Use __throw_exception_again.
(locale::_S_normalize_category): Use __throw_runtime_error.
* src/stdexcept.cc: Remove cruft.
* libsupc++/exception_defines.h: New file.
* libsupc++/new_opnt.cc: Include exception_defines.h.
* libsupc++/vec.cc: Same.
(__cxa_vec_new2): Use __throw_exception_again.
(__cxa_vec_new3): Same.
(__cxa_vec_ctor): Same.
(__cxa_vec_delete3): Same.
(__cxa_vec_cctor): Same.
(__cxa_vec_delete2): Same.
(__cxa_vec_dtor): Same.
* libsupc++/exception_support.cc: Include exception_defines.h. Only
compile exception-handling bits if __EXCEPTIONS is defined.
Remove old ABI support.
* libsupc++/new_op.cc (new): Include exception_defines.h. Use
std::__throw_bad_alloc() instead of throw bad_alloc.
* libsupc++/Makefile.am: Add exception_defines.h.
* libsupc++/Makefile.in: Reformat.
* libsupc++/*: Format.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@39730 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3/include/bits/stl_range_errors.h')
-rw-r--r-- | libstdc++-v3/include/bits/stl_range_errors.h | 74 |
1 files changed, 0 insertions, 74 deletions
diff --git a/libstdc++-v3/include/bits/stl_range_errors.h b/libstdc++-v3/include/bits/stl_range_errors.h deleted file mode 100644 index c5ddfe63cbb..00000000000 --- a/libstdc++-v3/include/bits/stl_range_errors.h +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Copyright (c) 1999 - * Silicon Graphics - * - * Permission to use, copy, modify, distribute and sell this software - * and its documentation for any purpose is hereby granted without fee, - * provided that the above copyright notice appear in all copies and - * that both that copyright notice and this permission notice appear - * in supporting documentation. Silicon Graphics makes no - * representations about the suitability of this software for any - * purpose. It is provided "as is" without express or implied warranty. - * - */ - -#ifndef __STL_RANGE_ERRORS_H -#define __STL_RANGE_ERRORS_H - -// A few places in the STL throw range errors, using standard exception -// classes defined in <stdexcept>. This header file provides functions -// to throw those exception objects. - -// __STL_DONT_THROW_RANGE_ERRORS is a hook so that users can disable -// this exception throwing. - -#include <bits/stl_config.h> - -#if defined(__STL_CAN_THROW_RANGE_ERRORS) && \ - defined(__STL_USE_EXCEPTIONS) && \ - !defined(__STL_DONT_THROW_RANGE_ERRORS) -# define __STL_THROW_RANGE_ERRORS -#endif - -// For the SGI 7.3 compiler, declare these functions here and define them -// elsewhere. -#if defined(__STL_THROW_RANGE_ERRORS) && \ - defined(__sgi) && !defined(__GNUC__) && \ - _COMPILER_VERSION >= 730 && defined(_STANDARD_C_PLUS_PLUS) \ - || defined(__GNUC__) && defined(__STL_THROW_RANGE_ERRORS) - -__STL_BEGIN_NAMESPACE -void __stl_throw_range_error(const char* __msg); -void __stl_throw_length_error(const char* __msg); -__STL_END_NAMESPACE - -// For other compilers where we're throwing range errors, include the -// stdexcept header and throw the appropriate exceptions directly. -#elif defined(__STL_THROW_RANGE_ERRORS) - -#include <bits/std_stdexcept.h> - -__STL_BEGIN_NAMESPACE -inline void __stl_throw_range_error(const char* __msg) - { throw range_error(__msg); } -inline void __stl_throw_length_error(const char* __msg) - { throw length_error(__msg); } -__STL_END_NAMESPACE - -// Otherwise, define inline functions that do nothing. -#else - -__STL_BEGIN_NAMESPACE -inline void __stl_throw_range_error(const char*) {} -inline void __stl_throw_length_error(const char*) {} -__STL_END_NAMESPACE - -#endif - -#endif /* __STL_RANGE_ERRORS_H */ - -// Local Variables: -// mode:C++ -// End: - - |