Commit Graph

29916 Commits

Author SHA1 Message Date
Gabriel Dos Reis
b426bedd5d valarray_array.h (__valarray_min, [...]): Fix thinko.
* bits/valarray_array.h (__valarray_min, __valarray_max): Fix
	thinko. Diagnostic messages really need to be improved for
	template argument deduction.

From-SVN: r35804
2000-08-19 11:28:22 +00:00
Jeff Law
75d9a5e709 Daily bump.
From-SVN: r35803
2000-08-19 01:45:07 -06:00
Richard Henderson
041f25e6ff ia64.c (reg_or_5bit_operand): New.
* config/ia64/ia64.c (reg_or_5bit_operand): New.
        (ia64_depz_field_mask): New.
        * config/ia64/ia64.h (CONSTRAINT_OK_FOR_R): New.
        (PREDICATE_CODES): Update.
        * config/ia64/ia64.md: Update commentary.
        (depz_internal): New.
        (ashlsi3): Implement directly.
        (ashrsi3, lshrsi3): Simplify; rely on extv and extzv for constants.
        (ashldi3): Use shladd.
        * config/ia64/ia64-protos.h: Update.

From-SVN: r35802
2000-08-19 00:15:08 -07:00
Zack Weinberg
17ed19cb31 lexstrng.c: Don't include string.h.
* gcc.dg/cpp/lexstrng.c: Don't include string.h.
	* gcc.dg/cpp/paste2.c: Don't include string.h.  Prototype strcmp.

From-SVN: r35801
2000-08-19 05:25:00 +00:00
Zack Weinberg
319ea138fe toplev.c (independent_decode_option): Always process -g.
* toplev.c (independent_decode_option): Always process -g.
        Remove third argument, now unused.  Adjust caller to match.

From-SVN: r35800
2000-08-19 01:31:47 +00:00
Richard Henderson
8231ad949d combine.c (make_compound_operation): Break after creating the extraction.
* combine.c (make_compound_operation): Break after creating
        the extraction.

From-SVN: r35799
2000-08-18 17:45:47 -07:00
Zack Weinberg
6e19bb3853 cpplib.c (cpp_register_pragma_space): Just return if the namespace is already registered.
* cpplib.c (cpp_register_pragma_space): Just return if the
	namespace is already registered.

From-SVN: r35798
2000-08-18 22:42:14 +00:00
Ray Essick
477d303f84 Only allow allow rotations by a constant amount.
Do not generate ROTL instruction.

From-SVN: r35797
2000-08-18 21:11:23 +00:00
Richard Kenner
7d2950e523 stor-layout.c (compute_record_type): Don't use mode of single field as mode of record if not integer mode of same type.
* stor-layout.c (compute_record_type): Don't use mode of single
	field as mode of record if not integer mode of same type.

From-SVN: r35796
2000-08-18 16:52:28 -04:00
Richard Kenner
26db254445 * gcc.c-torture/compile/20000818-1.c: New test.
From-SVN: r35795
2000-08-18 16:45:02 -04:00
Richard Kenner
d1da5fd573 New test
From-SVN: r35794
2000-08-18 16:43:34 -04:00
Alexandre Oliva
ffe51c8a82 elf.h: Do not include sh/sh.h.
* config/sh/elf.h: Do not include sh/sh.h.
* config/sh/rtems.h: Likewise.
* config/sh/rtemself.h: Do not include sh/elf.h.
* configure.in: Get them included with `tm_file's.
* configure: Rebuilt.

From-SVN: r35793
2000-08-18 19:39:52 +00:00
Alexandre Oliva
8845e874be sh.md (fpu_switch0, [...]): Simplify.
* config/sh/sh.md (fpu_switch0, fpu_switch1): Simplify.
* config/sh/sh.c (fpscr_set_from_mem): Use them.

From-SVN: r35792
2000-08-18 19:10:43 +00:00
Richard Kenner
a1c1fdd010 regmove.c (perhaps_ends_bb_p): New function.
* regmove.c (perhaps_ends_bb_p): New function.
	(optimize_reg_copy_1, optimize_reg_copy_2): Call it.
	(optimize_reg_copy_3, fixup_match_2, regmove_optimize): Likewise.
	(fixup_match_1): Likewise.
	(fixup_match_1, combine_stack_adjustments_for_block): Add casts to
	avoid signed/unsigned warnings.

From-SVN: r35791
2000-08-18 14:21:33 -04:00
Richard Kenner
3f546a5319 function.c (fixup_var_refs_1, case MEM): Update CODE after updating X.
* function.c (fixup_var_refs_1, case MEM): Update CODE after
	updating X.

From-SVN: r35790
2000-08-18 14:11:02 -04:00
Neil Booth
61d0346df8 cpphash.h: Use HAVE_DESIGNATED_INITIALIZERS.
* cpphash.h: Use HAVE_DESIGNATED_INITIALIZERS.
	(_cpp_trigraph_map): Declaration moved from cpplex.c

	* cppinit.c: Define _cpp_trigraph_map.  Use UCHAR_MAX + 1
	instead	of 256.  Use consistent test for designated initializers.
	(cpp_init): Initialize trigraph_map.
	(initialize_standard_includes, parse_option):  Use memcmp
	instead of strncmp.

	* cpplex.c (init_trigraph_map): Remove.
	(trigraph_ok, trigraph_replace, lex_line): Refer to
	_cpp_trigraph_map.

	* cpplib.c (str_match, WARNING, ERROR, ICE): Delete.
	(do_unassert): Remove unused "next" local.

	* system.h (HAVE_DESIGNATED_INITIALIZERS): New prototype.

From-SVN: r35789
2000-08-18 17:35:58 +00:00
Manfred Hollstein
90d14f40a9 20000818-1.c: New test.
2000-08-18  Manfred Hollstein  <manfredh@redhat.com>

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

From-SVN: r35788
2000-08-18 16:54:39 +00:00
Benjamin Kosnik
9744ff7d80 valarray_meta.h: Fix typos...
2000-08-18  Benjamin Kosnik  <bkoz@gnu.org>

	* bits/valarray_meta.h: Fix typos...

From-SVN: r35787
2000-08-18 16:29:18 +00:00
Joseph Myers
0d60c2e752 * gcc.dg/format-va-1.c: New test.
From-SVN: r35786
2000-08-18 17:14:32 +01:00
Gabriel Dos Reis
e825bf4aa7 valarray_meta.h (_Expr<>::shift, [...]): Implement.
* bits/valarray_meta.h (_Expr<>::shift, _Expr::cshift,
	_Expr<>::apply): Implement.

From-SVN: r35785
2000-08-18 11:01:22 +00:00
Nathan Sidwell
2ae7bada94 decl.c (member_function_or_else): Use cp_error ...
* decl.c (member_function_or_else): Use cp_error ... %T.
	(grokdeclarator): Likewise.
	(start_method): Likewise.
	* friend.c (make_friend_class): Use cp_pedwarn ... %T.

From-SVN: r35784
2000-08-18 10:49:17 +00:00
Gabriel Dos Reis
e3b4d2e9a6 valarray_meta.h (_Expr<>::min, [...]): Implement.
* bits/valarray_meta.h (_Expr<>::min, _Expr<>::max): Implement.

	* bits/valarray_array.h (__valarray_min, __valarray_max): New
	function.

From-SVN: r35783
2000-08-18 10:40:23 +00:00
Gabriel Dos Reis
f5c979243f editbuf.h (edit_streambuf): Fix syntax error in friend-declaration.
* editbuf.h (edit_streambuf): Fix syntax error in
	friend-declaration.

From-SVN: r35782
2000-08-18 10:20:52 +00:00
Emmanuel Marty
ef42b1ddae From Emmanuel Marty <emarty@suntech.fr>
* arm/lib1funcs.asm (_umodsi3 THUMB VARIANT): Restore deleted return
insn.

From-SVN: r35781
2000-08-18 10:18:14 +00:00
Nathan Sidwell
074900c50e * g++.old-deja/g++.other/typedef8.C: New test.
From-SVN: r35780
2000-08-18 09:49:40 +00:00
Nathan Sidwell
7a8b13758c decl2.c (grokfield): Set CLASSTYPE_GOT_SEMICOLON on class TYPE_DECLs.
* decl2.c (grokfield): Set CLASSTYPE_GOT_SEMICOLON on class
	TYPE_DECLs.

From-SVN: r35779
2000-08-18 09:49:06 +00:00
Nathan Sidwell
8e4f1b30f4 13478.C: Mark candidate.
* g++.old-deja/g++.benjamin/13478.C: Mark candidate.
	* g++.old-deja/g++.mike/net36.C: Mark candidate.
	* g++.old-deja/g++.robertl/eb131.C: Mark candidate.
	* g++.old-deja/g++.oliva/overload1.C: Remove XFAIL.
	* g++.old-deja/g++.other/ptrmem7.C: New test.
	* g++.old-deja/g++.pt/ptrmem10.C: New test.

From-SVN: r35778
2000-08-18 09:31:48 +00:00
Nathan Sidwell
19420d00dc cp-tree.h (PTRMEM_OK_P): New macro.
* cp-tree.h (PTRMEM_OK_P): New macro.
	(itf_ptrmem_ok): New enumeration value.
	* class.c (resolve_address_of_overloaded_function): Add PTRMEM
	argument. Diagnose implicit pointer to member.
	(instantiate_type): Don't diagnose implicit pointer to member
	here. Pass itf_ptrmem_ok if ok. Adjust calls to
	resolve_address_of_overloaded_function.
	* init.c (build_offset_ref): Set PTRMEM_OK_P.
	(resolve_offset_ref): Don't diagnose implicit pointer to member here.
	* semantics.c (finish_parenthesized_expr): Clear OFFSET_REFs here.
	* typeck.c (build_x_unary_op): Calculate PTRMEM_OK_P.
	(build_unary_op): Deal with single non-static member in
	microsoft-land.

From-SVN: r35777
2000-08-18 09:31:11 +00:00
Nathan Sidwell
c349117324 * g++.old-deja/g++.pt/typename27.C: New test.
From-SVN: r35776
2000-08-18 09:21:31 +00:00
Nathan Sidwell
660812833c * decl2.c (arg_assoc_type): Cope with TYPENAME_TYPE.
From-SVN: r35775
2000-08-18 09:21:04 +00:00
Nathan Sidwell
fa40aa121c cp-tree.h (enum_name_string): Remove prototype.
* cp-tree.h (enum_name_string): Remove prototype.
	(report_case_error): Remove prototype.
	* cp/typeck2.c (enum_name_string): Remove.
	(report_case_error): Remove.
	* error.c (dump_expr): Deal with enum values directly.
	Correctly negate integer constant.

From-SVN: r35774
2000-08-18 09:15:51 +00:00
Jeff Law
ca3a748a9f Daily bump.
From-SVN: r35773
2000-08-18 01:45:08 -06:00
Richard Henderson
bc08aefe1f ia64.c (spill_restore_mem): Handle emitting the first insn in a sequence.
* config/ia64/ia64.c (spill_restore_mem): Handle emitting
        the first insn in a sequence.

From-SVN: r35772
2000-08-17 20:03:50 -07:00
John Wehle
4998268292 alias.c (true_dependence, [...]): A read involving a label_ref or the constant pool doesn't create a dependency.
* alias.c (true_dependence, write_dependence_p): A read
	involving a label_ref or the constant pool doesn't create
	a dependency.

	* rtl.h (unchanging): Improve documentation.

From-SVN: r35771
2000-08-18 02:41:58 +00:00
Rodney Brown
889e5964f2 * cse.c (insert_regs): Remove unused `regno'.
From-SVN: r35770
2000-08-17 17:03:43 -06:00
Alexandre Petit-Bianco
0fcbfa82cf natClass.cc (finit_name): Initialized with `finit$'.
2000-08-15  Alexandre Petit-Bianco  <apbianco@cygnus.com>

        * java/lang/natClass.cc (finit_name): Initialized with `finit$'.
        (finit_leg_name): New global.
        (java::lang::Class::getDeclaredMethods): Test for `finit$' or
        `$finit$'. This is a backward compatibility hack.
        (java::lang::Class::_getMethods): Likewise.

(http://sources.redhat.com/ml/java-discuss/2000-08/msg00031.html
 See also the matching compiler patch:
 http://gcc.gnu.org/ml/gcc-patches/2000-08/msg00664.html)

From-SVN: r35769
2000-08-17 14:56:29 -07:00
Alexandre Petit-Bianco
25bdcbc524 decl.c (finit_leg_identifier_node): New global.
2000-08-15  Alexandre Petit-Bianco  <apbianco@cygnus.com>

        * decl.c (finit_leg_identifier_node): New global.
        (init_decl_processing): Use `finit$' to initialize
        finit_identifier_node. Use `$finit$' to initialize
        finit_leg_identifier_node.
        * expr.c (expand_java_field_op): Use ID_FINIT_P.
        * java-tree.h (finit_identifier_node): Changed attached comment.
        (finit_leg_identifier_node): New declaration.
        (ID_FINIT_P): Take finit_identifier_node and
        finit_leg_identifier_node into account. This is a backward
        compatibility hack.

(http://gcc.gnu.org/ml/gcc-patches/2000-08/msg00664.html
 See also the matching Java run-time patch:
 http://sources.redhat.com/ml/java-discuss/2000-08/msg00031.html)

From-SVN: r35768
2000-08-17 14:50:48 -07:00
Mark Mitchell
1492cacbf9 localefwd.h (std::locale): Use explicit `class' specified when declaring friends.
* bits/localefwd.h (std::locale): Use explicit `class' specified
	when declaring friends.
	* bits/std_fstream.h (std::basic_filebuf): Likewise.

From-SVN: r35767
2000-08-17 20:13:47 +00:00
Neil Booth
dd69c71bf5 cppinit.c (merge_include_chains): Use remove_dup_dir, remove_dup_dirs.
* (cppinit.c) merge_include_chains: Use remove_dup_dir,
	remove_dup_dirs.  If qtail == brack, remove brack not
	qtail.
	(remove_dup_dir, remove_dup_dirs): New functions.

From-SVN: r35766
2000-08-17 18:03:59 +00:00
Neil Booth
709e9e509c cppinit.c (cpp_cleanup): Free include dir chains.
* cppinit.c (cpp_cleanup): Free include dir chains.
	* cpplib.c (do_undef): Let _cpp_free_definition make the node void.
	(do_unassert): Free the assert with _cpp_free_definition.
	* cppmacro.c (_cpp_free_definition): Free memory allocated for
	assertions.  Make the node a T_VOID node.

From-SVN: r35765
2000-08-17 18:01:43 +00:00
Neil Booth
e33f625385 cppinit.c (path_include, [...]): Remove 2nd parameter (struct cpp_pending *).
* cppinit.c (path_include, append_include_chain):
	Remove 2nd parameter (struct cpp_pending *).
	(path_include, initialize_standard_includes, cpp_handle_option):
	Update callers appropriately.
	(cpp_handle_option): Use pend.

From-SVN: r35764
2000-08-17 17:58:24 +00:00
Neil Booth
c154ba66ef cppinit.c (sort_options): Remove, put functionality in cpp_init.
* cppinit.c (sort_options): Remove, put functionality in
	cpp_init.
	(cpp_init): New.
	(initialize_builtins): Free memory.
	(cpp_start_read): Move init_IStable to cpp_init.

	* cpplib.h (cpp_init): New prototype.
	* cppmain.c (main): Call cpp_init.

From-SVN: r35763
2000-08-17 17:52:48 +00:00
John Wehle
9c82ac6bea rtlanal.c (rtx_unstable_p): Use CONSTANT_P.
* rtlanal.c (rtx_unstable_p): Use CONSTANT_P.
	(rtx_unstable_p, rtx_varies_p): Process vectors.

From-SVN: r35762
2000-08-17 17:20:10 +00:00
Nathan Sidwell
d13b34e98a cxxabi.h (__cxa_vec_new2, [...]): Declare.
* 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-17 15:05:43 +00:00
Nathan Sidwell
2f1b80afde vec.cc (__cxa_vec_new): Set "C" linkage.
* 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-17 14:40:31 +00:00
Nathan Sidwell
f1819d9a3d cvt.c (cp_convert_to_pointer): Pass itf_complain, not itf_no_attributes.
* cvt.c (cp_convert_to_pointer): Pass itf_complain, not
	itf_no_attributes.

From-SVN: r35759
2000-08-17 14:09:21 +00:00
Nathan Sidwell
105d8e1f6e class.c (instantiate_type): Reinstate local variable deleted in previous change.
* class.c (instantiate_type): Reinstate local variable
	deleted in previous change.

From-SVN: r35758
2000-08-17 13:26:14 +00:00
Nathan Sidwell
5e76004e06 cp-tree.h (instantiate_type_flags): New enumeration.
* cp-tree.h (instantiate_type_flags): New enumeration.
	(instantiate_type): Change parameter.
	* class.c (instantiate_type): Adjust prototype. Adjust.
	* call.c (standard_conversion): Adjust instantiate_type call.
	(reference_binding): Likewise.
	(build_op_delete_call): Likewise.
	(convert_like_real): Likewise.
	* cvt.c (cp_convert_to_pointer): Likewise.
	(convert_to_reference): Likewise.
	* pt.c (convert_nontype_argument): Likewise.
	* typeck.c (build_binary_op): Likewise.
	(build_ptrmemfunc): Likewise.
	(convert_for_assignment): Likewise.

From-SVN: r35757
2000-08-17 13:10:50 +00:00
Nathan Sidwell
321cba9761 fix the fibs in previous entry
From-SVN: r35756
2000-08-17 12:34:36 +00:00
Nathan Sidwell
4b054b8004 cp-tree.h (CPTR_AGGR_TAG): New global tree node.
* cp-tree.h (CPTR_AGGR_TAG): New global tree node.
	(current_aggr): Define.
	* decl.c (grokdeclarator): Make sure a friend class is an
	elaborated type specifier.
	* parse.y (current_aggr): Remove static definition.
	(cp_parse_init): Adjust.
	(structsp): Clear and restore current_aggr.
	(component_decl_list): Clear current_aggr.

	* error.c (dump_type, case TYPENAME_TYPE): Don't emit the
	aggregate tag on the typename's context.

	* pt.c (tsubst_friend_class): Return NULL, if parms becomes NULL.
	(instantiate_class_template): Ignore NULL friend types.

From-SVN: r35755
2000-08-17 12:26:39 +00:00