Commit Graph

33626 Commits

Author SHA1 Message Date
Mark Mitchell
f1a3f197e1 * typeck2.c (build_m_component_ref): Robustify.
From-SVN: r39731
2001-02-16 01:24:14 +00:00
Benjamin Kosnik
e2c094827c Add support for -fno-exceptions.
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.

From-SVN: r39730
2001-02-16 00:44:44 +00:00
Phil Edwards
777c951742 configopts.html: Minor updates and typo fixes.
2001-02-15  Phil Edwards  <pme@sources.redhat.com>

	* docs/html/configopts.html:  Minor updates and typo fixes.
	* docs/html/faq/index.html:  Updates of the "not really bugs" list.
	* docs/html/faq/index.txt:  Regenerated.

From-SVN: r39727
2001-02-15 22:21:12 +00:00
Andrew Haley
6472877ae0 i386-signal.h (INIT_SEGV): Use a direct system call to set the handler.
2001-02-14  Andrew Haley  <aph@redhat.com>

        * include/i386-signal.h (INIT_SEGV): Use a direct system call to
        set the handler.

From-SVN: r39724
2001-02-15 19:19:50 +00:00
Mark Mitchell
3af64fd603 * invoke.texi (--param): Document.
From-SVN: r39723
2001-02-15 18:23:33 +00:00
Alexandre Oliva
ba21a8a84f * config/sh/sh.h (BOOL_TYPE_SIZE): Don't define.
From-SVN: r39721
2001-02-15 17:17:09 +00:00
Anthony Green
c220009946 defineclass.cc: Don't include alloca.h.
2001-02-15  Anthony Green  <green@redhat.com>

	* defineclass.cc: Don't include alloca.h.
	(prepare_pool_entry): Convert alloca to __builtin_alloca.
	* interpret.cc (run_normal): Ditto.
        (continue1): Ditto.
	* java/lang/natDouble.cc (parseDouble): Ditto.

From-SVN: r39719
2001-02-15 14:03:14 +00:00
Anthony Green
85b99cbe64 configure: Introduce GCJ_FOR_TARGET.
2001-02-15  Anthony Green  <green@redhat.com>

        * configure: Introduce GCJ_FOR_TARGET.
        * configure.in: Ditto.
        * Makefile.in: Ditto.

From-SVN: r39718
2001-02-15 13:55:34 +00:00
Alexandre Oliva
8b2f4063e2 * friend1.C: New test.
From-SVN: r39714
2001-02-15 12:54:38 +00:00
Alexandre Oliva
8826b15be3 friend.c (do_friend): Don't take the nested [template] class into account when...
* friend.c (do_friend): Don't take the nested [template] class
into account when deciding whether to warn about the friend
function not referring to a template function.

From-SVN: r39713
2001-02-15 12:54:18 +00:00
Jan Hubicka
ff78d08278 Fix problem in my previous accidental obvious bugfix checkin. Add Changelog.
* i386.md (extendsfdf2_2): Fix constraints.

From-SVN: r39712
2001-02-15 09:57:21 +00:00
Jan Hubicka
a811cc63bf Fix cvtss2sd constraints.
From-SVN: r39711
2001-02-15 09:30:51 +00:00
Jan Hubicka
2b66da3c66 * i386.md (fop_df_3 splitter): Fix operand number.
From-SVN: r39710
2001-02-15 08:47:17 +00:00
Jeff Law
14edcdd608 Daily bump.
From-SVN: r39709
2001-02-15 01:45:19 -07:00
Bryce McKinlay
06e3b913b3 AbstractSequentialList.java: Synchronize with Classpath.
* java/util/AbstractSequentialList.java: Synchronize with Classpath.
        * java/util/Collection.java: Likewise.
        * java/util/Comparator.java: Likewise.
        * java/util/Dictionary.java: Likewise.
        * java/util/Iterator.java: Likewise.
        * java/util/ListIterator.java: Likewise.
        * java/util/Map.java: Likewise.
        * java/util/Set.java: Likewise.

From-SVN: r39708
2001-02-15 06:43:00 +00:00
Bryce McKinlay
a6845c56c4 * java/util/HashSet.java (clone): Remove try/catch.
From-SVN: r39707
2001-02-15 05:12:05 +00:00
Bryce McKinlay
2e22d9b885 DirectRasterGraphics.java (clone): Hoist to public.
* gnu/awt/j2d/DirectRasterGraphics.java (clone): Hoist to public.
	* gnu/awt/j2d/IntegerGraphicsState.java (setClip): Call
	Rectangle.clone(), not Object.clone().

From-SVN: r39706
2001-02-15 04:36:34 +00:00
Bryce McKinlay
505ce70d3f TreeSet.java (clone): Call TreeMap.clone(), not Object.clone().
* java/util/TreeSet.java (clone): Call TreeMap.clone(), not
	Object.clone().
	* java/util/Collections.java (ReverseComparator): New static class.
	(reverseOrder): Return static instance of ReverseComparator.

From-SVN: r39705
2001-02-15 03:59:57 +00:00
Gabriel Dos Reis
78e3e6aca3 libstdc++.exp (dg-test): Lift, temporarily, out of dejagnu/dg.exp.
* testsuite/lib/libstdc++.exp(dg-test): Lift, temporarily, out of
        dejagnu/dg.exp.  Adapt to log options used to run testcases.

From-SVN: r39704
2001-02-15 03:57:39 +00:00
Bryce McKinlay
4238a754e7 * Make-lang.in (jvspec.o): Modify rule to match that of cp/g++spec.o.
From-SVN: r39702
2001-02-15 02:06:29 +00:00
Alexandre Petit-Bianco
e101152f86 [multiple changes]
2001-02-14  Tom Tromey  <tromey@redhat.com>
            Alexandre Petit-Bianco  <apbianco@redhat.com>

        Fix for PR java/1261.
        * typeck.c (build_java_array_type): Add public `clone' method to
        arrays.
        * parse.y (resolve_qualified_expression_name): Use current_class
	when checking for inaccessibility.
        (patch_method_invocation): Fixed error message when accessibility
	denied.  Added `from_super' argument.

2001-02-14  Alexandre Petit-Bianco  <apbianco@redhat.com>

	* parse.y (resolve_class): Don't build a fake decl. Use the one
	already built.
	* typeck.c (build_java_array_type): Build and assign decl to array
	type.

2001-02-14  Alexandre Petit-Bianco  <apbianco@redhat.com>

	* parse.y (not_accessible_p): Changed leading comment. Added extra
	`where' argument. Use it to enforce protected access rules.
	(resolve_qualified_expression_name): Added extra argument to
	not_accessible_p.
	(patch_method_invocation): Use argument `primary' to provide
	not_accessible_p with an extra argument.
	(lookup_method_invoke): Added extra argument to not_accessible_p.
	(search_applicable_method_list): Likewise.

(http://gcc.gnu.org/ml/gcc-patches/2001-02/msg00849.html)

From-SVN: r39701
2001-02-14 17:23:32 -08:00
Jan Hubicka
2ccc6d5b41 Fix syntax error in previous checkin.
From-SVN: r39698
2001-02-14 23:16:12 +00:00
Jan Hubicka
266da7a291 invoke.texi (-mreg-alloc): Nuke.
* invoke.texi (-mreg-alloc): Nuke.
	* i386.c (ix86_reg_alloc_order, regs_allocated,
	order_regs_for_local_alloc): Nuke.
	(override_options): Kill reg_alloc code.
	* i386.h (TARGET_OPTIONS): Kill reg-alloc.
	(REG_ALLOC_ORDER): SSE goes before I387.
	(ORDER_REGS_FOR_LOCAL_ALLOC): Kill.
	(ix86_reg_alloc_order): Likewise.
	* i386-protos.h (ix86_reg_alloc_order): Kill.

From-SVN: r39697
2001-02-14 22:47:54 +00:00
Richard Henderson
121bc96b8a * toplev.c (f_options): Clarify -fschedule-insns2 documentation.
From-SVN: r39695
2001-02-14 14:38:58 -08:00
Jan Hubicka
04b1a22363 * i386.h (RETURN_IN_MEMORY): Fix formating; reject TFmodes
From-SVN: r39693
2001-02-14 22:03:39 +00:00
J"orn Rennecke
6d13965047 * g++.old-deja/g++.brendan/new2.C (main): Use sizeof.
From-SVN: r39692
2001-02-14 21:42:30 +00:00
J"orn Rennecke
49f527d515 920302-1.c (execute): Change argument type to short.
* gcc.c-torture/execute/920302-1.c (execute):
	Change argument type to short.

From-SVN: r39691
2001-02-14 21:34:52 +00:00
Jan Hubicka
3bb7e1260f Fix Richard suggested and I forgot.
From-SVN: r39690
2001-02-14 21:20:21 +00:00
Jan Hubicka
fa79946ef5 i386-protos.h (ix86_memory_move_cost): Move offline.
* i386-protos.h (ix86_memory_move_cost): Move offline.
	* i386.c (ix86_register_move_cost): Compute properly cost of
	SSE, MMX and i387 instructions.
	(*_cost): Add costs of SSE/MMX moves.
	(ix86_memory_move_cost): Move offline from ....; Likewise.
	* i386.h (MEMORY_MOVE_COST): .... here;
	(struct processor costs): Add new fields to represent costs
	of SSE/MMX moves.

From-SVN: r39689
2001-02-14 21:16:35 +00:00
Jan Hubicka
6836e0240e regclass.c (init_reg_sets_1): Reinstall the optimization of move_cost together with Matt Kraai's fix.
* regclass.c (init_reg_sets_1): Reinstall the optimization of
	move_cost together with Matt Kraai's fix.

From-SVN: r39688
2001-02-14 20:38:33 +00:00
Jeffrey Oldham
d3fb92b825 Makefile.in (OBJS): Add params.o.
2001-02-14  Jeffrey Oldham  <oldham@codesourcery.com>

	* Makefile.in (OBJS): Add params.o.

From-SVN: r39687
2001-02-14 19:44:51 +00:00
Richard Henderson
8e0b124eaf jump.c (jump_optimize_1): When we delete a conditional jump preceeding a non-conditional jump to...
* jump.c (jump_optimize_1): When we delete a conditional jump
preceeding a non-conditional jump to effectively the same place,
make sure that the combined jump skips any clobber insns between
the two labels.

Co-Authored-By: DJ Delorie <dj@redhat.com>

From-SVN: r39686
2001-02-14 13:34:25 -05:00
Jakub Jelinek
7161c1a582 * typeck.c (build_unary_op): Clarify error message.
From-SVN: r39685
2001-02-14 17:41:44 +01:00
Jeffrey Oldham
55bd9f24ca gcc.c (do_spec_1): Fix off-by-one error for '%M' case.
2001-02-14  Jeffrey Oldham  <oldham@codesourcery.com>

	* gcc.c (do_spec_1): Fix off-by-one error for '%M' case.

From-SVN: r39684
2001-02-14 16:37:14 +00:00
Mark Mitchell
c6d9a88cbc Makefile.in (toplev.o): Depend on params.h.
* Makefile.in (toplev.o): Depend on params.h.
	(intergate.o): Likewise.
	(params.o): New target.
	* flags.h (inline_max_insns): Remove.
	* integrate.c: Include params.h.
	Use MAX_INLINE_INSNS instead of inline_max_insns.
	* params.c: New file.
	* params.h: Likewise.
	* params.def: Likewise.
	* toplev.c: Include params.h.
	(lang_independent_params): New variable.
	(decode_f_option): Use the param machinery instead of setting
	max_inline_insns.
	(independent_decode_option): Handle "--param name=value".
	(main): Register language-independent parameters.

From-SVN: r39683
2001-02-14 16:24:45 +00:00
Aldy Hernandez
4806765ec4 optional parens around connstructor names
From-SVN: r39681
2001-02-14 13:58:49 +00:00
Nathan Sidwell
bfc8e1e2c4 cp-tree.h (setup_vtbl_ptr): Move prototype to semantics.c section.
cp:
	* cp-tree.h (setup_vtbl_ptr): Move prototype to semantics.c
	section.
	* init.c (emit_base_init): Remove incorrect comment about
	virtual bases.
	* method.c (make_thunk): Fix comment alignment.

From-SVN: r39679
2001-02-14 10:57:59 +00:00
Jan Hubicka
c6e95f3488 * i386.md (pushsf, pushdf_nointeger): Fix constraint.
From-SVN: r39678
2001-02-14 10:52:33 +00:00
Nathan Sidwell
394fd77650 Kill remnants of this is variable.
cp:
	Kill remnants of this is variable.
	* cp-tree.h (flag_this_is_variable): Remove.
	* decl2.c (flag_this_is_variable): Remove.
	* class.c (fixed_type_or_null): Add cdtor parm. Adjust.
	(build_vbase_path): The path is non-static, even in a cdtor.
	(resolves_to_fixed_type_p): Add additional return value.
	* search.c (init_vbase_pointers): Adjust.
	* tree.c (lvalue_p_1): Adjust.
	* typeck.c (mark_addressable): Adjust.

From-SVN: r39676
2001-02-14 10:49:27 +00:00
Richard Henderson
c7c0ae3d7f * regclass.c (init_reg_sets_1): Revert last two changes.
From-SVN: r39669
2001-02-14 02:12:20 -08:00
Nathan Sidwell
d0ab76243b pt.c (unify): Don't check cv quals of array types.
cp:
	* pt.c (unify): Don't check cv quals of array types.
testsuite:
	* g++.old-deja/g++.pt/deduct6.C: New test.

From-SVN: r39666
2001-02-14 09:50:06 +00:00
Nathan Sidwell
7773899b5f tree.c (cp_build_qualified_type_real): Use CP_TYPE_QUALS to check whether we already have the type.
cp:
	* tree.c (cp_build_qualified_type_real): Use CP_TYPE_QUALS to
	check whether we already have the type.
testsuite:
	* g++.old-deja/g++.pt/deduct5.C: New test.

From-SVN: r39665
2001-02-14 09:45:29 +00:00
Jeff Law
837a680a7a Daily bump.
From-SVN: r39664
2001-02-14 01:45:07 -07:00
Jakub Jelinek
fe375cf108 stor-layout.c (is_pending_size, [...]): New functions.
* stor-layout.c (is_pending_size, put_pending_size): New functions.
	(variable_size): Call put_pending_size.
	* tree.h (is_pending_size, put_pending_size): Add prototypes.
	* fold-const.c (extract_muldiv): If SAVE_EXPR is on the pending
	sizes list, put newly created SAVE_EXPR there as well.

	* gcc.c-torture/execute/20010209-1.c: New test.

	* config/ia64/ia64.c (last_group): Only 2 entries are needed.
	(errata_find_address_regs): load_group has only 2 entries.
	(errata_emit_nops): Likewise.  shladd is not problematic.
	Clear last_group if nop was emitted.
	(fixup_errata): load_group has only 2 entries.
	Optimize.

From-SVN: r39663
2001-02-14 08:57:49 +01:00
Neil Booth
ceeaadbb78 * gcc.dg/cpp/sysmac1.c, sysmac2.c: New testcases.
From-SVN: r39662
2001-02-14 07:39:40 +00:00
Neil Booth
7065e130e0 c-lex.c (lex_number): Only warn traditionally for U suffix outside system macros.
* c-lex.c (lex_number): Only warn traditionally for U suffix
        outside system macros.
        * cppexp.c (parse_number): Similarly.
        * cpplib.h (NODE_SYSHDR, cpp_sys_objmacro_p): New.
        * cppmacro.c (struct cpp_macro): New member node.
        (parse_args): Only warn about missing rest args if not
        a system macro.
        (funlike_invocation_p): Similarly for uninvoked funlike macros.
        (cpp_sys_objmacro_p): New.
        (_cpp_create_definition): Store the node with the macro defn.
        Remember if the macro is defined in a system header.

From-SVN: r39661
2001-02-14 07:38:20 +00:00
Mark Mitchell
52682a1b77 cp-tree.h (CLASSTYPE_DESTRUCTORS): Fix typo in comment.
* cp-tree.h (CLASSTYPE_DESTRUCTORS): Fix typo in comment.
	* call.c (build_op_delete_call): Simplify to remove duplicate
	code.
	* class.c (clone_function_decl): Don't build the deleting variant
	of a non-virtual destructor.
	* decl.c (finish_destructor_body): Don't call delete if this is a
	non-virtual destructor.
	* init.c (build_delete): Explicitly call `operator delete' when
	deleting an object with a non-virtual destructor.

From-SVN: r39659
2001-02-14 06:32:15 +00:00
Bryce McKinlay
97a4d32ec6 natClass.cc (getSignature): Don't try to dereference param_types if it is null.
* java/lang/natClass.cc (getSignature): Don't try to dereference
	param_types if it is null. Instead, take this to mean "no parameters".
	* java/lang/TreeMap.java (TreeIterator.next): Throw
	NoSuchElementException in preference to
	ConcurrentModificationException.
	(TreeIterator.remove): Throw IllegalStateException in preference to
	ConcurrentModificationException.
	(SubMap.firstKey): Do a better check for empty SubMap, and if it is,
	throw a NoSuchElementException.
	(SubMap.lastKey): Likewise.

From-SVN: r39658
2001-02-14 05:32:31 +00:00
Bryce McKinlay
a142a99626 re PR libgcj/1758 (java.util package lacks TreeMap)
* java/util/TreeMap.java: New file.
        * java/util/TreeSet.java: New file.
        * Makefile.am: Add TreeMap and TreeSet. Enable WeakHashMap.
        * Makefile.in: Rebuilt.
        * java/util/HashSet.java (clone): Use constructor instead of calling
        clone on itself.
        * java/util/SortedSet.java: Sync with classpath.
        * java/util/HashMap.java (hash): Use if statement instead of ternary,
        for clarity.
	Resolves PR libgcj/1758.
	Resolves PR java/1684.

From-SVN: r39657
2001-02-14 04:44:21 +00:00
DJ Delorie
cbc59f0118 configure.in (check_languages): determine languages to check
* configure.in (check_languages): determine languages to check
* Makefile.in (check-c++): alias for check-g++
(check-f77): alias for check-g77
(CHECK_TARGETS): depend on configured languages

From-SVN: r39655
2001-02-13 20:13:42 -05:00