summaryrefslogtreecommitdiffstats
path: root/libstdc++-v3/libsupc++/tinfo.cc
Commit message (Collapse)AuthorAgeFilesLines
* Update copyright years in libstdc++-v3/rsandifo2014-01-021-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206301 138bc75d-0d04-0410-961f-82ee72b054a4
* Update copyright in libstdc++-v3.rsandifo2013-02-031-3/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@195701 138bc75d-0d04-0410-961f-82ee72b054a4
* 2012-03-12 Paolo Carlini <paolo.carlini@oracle.com>paolo2012-03-121-2/+2
| | | | | | | | | | | | | PR libstdc++/52562 * libsupc++/typeinfo (type_info::name, before, operator==, operator!=): Mark noexcept in C++11 mode. * libsupc++/tinfo.cc (type_info::operator==): Adjust. * libsupc++/tinfo2.cc (type_info::before): Likewise. * testsuite/18_support/type_info/52562.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@185235 138bc75d-0d04-0410-961f-82ee72b054a4
* 2011-09-27 Marcus Shawcroft <marcus.shawcroft@arm.com>jye22011-09-271-1/+4
| | | | | | | | | * libsupc++/tinfo.cc (type_info::operator==): Test __name instead of name(). git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@179236 138bc75d-0d04-0410-961f-82ee72b054a4
* /gcc/cppaolo2009-10-301-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | 2009-10-30 Jerry Quinn <jlquinn@optonline.net> * mangle.c (mangle_type_string_for_rtti): Reapply 153734. (needs_fake_anon): Likewise. (write_name): Likewise. (write_nested_name): Likewise. * cp-tree.h (mangle_type_string_for_rtti): Likewise. (get_anonymous_namespace): Likewise. * name-lookup.c (get_anonymous_namespace_name): Likewise. * rtti.c (tinfo_name): Likewise, with +1 in the second build_string call fixed. (tinfo_base_init): Likewise. libstdc++/ 2009-10-30 Jerry Quinn <jlquinn@optonline.net> * libsupc++/tinfo.cc (operator=(const type_info&)): Reapply 153734. * libsupc++/typeinfo (type_info::name()): Likewise. * libsupc++/tinfo2.cc (before): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153768 138bc75d-0d04-0410-961f-82ee72b054a4
* 2009-10-30 Jerry Quinn <jlquinn@optonline.net>jlquinn2009-10-301-2/+1
| | | | | | | | | | | | | | | | | | | | | * libsupc++/tinfo.cc (operator=(const type_info&)): Revert 153734. * libsupc++/typeinfo (type_info::name()): Likewise. * libsupc++/tinfo2.cc (before): Likewise. 2009-10-30 Jerry Quinn <jlquinn@optonline.net> * mangle.c (mangle_type_string_for_rtti): Revert 153734. (needs_fake_anon): Likewise. (write_name): Likewise. (write_nested_name): Likewise. * cp-tree.h (mangle_type_string_for_rtti): Likewise. (get_anonymous_namespace): Likewise. * name-lookup.c (get_anonymous_namespace_name): Likewise. * rtti.c (tinfo_name): Likewise. (tinfo_base_init): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153742 138bc75d-0d04-0410-961f-82ee72b054a4
* 2009-10-28 Jerry Quinn <jlquinn@optonline.net>jlquinn2009-10-301-1/+2
| | | | | | | | | | | | | | | | | | | | | | * mangle.c (mangle_type_string_for_rtti): Revert r149964. (needs_fake_anon): Likewise. (write_name): Likewise. (write_nested_name): Likewise. * cp-tree.h (mangle_type_string_for_rtti): Likewise. (get_anonymous_namespace): Likewise. * name-lookup.c (get_anonymous_namespace_name): Likewise. * rtti.c (tinfo_name): Insert '*' in front of private names. (tinfo_base_init): Use it. 2009-10-28 Jerry Quinn <jlquinn@optonline.net> * libsupc++/tinfo.cc (operator=(const type_info&)): Compare by pointer if name begins with '*'. * libsupc++/typeinfo (type_info::name()): Likewise. * libsupc++/tinfo2.cc (before): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153734 138bc75d-0d04-0410-961f-82ee72b054a4
* Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception.jakub2009-04-091-14/+9
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@145841 138bc75d-0d04-0410-961f-82ee72b054a4
* * libsupc++/array_type_info.cc: Likewise.mmitchel2007-03-181-675/+0
| | | | | | | | | | | | | | | | | | | | | | | | * libsupc++/bad_cast.cc: Likewise. * libsupc++/bad_typeid.cc: Likewise. * libsupc++/class_type_info.cc: Likewise. * libsupc++/dyncast.cc: Likewise. * libsupc++/enum_type_info.cc: Likewise. * libsupc++/function_type_info.cc: Likewise. * libsupc++/fundamental_type_info.cc: Likewise. * libsupc++/pbase_type_info.cc: Likewise. * libsupc++/pmem_type_info.cc: Likewise. * libsupc++/pointer_type_info.cc: Likewise. * libsupc++/si_class_type_info.cc: Likewise. * libsupc++/vmi_class_type_info.cc: Likewise. * libsupc++/tinfo.h: Move inline type_info functions here. * libsupc++/tinfo.cc: Separate type_info classes into their own files. * libsupc++/tinfo2.cc: Likewise. * Makefile.am (sources): Mention new files. * Makefile.in: Regenerated. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@123042 138bc75d-0d04-0410-961f-82ee72b054a4
* 2007-02-01 Paolo Carlini <pcarlini@suse.de>paolo2007-02-011-1/+14
| | | | | | | | | | | | | | | | | | | | PR libstdc++/14493 * libsupc++/typeinfo (bad_cast::what, bad_typeid::what): Declare. * libsupc++/tinfo.cc: Define. * libsupc++/exception (bad_exception::what): Declare. * libsupc++/eh_exception.cc: Define. (exception::what): Adjust, don't use typeid. * libsupc++/new (bad_alloc::what): Declare. * libsupc++/new_handler.cc: Define. * config/abi/pre/gnu.ver: Export the new methods @3.4.9; adjust existing 3.4.10 exports to 3.4.9. * configure.ac: Adjust to 6.0.9. * configure: Regenerate. * testsuite/util/testsuite_abi.cc: Update. * testsuite/18_support/14493.cc: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@121461 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c++/19564ian2006-12-141-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PR c++/19756 gcc/: * c-typeck.c (parser_build_binary_op): Move parentheses warnings to warn_about_parentheses in c-common.c. * c-common.c (warn_about_parentheses): New function. * c-common.h (warn_about_parentheses): Declare. * doc/invoke.texi (Warning Options): Update -Wparentheses description. gcc/cp/: * parser.c (cp_parser_expression_stack_entry): Add field lhs_type. (cp_parser_binary_expression): Track tree code of left hand side of expression. Use it when calling build_x_binary_op. (cp_parser_selection_statement): Add if_p parameter. Change all callers. Warn about ambiguous else. (cp_parser_statement): Add if_p parameter. Change all callers. (cp_parser_implicitly_scoped_statement): Likewise. * typeck.c (build_x_binary_op): Add parameters arg1_code and arg2_code. Change all callers. Call warn_about_parentheses. * cp-tree.h (build_x_binary_op): Update declaration. gcc/testsuite/: * g++.dg/warn/Wparentheses-5.C: New test. * g++.dg/warn/Wparentheses-6.C: New test. * g++.dg/warn/Wparentheses-7.C: New test. * g++.dg/warn/Wparentheses-8.C: New test. * g++.dg/warn/Wparentheses-9.C: New test. * g++.dg/warn/Wparentheses-10.C: New test. * g++.dg/warn/Wparentheses-11.C: New test. * g++.dg/warn/Wparentheses-12.C: New test. * g++.dg/warn/Wparentheses-13.C: New test. * g++.dg/warn/Wparentheses-14.C: New test. * g++.dg/warn/Wparentheses-15.C: New test. * g++.dg/warn/Wparentheses-16.C: New test. * g++.dg/warn/Wparentheses-17.C: New test. * g++.dg/warn/Wparentheses-18.C: New test. * g++.dg/warn/Wparentheses-19.C: New test. * g++.dg/warn/Wparentheses-20.C: New test. * g++.dg/warn/Wparentheses-21.C: New test. libstdc++-v3/: * include/bits/locale_facets.tcc (num_get<>::_M_extract_float): Add parentheses around && within || to avoid warning. (num_get<>::_M_extract_int): Likewise. (money_get<>::_M_extract): Likewise. (num_get<>::do_get(iter_type, iter_type, ios_base&, ios_base::iostate&, void*&)): Add parentheses around & within | to avoid warning. (num_put<>::do_put(iter_type, ios_base&, char_type, const void*)): Likewise. * include/bits/streambuf_iterator.h (istreambuf_iterator::equal): Add parentheses around && within || to avoid warning. * libsupc++/tinfo.cc (__do_dyncast): Likewise. * src/locale.cc (locale::_S_normalize_category): Likewise. * include/bits/stl_tree.h (_Rb_tree<>::_M_insert_unique): Add braces to avoid ambiguous else warning. * src/strstream.cc (strstreambuf::_M_free): Likewise. * src/tree.cc (_Rb_tree_rebalance_for_erase): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@119855 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc:jsm282006-11-131-1/+5
| | | | | | | | | | | | | | | | | | | | | | * config/arm/bpapi.h (TARGET_BPABI_CPP_BUILTINS): Define __GXX_TYPEINFO_EQUALITY_INLINE but not __GXX_MERGED_TYPEINFO_NAMES. * config/arm/symbian.h (TARGET_OS_CPP_BUILTINS): Define __GXX_MERGED_TYPEINFO_NAMES. * config/i386/cygming.h (TARGET_OS_CPP_BUILTINS): Define __GXX_TYPEINFO_EQUALITY_INLINE. libstdc++-v3: * libsupc++/typeinfo (__GXX_TYPEINFO_EQUALITY_INLINE): Define. Use instead of __GXX_MERGED_TYPEINFO_NAMES to condition inline definitions. * libsupc++/tinfo.cc (operator==): Condition on __GXX_TYPEINFO_EQUALITY_INLINE; check __GXX_MERGED_TYPEINFO_NAMES to determine algorithm. * libsupc++/tinfo2.cc (type_info::before): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@118755 138bc75d-0d04-0410-961f-82ee72b054a4
* 2005-08-17 Kelley Cook <kcook@gcc.gnu.org>kcook2005-08-171-2/+2
| | | | | | | * All files: Update FSF address. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@103192 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-06-28 Benjamin Kosnik <bkoz@redhat.com>bkoz2004-06-281-20/+1
| | | | | | | | | | * include/debug/safe_base.h (__gnu_debug::_Safe_sequence_base): Revert -Weffc++ changes that defined copy ctory and or assignment operator. * libsupc++/tinfo.cc (__upcast_result): Same. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83804 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-05-22 Benjamin Kosnik <bkoz@redhat.com>bkoz2004-05-221-2/+25
| | | | | | | | | | | | | | * libsupc++/cxxabi.h: Remove duplicated and useless public and private keywords in class declarations. Format. Use stddef.h. Expose declarations to "C" compilation. * libsupc++/tinfo.cc (__upcast_result): Add copy constructor and assignment operator. (__dyncast_result): Same. * libsupc++/vec.cc (uncatch_exception): Same, use member initialization list. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82147 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-07-04 Benjamin Kosnik <bkoz@redhat.com>bkoz2003-07-051-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move from CPP to CXX. * include/bits/c++config: Move to GLIBCXX from GLIBCPP. * testsuite/Makefile.am: Same. * testsuite/Makefile.in: Regenerate. * po/Makefile.am: Same. * po/Makefile.in: Regenerate. * libsupc++/Makefile.am: Same. * libsupc++/Makefile.in: Regenerate. * libmath/Makefile.am: Same. * libmath/Makefile.in: Regenerate. * include/Makefile.am: Same. * include/Makefile.in: Regenerate. * src/Makefile.am: Same. * src/Makefile.in: Regenerate. * acconfig.h: Same. * configure.host: Same. * configure.in: Same. * configure: Regenerate. * acinclude.m4: Same. * aclocal.m4: Same. * src: Change all files in this directory. * testsuite: Same. * include: Same, standardize include guards. * config: Same. * libsupc++: Same. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68958 138bc75d-0d04-0410-961f-82ee72b054a4
* 2003-05-24 Nathanael Nerode <neroden@gcc.gnu.org>neroden2003-05-241-4/+4
| | | | | | | | | | | | | | | | | | | * libsupc++/Makefile.am, libsupc++/cxxabi.h, libsupc++/del_op.cc, libsupc++/del_opnt.cc, libsupc++/del_opv.cc, libsupc++/del_opvnt.cc, libsupc++/eh_alloc.cc, libsupc++/eh_aux_runtime.cc, libsupc++/eh_catch.cc, libsupc++/eh_exception.cc, libsupc++/eh_globals.cc, libsupc++/eh_personality.cc, libsupc++/eh_term_handler.cc, libsupc++/eh_terminate.cc, libsupc++/eh_throw.cc, libsupc++/eh_type.cc, libsupc++/eh_unex_handler.cc, libsupc++/exception, libsupc++/new, libsupc++/new_handler.cc, libsupc++/new_op.cc, libsupc++/new_opnt.cc, libsupc++/new_opv.cc, libsupc++/new_opvnt.cc, libsupc++/pure.cc, libsupc++/tinfo.cc, libsupc++/tinfo2.cc, libsupc++/typeinfo, libsupc++/unwind-cxx.h, libsupc++/vec.cc: Replace "GNU CC" with "GCC". git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@67155 138bc75d-0d04-0410-961f-82ee72b054a4
* libstdc++-v3:nathan2003-01-281-3/+4
| | | | | | | | | | | PR c++/9433 * libsupc++/tinfo.cc (__vmi_class_type_info::__do_dyncast): Cope with bases which are very ambiguous. gcc/testsuite: * g++.dg/abi/dcast1.C: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@61973 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/locale/gnu/ctype_members.ccmmitchel2002-12-271-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | (ctype<wchar_t>::_M_convert_to_wmask): Remove stray semicolon. * config/locale/gnu/monetary_members.cc (moneypunct<wchar_t, true>::_M_initialize_moneypunct): Avoid defining classes in static_cast. (moneypunct<wchar_t, false>::_M_initialize_moneypunct): Likewise. * config/locale/gnu/numeric_members.cc (numpunct<wchar_t, false>::_M_initialize_numpunct): Likewise. * include/bits/stl_deque.h (operator-): Insert typename where required. * include/bits/stl_multiset.h (multiset): Remove stray semicolon. * include/bits/stl_set.h (set): Likewise. * include/bits/valarray_meta.h (bits/slice_array.h): Include it. * include/std/std_fstream.h (basic_fstream::open): Use this-> to avoid Koenig lookup. (basic_fstream::close): Likewise. * libsupc++/new (operator delete): Remove stray semicolon. * libsupc++/new (operator delete[]): Likewise. * libsupc++/tinfo.cc: Likewise. * src/stdexcept.c (logic_error::~logic_error): Likewise. (runtime_error::~runtime_error): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@60547 138bc75d-0d04-0410-961f-82ee72b054a4
* 2002-07-31 Benjamin Kosnik <bkoz@redhat.com>bkoz2002-07-311-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | PR libstdc++/7442 * libsupc++/cxxabi.h (__base_class_info): Change to __base_class_type_info. 2.9.5p6c (__base_class_info::__base): Change to __base_type. 2.9.5p6c (__base_class_info::offset_shift): Change to __offset_shift. 2.9.5p6c (__vmi_class_type_info::__base_info): Don't make const, of type __base_class_type_info, as per 2.9.5p6c (__pbase_type_info::__qualifier_flags): Change to __flags, as per 2.9.5p7. (__pbase_type_info::__qualifier_masks): Change to __masks, as per 2.9.5p7. (__pointer_to_member_type_info::__context_class): Change member to __context, as per 2.9.5p9. * libsupc++/tinfo2.cc (__pointer_catch): Change __context_class to __context. * libsupc++/tinfo2.cc (__do_catch): Change __qualifier_flags to __flags. * libsupc++/tinfo.cc (__do_find_public_src): Change __base to __base_type. * libsupc++/tinfo.cc (__do_dyncast): Same. * libsupc++/tinfo.cc (__do_upcast): Same. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@55910 138bc75d-0d04-0410-961f-82ee72b054a4
* 2002-06-25 Jessica Han <jessica@cup.hp.com>bkoz2002-06-251-5/+22
| | | | | | | | | * config/os/hpux/os_defines.h Define _GLIBCPP_VTABLE_PADDING * libsupc++/tinfo.cc Handle the 8 byte aligned vtable entries when _GLIBCPP_VTABLE_PADDING is defined. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@54991 138bc75d-0d04-0410-961f-82ee72b054a4
* 2002-01-09 Paolo Carlini <pcarlini@unitus.it>paolo2002-01-091-1/+5
| | | | | | | | | | | | | | | | | | | | | | | libstdc++/3150: revert 2001-11-30 commit. DR266 only means that the destructors should be removed from the descriptions in the standard: writing them explicitly allows the vtable heuristic to work. For additional information see: http://gcc.gnu.org/ml/libstdc++/2002-01/msg00090.html http://gcc.gnu.org/ml/libstdc++/2002-01/msg00110.html http://gcc.gnu.org/ml/libstdc++/2002-01/msg00155.html * libsupc++/exception (bad_exception::~bad_exception()): Reintroduce declaration. * libsupc++/new (bad_alloc::~bad_alloc()): Same. * libsupc++/typeinfo (bad_cast::~bad_cast()): Same. (bad_typeid::~bad_typeid()): Same. * libsupc++/eh_exception.cc (bad_exception::~bad_exception()): Reintroduce definition. * libsupc++/new_handler.cc (bad_alloc::~bad_alloc()): Same. * libsupc++/tinfo.cc (bad_cast::~bad_cast()): Same. (bad_typeid::~bad_typeid()): Same. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@48687 138bc75d-0d04-0410-961f-82ee72b054a4
* 2001-11-30 Benjamin Kosnik <bkoz@redhat.com>bkoz2001-12-011-3/+0
| | | | | | | | | | | | | | | | | | | libstdc++/3150 DR/266 * libsupc++/exception (bad_exception::~bad_exception()): Remove declaration. * libsupc++/new (bad_alloc::~bad_alloc()): Remove. * libsupc++/typeinfo (bad_cast::~bad_cast()): Remove. (bad_typeid::~bad_typeid()): Remove. * libsupc++/tinfo.cc (bad_cast::~bad_cast()): Remove definition. (bad_typeid::~bad_typeid()): Same. * libsupc++/new_handler.cc (bad_alloc::~bad_alloc()): Same. * libsupc++/eh_exception.cc (bad_exception::~bad_exception()): Same. * include/bits/std_iomanip.h: Tweak. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47505 138bc75d-0d04-0410-961f-82ee72b054a4
* * ChangeLog, docs/doxygen/maint.cfg.in, docs/doxygen/user.cfg.in,jsm282001-11-231-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | docs/doxygen/doxygroups.cc, docs/doxygen/Intro.3, docs/html/17_intro/BUGS, docs/html/17_intro/C++STYLE, docs/html/17_intro/CHECKLIST, docs/html/17_intro/DESIGN, docs/html/17_intro/howto.html, docs/html/17_intro/porting.html, docs/html/17_intro/porting.texi, docs/html/18_support/howto.html, docs/html/19_diagnostics/howto.html, docs/html/20_util/howto.html, docs/html/21_strings/howto.html, docs/html/23_containers/howto.html, docs/html/26_numerics/howto.html, docs/html/27_io/howto.html, docs/html/27_io/binary_iostreams_kuehl.txt, docs/html/ext/sgiexts.html, docs/html/faq/index.html, docs/html/faq/index.txt, testsuite/24_iterators/iterator.cc, include/bits/basic_file.h, include/bits/locale_facets.h, include/bits/locale_facets.tcc, include/bits/std_sstream.h, include/ext/ropeimpl.h, include/ext/stl_rope.h, libsupc++/tinfo.cc, libsupc++/cxxabi.h, libsupc++/typeinfo, libsupc++/eh_throw.cc, acinclude.m4, aclocal.m4, configure, configure.target, ChangeLog-2000: Fix spelling errors. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47291 138bc75d-0d04-0410-961f-82ee72b054a4
* 2001-03-13 Benjamin Kosnik <bkoz@redhat.com>bkoz2001-03-131-2/+3
| | | | | | | | | | | | | | | | | * libsupc++/new: Remove pragma interface. * libsupc++/typeinfo: Same. * libsupc++/exception: Same. * libsupc++/new_handler.cc: Remove pragma implementation. (bad_alloc::~bad_alloc()): Add. * libsupc++/exception_support.cc: Same. (exception::~exception): Add. (bad_exception::~bad_exception): Add. * libsupc++/tinfo.cc: Same. (bad_cast::~bad_cast): Add. (bad_typeid::~bad_typeid): Add. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@40442 138bc75d-0d04-0410-961f-82ee72b054a4
* Remove old ABI support from libsupc++.mmitchel2001-02-161-497/+1
| | | | | | | | | | | | | | * libsupc++/cxxabi.h: Remove conditionally compiled code. * libsupc++/exception_support.cc: Likewise. * libsupc++/pure.cc: Likewise. * libsupc++/tinfo.cc: Likewise. * libsupc++/tinfo.h: Likewise. * libsupc++/tinfo2.cc: Likewise. * libsupc++/typeinfo: Likewise. * libsupc++/vec.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@39732 138bc75d-0d04-0410-961f-82ee72b054a4
* 2001-02-15 Benjamin Kosnik <bkoz@redhat.com>bkoz2001-02-161-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* * libsupc++/typeinfo (__GXX_MERGED_TYPEINFO_NAMES): New macro.mmitchel2001-02-041-7/+11
| | | | | | | | | * libsupc++/tinfo.cc (std::typeinfo::operator==): Use strcmp whenever !__GXX_MERGED_TYPEINFO_NAMES. * libsupc++/tinfo2.cc (std::typeinfo::before): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@39438 138bc75d-0d04-0410-961f-82ee72b054a4
* 2000-10-21 Benjamin Kosnik <bkoz@purist.soma.redhat.com>bkoz2000-10-211-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | * docs/links.html: Add links to defects list, standards FAQ. * testsuite/21_strings/ctor_copy_dtor.cc (test01): Disable tests with string creation that allocate huge ammounts of memory. * include/c/bits/std_cstddef.h: Put size_t, ptrdiff_t in namepace std. 2000-10-21 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr> * libsupc++/exception.cc: Use namespace std. * libsupc++/new: DITTO. * libsupc++/new_op.cc: DITTO. * libsupc++/new_opnt.cc: DITTO. * libsupc++/new_opv.cc: DITTO. * libsupc++/new_opvnt.cc: DITTO. * libsupc++/tinfo.cc: DITTO. * libsupc++/tinfo.h: DITTO. * libsupc++/vec.cc: DITTO. * libsupc++/Makefile.am: Blank lines removal. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@36995 138bc75d-0d04-0410-961f-82ee72b054a4
* 2000-10-06 Benjamin Kosnik <bkoz@cygnus.com>bkoz2000-10-061-0/+1210
Richard Henderson <rth@cygnus.com> Alexandre Oliva <aoliva@redhat.com> * libsupc++: New directory. * libsupc++/*: Populate. * libsupc++/Makefile.am (INCLUDES): Add -I../../gcc for eh-common.h, gansidecl.h. * configure.in: Add in libsupc++/Makefile to AC_OUTPUT. * configure: Regenerate. * Makefile.am (SUBDIRS): Add libsupc++. * Makefile.in: Regenerate. * src/Makefile.am (libstdc___la_LIBADD): Add in libsupc++.la * src/Makefile.in: Regenerate. * libio/Makefile.am: Remove extraneous, confusing bits. * libio/Makefile.in: Regeneate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@36763 138bc75d-0d04-0410-961f-82ee72b054a4
OpenPOWER on IntegriCloud