Commit Graph

32676 Commits

Author SHA1 Message Date
Jason Merrill f30efcb78a init.c (build_default_init): New fn.
* init.c (build_default_init): New fn.
        (perform_member_init): Split out from here.
        (build_new_1): Use it.  Simplify initialization logic.
        (build_vec_init): Take an array, rather than a pointer and maxindex.
        Speed up simple initializations.  Don't clean up if we're assigning.
        * cp-tree.h: Adjust.
        * decl2.c (do_static_initialization): Remove TREE_VEC case.
        * parse.y (new_initializer): Return void_zero_node for ().
        * typeck.c (build_modify_expr): Handle getting a CONSTRUCTOR.
        * typeck2.c (digest_init): Only complain about user-written
        CONSTRUCTORs.

From-SVN: r38643
2001-01-02 22:28:51 -05:00
Mike Stump a412bf75d9 * decl2.c: (max_tinst_depth): Increase to 50.
From-SVN: r38642
2001-01-03 01:11:18 +00:00
Mark Mitchell 4890c2f43c class.c (invalidate_class_lookup_cache): Zero the previous_class_values.
* class.c (invalidate_class_lookup_cache): Zero the
	previous_class_values.
	* cp-tree.h (TMPL_PARMS_DEPTH): Use TREE_INT_CST_LOW, not
	TREE_INT_CST_HIGH.
	(CLASSTYPE_TEMPLATE_LEVEL): Likewise.
	* decl.c (free_bindings): New variable.
	(push_binding): Don't create a new binding if we have one on the
	free list.
	(pop_binding): Put old bindings on the free list.
	(init_decl_processing): Use size_int, not build_int_2.
	Register free_bindings as a GC root.
	(cp_make_fname_decl): Use size_int, not build_int_2.
	(push_inline_template_parms_recursive): Likewise.
	(end_template_parm_list): Likewise.
	(for_each_tempalte_parm): Do not use walk_tree_without_duplicates.
	(tsubst_template_parms): Use size_int, not build_int_2.
	(tsubst): Likewise.
	* rtti.c (get_vmi_pseudo_type_info): Likewise.

From-SVN: r38641
2001-01-03 00:24:04 +00:00
Mark Mitchell 55560b9da4 * fold-const.c (fold_convert): Fix typo.
From-SVN: r38640
2001-01-03 00:13:33 +00:00
Tom Tromey f5826791be ScrollPane.java: Wrote.
* java/awt/ScrollPane.java: Wrote.
	* java/awt/peer/ScrollPanePeer.java (setBlockIncrement): New
	method.

	* java/awt/Panel.java (Panel()): Fixed.

	* java/awt/Component.java (isShowing): Return false if no peer
	exists, and true if component is visible and no parent exists.
	(getLocationOnScreen): Wrote.
	(getPreferredSize): Removed FIXME comment.
	(getMinimumSize): Likewise.
	(getAlignmentX, getAlignmentY): Wrote.
	(list): Wrote.
	(requestFocus): Wrote.
	(transferFocus): Wrote.
	(findNextFocusComponent): New method.
	(hasFocus()): Wrote.
	(checkImage): Wrote.
	(enableEvents): Call setEventMask on the peer.

	* java/awt/Container.java (list): Use super.list() to print self.
	(findNextFocusComponent): New method.
	(setLayout): Call invalidate.
	(findComponentAt): Wrote.

From-SVN: r38639
2001-01-03 00:07:13 +00:00
Richard Henderson 4f78b9a896 c-common.h (ASM_INPUT_P): New.
* c-common.h (ASM_INPUT_P): New.
        * c-parse.in (asm): Set it when needed.
        * c-semantics.c (genrtl_asm_stmt): Test it instead of the
        existance of an operand.

        * cp/parse.y (asm): Set ASM_INPUT_P.

From-SVN: r38638
2001-01-02 15:49:45 -08:00
Jason Merrill f941340f5a * typeck.c (build_binary_op): Fix pmf comparison logic.
From-SVN: r38637
2001-01-02 15:14:57 -05:00
Jason Merrill 96d6c6107a tree.c (cp_valid_lang_attribute): Don't set CLASSTYPE_COM_INTERFACE for v3 ABI.
* tree.c (cp_valid_lang_attribute): Don't set CLASSTYPE_COM_INTERFACE
        for v3 ABI.

        * typeck.c (cp_truthvalue_conversion): New fn.
        * cvt.c (ocp_convert): Use it.

        * cp-tree.h: Lose c-common.c decls.

        * typeck.c (build_unary_op): Restore old &a.f diagnostic code.
        * cvt.c (convert_to_void): Use type_unknown_p.

From-SVN: r38636
2001-01-02 14:48:02 -05:00
Jason Merrill 381ddaa6e1 tweak formatting
From-SVN: r38635
2001-01-02 14:37:39 -05:00
Jan Hubicka e2134eead7 dwarf2out.c (stack_adjust_offset): Handle PRE_MODIFY.
* dwarf2out.c (stack_adjust_offset): Handle PRE_MODIFY.
	(dwarf2out_frame_debug_expr): Likewise.
	(mem_loc_descriptor): Handle PRE and POST_MODIFY.

From-SVN: r38634
2001-01-02 19:29:12 +00:00
Jan Hubicka 2b589241d8 i386.c (ix86_split_to_parts): Return number of part required; handle TFmodes.
* i386.c (ix86_split_to_parts): Return number of part required;
	handle TFmodes.
	(print_operand, ix86_expand_branch, ix86_expand_fp_movcc): Handle
	TFmodes.
	(ix86_split_long_move): Use number of part returned
	by ix86_split_to_parts
	* i386.h (MASK_128BIT_LONG_DOUBLE, TARGET_128BIT_LONG_DOUBLE):
	New macros.
	(TARGET_SWITCHES): Add 128bit-long-double and 96bit-long-double
	(LONG_DOUBLE_TYPE_SIZE): Change from constant.
	(MAX_LONG_DOUBLE_TYPE_SIZE): New macro.
	(INTEL_EXTENDED_IEEE_FORMAT): Likewise.
	(ALIGN_MODE_128): Add TFmode.
	(IS_STACK_MODE): Likewise.
	(HARD_REGNO_NREGS): TFmode needs 3 registers.
	(HARD_REGNO_OK): Support TFmodes.
	(ASM_OUTPUT_LONG_DOUBLE): Handle TFmodes.
	* i386.md (scheduler definitions): Use memory operand to determine
	fst/fld instructions; use mode attribute to determine real mode of
	the instruction.
	(*tf): New patterns, expanders and splitters; based on XFmode patterns.
	* invoke.texi (128bit-long-double, 96bit-long-double): Document.

From-SVN: r38633
2001-01-02 19:24:27 +00:00
Mark Mitchell 9e1458e7d7 Update copyright
From-SVN: r38632
2001-01-02 18:19:28 +00:00
Mark Mitchell 330aa9a385 * tree.def (TRUTH_NOT_EXPR): Improve documentation.
From-SVN: r38631
2001-01-02 18:15:18 +00:00
Richard Kenner eeebb82437 Fix last change
From-SVN: r38630
2001-01-02 11:46:26 -05:00
Richard Kenner e0339ef7a3 expr.c (store_constructor_field): Update ALIGN before calling store_constructor.
* expr.c (store_constructor_field): Update ALIGN before calling
	store_constructor.

From-SVN: r38629
2001-01-02 11:40:35 -05:00
Chandra Chavva bd86a96456 Initial version.
From-SVN: r38628
2001-01-02 11:37:39 -05:00
Jeffrey Oldham d07bec9503 mips.c (function_arg): Don't pass NULL_TREE to host_integerp.
2001-01-02  Jeffrey Oldham  <oldham@codesourcery.com>

	* config/mips/mips.c (function_arg): Don't pass NULL_TREE to
	host_integerp.

From-SVN: r38627
2001-01-02 16:09:56 +00:00
Jeffrey Oldham 3719d27ba3 tm.texi (FUNCTION_ARG): Document that @var{type} can be an incomplete type.
2001-01-02  Jeffrey Oldham  <oldham@codesourcery.com>

	* tm.texi (FUNCTION_ARG): Document that @var{type} can be an
	incomplete type.

From-SVN: r38626
2001-01-02 16:03:50 +00:00
Richard Kenner 6d1c15cc4c * c-decl.c (start_function): Don't warn on third parameter to main.
From-SVN: r38625
2001-01-02 10:58:16 -05:00
Laurynas Biveinis 976b230df9 ltcf-c.sh: clear ac_cv_prog_cc_pic for DJGPP.
* ltcf-c.sh: clear ac_cv_prog_cc_pic for DJGPP. Do not add
'-DPIC' to ac_cv_prog_cc_pic for DJGPP.
* ltcf-cxx.sh: likewise.
* ltcf-gcj.sh: likewise.
* ltconfig.sh: fix typo.

From-SVN: r38624
2001-01-02 10:55:07 -05:00
Kaveh R. Ghazi 16b975401a * tsystem.h: Define HAVE_DECL_GETOPT.
From-SVN: r38623
2001-01-02 15:51:11 +00:00
Laurynas Biveinis b12ebe848b * config/mh-djgpp: do not set CFLAGS.
From-SVN: r38622
2001-01-02 10:46:33 -05:00
Laurynas Biveinis 071091103c * configure: handle DOS-style absolute paths.
From-SVN: r38621
2001-01-02 10:44:40 -05:00
Laurynas Biveinis 1da5b8fc55 * configure.in: remove supported directories from $noconfigdirs for DJGPP.
From-SVN: r38620
2001-01-02 10:36:25 -05:00
Jason Merrill 3c8c2a0ae2 typeck.c (strip_all_pointer_quals): Also strip quals from pointer-to-member types.
* typeck.c (strip_all_pointer_quals): Also strip quals from
        pointer-to-member types.

        * Make-lang.in (cp/TAGS): Use --no-globals.  Ignore parse.c, and treat
        parse.y as C.

        * call.c (build_new_method_call): Do evaluate the object parameter
        when accessing a static member.
        * typeck.c (build_component_ref): Likewise.

From-SVN: r38619
2001-01-02 10:20:30 -05:00
Philip Blundell 8515dc8152 Fix illegal asm
From-SVN: r38618
2001-01-02 13:38:41 +00:00
Richard Kenner 7def3512f0 Update comment
From-SVN: r38617
2001-01-02 04:56:43 -05:00
Jeff Law 4fe1a9eecc Daily bump.
From-SVN: r38616
2001-01-02 01:45:07 -07:00
Richard Henderson 6f85e02b0b * alpha.md (*ze_and_ne): Duplicate insn condition to split.
From-SVN: r38615
2001-01-02 00:07:17 -08:00
Benjamin Kosnik 7b33122850 std_cwchar.h: Same.
2001-01-01  Benjamin Kosnik  <bkoz@fillmore.redhat.com>

	* include/c_std/bits/std_cwchar.h: Same.
	* testsuite/17_intro/header_cwchar.cc: Same.
	* include/c_std/bits/std_ctime.h: Same.
	* testsuite/17_intro/header_ctime.cc: Same.
	* include/c_std/bits/std_cstdlib.h: Same.
	Clean up undefs, make consistent with cwchar and cmath, etc.
	* testsuite/17_intro/header_cstdlib.cc: Same.
	* include/c_std/bits/std_cstdio.h: Same here.
	* testsuite/17_intro/header_cstring.cc: Same.
	* include/c_std/bits/std_cstring.h: Include std_cstddef.h for size_t.
	* testsuite/17_intro/header_cstring.cc: New file. Check for
	size_t in namespace std.

	* include/c_std/bits/std_cwchar.h: Explicit checks for mbstate_t.
	* acconfig.h (HAVE_MBSTATE_T): Add.
	* config.h.in: Regenerate.
	* acinclude.m4(GLIBCPP_CHECK_WCHAR_T_SUPPORT): Always test for
	mbstate_t.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.
	* testsuite/17_intro/headers_c++.cc: New file.
	* testsuite/17_intro/headers_c.cc: Small changes.

From-SVN: r38614
2001-01-02 07:38:47 +00:00
Andreas Jaeger d363e7bfe7 decl.c (cp_missing_noreturn_ok_p): New.
* decl.c (cp_missing_noreturn_ok_p): New.
	(init_decl_processing): Set lang_missing_noreturn_ok_p.

From-SVN: r38613
2001-01-02 08:02:50 +01:00
Andreas Jaeger 21c7361e40 c-decl.c (c_decode_option): Remove support of -Wmissing-noreturn.
* c-decl.c (c_decode_option): Remove support of
	-Wmissing-noreturn.

	* toplev.c (documented_lang_options): Remove -Wmissing-noreturn.
	(W_options): Add -Wmissing-noreturn here.

	* flow.c: Define lang_missing_noreturn_ok_p.
	(check_function_return_warnings): Use it.

	* c-common.h: Declare lang_missing_noreturn_ok_p.

	* c-lang.c (c_missing_noreturn_ok_p): New function.
	(lang_init): Set lang_missing_noreturn_ok_p.

	* invoke.texi (Warning Options): Document this.

From-SVN: r38612
2001-01-02 08:00:49 +01:00
Andreas Jaeger 42ded877b0 New tests for noreturn.
From-SVN: r38611
2001-01-02 07:55:11 +01:00
Phil Edwards 5c25e11dca extend.texi (C++ Extensions): New node for C++ attributes; describe init_priority and com_interface.
2000-12-27  Phil Edwards  <pme@sources.redhat.com>

	* extend.texi (C++ Extensions):  New node for C++ attributes;
	  describe init_priority and com_interface.
	* invoke.texi:  Remove -finit-priority as it now has zero effect.
	* install.texi:  Fix xref syntax.
	* md.texi:  Likewise.

From-SVN: r38610
2001-01-02 02:56:01 +00:00
Richard Kenner e428b937a2 config.gcc (sparc64-wrs-vxworks*): New case.
* config.gcc (sparc64-wrs-vxworks*): New case.
	* config/sparc/vxsparc64.h, config/sparc/t-vxsparc64: New files.

From-SVN: r38609
2001-01-01 21:53:47 -05:00
Richard Kenner 3276910d99 sparc.c (sparc_override_options): Do support different pointer and architecture size.
* config/sparc/sparc.c (sparc_override_options): Do support different
	pointer and architecture size.
	* config/sparc/sparc.h (MIN_UNITS_PER_WORD): Always 4.
	(POINTERS_EXTEND_UNSIGNED): Define.
	(Pmode): Test TARGET_ARCH64, not TARGET_PTR64.
	(FUNCTION_MODE): Define to be Pmode.
	* config/sparc/sparc.md (64-bit call patterns): FUNCTION_MODE now DI.

From-SVN: r38608
2001-01-01 21:45:03 -05:00
Richard Kenner d1608933b9 function.c (expand_function_end): Properly handle DECL_RESULT and copy when ptr_mode != Pmode.
* function.c (expand_function_end): Properly handle DECL_RESULT
	and copy when ptr_mode != Pmode.
	* expmed.c (make_tree): Convert X from Pmode to ptr_mode, if needed.

From-SVN: r38607
2001-01-01 21:31:22 -05:00
Kaveh Ghazi 09f89307d3 update copyrights
From-SVN: r38606
2001-01-02 02:04:52 +00:00
Kaveh R. Ghazi c2e42aabfc c-common.c (c_common_nodes_and_builtins): Set prototype parameters for __builtin_fputs, __builtin_fputc and __builtin_fwrite.
* c-common.c (c_common_nodes_and_builtins): Set prototype
	parameters for __builtin_fputs, __builtin_fputc and
	__builtin_fwrite.  Don't declare plain fputc as a builtin.

testsuite:
	* gcc.c-torture/execute/stdio-opt-1.c: Also test
	__builtin_fputc and __builtin_fwrite.

From-SVN: r38605
2001-01-02 01:56:55 +00:00
Alexandre Oliva e56b459443 tm.texi (REGISTER_MOVE_COST): Add a mode argument.
* tm.texi (REGISTER_MOVE_COST): Add a mode argument.
* reload.c (REGISTER_MOVE_COST): Likewise.  Adjust all callers.
* reload1.c (REGISTER_MOVE_COST): Likewise.
* regclass.c (REGISTER_MOVE_COST): Likewise.
(move_cost, may_move_in_cost, may_move_out_cost): Add mode
dimension.  Adjust all users.
(init_reg_sets_1): Iterate on all modes.
* config/1750a/1750a.h (REGISTER_MOVE_COST): Adjust.
* config/a29k/a29k.h (REGISTER_MOVE_COST): Adjust.
* config/alpha/alpha.h (REGISTER_MOVE_COST): Adjust.
* config/arc/arc.h (REGISTER_MOVE_COST): Adjust.
* config/arm/arm.h (REGISTER_MOVE_COST): Adjust.
* config/avr/avr.h (REGISTER_MOVE_COST): Adjust.
* config/c4x/c4x.h (REGISTER_MOVE_COST): Adjust.
* config/d30v/d30v.h (REGISTER_MOVE_COST): Adjust.
* config/dsp16xx/dsp16xx.h (REGISTER_MOVE_COST): Adjust.
* config/h8300/h8300.h (REGISTER_MOVE_COST): Adjust.
* config/i386/i386.h (REGISTER_MOVE_COST): Adjust.
* config/ia64/ia64.h (REGISTER_MOVE_COST): Adjust.
* config/m32r/m32r.h (REGISTER_MOVE_COST): Adjust.
* config/m68hc11/m68hc11.h (REGISTER_MOVE_COST): Adjust.
* config/m68k/m68k.h (REGISTER_MOVE_COST): Adjust.
* config/mcore/mcore.h (REGISTER_MOVE_COST): Adjust.
* config/mips/mips.h (REGISTER_MOVE_COST): Adjust.
* config/mn10200/mn10200.h (REGISTER_MOVE_COST): Adjust.
* config/mn10300/mn10300.h (REGISTER_MOVE_COST): Adjust.
* config/ns32k/ns32k.h (REGISTER_MOVE_COST): Adjust.
* config/pa/pa.h (REGISTER_MOVE_COST): Adjust.
* config/pdp11/pdp11.h (REGISTER_MOVE_COST): Adjust.
* config/pj/pj.h (REGISTER_MOVE_COST): Adjust.
* config/romp/romp.h (REGISTER_MOVE_COST): Adjust.
* config/rs6000/rs6000.h (REGISTER_MOVE_COST): Adjust.
* config/sh/sh.h (REGISTER_MOVE_COST): Adjust.
* config/sparc/sparc.h (REGISTER_MOVE_COST): Adjust.

From-SVN: r38604
2001-01-02 00:59:52 +00:00
John David Anglin 5b1ef59457 loop.c (add_label_notes): Increment the label usage count when a note is added to an insn which refers to...
* loop.c (add_label_notes): Increment the label usage count when
        a note is added to an insn which refers to a CODE_LABEL.
        * gcse.c (add_label_notes): Likewise.

From-SVN: r38603
2001-01-01 17:58:27 -07:00
Bruce Korb 5be1aac912 more README info
From-SVN: r38601
2001-01-02 00:35:51 +00:00
Bruce Korb c76fbbe247 update the README for fixinc
From-SVN: r38600
2001-01-02 00:27:20 +00:00
David Billinghurst fb34ebc505 tests_flags.in: Fix typo in usage.
* tests_flags.in: Fix typo in usage.

        * tests_flags.in: Set target specific LIBS for cygwin.

From-SVN: r38599
2001-01-01 16:14:43 -07:00
Andreas Jaeger 021d7b267e * loop.c (scan_loop): Use xmalloc to allocate movables.
From-SVN: r38598
2001-01-01 15:20:49 -07:00
Alexandre Oliva cf01124384 tm.texi (REGISTER_MOVE_COST): Add a mode argument.
* tm.texi (REGISTER_MOVE_COST): Add a mode argument.
* reload.c (REGISTER_MOVE_COST): Likewise.  Adjust all callers.
* reload1.c (REGISTER_MOVE_COST): Likewise.
* regclass.c (REGISTER_MOVE_COST): Likewise.
(move_cost, may_move_in_cost, may_move_out_cost): Add mode
dimension.  Adjust all users.
(init_reg_sets_1): Iterate on all modes.
* config/1750a/1750a.h (REGISTER_MOVE_COST): Adjust.
* config/a29k/a29k.h (REGISTER_MOVE_COST): Adjust.
* config/alpha/alpha.h (REGISTER_MOVE_COST): Adjust.
* config/arc/arc.h (REGISTER_MOVE_COST): Adjust.
* config/arm/arm.h (REGISTER_MOVE_COST): Adjust.
* config/avr/avr.h (REGISTER_MOVE_COST): Adjust.
* config/c4x/c4x.h (REGISTER_MOVE_COST): Adjust.
* config/d30v/d30v.h (REGISTER_MOVE_COST): Adjust.
* config/dsp16xx/dsp16xx.h (REGISTER_MOVE_COST): Adjust.
* config/h8300/h8300.h (REGISTER_MOVE_COST): Adjust.
* config/i386/i386.h (REGISTER_MOVE_COST): Adjust.
* config/ia64/ia64.h (REGISTER_MOVE_COST): Adjust.
* config/m32r/m32r.h (REGISTER_MOVE_COST): Adjust.
* config/m68hc11/m68hc11.h (REGISTER_MOVE_COST): Adjust.
* config/m68k/m68k.h (REGISTER_MOVE_COST): Adjust.
* config/mcore/mcore.h (REGISTER_MOVE_COST): Adjust.
* config/mips/mips.h (REGISTER_MOVE_COST): Adjust.
* config/mn10200/mn10200.h (REGISTER_MOVE_COST): Adjust.
* config/mn10300/mn10300.h (REGISTER_MOVE_COST): Adjust.
* config/ns32k/ns32k.h (REGISTER_MOVE_COST): Adjust.
* config/pa/pa.h (REGISTER_MOVE_COST): Adjust.
* config/pdp11/pdp11.h (REGISTER_MOVE_COST): Adjust.
* config/pj/pj.h (REGISTER_MOVE_COST): Adjust.
* config/romp/romp.h (REGISTER_MOVE_COST): Adjust.
* config/rs6000/rs6000.h (REGISTER_MOVE_COST): Adjust.
* config/sh/sh.h (REGISTER_MOVE_COST): Adjust.
* config/sparc/sparc.h (REGISTER_MOVE_COST): Adjust.

From-SVN: r38597
2001-01-01 20:35:36 +00:00
Bernd Schmidt e38fe8e0cb Extra arg for rtx_varies_p
From-SVN: r38590
2001-01-01 17:20:09 +00:00
Richard Kenner 7d797311fb explow.c (convert_memory_address, [...]): Copy STRING_POOL_ADDRESS_P.
* explow.c (convert_memory_address, case SYMBOL_REF): Copy
	STRING_POOL_ADDRESS_P.

From-SVN: r38589
2001-01-01 09:04:25 -05:00
Richard Kenner 4746e0fe78 * config/sparc/sparc.c (input_operand): Properly test for short op.
From-SVN: r38588
2001-01-01 08:52:04 -05:00
Richard Kenner fbd68e5da8 config.gcc (sparc-*-elf): Include sparc/sol2.h.
* config.gcc (sparc-*-elf): Include sparc/sol2.h.
	(sparc-*-rtems*): Include sparc/sol2.h and sparc/elf.h.
	(sparclite-*-elf*, sparc86x-*-elf*): Likewise.
	* config/sparc/elf.h: No longer include sol2.h.
	* config/sparc/lifeelf.h: No longer include sparc/elf.h.
	* config/sparc/rtemself.h, config/sparc/sp86x-elf.h: Likewise.

From-SVN: r38587
2001-01-01 08:19:20 -05:00