Commit Graph

52658 Commits

Author SHA1 Message Date
Roger Sayle
eb698c5883 expr.c (expand_operands): New function to expand an operand pair.
* expr.c (expand_operands): New function to expand an operand pair.
	(expand_expr): Call expand_operands whenever we need to expand both
	operands of a binary operator.
	(do_store_flag): Likewise for operands of comparison operations.

From-SVN: r71179
2003-09-07 20:34:13 +00:00
Roger Sayle
4f61b3b722 combine.c (combine_simplify_rtx): Don't convert -(A*B) into (-A)*B if we care about sign-dependent rounding.
* combine.c (combine_simplify_rtx): Don't convert -(A*B) into
	(-A)*B if we care about sign-dependent rounding.

From-SVN: r71178
2003-09-07 20:32:16 +00:00
Mark Mitchell
ae53e5bcea Fix typo.
From-SVN: r71177
2003-09-07 19:21:05 +00:00
Gabriel Dos Reis
a2a9e21c33 re PR c++/11762 (namespace aliasing ICE in warn_extern_redeclared_static)
* c-pretty-print.h (pp_c_left_brace): Declare.
	(pp_c_right_brace): Likewise.
	* c-pretty-print.c (pp_c_left_brace): Now a function
	(pp_c_right_brace): Likewise.

cp/
	PR c++/11762
	* error.c (dump_decl): Handle namespace-alias-definition.
	* decl.c (warn_extern_redeclared_static): There is no point in
	checking changes in storage class specifier for a namespace
	declaration.
	(duplicate_decls): Tidy diagnostic message.
	* cxx-pretty-print.c (pp_cxx_left_brace): New macro.
	(pp_cxx_right_brace): Likewise.
	(pp_cxx_original_namespace_definition): New function.
	(pp_cxx_namespace_alias_definition): Likewise.
	(pp_cxx_declaration): Use them.  Handle NAMESPACE_DECLs.

From-SVN: r71175
2003-09-07 18:52:53 +00:00
Jan Hubicka
1ab237dfa3 * cfgcleanup.c (try_simplify_condjump): Fix again the preivous patch.
From-SVN: r71172
2003-09-07 16:23:41 +00:00
Gabriel Dos Reis
43f9ce0256 * diagnostic.c (warn_deprecated_use): Move to toplev.c
From-SVN: r71168
2003-09-07 11:59:52 +00:00
Jan Hubicka
c57e159892 decl2.c (maybe_emit_vtables, [...]): Avoid re-emitting variables in unit-at-a-time mode.
* decl2.c (maybe_emit_vtables, write_out_vars, finish_file):
	Avoid re-emitting variables in unit-at-a-time mode.

From-SVN: r71167
2003-09-07 11:15:46 +00:00
Gabriel Dos Reis
dba65e798f langhooks.c (lhd_print_error_function): Move from diagnostic.c.
* langhooks.c (lhd_print_error_function): Move from diagnostic.c.
	* Makefile.in (langhooks.o): Depend on diagnostic.h

From-SVN: r71165
2003-09-07 10:11:28 +00:00
Andrew Pinski
687f4bc133 Forgot to commit the Changelog for the new tests.
From-SVN: r71162
2003-09-06 22:57:10 -07:00
James E Wilson
bc49924bc2 * MAINTAINTERS: Update my affiliation and email address.
From-SVN: r71161
2003-09-06 22:52:40 -07:00
James E Wilson
10ef35a9da loop.c (loop_regs_update): Delete else clause for PATTERN rtx and simplify.
* loop.c (loop_regs_update): Delete else clause for PATTERN rtx and
simplify.

From-SVN: r71160
2003-09-06 22:21:35 -07:00
Mark Mitchell
385bce060a re PR c++/11867 (static_cast ignores ambiguity)
PR c++/11687
	* call.c (standard_conversion): Improve comments.
	(perform_direct_initialization): Make sure we return an expression
	of the correct type.
	* typeck.c (build_static_cast): Check for ambiguity and
	accessibility when performing conversions.

	PR c++/11687
	* g++.dg/expr/static_cast5.C: New test.

From-SVN: r71157
2003-09-07 04:10:10 +00:00
Andrew Pinski
ef8f74d66d re PR c++/11507 (parser fails to recognize namespace)
2003-09-06  Andrew Pinski  <pinskia@physics.uc.edu>

        PR c++/11507
        * g++.dg/lookup/scoped7.C: New test.

        PR c++/9574
        * g++.dg/other/static1.C: New test.

        PR c++/11490
        * g++.dg/warn/template-1.C: New test.

        PR c++/11432
        * g++.dg/template/crash10.C: New test.

        PR c++/2478
        * g++.dg/overload/VLA.C: New test.

        PR c++/10804
        * g++.dg/template/call1.C: New test.

From-SVN: r71156
2003-09-06 20:43:15 -07:00
R. Kelley Cook
9aec989f02 Makefile.in: Define $REMAKE to be $MAKE with LANGUAGES & BOOT_CFLAGS and use it throughout.
2003-09-07  Kelley Cook  <kelleycook@wideopenwest.com>

	* Makefile.in: Define $REMAKE to be $MAKE with LANGUAGES & BOOT_CFLAGS
	and use it throughout.

From-SVN: r71155
2003-09-07 02:11:40 +00:00
Jan Hubicka
470d9044da * cfgcleanup.c (try_simplify_condjump): Fix my previous patch.
From-SVN: r71153
2003-09-07 00:51:53 +00:00
GCC Administrator
0b22120b62 Daily bump.
From-SVN: r71151
2003-09-07 00:16:07 +00:00
Jan Hubicka
ba245151fc cgraph.c (cgraph_mark_reachable_node): Only enqueue finalized functions.
* cgraph.c (cgraph_mark_reachable_node): Only enqueue finalized
	functions.
	(cgraph_varpool_finalize_decl): Notice global symbol when needed.

From-SVN: r71149
2003-09-06 22:47:19 +00:00
Jan Hubicka
7e668417e9 toplev.c (rest_of_decl_compilation): Do not finalize external virables.
* toplev.c  (rest_of_decl_compilation):  Do not finalize external
	virables.

From-SVN: r71148
2003-09-06 22:23:51 +00:00
Jan Hubicka
9778f2f8b5 re PR target/12070 (ICE converting between double and long double with -msoft-float)
PR target/12070
	* calls.c (emit_library_call_value_1): Fix saving of BLKmode arguments.

	PR opt/12082
	* cfgcleanup.c (try_simplify_condjump): Avoid unreachable code warning.

From-SVN: r71147
2003-09-06 21:50:20 +00:00
Gabriel Dos Reis
0761f342c5 * diagnostic.c (announce_function): Move to toplev.c.
From-SVN: r71146
2003-09-06 21:33:46 +00:00
Gabriel Dos Reis
c87ceb139f cp-tree.h (add_binding): Remove declaration.
* cp-tree.h (add_binding): Remove declaration.
        * name-lookup.h (supplement_binding): Declare.
        * decl.c (add_binding): Move to name-lookup.c.
        (push_local_binding): Adjust.
        (push_class_binding): Likewise.
        (set_identifier_type_value_with_scope): Likewise.
        * name-lookup.c (supplement_binding): Rename from add_binding.
        Return a bool.  Improve documentation.
        (set_namespace_binding): Adjust.
        * Make-lang.in (cp/name-lookup.o): Depend on toplev.h

From-SVN: r71144
2003-09-06 19:03:44 +00:00
Nathan Sidwell
1f845b302a re PR c++/11794 (using declaration inside nested class seems ignored)
cp:
	PR c++/11794
	* class.c (pushclass): Push dependent using decls for nested
	classes of templates too.
testsuite:
	PR c++/11794
	* g++.dg/parse/using3.C: New test.

From-SVN: r71143
2003-09-06 18:37:57 +00:00
Zdenek Dvorak
082124f5c1 * MAINTAINERS (Write After Approval): Add myself.
From-SVN: r71142
2003-09-06 17:37:09 +00:00
Zdenek Dvorak
bad998e07e gcse.c (expr_equiv_p): Don't consider anything to be equal to volatile mem.
* gcse.c (expr_equiv_p): Don't consider anything to be equal to
	volatile mem.

From-SVN: r71140
2003-09-06 17:05:02 +00:00
Roger Sayle
34ff26738c re PR c++/11409 (using declarations and fabs built-in)
PR c++/11409
	* class.c (resolve_address_of_overloaded_function): When building
	list of matching non-template function decls, ignore anticipated
	declarations of undeclared or shadowed GCC builtins.

	* g++.dg/overload/builtin3.C: New test case.

From-SVN: r71139
2003-09-06 16:14:30 +00:00
Steven Bosscher
b9c87401ae re PR c++/11595 (crash on duplicate label definition)
PR c++/11595
	* decl.c (define_label): Remove unreachable timevar pop.
	Always return the decl, even if the definition is invalid.

From-SVN: r71138
2003-09-06 15:44:34 +00:00
Kaveh R. Ghazi
d85a0aae6d ggc-common.c (init_ggc_heuristics): Don't use the heuristics when gc checking is enabled.
* ggc-common.c (init_ggc_heuristics): Don't use the heuristics
	when gc checking is enabled.

From-SVN: r71137
2003-09-06 15:06:36 +00:00
Steven Bosscher
03845b47e6 re PR c/9862 (spurious warnings with -W -finline-functions)
PR c/9862
	* c-decl.c (c_expand_body_1): Move return warning from here...
	(finish_function): ...to here.

	* gcc.dg/20030906-1.c: New test.
	* gcc.dg/20030906-2.c: Likewise.

From-SVN: r71134
2003-09-06 13:34:00 +00:00
Nathan Sidwell
b92bc2a028 re PR c++/12167 (ICE on default argument of class member function if non-simple)
cp:
	PR c++/12167
	* parser.c (cp_parser_late_parsing_default_args): Push & pop the
	unparsed functions queue.
testsuite:
	PR c++/12167
	* g++.dg/parse/defarg5.C: New test.

	* g++.dg/template/non-type-template-argument-1.C: Tweak expected error.

From-SVN: r71133
2003-09-06 11:29:17 +00:00
Josef Zlomek
13f7d3a1c0 fibheap.c (fibheap_replace_key_data): Change type of OKEY to FIBHEAPKEY_T.
* fibheap.c (fibheap_replace_key_data): Change type of OKEY to
	FIBHEAPKEY_T.

From-SVN: r71129
2003-09-06 05:28:03 +00:00
Geoffrey Keating
c55a59cc63 darwin.h (PREFERRED_RELOAD_CLASS): Always return a subset of the input class.
* config/rs6000/darwin.h (PREFERRED_RELOAD_CLASS): Always return
	a subset of the input class.

From-SVN: r71128
2003-09-06 04:07:18 +00:00
Bernardo Innocenti
e7f115de8d * include/c_std/std_cstdlib.h: Avoid using missing C library symbols.
From-SVN: r71127
2003-09-06 03:01:01 +02:00
Kazu Hirata
e86ac6af9a i860.c: Follow spelling conventions.
* config/i860/i860.c: Follow spelling conventions.
	* config/i860/i860.h: Likewise.
	* config/sh/sh.h: Likewise.

From-SVN: r71126
2003-09-06 00:22:49 +00:00
GCC Administrator
5c30494db4 Daily bump.
From-SVN: r71124
2003-09-06 00:16:08 +00:00
Nitin Yewale
c87ec0bae2 h8300-protos.h: Declare h8300_hard_regno_rename_ok
* config/h8300/h8300-protos.h: Declare h8300_hard_regno_rename_ok
	* config/h8300/h8300.h (HARD_REGNO_RENAME_OK): New.
	* config/h8300/h8300.c (h8300_hard_regno_rename_ok): New.

From-SVN: r71119
2003-09-05 20:00:03 +00:00
Roger Sayle
31ff3e0b77 re PR rtl-optimization/1823 (-ftrapv aborts with pointer difference due to division optimization)
PR optimization/1823
	* expmed.c (expand_divmod <EXACT_DIV_EXPR>): Use an unsigned
	multiplication to implement division by constant integer.

Co-Authored-By: Richard Henderson <rth@redhat.com>

From-SVN: r71116
2003-09-05 18:28:48 +00:00
Mark Mitchell
ceeae2d125 re PR c++/12163 (static_cast + explicit ctor regression)
PR c++/12163
	* call.c (perform_direct_initialization): Correct logic for
	direct-initialization of a class type.

	PR c++/12146
	* pt.c (lookup_template_function): Robustify.

	PR c++/12163
	* g++.dg/expr/static_cast4.C: New test.

	PR c++/12146
	* g++.dg/template/crash9.C: New test.

From-SVN: r71115
2003-09-05 18:04:21 +00:00
Andrew Pinski
3f8dc57bd2 pretty2.C: Update for change in __FUNCTION__.
2003-09-05  Andrew Pinski  <pinskia@physics.uc.edu>

        * g++.old-deja/g++.ext/pretty2.C: Update for change
        in __FUNCTION__.
        * g++.old-deja/g++.ext/pretty3.C: Likewise.

From-SVN: r71114
2003-09-05 08:36:37 -07:00
Nick Clifton
70d651640a Oops - I forgot to commit the change to this file along with the v850e1 patch yesterday.
Oops - I forgot to commit the change to this file along with the v850e1 patch
yesterday.  This part of the patch adds support for a --target=v850e1-elf
configuration as well as --target=v850-elf --with-cpu=v850e1.

From-SVN: r71113
2003-09-05 15:34:46 +00:00
Petur Runolfsson
f1813b6972 re PR libstdc++/9028 (codecvt<wchar_t, char, mbstate_t> doesn't work on Red Hat Linux 8.0.)
2003-09-04  Petur Runolfsson  <peturr02@ru.is>

	PR libstdc++/9028
	* include/bits/fstream.tcc
	(basic_filebuf::_M_destroy_internal_buffer): Destroy _M_ext_buf.
	(basic_filebuf::basic_filebuf): Initialize _M_ext_buf,
	_M_ext_buf_size, _M_ext_next and _M_ext_end.
	(basic_filebuf::underflow): Handle variable-width stateless
	encodings (codecvt::encoding() == 0), including UTF-8.
	* include/std/std_fstream.h (basic_filebuf):
	Declare _M_ext_buf, _M_ext_buf_size, _M_ext_next, _M_ext_end.
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/1.cc: New test.
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/2.cc: New test.
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/3.cc: New test.
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/4.cc: New test.
	* testsuite/27_io/basic_filebuf/underflow/wchar_t/5.cc: New test.
	* testsuite/27_io/objects/wchar_t/12.cc: New test.
	* testsuite/27_io/objects/wchar_t/13.cc: New test.

From-SVN: r71111
2003-09-05 12:55:33 +00:00
Nathan Sidwell
12483c9f2e re PR c++/11922 (ICE on type_unification_real)
cp:
	PR c++/11922
	* pt.c (tsubst_qualified_id): Make sure we get a non-type.
	(tsubst_expr, tsubst_copy_and_build): Pass false, not zero, as
	is_type_p to lookup_qualified_name.

	* semantics.c (finish_call_expr): Refactor some code.
testsuite:
	PR c++/11922
	* g++/dg/template/qualified-id1.C: New test.

From-SVN: r71109
2003-09-05 08:38:44 +00:00
Nathan Sidwell
8e1daa3412 re PR c++/12037 (Spurious "statement has no effect" in templates)
cp:
	PR c++/12037
	* cp-tree.h (COMPOUND_EXPR_OVERLOADED): New.
	(build_min_non_dep): Declare.
	* tree.c (build_min): Propagate TREE_SIDE_EFFECTS.
	(build_min_non_dep): New.
	* cvt.c (convert_to_void): Don't explicitly copy
	TREE_SIDE_EFFECTS, TREE_NO_UNUSED_WARNING.
	* call.c (build_new_method_call): Use build_min_non_dep.
	* decl2.c (grok_array_decl): Likewise.
	(build_offset_ref_call_from_tree): Likewise.
	* typeck.c (finish_class_member_access_expr,
	build_x_indirect_ref, build_x_binary_op, build_x_unary_op,
	build_x_conditional_expr, build_x_compound_expr): Likewise.
	(build_static_cast, build_reinterpret_cast,
	build_const_cast): Propagate TREE_SIDE_EFFECTS inside a template.
	* typeck2.c (build_x_arrow): Use build_min_non_dep.
	(build_functional_cast): Propagate TREE_SIDE_EFFECTS inside a
	template.
	* rtti.c (build_dynamic_cast_1): Set DECL_IS_PURE.
	(build_dynamic_cast): Set TREE_SIDE_EFFECTS.
	* pt.c (build_non_dependent_expr): Check COMPOUND_EXPR_OVERLOADED.
testsuite:
	PR c++/12037
	* g++.dg/warn/noeffect4.C: New test.

From-SVN: r71108
2003-09-05 08:24:28 +00:00
Jonathan Wakely
7976070c71 index.html: Note that a namespace alias can't be used when...
2003-09-04  Jonathan Wakely  <redi@gcc.gnu.org>

	* docs/html/faq/index.html: Note that a namespace alias can't be
	used when specialising templates in extension namespace.
	* docs/html/faq/index.txt: Regenerate.

From-SVN: r71107
2003-09-05 09:10:41 +01:00
Jan Hubicka
1f95c73329 opts.c (decode_options): Enable unit-at-a-time at -O2.
* opts.c (decode_options): Enable unit-at-a-time at -O2.
	* params.def (max-inline-insns-single): Set to 500
	(max-inline-insns-auto): Set to 150
	* invoke.texi (max-inline-insns-single, max-inline-insns-auto): Update.

From-SVN: r71105
2003-09-05 05:36:47 +00:00
Richard Henderson
8dafba3ca4 cgraph.c (cgraph_mark_reachable_node): Split out from ...
* cgraph.c (cgraph_mark_reachable_node): Split out from ...
        (cgraph_mark_needed_node): Remove needed argument.
        * cgraph.h: Update to match.
        * cgraphunit.c (decide_is_function_needed): Split out from ...
        (cgraph_finalize_function): Reorg.  Avoid deferred_inline_function
        if we generated the function.
        (record_call_1): Update for cgraph_mark_reachable_node.
        * varasm.c (mark_referenced): Likewise.
        * objc/objc-act.c (mark_referenced_methods): Likewise.

        * decl2.c (mark_member_pointers_and_eh_handlers): Update for
        change in cgraph_mark_needed_node arguments.

From-SVN: r71104
2003-09-04 21:24:30 -07:00
DJ Delorie
dd37c5a069 * targhooks.c: Add comment explaining the migration process.
From-SVN: r71103
2003-09-04 22:12:29 -04:00
Jeff Sturm
09edb09355 compile.exp: Test with -O3 rather than -O.
* libjava.compile/compile.exp: Test with -O3 rather than -O.
* libjava.lang/lang.exp: Likewise.

From-SVN: r71102
2003-09-05 01:54:21 +00:00
Jeff Sturm
cf0aaf32c6 libjava.exp (libjava_arguments): Remove unneeded variables.
* lib/libjava.exp (libjava_arguments): Remove unneeded variables.
(test_libjava_from_source): Likewise.
(test_libjava_from_javac): Likewise.

From-SVN: r71101
2003-09-05 01:47:27 +00:00
DJ Delorie
3f571a7869 Remove duplicate entry, mention PR.
From-SVN: r71100
2003-09-04 20:46:06 -04:00
Eric Christopher
3922e7c1dd t-frv: Fix path for frv-abi.h.
2003-09-04  Eric Christopher  <echristo@redhat.com>

	* config/frv/t-frv: Fix path for frv-abi.h.
	* config/frv/frv-asm.h: Fix string concatenation.

From-SVN: r71099
2003-09-05 00:26:26 +00:00