aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/inc
AgeCommit message (Collapse)AuthorFilesLines
2000-10-09Make-lang.in (CXX_EXTRA_HEADERS): Remove.Richard Henderson5-824/+0
* Make-lang.in (CXX_EXTRA_HEADERS): Remove. (c++ language support bits for libgcc): Remove. (c++.clean): Remove cplib2.txt cleanup. * config-lang.in (headers, lib2funcs): Remove. * exception.cc, new.cc, new1.cc, new2.cc: Remove files. * tinfo.cc, tinfo.h, tinfo2.cc, vec.cc: Remove files. * inc/cxxabi.h, inc/exception, inc/new: Remove files. * inc/new.h, inc/typeinfo: Remove files. From-SVN: r36816
2000-08-17cxxabi.h (__cxa_vec_new2, [...]): Declare.Nathan Sidwell1-0/+32
* inc/cxxabi.h (__cxa_vec_new2, __cxa_vec_new3): Declare. (__cxa_vec_delete2, __cxa_vec_delete3): Declare. * vec.cc (__cxa_vec_new2, __cxa_vec_new3): Implement. (__cxa_vec_delete2, __cxa_vec_delete3): Implement. (__cxa_vec_new): Use __cxa_vec_new2. (__cxa_vec_delete): Use __cxa_vec_delete2. From-SVN: r35761
2000-08-17vec.cc (__cxa_vec_new): Set "C" linkage.Nathan Sidwell1-5/+5
* vec.cc (__cxa_vec_new): Set "C" linkage. (__cxa_vec_ctor): Likewise. (__cxa_vec_cctor): Likewise. (__cxa_vec_dtor): Likewise. (__cxa_vec_delete): Likewise. * inc/cxxabi.h (__cxa_vec_new): Set "C" linkage. (__cxa_vec_ctor): Likewise. (__cxa_vec_cctor): Likewise. (__cxa_vec_dtor): Likewise. (__cxa_vec_delete): Likewise. From-SVN: r35760
2000-08-09rtti.c (build_dynamic_cast_1): Set "C" linkage for new abi runtime.Nathan Sidwell1-1/+1
* rtti.c (build_dynamic_cast_1): Set "C" linkage for new abi runtime. * cp/tinfo.cc (__dynamic_cast): Likewise. * cp/inc/cxxabi.h (__dynamic_cast): Likewise. From-SVN: r35588
2000-08-05cxxabi.h (__pbase_type_info): Changed member names to match specifications.Jeffrey Oldham1-33/+33
2000-08-04 Jeffrey D. Oldham <oldham@codesourcery.com> * inc/cxxabi.h (__pbase_type_info): Changed member names to match specifications. (__pointer_to_member_type_info): Likewise. (__base_class_info): Likewise. (__class_type_info): Likewise. (__si_class_type_info): Likewise. (__vmi_class_type_info): Likewise. * tinfo.cc (__si_class_type_info::__do_find_public_src): Changed member names to match specifications. (__vmi_class_type_info::__do_find_public_src): Likewise. (__si_class_type_info::__do_dyncast): Likewise. (__vmi_class_type_info::__do_dyncast): Likewise. (__si_class_type_info::__do_upcast): Likewise. (__vmi_class_type_info::__do_upcast): Likewise. * tinfo2.cc (__pbase_type_info::__do_catch): Likewise. (__pbase_type_info::__pointer_catch): Likewise. (__pointer_type_info::__pointer_catch): Likewise. (__pointer_to_member_type_info::__pointer_catch): Likewise. From-SVN: r35503
2000-07-10cp-tree.h (char_type_p): New function.Mark Mitchell1-0/+8
* cp-tree.h (char_type_p): New function. * decl.c (init_decl_processing): Don't initialize signed_wchar_type_node or unsigned_wchar_type_node. (complete_array_type): Handle brace-enclosed string-constants. * rtti.c (emit_support_tinfos): Remove #if 0'd code. * tree.c (char_type_p): New function. * typeck2.c (digest_init): Use char_type_p. From-SVN: r34936
2000-06-23in include/ChangeLog:Alex Samuel1-0/+8
* dyn-string.h (dyn_string_init, dyn_string_new, dyn_string_delete, dyn_string_release, dyn_string_resize, dyn_string_clear, dyn_string_copy, dyn_string_copy_cstr, dyn_string_prepend, dyn_string_prepend_cstr, dyn_string_insert, dyn_string_insert_cstr, dyn_string_append, dyn_string_append_cstr, dyn_string_append_char, dyn_string_substring_dyn_string_eq): Define as same name with __cxa_ prepended, if IN_LIBGCC2. (dyn_string_init, dyn_string_copy, dyn_string_copy_cstr, dyn_string_prepend, dyn_string_prepend_cstr, dyn_string_insert, dyn_string_insert_cstr, dyn_string_append, dyn_string_append_cstr, dyn_string_append_char, dyn_string_substring): Change return type to int. in libiberty/ChangeLog: * cp-demangle.c: Don't include ctype.h. (IS_DIGIT): New macro. (IS_ALPHA): Likewise. Use IS_DIGIT and IS_ALPHA throughout instead of isdigit and isalpanum. (demangling_def): Make name and next const pointers. (STATUS_ALLOCATION_FAILED): New status code. (dyn_string_append_space): Handle failure in dyn_string_append_char. (int_to_dyn_string): Likewise. Change return value to status_t. (string_list_new): Handle failure of dyn_string_init. (result_close_template_list): Change return type to status_t. Handle failure in dyn_string_append. (result_push): Change return value to status_t. Handle failure in string_list_new. Handle failure of result_push throughout. (substitution_add): Change return value to status_t. Handle dyn_string failures. Handle failure of substitution_add throughout. (template_arg_list_new): Return NULL on allocation failure. (result_append_string): Return STATUS_ALLOCATION_FAILED on error. Handle error result throughout. (result_append): Likewise. (result_append_char): Likewise. (result_append_space): Likewise. (demangling_new): Make argument a const pointer. Handle allocation failures. (demangle_template_args): Handle failure in template_arg_list_new and result_close_template_list. (demangle_discriminator): Return if int_to_dyn_string fails. (cp_demangle): Likewise. (cp_demangle_type): New function. (cplus_demangle_new_abi): Don't call dyn_string_delete. Abort on memory allocation failure. (main): Likewise. * dyn-string.c (RETURN_ON_ALLOCATION_FAILURE): Define if IN_LIBGCC2. (dyn_string_init): Change return value to int. Handle RETURN_ON_ALLOCATION_FAILURE case. (dyn_string_new): Handle RETURN_ON_ALLOCATION_FAILURE case. (dyn_string_release): Delete the dyn_string. (dyn_string_resize): Handle RETURN_ON_ALLOCATION_FAILURE case. (dyn_string_copy): Change return type to int. (dyn_string_copy_cstr): Likewise. (dyn_string_prepend): Likewise. (dyn_string_prepend_cstr): Likewise. (dyn_string_insert): Likewise. (dyn_string_insert_cstr): Likewise. (dyn_string_append): Likewise. (dyn_string_append_cstr): Likewise. (dyn_string_append_char): Likewise. (dyn_string_substring): Likewise. in gcc/cp/ChangeLog: * Make-lang.in (CXX_LIB2FUNCS): Add cp-demangle.o and dyn-string.o. (CXX_LIB2SRCS): Add cp-demangle.c and dyn-string.c. (cp-demangle.o): New rule. (dyn-string.o): Likewise. * inc/cxxabi.h (__cxa_demangle): New declaration. From-SVN: r34657
2000-05-25cxxabi.h (__pbase_type_info): Define, based on __pointer_type_info.Nathan Sidwell1-48/+68
* inc/cxxabi.h (__pbase_type_info): Define, based on __pointer_type_info. (__pointer_type_info): Derive from __pbase_type_info. Adjust. (__pointer_to_member_type_info): Likewise. * tinfo2.cc (__pbase_type_info::~__pbase_type_info): Implement. (__pointer_to_member_type_info::__is_pointer_p): Remove. (__pointer_type_info::__do_catch): Rename to ... (__pbase_type_info::__do_catch): ... here. Adjust. (__pbase_type_info::__pointer_catch): Implement. (__pointer_type_info::__pointer_catch): Adjust. (__pointer_to_member_type_info::__pointer_catch): Adjust. From-SVN: r34165
2000-05-24Update new-abi upcast algorithm.Nathan Sidwell1-9/+5
* inc/cxxabi.h (__class_type_info::__do_upcast): Change prototype and meaning of return value. (__si_class_type_info::__do_upcast): Likewise. (__vmi_class_type_info::__do_upcast): Likewise. * tinfo.cc (__class_type_info::__upcast_result): Replace whole2dst with part2dst. Adjust ctor. (__class_type_info::__do_upcast): Adjust call of worker function. (__class_type_info::__do_upcast): Adjust. (__si_class_type_info::__do_upcast): Adjust. Use parent's __do_upcast. (__vmi_class_type_info::__do_upcast): Likewise. Fix private virtual base in diamond heirarchy bug. From-SVN: r34132
2000-05-08tinfo.cc (__dynamic_cast): Use a reinterpret_cast.Nathan Sidwell1-3/+3
* tinfo.cc (__dynamic_cast): Use a reinterpret_cast. Fix offsetof expansion. * inc/cxxabi.h: Fix typos in comment. (__base_class_info::__offset): Use a static_cast. From-SVN: r33773
2000-05-07cxxabi.h: Use __SIZE_TYPE_ and __PTRDIFF_TYPE__ in place of std::size_t and...Nathan Sidwell1-22/+26
* inc/cxxabi.h: Use __SIZE_TYPE_ and __PTRDIFF_TYPE__ in place of std::size_t and std::ptrdiff_t respectively. * tinfo.cc: Likewise. * vec.cc: Likewise. From-SVN: r33759
2000-05-06rtti.c (ptmd_initializer): Set non-public, if class is incomplete.Nathan Sidwell1-0/+5
* rtti.c (ptmd_initializer): Set non-public, if class is incomplete. * inc/cxxabi.h (__dynamic_cast): Explicitly say extern "C++". (__cxa_vec_new, __cxa_vec_ctor, __cxa_vec_dtor, __cxa_vec_delete): Likewise. * tinfo.cc (__dynamic_cast): Likewise. * vec.cc (__cxa_vec_new, __cxa_vec_ctor, __cxa_vec_dtor, __cxa_vec_delete): Likewise. From-SVN: r33726
2000-05-02exception.cc: Update license notice.Mark Mitchell5-5/+136
* exception.cc: Update license notice. * new.cc: Likewise. * new1.cc: Likewise. * new2.cc: Likewise. * tinfo.cc: Likewise. * tinfo2.cc: Likewise. * vec.cc: Likewise. * inc/cxxabi.h: Likewise. * inc/exception: Likewise. * inc/new: Likewise. * inc/new.h: Likewise. * inc/typeinfo: Likewise. From-SVN: r33601
2000-04-20rtti.c (init_rtti_processing): Set tinfo_var_id in new-abi.Nathan Sidwell2-4/+5
* rtti.c (init_rtti_processing): Set tinfo_var_id in new-abi. (target_incomplete_p): New function. (tinfo_base_init): Create comdat NTBS name variable. (ptr_initializer): Add non_public parameter. Calculate it. (ptmd_initializer): Likewise. (synthesize_tinfo_var): Adjust. Emit incomplete class tinfo. (create_real_tinfo_var): Add non_public parameter. Use it. Push proxy into global namespace. * inc/cxxabi.h (__pointer_type_info::incomplete_class_mask): New enumeration. * inc/typeinfo (type_info::before, type_info::operator==): Compare __name addresses. * tinfo2.cc: Remove new-abi builtins comment. From-SVN: r33281
2000-04-13class.c (build_base_field): Reformat comment.Nathan Sidwell1-1/+7
* class.c (build_base_field): Reformat comment. * inc/cxxabi.h (stddef.h): Comment inclusion. (__base_class_info::__offset): Comment shift. From-SVN: r33137
2000-04-10cxxabi.h (__pointer_type_info): Add restrict and incomplete flags.Nathan Sidwell1-17/+18
* inc/cxxabi.h (__pointer_type_info): Add restrict and incomplete flags. (__pointer_type_info::__pointer_catch): New virtual function. (__pointer_to_member_type_info): Derive from __pointer_type_info. Adjust. (__pointer_to_member_type_info::__do_catch): Remove. (__pointer_to_member_type_info::__is_pointer_p): Declare. (__pointer_to_member_type_info::__pointer_catch): Declare. * rtti.c (qualifier_flags): Add restrict flag. (ptmd_initializer): Reorder members. (create_tinfo_types): Expand comments. Reorder ptmd_desc_type_node members. * tinfo2.cc (__pointer_to_member_type_info::__is_pointer_p): Implement. (__pointer_type_info::__do_catch): Move specific code into __pointer_catch. Call it. (__pointer_type_info::__pointer_catch): Non-pointer-to-member specific catch checking. Fix void conversion check. (__pointer_to_member_type_info::__do_catch): Remove. (__pointer_to_member_type_info::__pointer_catch): Implement. From-SVN: r33061
2000-04-09Prepend __ to implementation defined names.Nathan Sidwell2-135/+123
* inc/typeinfo (type_info): Rename _name to __name. (type_info::type_info): Rename parameter. (type_info::operator==, type_info::operator!=, type_info::before): Likewise. (type_info::is_pointer_p, type_info::is_function_p, type_info::do_catch, type_info::do_upcast): Prepend __. Rename parameters. * inc/cxxabi.h (__fundamental_type_info::__fundamental_type_info) Rename parameters. (__pointer_type_info::__pointer_type_info): Likewise. (__pointer_type_info::is_pointer_p, __pointer_type_info::do_catch): Prepend __. Rename parameters. (__array_type_info::__array_type_info): Rename parameters. (__function_type_info::__function_type_info): Likewise. (__function_type_info::is_function_p): Prepend __. (__enum_type_info::__enum_type_info): Rename parameters. (__pointer_to_member_type_info::__pointer_to_member_type_info): Likewise. (__pointer_to_member_type_info::do_catch): Prepend __. Rename parameters. (__base_class_info::is_virtual_p, is_public_p, offset): Prepend __. (__class_type_info::__class_type_info): Rename parameters. (__class_type_info::sub_kind): Prepend __. Adjust member names. (__class_type_info::upcast_result, __class_type_info::dyncast_result): Prepend __. Move definition into tinfo.cc. (__class_type_info::do_upcast, __class_type_info::do_catch, __class_type_info::find_public_src, __class_type_info::do_dyncast, __class_type_info::do_find_public_src): Prepend __. Rename parameters. (__si_class_type_info::__si_class_type_info): Rename parameters. (__si_class_type_info::do_upcast, __si_class_type_info::do_dyncast, __si_class_type_info::do_find_public_src): Prepent __. Rename parameters. (__vmi_class_type_info::__vmi_class_type_info): Rename parameters. (__vmi_class_type_info::do_upcast, __vmi_class_type_info::do_dyncast, __vmi_class_type_info::do_find_public_src): Prepent __. Rename parameters. (__dynamic_cast): Rename parameters. * tinfo.cc (type_info::is_pointer_p, type_info::is_function_p, type_info::do_catch, type_info::do_upcast): Prepend __. (contained_p, public_p, virtual_p, contained_public_p, contained_nonpublic_p, contained_nonvirtual_p): Adjust. (__class_type_info::do_catch, __class_type_info::do_upcast): Prepend __. Adjust. (__class_type_info::__upcast_result, __class_type_info::__dyncast_result): Move from inc/cxxabi.h. Adjust. (__class_type_info::find_public_src): Prepend __. Adjust. (__class_type_info::do_find_public_src, __si_class_type_info::do_find_public_src, __vmi_class_type_info::do_find_public_src): Likewise. (__class_type_info::do_dyncast, __si_class_type_info::do_dyncast, __vmi_class_type_info::do_dyncast): Likewise. (__class_type_info::do_upcast, __si_class_type_info::do_upcast, __vmi_class_type_info::do_upcast): Likewise. (__dynamic_cast): Adjust. * tinfo2.cc (__pointer_type_info::is_pointer_p): Prepend __. (__function_type_info::is_function_p): Likewise. (__pointer_type_info::do_catch): Likewise. Adjust. (__pointer_to_member_type_info::do_catch): Likewise. Adjust. (__throw_type_match_rtti_2): Adjust. (__is_pointer): Adjust. From-SVN: r33041
2000-04-07Rename abi::__vmi_class_type_info members.Nathan Sidwell1-7/+7
* inc/cxxabi.h (__vmi_class_type_info): Rename details, n_bases, base_list, detail_masks members to vmi_flags, vmi_base_count, vmi_bases and vmi_flags_masks respectively. (__vmi_class_type_info::vmi_flags_masks): Rename details_unknown_mask to flags_unknown_mask. * tinfo.cc (__class_type_info::do_upcast): Adjust. (__vmi_class_type_info::do_find_public_src): Adjust. (__vmi_class_type_info::do_dyncast): Adjust. (__vmi_class_type_info::do_upcast): Adjust. From-SVN: r33004
2000-04-06vec.cc: New file.Nathan Sidwell1-1/+27
* vec.cc: New file. * Make-lang.in (CXX_LIB2FUNCS): Add it. (vec.o): Build it. * inc/cxxabi.h (__cxa_vec_new, __cxa_vec_ctor, __cxa_vec_dtor, __cxa_vec_delete): Declare. From-SVN: r32967
2000-03-30rtti.c (class_hint_flags): Rename flags.Nathan Sidwell1-25/+25
* rtti.c (class_hint_flags): Rename flags. (class_initializer): Remove flags. (synthesize_tinfo_var): Combine offset and flags. Add flags for __vmi_class_type_info. (create_tinfo_types): Remove flags from __class_type_info and __si_class_type_info. Merge flags and offset from base_class_type_info. * inc/cxxabi.h (__base_class_info): Merge offset and vmi_flags. (__base_class_info::is_virtual_p): Adjust. (__base_class_info::is_public_p): Adjust. (__base_class_info::offset): New accessor. (__class_type_info::details): Remove member. (__class_type_info::__class_type_info): Lose details. (__class_type_info::detail_masks): Remove. (__si_class_type_info::__si_class_type_info): Lose details. (__vmi_class_type_info::details): New member. (__vmi_class_type_info::__vmi_class_type_info): Adjust. (__vmi_class_type_info::detail_masks): New member. * tinfo.cc (__class_type_info::do_upcast): Initialize result with unknown_details_mask. (__vmi_class_type_info::do_find_public_src): Adjust (__vmi_class_type_info::do_dyncast): Adjust. (__vmi_class_type_info::do_upcast): Set result details, if needed. Adjust. (__dynamic_cast): Temporarily #if out optimization. From-SVN: r32828
2000-03-21cxxabi.h: New header file.Nathan Sidwell2-4/+406
* inc/cxxabi.h: New header file. Define new-abi entry points. (__pointer_type_info::target): Rename member to ... (__pointer_type_info::type): ... here. (__base_class_info::type): Rename member to ... (__base_class_info::base): ... here. * Make-lang.in (CXX_EXTRA_HEADERS): Add cxxabi.h * cp-tree.h (CPTI_ABI): New global tree enumeration. (abi_node): New global tree node. * decl.c (abi_node): Document. (init_decl_processing): Initialize abi_node. * rtti.c (build_dynamic_cast_1): Use abi_node for new-abi. (get_vmi_pseudo_type_info): Likewise. (create_tinfo_types): Likewise. (emit_support_tinfos): Likewise. * tinfo.h (cxxabi.h): Include for new-abi. Move rtti class definitions to new header file. * tinfo.cc (abi): Use the namespace. (std): Move new abi rtti classes from here ... (__cxxabiv1): ... to here. * tinfo2.cc (cxxabi.h): Include for new-abi. Move rtti class definitions to new header file. (std): Move new abi rtti classes from here ... (__cxxabiv1): ... to here. * inc/typeinfo (__class_type_info): Move into __cxxabiv1 namespace. From-SVN: r32669
2000-02-26Fix copyrightsJeff Law3-3/+3
From-SVN: r32185
2000-01-31cp-tree.h (new_abi_rtti_p): Use flag_new_abi.Nathan Sidwell1-14/+60
* cp-tree.h (new_abi_rtti_p): Use flag_new_abi. Runtime support for new-abi rtti. * inc/typeinfo (type_info::operator!=): Define in class. (type_info::before, type_info::name, type_info::operator==, type_info::operator!=): Define new ABI implementations. (type_info::is_pointer_p, type_info::is_function_p): Declare new virtual functions. (type_info::do_catch, type_info::do_upcast): Likewise. * tinfo.h (__base_class_info): Define new class. (__class_type_info): Likewise. (__si_class_type_info): Likewise. (__vmi_class_type_info): Likewise. (__dynamic_cast): Prototype. * tinfo.cc: Conditionalize old and new rtti mechanisms. (type_info::is_pointer_p): Define new function. (type_info::is_function_p): Likewise. (type_info::do_catch): Likewise. (type_info::do_upcast): Likewise. (vtable_prefix): New structure for vtable access. (adjust_pointer): Define new template function. (contained_p, public_p, virtual_p, contained_public_p, contained_nonpublic_p, contained_nonvirtual_p): Define new functions. (nonvirtual_base_type): New local variable. (__class_type_info::~__class_type_info): Define. (__si_class_type_info::~__si_class_type_info): Likewise. (__vmi_class_type_info::~__vmi_class_type_info): Likewise. (__class_type_info::do_catch): Define new function. (__class_type_info::do_upcast): Likewise. (__class_type_info::find_public_src): Likewise. (__class_type_info::do_find_public_src): Likewise. (__si_class_type_info::do_find_public_src): Likewise. (__vmi_class_type_info::do_find_public_src): Likewise. (__class_type_info::do_dyncast): Likewise. (__si_class_type_info::do_dyncast): Likewise. (__vmi_class_type_info::do_dyncast): Likewise. (__class_type_info::do_upcast): Likewise. (__si_class_type_info::do_upcast): Likewise. (__vmi_class_type_info::do_upcast): Likewise. (__dynamic_cast): Likewise. * tinfo2.cc (__fundamental_type_info): Define new class. (__pointer_type_info): Likewise. (__reference_type_info): Likewise. (__array_type_info): Likewise. (__function_type_info): Likewise. (__enum_type_info): Likewise. (__ptr_to_member_type_info): Likewise. (__fundamental_type_info::~__fundamental_type_info): Define. (__pointer_type_info::~__pointer_type_info): Likewise. (__reference_type_info::~__reference_type_info): Likewise. (__array_type_info::~__array_type_info): Likewise. (__function_type_info::~__function_type_info): Likewise. (__enum_type_info::~__enum_type_info): Likewise. (__ptr_to_member_type_info::~__ptr_to_member_type_info): Likewise. (__pointer_type_info::do_catch): Define new function. (__ptr_to_member_type_info::do_catch): Define new function. (__throw_type_match_rtti_2): Use new ABI interface, if enabled. (__is_pointer): Likewise. * exception.cc (__cplus_type_matcher): Deal with new-abi rtti. From-SVN: r31713
1998-11-22update copyrightsJason Merrill3-3/+3
From-SVN: r23764
1998-10-11t-cygwin32 (TARGET_LIBGCC2_CFLAGS): Define.Jason Merrill1-12/+3
* i386/t-cygwin32 (TARGET_LIBGCC2_CFLAGS): Define. (cp) * inc/typeinfo: Add #pragma interface. (operator!=): Just call operator==. * tinfo.cc: Add #pragma implementation. (operator==): Move from inc/typeinfo and tinfo2.cc. Check __COMMON_UNRELIABLE instead of _WIN32. From-SVN: r23004
1998-09-04typeinfo (type_info::type_info(const char*)): Make `explicit'.Mark Mitchell1-1/+1
* inc/typeinfo (type_info::type_info(const char*)): Make `explicit'. From-SVN: r22235
1998-08-23lex.c (real_yylex): Don't warn about long long constants if we're allowing ↵Jason Merrill4-14/+0
long long. * lex.c (real_yylex): Don't warn about long long constants if we're allowing long long. * decl.c (pushdecl): Use IDENTIFIER_NAMESPACE_VALUE instead of accessing bindings directly. * lang-specs.h: Remove __HONOR_STD. * inc/exception, inc/new, inc/new.h, inc/typeinfo: Likewise. From-SVN: r21926
1998-07-22exception: Change terminate and unexpected to ().Jason Merrill1-2/+2
* inc/exception: Change terminate and unexpected to (). * parse.y (named_class_head_sans_basetype_defn): A named_class_head_sans_basetype followed by '{' or ':' is a defn. From-SVN: r21342
1998-05-07massive namespace patchMartin v. Löwis4-11/+11
From-SVN: r19631
1998-03-27* inc/exception: Reorder closing braces.Jason Merrill1-1/+2
From-SVN: r18857
1997-11-21except.c (expand_start_eh_spec): Use the try/catch code.Jason Merrill1-2/+2
* except.c (expand_start_eh_spec): Use the try/catch code. (expand_end_eh_spec): Likewise. Call __check_eh_spec instead of doing everything inline. (init_exception_processing): throw_type_match now takes const void pointers. * exception.cc (__check_eh_spec): New fn. * inc/exception: Neither terminate nor unexpected return. * decl.c: Make const_ptr_type_node public. * tinfo2.cc (__throw_type_match_rtti): Take the typeinfos constly. From-SVN: r16651
1997-11-20Makefile.in (LIB2FUNCS): Remove C++ memory management support.Jason Merrill1-9/+7
./: * Makefile.in (LIB2FUNCS): Remove C++ memory management support. * libgcc2.c: Remove __builtin_new, __builtin_vec_new, set_new_handler, __builtin_delete, and __builtin_vec_delete. * except.c (output_exception_table): Don't bother with __EXCEPTION_END__. cp/: * Make-lang.in (CXX_LIB2FUNCS): Add new op new and op delete objs. (various.o): Likewise. * inc/new: Add placement deletes. Add throw specs for default new. * new.cc (set_new_handler): Move here from libgcc2. * new1.cc (new (nothrow)): Catch a bad_alloc thrown from the handler. (new): Move from libgcc2. Throw bad_alloc. * new2.cc: Move the rest of the op news and op deletes from libgcc2. * decl.c (init_decl_processing): Update exception specs on new and delete. From-SVN: r16617
1997-04-2391th Cygnus<->FSF mergeMike Stump1-1/+1
From-SVN: r13972
1997-02-0490th Cygnus<->FSF quick mergeMike Stump1-6/+16
From-SVN: r13605
1996-09-3089th Cygnus<->FSF quick mergeMike Stump4-0/+164
From-SVN: r12883