platform/upstream/gcc.git
19 years agoDaily bump.
GCC Administrator [Tue, 12 Jul 2005 00:16:16 +0000 (00:16 +0000)]
Daily bump.

[[Split portion of a mixed commit.]]

From-SVN: r101903.2

19 years agotree-flow.h (remove_empty_loops, [...]): Declare.
Zdenek Dvorak [Mon, 11 Jul 2005 23:59:17 +0000 (01:59 +0200)]
tree-flow.h (remove_empty_loops, [...]): Declare.

* tree-flow.h (remove_empty_loops, single_dom_exit): Declare.
* passes.c (init_optimization_passes): Add pass_empty_loop.
* tree-pass.h (pass_empty_loop): Declare.
* tree-ssa-loop-ivcanon.c (empty_loop_p, remove_empty_loop,
try_remove_empty_loop, remove_empty_loops): New functions.
* tree-ssa-loop-ivopts.c (single_dom_exit): Export.
* tree-ssa-loop.c (tree_ssa_empty_loop, pass_empty_loop): New.

* gcc.dg/tree-ssa/loop-10.c: New test.

From-SVN: r101901

19 years agore PR target/16719 ([ColdFire] Illegal move of byte itno address register causes...
Peter Barada [Mon, 11 Jul 2005 23:32:01 +0000 (23:32 +0000)]
re PR target/16719 ([ColdFire] Illegal move of byte itno address register causes compiler to ICE)

PR middle-end/16719
PR middle-end/18421
* config/m68k/m68k.h (HARD_REGNO_MODE_OK): Disallow bytes
in address registers.
* config/m68k/m68k.c (hard_regno_mode_ok): Likewise.
* config/m68k/m68k.md: Replace 's' with 'i' in 4th
alternative of addsi3_5200.

From-SVN: r101900

19 years ago* config/mips/mips.md (ffs<mode>2): Remove.
Ian Lance Taylor [Mon, 11 Jul 2005 18:48:37 +0000 (18:48 +0000)]
* config/mips/mips.md (ffs<mode>2): Remove.

From-SVN: r101896

19 years agotree-ssa.texi (Cleanups): Improve description of TRY_FINALLY_EXPR.
Ian Lance Taylor [Mon, 11 Jul 2005 18:46:50 +0000 (18:46 +0000)]
tree-ssa.texi (Cleanups): Improve description of TRY_FINALLY_EXPR.

* doc/tree-ssa.texi (Cleanups): Improve description of
TRY_FINALLY_EXPR.
(GIMPLE Exception Handling): Clarify TRY_CATCH_EXPR cases.

From-SVN: r101895

19 years agore PR tree-optimization/22404 (ICE in first_vi_for_offset)
Daniel Berlin [Mon, 11 Jul 2005 18:28:36 +0000 (18:28 +0000)]
re PR tree-optimization/22404 (ICE in first_vi_for_offset)

2005-07-11  Daniel Berlin  <dberlin@dberlin.org>

* print-tree.c (print_node): Use DECL_ARGUMENT_FLD.
* tree.h (DECL_ARGUMENT_FLD): New macro.

2005-07-11  Daniel Berlin  <dberlin@dberlin.org>

Fix PR tree-optimization/22404

* tree-ssa-structalias.c (create_variable_info_for): Use
correct offset.

From-SVN: r101894

19 years ago* gcc.c-torture/execute/20020720-1.x: Remove.
Kazu Hirata [Mon, 11 Jul 2005 18:26:43 +0000 (18:26 +0000)]
* gcc.c-torture/execute/20020720-1.x: Remove.

From-SVN: r101893

19 years agobfin.md (cmpsi, [...]): Use reg_or_const_int_operand for second comparison operand.
Bernd Schmidt [Mon, 11 Jul 2005 16:15:45 +0000 (16:15 +0000)]
bfin.md (cmpsi, [...]): Use reg_or_const_int_operand for second comparison operand.

* config/bfin/bfin.md (cmpsi, compare_eq, compare_ne, compare_lt,
compare_le, compare_leu, compare_ltu): Use reg_or_const_int_operand
for second comparison operand.
* config/bfin/predicates.md (reg_or_const_int_operand): New.

From-SVN: r101881

19 years agobfin.md (define_attr "type"): Add "sync".
Bernd Schmidt [Mon, 11 Jul 2005 16:11:28 +0000 (16:11 +0000)]
bfin.md (define_attr "type"): Add "sync".

* config/bfin/bfin.md (define_attr "type"): Add "sync".
(define_insn_reservation "alu"): Likewise.
(csync, ssync): Now of type sync.
* config/bfin/bfin.h (TARGET_DEFAULT): Defaults to
-mcsync-anomaly -mspecld-anomaly.
* config/bfin/bfin.opt (mcsync): Remove.
(mcsync-anomaly, mspecld-anomaly): Add.
* config/bfin/bfin.c: Include "insn-codes.h".
(bfin_reorg): Extend to handle the CSYNC anomaly as well.
(TARGET_DEFAULT_TARGET_FLAGS): New.
* doc/invoke.texi: Document -mcsync-anomaly, -mspecld-anomaly.

From-SVN: r101880

19 years agobasic-block.h: Give the BB flags enum a name, bb_flags.
Steven Bosscher [Mon, 11 Jul 2005 13:31:44 +0000 (13:31 +0000)]
basic-block.h: Give the BB flags enum a name, bb_flags.

* basic-block.h: Give the BB flags enum a name, bb_flags.
Add new flags BB_FORWARDER_BLOCK, and BB_NONTHREADABLE_BLOCK.
* cfgcleanup.c (enum bb_flags): Remove here.
(BB_FLAGS, BB_SET_FLAG, BB_CLEAR_FLAG): Remove.
(notice_new_block): Set/test bb->flags instead of aux via BB_FLAGS.
(update_forwarder_flag): Likewise.
(thread_jump): Likewise.
(try_forward_edges): Likewise.
(try_optimize_cfg): Likewise.  Clear bb->flags before updating the
forwarder flags.  Don't clear bb->aux for all basic blocks.  Only
reset the BB_FORWARDER_BLOCK and BB_NONTHREADABLE_BLOCK flags.

From-SVN: r101876

19 years agoostream.tcc (basic_ostream<>::operator<<(long), [...]): Don't deal with oct and hex...
Paolo Carlini [Mon, 11 Jul 2005 09:48:31 +0000 (09:48 +0000)]
ostream.tcc (basic_ostream<>::operator<<(long), [...]): Don't deal with oct and hex and casts to unsigned here...

2005-07-11  Paolo Carlini  <pcarlini@suse.de>

* include/bits/ostream.tcc (basic_ostream<>::operator<<(long),
basic_ostream<>::operator<<(long long)): Don't deal with oct
and hex and casts to unsigned here...
* include/bits/locale_facets.tcc (__int_to_char(_CharT*, long,
const _CharT*, ios_base::fmtflags), __int_to_char(_CharT*, long
long, const _CharT*, ios_base::fmtflags)): ... do that here,
instead, as per Table 57.
(num_put<>::_M_insert_int): Tidy treatment of numeric base and
sign.
* include/std/std_ostream.h (operator<<(short), operator<<(int)):
Adjust logic, as per the letter of the resolution of DR117 [WP].
* testsuite/22_locale/num_put/put/char/10.cc: New.
* testsuite/22_locale/num_put/put/wchar_t/10.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_arithmetic/char/7.cc:
Likewise.
* testsuite/27_io/basic_ostream/inserters_arithmetic/wchar_t/7.cc:
Likewise.

From-SVN: r101872

19 years agoi386.opt: New target option -msseregparm.
Richard Guenther [Mon, 11 Jul 2005 09:35:16 +0000 (09:35 +0000)]
i386.opt: New target option -msseregparm.

2005-07-11  Richard Guenther  <rguenther@suse.de>

* config/i386/i386.opt: New target option -msseregparm.
* config/i386/i386.c (override_options): Error out for
-msseregparm but no SSE support.
(ix86_function_sseregparm): Check for global sseregparm.
* doc/invoke.texi: Document -msseregparm.

From-SVN: r101871

19 years ago(m32r-*-linux*): Use the default extra_parts.
Kazuhiro Inaoka [Mon, 11 Jul 2005 08:23:27 +0000 (08:23 +0000)]
(m32r-*-linux*): Use the default extra_parts.

(m32rle-*-linux*): Ditto.

From-SVN: r101869

19 years agore PR ada/22340 (Ada build fails with --enable-bootstrap)
Paolo Bonzini [Mon, 11 Jul 2005 08:03:08 +0000 (08:03 +0000)]
re PR ada/22340 (Ada build fails with --enable-bootstrap)

2005-07-11  Paolo Bonzini  <bonzini@gnu.org>

PR ada/22340

* Makefile.tpl (POSTSTAGE1_FLAGS_TO_PASS): Fix pasto.
* Makefile.in: Regenerate.

From-SVN: r101868

19 years agotrans-stmt.c (gfc_trans_forall_loop): Clear maskindex before the outermost loop.
Jakub Jelinek [Mon, 11 Jul 2005 07:34:33 +0000 (09:34 +0200)]
trans-stmt.c (gfc_trans_forall_loop): Clear maskindex before the outermost loop.

* trans-stmt.c (gfc_trans_forall_loop): Clear maskindex before
the outermost loop.
(gfc_trans_assign_need_temp, gfc_trans_pointer_assign_need_temp,
gfc_trans_forall_1, gfc_evaluate_where_mask, gfc_trans_where_2):
Don't clear maskindexes here.

* gfortran.fortran-torture/execute/forall_7.f90: New test.

From-SVN: r101865

19 years agocfgexpand.c (stack_protect_classify_type): Use TYPE_SIZE_UNIT (type) instead of TYPE_...
Jakub Jelinek [Mon, 11 Jul 2005 07:31:08 +0000 (09:31 +0200)]
cfgexpand.c (stack_protect_classify_type): Use TYPE_SIZE_UNIT (type) instead of TYPE_MAX_VALUE (TYPE_DOMAIN (type)) to get...

* cfgexpand.c (stack_protect_classify_type): Use TYPE_SIZE_UNIT (type)
instead of TYPE_MAX_VALUE (TYPE_DOMAIN (type)) to get array size in
bytes.

From-SVN: r101864

19 years agore PR rtl-optimization/22239 (i-cobol.adb:482: error: unrecognizable insn)
John David Anglin [Mon, 11 Jul 2005 03:56:12 +0000 (03:56 +0000)]
re PR rtl-optimization/22239 (i-cobol.adb:482: error: unrecognizable insn)

PR middle-end/22239
PR target/20126
* loop.c (loop_givs_rescan): Use expand_simple_binop instead of
gen_rtx_MINUS to handle non-replaceable (plus ((x) (const)).

From-SVN: r101863

19 years agotree-ssa-structalias.c (struct variable_info): Heapify complex.
Daniel Berlin [Mon, 11 Jul 2005 02:38:30 +0000 (02:38 +0000)]
tree-ssa-structalias.c (struct variable_info): Heapify complex.

2005-07-07  Daniel Berlin  <dberlin@dberlin.org>

* tree-ssa-structalias.c (struct variable_info): Heapify complex.
(varmap): Heapify varmap.
(constraints): Heapify constraints.
(struct constraint_graph): Heapify succs and preds.
(constraint_vec_find): Update for heapification.
(constraint_set_union): Ditto.
(insert_into_complex): Ditto.
(constraint_edge_vec_find): Ditto.
(erase_graph_self_edge): Ditto.
(add_graph_edge): Ditto.
(get_graph_weights): Ditto.
(merge_graph_nodes): Ditto.
(build_constraint_graph): Ditto.
(topo_visit): Ditto.
(solve_graph): Ditto.
(create_variable_info_for): Ditto.
(init_base_vars): Ditto.
(delete_points_to_sets): Free graph, varmap, and complex constraints.
(condese_varmap_nodes): Free complex vector.
(clear_edges_for_node): Clear succs and preds vector.

From-SVN: r101862

19 years agotree-ssa-structalias.c (update_alias_info): Change counting of references to not...
Daniel Berlin [Mon, 11 Jul 2005 02:16:20 +0000 (02:16 +0000)]
tree-ssa-structalias.c (update_alias_info): Change counting of references to not include vdefs.

2005-07-10  Daniel Berlin  <dberlin@dberlin.org>

* tree-ssa-structalias.c (update_alias_info): Change counting of
references to not include vdefs.

From-SVN: r101861

19 years agoDaily bump.
GCC Administrator [Mon, 11 Jul 2005 00:16:17 +0000 (00:16 +0000)]
Daily bump.

[[Split portion of a mixed commit.]]

From-SVN: r101859.2

19 years agocls_5_1_byte.c: New test file.
Andreas Tobler [Sun, 10 Jul 2005 20:14:37 +0000 (22:14 +0200)]
cls_5_1_byte.c: New test file.

2005-07-10  Andreas Tobler  <a.tobler@schweiz.ch>

* testsuite/libffi.call/cls_5_1_byte.c: New test file.
* testsuite/libffi.call/cls_6_1_byte.c: Likewise.
* testsuite/libffi.call/cls_7_1_byte.c: Likewise.

From-SVN: r101855

19 years agotree-ssa-alias.c (free_used_part_map): Add missing free.
Daniel Berlin [Sun, 10 Jul 2005 19:34:45 +0000 (19:34 +0000)]
tree-ssa-alias.c (free_used_part_map): Add missing free.

2005-07-10  Daniel Berlin  <dberlin@dberlin.org>

* tree-ssa-alias.c (free_used_part_map): Add missing free.
(up_insert): Ditto.

From-SVN: r101854

19 years agopa.c (pa_commutative_p): Make PLUS commutative when TARGET_NO_SPACE_REGS is true.
John David Anglin [Sun, 10 Jul 2005 16:47:28 +0000 (16:47 +0000)]
pa.c (pa_commutative_p): Make PLUS commutative when TARGET_NO_SPACE_REGS is true.

* pa.c (pa_commutative_p): Make PLUS commutative when
TARGET_NO_SPACE_REGS is true.

From-SVN: r101853

19 years ago* sv.po, zh_CN.po: Update.
Joseph Myers [Sun, 10 Jul 2005 12:31:36 +0000 (13:31 +0100)]
* sv.po, zh_CN.po: Update.

From-SVN: r101849

19 years agomips.exp (is_gp32_flag): New procedure.
Richard Sandiford [Sun, 10 Jul 2005 09:40:11 +0000 (09:40 +0000)]
mips.exp (is_gp32_flag): New procedure.

* gcc.target/mips/mips.exp (is_gp32_flag): New procedure.
(dg-mips-options): Use it.

From-SVN: r101847

19 years agoMakefile.in (tree-ssa-alias.o): Depend on tree-ssa-structalias.h
Diego Novillo [Sun, 10 Jul 2005 00:28:01 +0000 (00:28 +0000)]
Makefile.in (tree-ssa-alias.o): Depend on tree-ssa-structalias.h

* Makefile.in (tree-ssa-alias.o): Depend on tree-ssa-structalias.h
* tree-cfg.c (CHECK_OP): Only test for is_gimple_val.
* tree-dfa.c (dump_subvars_for): New.
(debug_subvars_for): New.
(dump_variable): Show subvariables if VAR has them.
* tree-flow-inline.h (get_subvar_at): New.
(overlap_subvar): Change offset and size to unsigned HOST_WIDE_INT.
* tree-flow.h (struct ptr_info_def): Remove field pt_malloc.
Update all users.
(struct subvar): Change fields offset and size to unsigned
HOST_WIDE_INT.
(dump_subvars_for): Declare.
(debug_subvars_for): Declare.
(get_subvar_at): Declare.
(okay_component_ref_for_subvars): Change 2nd and 3rd argument
to unsigned HOST_WIDE_INT *.
(overlap_subvar): Likewise.
* tree-gimple.c (is_gimple_reg): Always return false for
SFTs and memory tags.
* tree-pass.h (pass_build_pta, pass_del_pta): Remove.
Update all callers.
* tree-ssa-alias.c: Include tree-ssa-structalias.h.
(compute_may_aliases): Call compute_points_to_sets.
(collect_points_to_info_for): Remove.
(compute_points_to_and_addr_escape): Remove.
(delete_alias_info): Call delete_points_to_sets.
(compute_flow_sensitive_aliasing): If the call to
find_what_p_points_to returns false, call set_pt_anything.
(add_may_alias): Set TREE_ADDRESSABLE when adding a new alias.
(set_pt_anything): Clear pi->pt_vars.
(set_pt_malloc): Remove.
(merge_pointed_to_info): Remove.
(add_pointed_to_expr): Remove.
(add_pointed_to_var): Remove.
(collect_points_to_info_r): Remove.
(is_escape_site): Make extern.
(create_sft): New.
(create_overlap_variables_for): Call it.
* tree-ssa-copy.c (merge_alias_info): Never merge
flow-sensitive alias information.
* tree-ssa-operands.c (get_expr_operands): Adjust variables
offset and size to be unsigned HOST_WIDE_INT.
(add_to_addressable_set): Rename from note_addressable.
Set TREE_ADDRESSABLE as the variables are added to the set.
Update all users.
(add_stmt_operand): Do not try to micro-optimize unmodifiable
operands into VUSEs when adding V_MAY_DEFs for members in an
alias set.
* tree-ssa-operands.h (add_to_addressable_set): Declare.
* tree-ssa-structalias.c: Include tree-ssa-structalias.h last.
(struct variable_info): Add bitfield is_heap_var.
(var_anyoffset, anyoffset_tree, anyoffset_id): Declare.
(new_var_info): Initialize is_heap_var.
(get_constraint_for): Add HEAP variables to the symbol table.
Mark them with is_heap_var.
(update_alias_info): New.  Taken mostly from the old
compute_points_to_and_addr_escape.
(handle_ptr_arith): New.
(find_func_aliases): Call update_alias_info.
Call handle_ptr_info for tcc_binary expressions.
Call mark_stmt_modified.
(create_variable_info_for): If DECL has subvars, do not create
variables for its subvars.  Always add all the fields.
(set_uids_in_ptset): If the solution includes ANYOFFSET and
SFTs, then add all the SFTs of the structure.
If VI->DECL is an aggregate with subvariables, add the SFT at
VI->OFFSET.
(find_what_p_points_to): If VI is an artificial variable,
translate to bitfields in SSA_NAME_PTR_INFO.
If the solution is empty, set pi->pt_vars to NULL
(init_base_vars): Create ANYOFFSET.
(compute_points_to_sets): Rename from create_alias_vars.
Make extern.
(pass_build_pta): Remove.
(delete_points_to_sets): Rename from delete_alias_vars.
(pass_del_pta): Remove.
* tree-ssa-structalias.h (struct alias_info): Move from
tree-ssa-alias.h.
(NUM_REFERENCES, NUM_REFERENCES_CLEAR, NUM_REFERENCES_INC,
NUM_REFERENCES_SET): Likewise.
(compute_points_to_sets, delete_points_to_sets): Declare.

testsuite/ChangeLog

* gcc.dg/tree-ssa/pta-fp.c: Use -fdump-tree-alias1.

From-SVN: r101841

19 years agoDaily bump.
GCC Administrator [Sun, 10 Jul 2005 00:16:30 +0000 (00:16 +0000)]
Daily bump.

[[Split portion of a mixed commit.]]

From-SVN: r101839.2

19 years agoPR libfortran/21875 (FM111.f)
Jerry DeLisle [Sat, 9 Jul 2005 23:40:31 +0000 (23:40 +0000)]
PR libfortran/21875 (FM111.f)

2005-07-09  Jerry DeLisle  <jvdelisle@verizon.net>

    PR libfortran/21875  (FM111.f)
    * io/read.c (next_char): Return a ' ' character when BLANK_ZERO or
    BLANK_NULL are active.
    (read_decimal): Interpret ' ' character correctly for BZ or BN.
    (read_radix): Interpret ' ' character correctly for BZ or BN.
    (read_f): Interpret ' ' character correctly for BZ or BN.
    * gfortran.dg/test (fmt_read_bz_bn.f90): New test case.

From-SVN: r101837

19 years agodecl.c (components_to_record): Use DECL_FCONTEXT instead of DECL_SECTION_NAME.
Andrew Pinski [Sat, 9 Jul 2005 19:53:55 +0000 (19:53 +0000)]
decl.c (components_to_record): Use DECL_FCONTEXT instead of DECL_SECTION_NAME.

2005-07-09  Andrew Pinski  <pinskia@physics.uc.edu>

        * decl.c (components_to_record): Use DECL_FCONTEXT instead of         DECL_SECTION_NAME.
        (compare_field_bitpos): Likewise.

From-SVN: r101834

19 years agoalpha.c (emit_insxl, [...]): New functions.
Richard Henderson [Sat, 9 Jul 2005 18:28:23 +0000 (11:28 -0700)]
alpha.c (emit_insxl, [...]): New functions.

        * config/alpha/alpha.c (emit_insxl, alpha_expand_compare_and_swap_12,
        alpha_split_compare_and_swap_12, alpha_expand_lock_test_and_set_12,
        alpha_split_lock_test_and_set_12): New functions.
        * config/alpha/alpha-protos.h: Update.
        * config/alpha/alpha.md (UNSPEC_MB, UNSPEC_ATOMIC,
        UNSPEC_CMPXCHG, UNSPEC_XCHG): Rename from UNSPECV_FOO.
        * config/alpha/sync.md (I12MODE): New.
        (memory_barrier, mb_internal): Use unspec instead of unspec_volatile.
        (sync_<fetchop_name><I48MODE>): Likewise.
        (sync_nand<I48MODE>): Likewise.
        (sync_old_<fetchop_name><I48MODE>): Likewise.
        (sync_new_<fetchop_name><I48MODE>): Likewise.
        (sync_old_nand<I48MODE>, sync_new_nand<I48MODE>): Likewise.
        (sync_compare_and_swap<I48MODE>): Likewise.
        (sync_lock_test_and_set<I48MODE>): Likewise.
        (sync_compare_and_swap<I12MODE>): New.
        (sync_compare_and_swap<I12MODE>_1): New.
        (sync_lock_test_and_set<I12MODE>): New.
        (sync_lock_test_and_set<I12MODE>_1): New.

        * lib/target-supports.exp (check_effective_target_sync_char_short):
        Add alpha.

From-SVN: r101833

19 years agore PR tree-optimization/21356 (Dominance error after aggressive dead code elimination...
Diego Novillo [Sat, 9 Jul 2005 17:35:05 +0000 (17:35 +0000)]
re PR tree-optimization/21356 (Dominance error after aggressive dead code elimination (cd_dce))

PR 21356
PR 22332
* passes.c (execute_todo): Cleanup the CFG before updating
SSA.

From-SVN: r101832

19 years agoutils.c (create_var_decl): Only set DECL_COMMON on VAR_DECLs.
Andrew Pinski [Sat, 9 Jul 2005 15:50:56 +0000 (15:50 +0000)]
utils.c (create_var_decl): Only set DECL_COMMON on VAR_DECLs.

2005-07-09  Andrew Pinski  <pinskia@physics.uc.edu>

        * utils.c (create_var_decl): Only set DECL_COMMON on
        VAR_DECLs. Only set SET_DECL_ASSEMBLER_NAME on
        VAR_OR_FUNCTION_DECL_P.

From-SVN: r101831

19 years agocp-lang.c (shadowed_var_for_decl, [...]): Move over to cp-objcp-common.c.
Andrew Pinski [Sat, 9 Jul 2005 15:45:09 +0000 (15:45 +0000)]
cp-lang.c (shadowed_var_for_decl, [...]): Move over to cp-objcp-common.c.

2005-07-09  Andrew Pinski  <pinskia@physics.uc.edu>

        * cp-lang.c (shadowed_var_for_decl, decl_shadowed_for_var_lookup,
        decl_shadowed_for_var_insert): Move over to cp-objcp-common.c.
        (cp_init_ts): Call init_shadowed_var_for_decl.
        Remove include of gt-cp-cp-lang.h.
        * cp-objcp-common.c (shadowed_var_for_decl,
        decl_shadowed_for_var_lookup, decl_shadowed_for_var_insert): Moved from
        cp-lang.c.
        (init_shadowed_var_for_decl): New function to initialize
        shadowed_var_for_decl.
        Include gt-cp-cp-objcp-common.h.
        * Make-lang.in (gt-cp-lang.h): Remove.
        (gt-cp-cp-objcp-common.h): Add.
        (cp/cp-lang.o): Remove dependancy on gt-cp-lang.h.
        (cp/cp-objcp-common.o): Add dependancy on gt-cp-cp-objcp-common.h.
        * config-lang.in (gtfiles): Remove cp-lang.c and Add cp-objcp-common.c.
        * cp-tree (init_shadowed_var_for_decl): Add prototype.

2005-07-09  Andrew Pinski  <pinskia@physics.uc.edu>

        * config-lang.in (gtfiles): Add cp-objcp-common.c.
        * objcp-lang.c (objcxx_init_ts): New function.
        (LANG_HOOKS_INIT_TS): Define.

From-SVN: r101830

19 years ago[multiple changes]
Thomas Koenig [Sat, 9 Jul 2005 09:33:31 +0000 (09:33 +0000)]
[multiple changes]

2005-07-07  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
    Thomas Koenig  <Thomas.Koenig@online.de>

PR libfortran/22217
* io/write.c (extract_unit):  New function; extract
ints as unsigned signed int of the correct size.
* io/write.c (write_int):  Use it.
* runtime/error.c:  Adjust copyright years.
Adjust size of buffer to maximum that can occur.

2005-07-07  Thomas Koenig  <Thomas.Koenig@online.de>

PR libfortran/22217
* gfortran.dg/negative-z-descriptor.f90:  New test.

From-SVN: r101829

19 years agoi386.c (output_set_got): Don't omit OFFSET FLAT...
Jakub Jelinek [Sat, 9 Jul 2005 08:47:38 +0000 (10:47 +0200)]
i386.c (output_set_got): Don't omit OFFSET FLAT...

* config/i386/i386.c (output_set_got): Don't omit OFFSET FLAT:
in Intel syntax add %reg, OFFSET FLAT:_GLOBAL_OFFSET_TABLE_+(.-.Lx).

From-SVN: r101819

19 years agore PR target/21656 (Spurious "template with C linkage" error message)
Richard Sandiford [Sat, 9 Jul 2005 08:46:34 +0000 (08:46 +0000)]
re PR target/21656 (Spurious "template with C linkage" error message)

PR target/21656
* config/mips/elf.h (NO_IMPLICIT_EXTERN_C): Define.

From-SVN: r101818

19 years agosync.md (load_locked_<mode>): Use Z for memory_operand constraint.
David Edelsohn [Sat, 9 Jul 2005 01:13:03 +0000 (01:13 +0000)]
sync.md (load_locked_<mode>): Use Z for memory_operand constraint.

        * config/rs6000/sync.md (load_locked_<mode>): Use Z for
        memory_operand constraint.
        (store_conditional_<mode>): Same.
        (sync_compare_and_swap<mode>): Same.
        (sync_lock_test_and_set<mode>): Same.

From-SVN: r101813

19 years agoRewrite PIC support to more closely model actual instructions.
Hans-Peter Nilsson [Sat, 9 Jul 2005 01:09:48 +0000 (01:09 +0000)]
Rewrite PIC support to more closely model actual instructions.

* config/cris/cris-protos.h (cris_gotless_symbol, cris_got_symbol)
(cris_symbol): Remove prototypes for removed functions.
(cris_pic_symbol_type_of, cris_valid_pic_const)
(cris_expand_pic_call_address): Prototypes for new functions.
* config/cris/cris/cris.c (cris_pic_sympart_only): Remove unused
variable.
(cris_print_operand) <case 'v', 'P'>: Remove cases for unused
modifiers.
<case ':'>: Add case for new punctuation character.
<case 'd'>: Temporarily set flag_pic = 2 instead of incorrectly
emitting (extra) PIC modifier.
<case UNSPEC>: Do not assert for PLT.
(cris_initial_frame_pointer_offset, cris_simple_epilogue)
(cris_expand_prologue, cris_expand_epilogue): Check
for pic_offset_table_rtx usage instead of taking
current_function_uses_pic_offset_table as the final word.
(cris_rtx_costs, cris_address_cost, cris_side_effect_mode_ok):
Remove flag_pic difference.
(cris_valid_pic_const, cris_pic_symbol_type_of): New functions,
the moral equivalents of...
(cris_symbol, cris_gotless_symbol, cris_got_symbol): Remove
functions.
(cris_legitimate_pic_operand): Just call cris_valid_pic_const.
(cris_handle_option): Mark ARG as unused.
(cris_expand_pic_call_address): New worker function for "call",
"call_value".
(cris_asm_output_symbol_ref, cris_asm_output_label_ref): Do not
output PIC constructs here.
(cris_output_addr_const_extra): Changes for emitting PIC modifiers
as symbol-specific modifers, not whole or part of operands.
* config/cris/cris/cris.h (EXTRA_CONSTRAINT): Remove 'U' case.
(EXTRA_CONSTRAINT_S): Changed semantics: allow only CONST-wrapped
constants and flag_pic.
(CONSTANT_INDEX_P): Adjust for new functions.
(enum cris_pic_symbol_type): New helper type.
(PRINT_OPERAND_PUNCT_VALID_P): Add ':'.
* config/cris/cris/cris.md (CRIS_UNSPEC_GOTREL)
(CRIS_UNSPEC_GOTREAD, CRIS_UNSPEC_PLTGOTREAD): New
define_constants.
("movsi"): Emit actual instructions for GOT and relative access.
("*movsi_got_load"): New pattern to set up the register holding
the GOT pointer.
("*movsi_internal"): Operand 1 is not a plain general_operand.
Adjust FIXME for 'S'.
<output for 'S' alternative>: Sanity-check UNSPEC types for PIC.
Use "movs" for -fpic cases.
("addsi3"): Add alternative for 'S'; use adds.w when possible.
("uminsi3","*expanded_call_value"): Remove 'S' alternative.
("call", "call_value"): Just call cris_expand_pic_call_address for
PIC addresses.
("*expanded_call_no_gotplt", "*expanded_call_value_no_gotplt"):
Remove special pattern.
("*expanded_call_side", "*expanded_call_value_side"): New
patterns.
(gotplt-to-plt, gotplt-to-plt-side-call)
(gotplt-to-plt-side-call-value, gotplt-to-plt-side): New
peephole2:s.
* config/cris/cris/predicates.md
("cris_general_operand_or_gotless_symbol"): Remove unused
predicate.
("cris_general_operand_or_symbol"): Adjust for new functions.

From-SVN: r101812

19 years agodarwin.h (TARGET_C99_FUNCTIONS): Define to 1.
Andrew Pinski [Sat, 9 Jul 2005 00:42:42 +0000 (00:42 +0000)]
darwin.h (TARGET_C99_FUNCTIONS): Define to 1.

2005-07-08  Andrew Pinski  <pinskia@physics.uc.edu>

        * config/darwin.h (TARGET_C99_FUNCTIONS): Define to 1.

From-SVN: r101809

19 years agoDaily bump.
GCC Administrator [Sat, 9 Jul 2005 00:16:49 +0000 (00:16 +0000)]
Daily bump.

[[Split portion of a mixed commit.]]

From-SVN: r101807.2

19 years agoMakefile.in (TREE_H): Add treestruct.def.
Daniel Berlin [Fri, 8 Jul 2005 23:37:11 +0000 (23:37 +0000)]
Makefile.in (TREE_H): Add treestruct.def.

2005-07-08  Daniel Berlin  <dberlin@dberlin.org>

* Makefile.in (TREE_H): Add treestruct.def.
(c-decl.o): Add pointer-set.h
* c-decl.c (diagnose_mismatched_decls): Don't attempt to look at
visibility on regular DECL's.
(merge_decls): Fix the copying of decl nodes of various types for
the new structures.  Don't update RTL, section name, weak status,
etc, on DECL's without RTL.
(grokdeclarator): DECL_ARG_TYPE_AS_WRITTEN is gone.
Don't check volatile on non-variable types.
(store_parm_decls_oldstyle): Use pointer_set instead of DECL_WEAK
to check whether we have seen arguments.
* c-objc-common.c (c_tree_printer): Reverse order of tests so that
flag is checked before field (flag is common, field is not).
* dwarf2out.c (decl_ultimate_origin):  Only DECL's with
TS_DECL_COMMON could have an origin.
(add_location_or_const_value_attribute): Don't check section name
on non-var/function decls.
(dwarf2out_var_location): Reverse order of tests.
* emit-rtl.c (set_reg_attrs_for_parm): DECL_CHECK is dead, replace
with DECL_WRTL_CHECK.
* expmed.c (make_tree): rtl is now in decl_with_rtl.
* fold-const.c (fold_binary): Don't check weakness on
non-var/function decls.
(tree_expr_nonzero_p): Ditto.
(fold_checksum_tree): Use tree_decl_extra as sizeof
buffer.
* ggc-page.c (extra_order_size_table): Add sizes for
tree_decl_non_common, tree_parm_decl,  tree_var_decl, and
tree_field_decl.
* gimplify.c (gimplify_bind_expr): Only set
DECL_SEEN_IN_BIND_EXPR_P on VAR_DECL.
* integrate.c (copy_decl_for_inlining): Don't set RTL on decl's
without RTL.
* langhooks-def.h (LANG_HOOK_INIT_TS): New.
* langhooks.h (init_ts). New langhook.
* passes.c (rest_of_decl_compilation): Reverse order of tests.
* print-tree.c (print_node): Update to only print fields that
exist in the structures the passed decl has.
* toplev.c (wrapup_global_declarations): Don't reset
DECL_DEFER_OUTPUT on DECL's that don't contain it.
* tree-browser.c (browse_tree): DECL_ARG_TYPE_AS_WRITTEN removed.
* tree-inline.c (remap_decl): Ditto.
* tree-outof-ssa.c (create_temp): Reverse order of tests.
* tree-pretty-print.c (print_declaration): Don't print
DECL_REGISTER on things that don't contain it.
* tree-vrp.c (expr_computes_nonzero): Don't check weakness on
non-var/function decls.
* tree.c (tree_contains_struct): New structure.
(init_priority_for_decl): New hashtable.
(tree_int_map): New structure.
(tree_int_map_eq): New function.
(tree_int_map_marked_p): Ditto.
(tree_int_map_hash): Ditto.
(tree_map): Move to tree.h.
(tree_map_eq): Externalize.
(tree_map_hash): Ditto.
(tree_map_marked_p): Ditto.
(init_ttree): Set up tree_contains_struct and call langhook.
(decl_assembler_name): Use DECL_NON_COMMON_CHECK..
(tree_code_size): Update for new structures.
(tree_node_structure): Update for new structures.
(make_node_stat): Don't try to set DECL_IN_SYSTEM_HEADER on decls
without the field.
(copy_node_stat):  Copy init priority.
(build_decl_stat): Ditto for visibility.
(ts_enum_names): New.
(tree_contains_struct_check_failed): New function.
(decl_init_priority_lookup): Ditto.
(decl_init_priority_insert): Ditto.
* treestruct.def: New file.
* tree.h (CODE_CONTAINS_STRUCT): New macro.
(CONTAINS_STRUCT_CHECK): Ditto.
(tree_contains_struct_check_failed): New prototype.
(DECL_CHECK): Removed.
(DECL_MINIMAL_CHECK): New.
(DECL_COMMON_CHECK): Ditto.
(DECL_WRTL_CHECK): Ditto.
(DECL_NON_COMMON_CHECK): Ditto.
(DECL_WITH_VIS_CHECK): Ditto.
(VAR_OR_FUNCTION_DECL_P): Ditto
(struct tree_decl_minimal): New structure.
(struct tree_decl_common): Ditto.
(struct tree_decl_with_rtl): Ditto.
(struct tree_decl_with_vis): Ditto.
(struct tree_decl_non_common): Ditto.
(struct tree_field_decl): Ditto.
(struct tree_parm_decl): Ditto.
(struct tree_var_decl): Ditto.
(struct tree_function_decl): Ditto.
(struct tree_const_decl): Ditto.
(struct tree_result_decl): Ditto.
(union tree_node): Add new structures.
* var-tracking.c (track_expr_p): Reverse order of tests.

* doc/c-tree.texi: Add documentation on DECL node internal structure.

2005-07-08  Daniel Berlin  <dberlin@dberlin.org>

* utils.c (create_param_decl): DECL_ARG_TYPE_AS_WRITTEN is
removed.

2005-07-08  Daniel Berlin  <dberlin@dberlin.org>

* Make-lang.in: Add gt-cp-lang.h.
(cp-lang.o): Ditto.
* class.c (create_vtable_ptr): Stop setting DECL_ASSEMBLER_NAME on
the field.
* config-lang.in: Add cp-lang.c to gtfiles.
* cp-lang.c: Include hashtab.h.
(cp_init_ts): New function.
(LANG_HOOK_INIT_TS): Use macro.
(decl_shadowed_for_var_lookup): New function.
(decl_shadowed_for_var_insert): Ditto.
* cp-tree.h (THUNK_FUNCTION_CHECK): Use decl_common.
(NON_THUNK_FUNCTION_CHECK): Ditto.
(DECL_NAMESPACE_ASSOCIATIONS): Use decl_non_common.
(DECL_INIT_PRIORITY): Ditto.
(DECL_HAS_SHADOWED_FOR_VAR_P): Ditto.
(DECL_SHADOWED_FOR_VAR): Use hashtable.
(SET_DECL_SHADOWED_FOR_VAR): Ditto.
* decl.c (duplicate_decls): Update for new/updated structures.
(poplevel): Use SET_DECL_SHADOWED_FOR_VAR.
* decl2.c (start_static_initialization_or_destruction): Deal with
priority.
* pt.c (tsubst_decl): Check TS_DECL_WRTL before doing
SET_DECL_RTL.
* tree.c (handle_init_priority_attribute): Handle priority.

2005-07-08  Daniel Berlin  <dberlin@dberlin.org>

* objc-act.c (objc_push_parm): DECL_ARG_TYPE_AS_WRITTEN is
removed.
* objc-act.h (KEYWORD_ARG_NAME): Use decl_non_common.
(KEYWORD_KEY_NAME): Use decl_minimal.
(METHOD_SEL_NAME): Ditto..
(METHOD_SEL_ARGS): Use decl_non_common.
(METHOD_ADD_ARGS): Ditto.
(METHOD_ADD_ARGS_ELLIPSIS_P): Use decl_common.
(METHOD_DEFINITION): Ditto.
(METHOD_ENCODING): Ditto.
* objc-lang.c: (objc_init_ts): New function.

2005-07-08  Daniel Berlin  <dberlin@dberlin.org>

* trans-decl.c (create_function_arglist): DECL_ARG_TYPE_AS_WRITTEN
is removed.

From-SVN: r101799

19 years agocfgexpand.c (tree_expand_cfg): Don't use FINALIZE_PIC.
Kazu Hirata [Fri, 8 Jul 2005 20:59:49 +0000 (20:59 +0000)]
cfgexpand.c (tree_expand_cfg): Don't use FINALIZE_PIC.

* cfgexpand.c (tree_expand_cfg): Don't use FINALIZE_PIC.
* system.h: Poison FINALIZE_PIC.
* doc/tm.texi (FINALIZE_PIC): Remove.

From-SVN: r101794

19 years agore PR tree-optimization/22329 (VRP produces mis-matched (non compatible) types in...
Andrew Pinski [Fri, 8 Jul 2005 19:26:16 +0000 (19:26 +0000)]
re PR tree-optimization/22329 (VRP produces mis-matched (non compatible) types in MODIFY_EXPR)

2005-07-08  Andrew Pinski  <pinskia@physics.uc.edu>

        PR tree-opt/22329
        * gcc.dg/pr22329.c: New test.
2005-07-08  Andrew Pinski  <pinskia@physics.uc.edu>

        PR tree-opt/22329
        * tree-ssa-propagate.c (fold_predicate_in): Convert the value
        to the correct type if we have a MODIFY_EXPR.

From-SVN: r101789

19 years agoverify.cc (class _Jv_BytecodeVerifier): Don't check for abstract classes or interface...
Colin Walters [Fri, 8 Jul 2005 19:13:30 +0000 (19:13 +0000)]
verify.cc (class _Jv_BytecodeVerifier): Don't check for abstract classes or interfaces here...

2005-07-06  Colin Walters  <walters@verbum.org>

* verify.cc (class _Jv_BytecodeVerifier) <op_new>: Don't
check for abstract classes or interfaces here; JVM spec
says it should throw an exception, so we'll do so later.
* interpret.cc (run): Throw an InstantiationException for
abstract classes and interfaces.

From-SVN: r101788

19 years agore PR regression/20139 (cris-elf testsuite: gcc.c-torture/execute/20020720-1.c)
Kazu Hirata [Fri, 8 Jul 2005 19:11:55 +0000 (19:11 +0000)]
re PR regression/20139 (cris-elf testsuite: gcc.c-torture/execute/20020720-1.c)

PR tree-optimization/20139
* tree-cfg.c (remove_bb): Check in_ssa_p before calling
release_defs.
* tree-optimize.c (execute_cleanup_cfg_post_optimizing): Call
fold_cond_expr_cond.
* tree-ssanames.c (release_defs): Assert in_ssa_p.
* tree.c (upper_bound_in_type, lower_bound_in_type): Rewrite.

From-SVN: r101787

19 years agore PR tree-optimization/22360 (upper_bound_in_type and lower_bound_in_type are buggy)
Kazu Hirata [Fri, 8 Jul 2005 18:49:05 +0000 (18:49 +0000)]
re PR tree-optimization/22360 (upper_bound_in_type and lower_bound_in_type are buggy)

PR tree-optimization/22360
* tree.c (upper_bound_in_type): Fix calculations for casting
to a non-wider signed type and casting a signed value to a
wider unsigned type.
(lower_bound_in_type): Fix calculations for casting to a
non-wider signed type.

From-SVN: r101785

19 years agore PR tree-optimization/22356 (mis-match types in cplxlower)
Andrew Pinski [Fri, 8 Jul 2005 18:05:04 +0000 (18:05 +0000)]
re PR tree-optimization/22356 (mis-match types in cplxlower)

2005-07-08  Andrew Pinski  <pinskia@physics.uc.edu>

        PR tree-opt/22356
        * testsuite/gcc.dg/pr22356-1.c: New test.

2005-07-08  Andrew Pinski  <pinskia@physics.uc.edu>

        PR tree-opt/22356
        * tree-complex.c (expand_complex_libcall): Produce
        REALPART_EXPR/IMAGPART_EXPR with the correct type.

From-SVN: r101781

19 years agobitmap.c (bitmap_and, [...]): Removed "a != b" assert and inserted fastpath code...
Kenneth Zadeck [Fri, 8 Jul 2005 17:34:13 +0000 (17:34 +0000)]
bitmap.c (bitmap_and, [...]): Removed "a != b" assert and inserted fastpath code for this case.

2005-07-08  Kenneth Zadeck <zadeck@naturalbridge.com>

* bitmap.c (bitmap_and, bitmap_and_into, bitmap_and_compl,
bitmap_and_compl_into, bitmap_xor, bitmap_xor_into): Removed "a !=
b" assert and inserted fastpath code for this case.
(bitmap_ior): Removed "a != b" assert.

From-SVN: r101780

19 years agoposix-threads.cc (_Jv_ThreadSetPriority): Use SCHED_OTHER (regular...
Andrew Haley [Fri, 8 Jul 2005 14:04:22 +0000 (14:04 +0000)]
posix-threads.cc (_Jv_ThreadSetPriority): Use SCHED_OTHER (regular...

2005-07-08  Andrew Haley  <aph@redhat.com>

        * posix-threads.cc (_Jv_ThreadSetPriority): Use SCHED_OTHER
        (regular, non-realtime scheduling), not SCHED_RR (realtime,
        round-robin).

From-SVN: r101769

19 years agore PR c++/21799 (Spurious ambiguity with pointers to members)
Nathan Sidwell [Fri, 8 Jul 2005 11:05:51 +0000 (11:05 +0000)]
re PR c++/21799 (Spurious ambiguity with pointers to members)

cp:
PR c++/21799
* pt.c (type_unification_real): Add is_method argument.  Use it
for this pointer unification.
(fn_type_unification): Adjust type_unification_real call.
(unify): Likewise.
testsuite:
PR c++/21799
* g++.dg/template/unify8.C: New.
* g++.dg/template/unify9.C: New.

From-SVN: r101760

19 years agoconfig/m32r/m32r.c (m32r_output_function_epilogue): Care for a large stack #
Kazuhiro Inaoka [Fri, 8 Jul 2005 10:53:32 +0000 (10:53 +0000)]
config/m32r/m32r.c (m32r_output_function_epilogue): Care for a large stack #
frame at epilogue.

From-SVN: r101759

19 years agoprimary.c (gfc_match_rvalue): Handle ENTRY the same way as FUNCTION.
Jakub Jelinek [Fri, 8 Jul 2005 10:06:57 +0000 (12:06 +0200)]
primary.c (gfc_match_rvalue): Handle ENTRY the same way as FUNCTION.

* primary.c (gfc_match_rvalue): Handle ENTRY the same way
as FUNCTION.

* gfortran.fortran-torture/execute/entry_10.f90: New test.

From-SVN: r101758

19 years agolinux.h (STARTFILE_SPEC): Support PIE.
Kazuhiro Inaoka [Fri, 8 Jul 2005 10:00:15 +0000 (10:00 +0000)]
linux.h (STARTFILE_SPEC): Support PIE.

* config/m32r/linux.h (STARTFILE_SPEC): Support PIE.
  (ENDFILE_SPEC): Likewise.
* config/m32r/m32r.h (ASM_SPEC): Likewise.

From-SVN: r101757

19 years agofinal.c: Include sdbout.h when required.
David Billinghurst [Fri, 8 Jul 2005 06:59:10 +0000 (06:59 +0000)]
final.c: Include sdbout.h when required.

2005-07-08  David Billinghurst  <David.Billinghurst@riotinto.com>

* final.c: Include sdbout.h when required.

From-SVN: r101755

19 years agoIndex: ChangeLog
Geoffrey Keating [Fri, 8 Jul 2005 05:51:06 +0000 (05:51 +0000)]
Index: ChangeLog
2005-07-07  Geoffrey Keating  <geoffk@apple.com>

* config.gcc (*-*-darwin*): Only one target-specific header file
for generic darwin.
(powerpc-*-darwin*): Add version-specific header files.
* configure.in (gcc_AC_CHECK_DECLS): Add strverscmp.
* config.in: Regenerate.
* configure: Regenerate.
* gcc.c: Include xregex.h.
(version_compare_spec_function): New.
(spec_function): Add version-compare.
(replace_outfile_spec_function): Reformat comment.
(compare_version_strings): New.
* config/darwin-c.c (version_as_macro): New.
(builtin_define): New.
(darwin_cpp_builtins): New.
* config/darwin-protos.h (darwin_cpp_builtins): New.
* config/darwin.h (CPP_SPEC): Don't define APPLE_CC here.
(LIB_SPEC): Make unconditional, update comment.
(TARGET_C99_FUNCTIONS): Define.
* config/darwin.opt: Sort.
(mmacosx-version-min=): New.
* config/darwin7.h: Delete.
* config/darwin8.h: Delete.
* config/i386/darwin.h (): Call darwin_cpp_builtins.
* config/rs6000/darwin.h (): Call darwin_cpp_builtins.
(TARGET_C99_FUNCTIONS): Define.
* config/rs6000/darwin7.h: New.
* config/rs6000/darwin8.h: New.
* doc/invoke.texi (Darwin Options): Add -mmacosx-version-min=
(-mmacosx-version-min): Document.

Index: testsuite/ChangeLog
2005-07-07  Geoffrey Keating  <geoffk@apple.com>

* gcc.dg/darwin-version-1.c: New.
* gcc.dg/builtins-18.c: On Darwin, needs -mmacosx-version-min=10.3.
* gcc.dg/builtins-20.c: Likewise.
* gcc.dg/builtins-53.c: Likewise.
* gcc.dg/torture/builtins-convert-1.c: Likewise.
* gcc.dg/torture/builtins-convert-2.c: Likewise.
* gcc.dg/torture/builtins-convert-3.c: Likewise.
* gcc.dg/torture/builtins-power-1.c: Likewise.
* gcc.dg/builtins-config.h: Complain if macosx-version-min not set
on Darwin.

From-SVN: r101753

19 years ago* config/mips/mips.md (abs<mode>2) [GPR]: Remove.
Ian Lance Taylor [Fri, 8 Jul 2005 05:24:51 +0000 (05:24 +0000)]
* config/mips/mips.md (abs<mode>2) [GPR]: Remove.

From-SVN: r101752

19 years agoobjc-act.c (objc_build_struct): Pass in an actual @interface instead of its name...
Ziemowit Laski [Fri, 8 Jul 2005 01:53:37 +0000 (01:53 +0000)]
objc-act.c (objc_build_struct): Pass in an actual @interface instead of its name...

[gcc/objc/ChangeLog]
2005-07-07  Ziemowit Laski  <zlaski@apple.com>

        * objc-act.c (objc_build_struct): Pass in an actual @interface
        instead of its name, and annotate the struct created (and all
        existing variants thereof) with the @interface.
        (objc_compare_types): Treat forward-declared ObjC classes
        as stand-alone (root) classes for purposes of type comparisons.
        (build_private_template): Move some code to objc_build_struct().

[gcc/testsuite/ChangeLog]
2005-07-07  Ziemowit Laski  <zlaski@apple.com>

        * obj-c++.dg/proto-lossage-6.mm: New.
        * objc.dg/proto-lossage-6.m: New.

From-SVN: r101750

19 years agoDaily bump.
GCC Administrator [Fri, 8 Jul 2005 00:16:24 +0000 (00:16 +0000)]
Daily bump.

[[Split portion of a mixed commit.]]

From-SVN: r101747.2

19 years ago* gnu/classpath/jdwp/util/Signature.java
Aaron Luchko [Thu, 7 Jul 2005 23:16:37 +0000 (23:16 +0000)]
* gnu/classpath/jdwp/util/Signature.java
        (computeFieldSignature): New Method.

From-SVN: r101745

19 years agovrp17.c: Simplify.
Jeff Law [Thu, 7 Jul 2005 22:55:54 +0000 (16:55 -0600)]
vrp17.c: Simplify.

        * gcc.dg/tree-ssa/vrp17.c: Simplify.  Remove dependency on
        argument evaluation order.

From-SVN: r101743

19 years agore PR rtl-optimization/22239 (i-cobol.adb:482: error: unrecognizable insn)
John David Anglin [Thu, 7 Jul 2005 22:53:28 +0000 (22:53 +0000)]
re PR rtl-optimization/22239 (i-cobol.adb:482: error: unrecognizable insn)

PR middle-end/22239
* loop.c (loop_givs_rescan): Check that v->new_reg is a REG.

From-SVN: r101742

19 years agoarm.c (thumb_output_function_prologue): Calculate offset in bytes, not words.
Khem Raj [Thu, 7 Jul 2005 22:14:07 +0000 (22:14 +0000)]
arm.c (thumb_output_function_prologue): Calculate offset in bytes, not words.

2005-07-07  Khem Raj  <kraj@mvista.com>

* config/arm/arm.c (thumb_output_function_prologue): Calculate offset
in bytes, not words.

From-SVN: r101740

19 years agolibgfortran.h (GFC_ARRAY_DESCRIPTOR): Replace 'type *base' by 'size_t offset'.
Tobias Schlüter [Thu, 7 Jul 2005 22:08:06 +0000 (00:08 +0200)]
libgfortran.h (GFC_ARRAY_DESCRIPTOR): Replace 'type *base' by 'size_t offset'.

* libgfortran.h (GFC_ARRAY_DESCRIPTOR): Replace 'type *base' by
'size_t offset'.
* intrinsics/cshift0.c, intrinsics/eoshift0.c,
intrinsics/eoshift2.c,intrinsics/pack_generic.c,
intrinsics/reshape_generic.c, intrinsics/spread_generic.c,
intrinsics/transpose_generic.c, intrinsics/unpack_generic,
m4/cshift1.m4, m4/eoshift1.m4, m4/eoshift3.m4, m4/iforeach.m4,
m4/ifunction.m4, m4/matmul.m4, m4/matmull.m4, m4/reshape.m4,
m4,transpose.m4: Set renamed field 'offset' to zero instead of
'base'.
* generated/all_l4.c, generated/all_l8.c,
generated/any_l4.c, generated/any_l8.c, generated/count_4_l4.c,
generated/count_4_l8.c, generated/count_8_l4.c,
generated/count_8_l8.c, generated/chift1_4.c,
generated/cshift1_8.c, generated/eoshift1_4.c,
generated/eoshift1_8.c, generated/eoshift3_4.c,
generated/eoshift3_8.c, generated/matmul_c4.c,
generated/matmul_c8.c, generated/matmul_i4.c, matmul_i8.c,
generated/matmul_l4.c, generated/matmul_l8.c,
generated/matmul_r4.c, generated/matmul_r8.c,
generated/maxloc0_4_i4.c, generated/maxloc0_4_i8.c,
generated/maxloc0_4_r4.c, generated/maxloc0_4_r8.c,
generated/maxloc0_8_i4.c, generated/maxloc0_8_i8.c,
generated/maxloc0_8_r4.c, generated/maxloc0_8_r8.c,
generated/maxloc1_4_i4.c, generated/maxloc1_4_i8.c,
generated/maxloc1_4_r4.c, generated/maxloc1_4_r8.c,
generated/maxloc1_8_i4.c, generated/maxloc1_8_i8.c,
generated/maxloc1_8_r4.c, generated/maxloc1_8_r8.c,
generated/maxval_i4.c, generated/maxval_i8.c,
generated/maxval_r4.c, generated/maxval_r8.c,
generated/minloc0_4_i4.c, generated/minloc0_4_i8.c,
generated/minloc0_4_r4.c, generated/minloc0_4_r8.c,
generated/minloc0_8_i4.c, generated/minloc0_8_i8.c,
generated/minloc0_8_r4.c, generated/minloc0_8_r8.c,
generated/minloc1_4_i4.c, generated/minloc1_4_i8.c,
generated/minloc1_4_r4.c, generated/minloc1_4_r8.c,
generated/minloc1_8_i4.c, generated/minloc1_8_i8.c,
generated/minloc1_8_r4.c, generated/minloc1_8_r8.c,
generated/minval_i4.c, generated/minval_i8.c,
generated/minval_r4.c, generated/minval_r8.c,
generated/product_c4.c, generated/product_c8.c,
generated/product_i4.c, generated/product_i8.c,
generated/product_r4.c, generated/product_r8.c,
generated/reshape_c4.c, generated/reshape_c8.c,
generated/reshape_i4.c, generated/reshape_i8.c,
generated/sum_c4.c, generated/sum_c8.c, generated/sum_i4.c,
generated/sum_i8.c, generated/sum_r4.c, generated/sum_r8.c,
generated/transpose_c4.c, generated/transpose_c8.c,
generated/transpose_i4.c, generated/transpose_i8.c: Regenerate:

From-SVN: r101739

19 years agore PR fortran/21594 ([4.0 only] FAIL: gfortran.dg/eoshift.f90 -O0 execution test)
Thomas Koenig [Thu, 7 Jul 2005 22:01:41 +0000 (22:01 +0000)]
re PR fortran/21594 ([4.0 only] FAIL: gfortran.dg/eoshift.f90  -O0  execution test)

2005-07-07  Thomas Koenig  <Thomas.Koenig@online.de>

PR libfortran/21594
* intrinsics/eoshift0.c:  If abs(shift) > len, fill the
the whole array with the boundary value, but don't overrun it.
* intrinsics/eoshift2.c:  Likewise.
* m4/eoshift1.m4:  Likewise.
* m4/eoshift3.m4:  Likewise.
* generated/eoshift1_4.c:  Regenerated.
* generated/eoshift1_8.c:  Regenerated.
* generated/eoshift3_4.c:  Regenerated.
* generated/eoshift3_8.c:  Regenerated.

2005-07-07  Thomas Koenig  <Thomas.Koenig@online.de>

PR libfortran/21594
* gfortran.fortran-torture/execute/intrinsic_eoshift.f90:
Add test cases where the shift length is greater than the
array length.

From-SVN: r101738

19 years agoarm.c (arm_pad_arg_upward): Compare return value of DEFAULT_FUNCTION_ARG_PADDING...
Paul Brook [Thu, 7 Jul 2005 21:43:10 +0000 (21:43 +0000)]
arm.c (arm_pad_arg_upward): Compare return value of DEFAULT_FUNCTION_ARG_PADDING to upward.

2005-07-07  Paul Brook  <paul@codesourcery.com>

* config/arm/arm.c (arm_pad_arg_upward): Compare return value of
DEFAULT_FUNCTION_ARG_PADDING to upward.

[[Split portion of a mixed commit.]]

From-SVN: r101736.2

19 years agognu-runtime-2.mm: Compile, do not run.
Ziemowit Laski [Thu, 7 Jul 2005 21:10:00 +0000 (21:10 +0000)]
gnu-runtime-2.mm: Compile, do not run.

[gcc/testsuite/ChangeLog]
2005-07-07  Ziemowit Laski  <zlaski@apple.com>

       * obj-c++.dg/gnu-runtime-2.mm: Compile, do not run.
       * objc.dg/gnu-runtime-2.m: Likewise.

From-SVN: r101733

19 years agofunction.c (locate_and_pad_parm): Record parameter alignment in stack_alignment_needed.
Richard Henderson [Thu, 7 Jul 2005 21:04:31 +0000 (14:04 -0700)]
function.c (locate_and_pad_parm): Record parameter alignment in stack_alignment_needed.

        * function.c (locate_and_pad_parm): Record parameter alignment in
        stack_alignment_needed.

From-SVN: r101732

19 years ago* gnu/classpath/jdwp/processor/ReferenceTypeCommandSet.java:New
Aaron Luchko [Thu, 7 Jul 2005 20:54:04 +0000 (20:54 +0000)]
* gnu/classpath/jdwp/processor/ReferenceTypeCommandSet.java:New
        file.

From-SVN: r101730

19 years agoMAINTAINERS: Remove Dave Brolley as a cpplib maintainer.
Mark Mitchell [Thu, 7 Jul 2005 18:40:19 +0000 (18:40 +0000)]
MAINTAINERS: Remove Dave Brolley as a cpplib maintainer.

* MAINTAINERS: Remove Dave Brolley as a cpplib maintainer.  Add Dave
Brolley to write-after-approval.

From-SVN: r101724

19 years agoscanner.c (load_line): Add pbuflen argument, don't make buflen static.
Jakub Jelinek [Thu, 7 Jul 2005 15:58:16 +0000 (17:58 +0200)]
scanner.c (load_line): Add pbuflen argument, don't make buflen static.

* scanner.c (load_line): Add pbuflen argument, don't make
buflen static.  If maxlen == 0 or preprocessor_flag,
don't truncate at buflen, but at maxlen.  In xrealloc add
1 byte at the end for the terminating '\0'.  Don't fill
with spaces up to buflen, but gfc_option.fixed_line_length.
(load_file): Adjust load_line caller.  Add line_len variable.

* gfortran.dg/longline.f: New test.

From-SVN: r101718

19 years agoscanner.c (preprocessor_line): Only set current_file->line when errors have not been...
Jakub Jelinek [Thu, 7 Jul 2005 15:55:53 +0000 (17:55 +0200)]
scanner.c (preprocessor_line): Only set current_file->line when errors have not been encountered.

* scanner.c (preprocessor_line): Only set current_file->line when errors
have not been encountered.  Warn and don't crash if a file leave
preprocessor line has no corresponding entering line.  Formatting.

* gfortran.dg/badline.f: New test.

From-SVN: r101717

19 years agoMakefile.def (flags_to_pass): Add CFLAGS_FOR_BUILD.
Andreas Schwab [Thu, 7 Jul 2005 15:39:19 +0000 (15:39 +0000)]
Makefile.def (flags_to_pass): Add CFLAGS_FOR_BUILD.

* Makefile.def (flags_to_pass): Add CFLAGS_FOR_BUILD.
* Makefile.tpl (EXTRA_GCC_FLAGS): Don't pass CFLAGS_FOR_BUILD here.
* Makefile.in: Regenerated.

From-SVN: r101716

19 years agore PR java/18119 (Private inner class is visible when it shouldn't be)
Bryce McKinlay [Thu, 7 Jul 2005 14:43:59 +0000 (14:43 +0000)]
re PR java/18119 (Private inner class is visible when it shouldn't be)

2005-07-07  Bryce McKinlay  <mckinlay@redhat.com>

PR java/18119
* parse.y (inner_class_accessible): New function. Logic moved from
check_inner_class_access.
(check_inner_class_access): Use inner_class_accessible.
(resolve_inner_class): Simplify arguments. Create circularity hash
here. Keep looking for classes if we found one that was
inaccessible. Return the inaccessible class only if there is no other
match.
(do_resolve_class): Update for new resolve_inner_class arguments.
Don't create circularity_hash here.

From-SVN: r101715

19 years agopt.c (type_unification_real): Remove allow_incomplete argument.
Nathan Sidwell [Thu, 7 Jul 2005 14:38:33 +0000 (14:38 +0000)]
pt.c (type_unification_real): Remove allow_incomplete argument.

* pt.c (type_unification_real): Remove allow_incomplete argument.
Remove unreachable code.
(fn_type_unification): Adjust call to type_unification_real.
(unify): Likewise.

From-SVN: r101714

19 years agore PR java/21045 (Anonymous inner class constructor's exceptions can't be caught...
Bryce McKinlay [Thu, 7 Jul 2005 14:34:53 +0000 (14:34 +0000)]
re PR java/21045 (Anonymous inner class constructor's exceptions can't be caught or thrown)

2005-07-07  Bryce McKinlay  <mckinlay@redhat.com>

        PR java/21045
* parse.y (add_exception_to_throws): New function.
(purge_unchecked_exceptions): Removed.
(get_constructor_super): Renamed from verify_constructor_super. Now
returns the super constructor after verification.
(java_complete_expand_method): Don't use purge_unchecked_exceptions
or save/restore the exception list.
(check_thrown_exceptions): Add uncaught exceptions in anonymous
class initializers and constructors to the throws clause of the
method.

2005-07-07  Bryce McKinlay  <mckinlay@redhat.com>

        * testsuite/libjava.compile/PR21045.java: New test.
        * testsuite/libjava.jacks/jacks.xfail: Remove 15.9.5.1-exception-1,
        15.9.5.1-exception-3, 8.3.2-abrupt-6, 8.3.2-abrupt-7.

From-SVN: r101713

19 years agors6000.md (UNSPEC_SYNC, [...]): Delete.
David Edelsohn [Thu, 7 Jul 2005 14:30:14 +0000 (14:30 +0000)]
rs6000.md (UNSPEC_SYNC, [...]): Delete.

* config/rs6000/rs6000.md (UNSPEC_SYNC, UNSPEC_SYNC_OP,
UNSPEC_SYNC_SWAP, UNSPEC_LWSYNC, UNSPEC_ISYNC): Delete.
(UNSPECV_LL, UNSPECV_SC, UNSPECV_ATOMIC, UNSPECV_SYNC,
UNSPECV_SYNC_OP, UNSPECV_CMPXCHG, UNSPECV_LWSYNC, UNSPECV_ISYNC): New.
(define_attr "type"): Add isync, sync, load_l, store_c.
* config/rs6000/sync.md (memory_barrier): Change to define_expand.
Create scratch volatile MEM.
(sync_internal): New.  POWER mnemonic is dcs, not ics.  Attribute
sync.
(load_locked_<mode>): New.
(store_conditional_<mode>): New.
(sync_compare_and_swap<mode>): Replace with splitter.
(sync_lock_test_and_set<mode>): Replace with splitter.
(sync_<fetchop><mode>): Change to unspec_volatile UNSPECV_SYNC_OP
and UNSPECV_ISYNC.
(isync): Change to unspec_volatile UNSPECV_ISYNC.  POWER mnemonic
is ics.  Attribute isync.
(lwsync): Change to unspec_volatile UNSPECV_LWSYNC.  Attribute
lwsync.
* config/rs6000/rs6000.c (rs6000_emit_sync): Use UNSPEC_VOLATILE
and UNSPECV_SYNC_OP.
(emit_unlikely_jump): New.
(emit_load_locked): New.
(emit_store_conditional): New.
(rs6000_split_compare_and_swap): New.
(rs6000_split_lock_test_and_set): New.
(is_dispatch_slot_restricted): Return 4 for TYPE_LOAD_L,
TYPE_STORE_C, TYPE_ISYNC, TYPE_SYNC.
* config/rs6000/rs6000-protos.h (rs6000_split_compare_and_swap,
rs6000_split_lock_test_and_set): Declare.
* config/rs6000/{40x.md,440.md,603.md,6xx.md,7450.md,7xx.md,8540.md,
mpc.md,power4.md,power5.md,rios1.md,rios2.md,rs64.md): Add load_l,
store_c, isync, sync.

From-SVN: r101712

19 years agotree_order_statistics_join.cc: Change map_t to map_type.
David Edelsohn [Thu, 7 Jul 2005 13:35:25 +0000 (13:35 +0000)]
tree_order_statistics_join.cc: Change map_t to map_type.

* testsuite/ext/pb_assoc/example/tree_order_statistics_join.cc:
Change map_t to map_type.

From-SVN: r101709

19 years agoMakefile.in (echo_quoted_to_gtyp): New template for outputing filenames to gtyp-gen.h.
Kelley Cook [Thu, 7 Jul 2005 12:37:16 +0000 (12:37 +0000)]
Makefile.in (echo_quoted_to_gtyp): New template for outputing filenames to gtyp-gen.h.

2005-07-07  Kelley Cook  <kcook@gcc.gnu.org>

* Makefile.in (echo_quoted_to_gtyp): New template for outputing
filenames to gtyp-gen.h.
(s-typ-gen): Use it in place of for loops.

From-SVN: r101708

19 years agoprimary.c (match_hollerith_constant): Use int, not unsigned int, for the hollerith...
Steven Bosscher [Thu, 7 Jul 2005 11:59:29 +0000 (11:59 +0000)]
primary.c (match_hollerith_constant): Use int, not unsigned int, for the hollerith length.

* primary.c (match_hollerith_constant): Use int, not unsigned int,
for the hollerith length.  Fix indentation.

From-SVN: r101707

19 years agohooks.c (hook_bool_rtx_int_false): New function.
J"orn Rennecke [Thu, 7 Jul 2005 11:48:15 +0000 (11:48 +0000)]
hooks.c (hook_bool_rtx_int_false): New function.

* hooks.c (hook_bool_rtx_int_false): New function.
* hooks.h (hook_bool_rtx_int_false): Declare.
* target-def.h (TARGET_COMMUTATIVE_P): Define.
(TARGET_INITIALIZER): Add TARGET_COMMUTATIVE_P.
* target.h (struct gcc_target): Add commutative_p member.
* targhooks.c (hook_bool_rtx_commutative_p): New function.
* targhooks.h (hook_bool_rtx_commutative_p): Declare.
* pa.c (TARGET_COMMUTATIVE_P): Redefine.
(pa_commutative_p): New function.
* jump.c (target.h): Include.
(rtx_renumbered_equal_p): Use targetm.commutative_p.
* doc/tm.texi: Document TARGET_COMMUTATIVE_P.

From-SVN: r101706

19 years agos390-protos.h (s390_expand_clrmem): Delete.
Adrian Straetling [Thu, 7 Jul 2005 10:34:57 +0000 (10:34 +0000)]
s390-protos.h (s390_expand_clrmem): Delete.

2005-07-07  Adrian Straetling  <straetling@de.ibm.com>

* config/s390/s390-protos.h (s390_expand_clrmem): Delete.
(s390_expand_setmem): New.
* config/s390/s390.c: Likewise.
(print_shift_count_operand): Truncate to 12 bits instead of 6.
Adapt comments.
* config/s390/s390.md: ("setmem<mode>"): Accept character as
general_operand.  Call new function "s390_expand_setmem".
("clrmem_long", "*clrmem_long"): Rewrite to ...
("setmem_long", "*setmem_long"): ... this.

From-SVN: r101705

19 years agos390.c: (optimization_options): Enable TARGET_MVCLE at -Os.
Adrian Straetling [Thu, 7 Jul 2005 10:25:37 +0000 (10:25 +0000)]
s390.c: (optimization_options): Enable TARGET_MVCLE at -Os.

2005-07-07  Adrian Straetling  <straetling@de.ibm.com>

* config/s390/s390.c: (optimization_options): Enable
TARGET_MVCLE at -Os.
* doc/invoke.texi: Document changes in default behaviour.
* config/s390/s390.opt: ("mvcle"): Fix typo: is "mmvcle".

From-SVN: r101704

19 years agoexpr.c: (set_storage_via_setmem): Convert opchar to mode defined by back-end.
Adrian Straetling [Thu, 7 Jul 2005 10:21:05 +0000 (10:21 +0000)]
expr.c: (set_storage_via_setmem): Convert opchar to mode defined by back-end.

2005-07-07  Adrian Straetling  <straetling@de.ibm.com>

* expr.c: (set_storage_via_setmem): Convert opchar to mode
defined by back-end.

From-SVN: r101703

19 years agoresync.
Arnaud Charlet [Thu, 7 Jul 2005 09:48:06 +0000 (11:48 +0200)]
resync.

From-SVN: r101702

19 years agovms_data.ads: Add VMS qualifiers for new gnatpp switch --no-separate-is
Sergey Rybin [Thu, 7 Jul 2005 09:47:42 +0000 (11:47 +0200)]
vms_data.ads: Add VMS qualifiers for new gnatpp switch --no-separate-is

2005-07-07  Sergey Rybin  <rybin@adacore.com>

* vms_data.ads: Add VMS qualifiers for new gnatpp switch
--no-separate-is

* gnat_ugn.texi: Add description for new gnatpp option
(--no-separate-is)

From-SVN: r101701

19 years agoexpect.c: Minor reformatting
Thomas Quinot [Thu, 7 Jul 2005 09:47:26 +0000 (11:47 +0200)]
expect.c: Minor reformatting

2005-07-07  Thomas Quinot  <quinot@adacore.com>

* expect.c: Minor reformatting

From-SVN: r101700

19 years agotracebak.c: Refine tracebacks to use Unwind_Backtrace scheme on ia64 platform only...
Bernard Banner [Thu, 7 Jul 2005 09:47:10 +0000 (11:47 +0200)]
tracebak.c: Refine tracebacks to use Unwind_Backtrace scheme on ia64 platform only on...

2005-07-07  Bernard Banner  <banner@adacore.com>

* tracebak.c: Refine tracebacks to use Unwind_Backtrace scheme on
ia64 platform only on platforms that you the GCC unwind library
rather than the system unwind library.

From-SVN: r101699

19 years agosem_ch8.adb (Find_Direct_Name): Handle properly the case of a generic package that...
Ed Schonberg [Thu, 7 Jul 2005 09:47:00 +0000 (11:47 +0200)]
sem_ch8.adb (Find_Direct_Name): Handle properly the case of a generic package that contains local declarations...

2005-07-07  Ed Schonberg  <schonberg@adacore.com>

* sem_ch8.adb (Find_Direct_Name): Handle properly the case of a
generic package that contains local declarations with the same name.
(Analyze_Object_Renaming): Check wrong renaming of incomplete type.

From-SVN: r101698

19 years agopar-load.adb (Load): If a child unit is loaded through a limited_with clause...
Ed Schonberg [Thu, 7 Jul 2005 09:46:48 +0000 (11:46 +0200)]
par-load.adb (Load): If a child unit is loaded through a limited_with clause...

2005-07-07  Ed Schonberg  <schonberg@adacore.com>
    Javier Miranda  <miranda@adacore.com>

* par-load.adb (Load): If a child unit is loaded through a limited_with
clause, each parent must be loaded as a limited unit as well.

* sem_ch10.adb (Previous_Withed_Unit): Better name for
Check_Withed_Unit. Return true if there is a previous with_clause for
this unit, whether limited or not.
(Expand_Limited_With_Clause): Do not generate a limited_with_clause on
the current unit.
(Is_Visible_Through_Renamings): New local subprogram of install_limited
_withed_unit that checks if some package installed through normal with
clauses has a renaming declaration of package whose limited-view is
ready to be installed. This enforces the check of the rule 10.1.2 (21/2)
of the current Draft document for Ada 2005.
(Analyze_Context): Complete the list of compilation units that
are allowed to contain limited-with clauses. It also contains
checks that were previously done by Install_Limited_Context_Clauses.
This makes the code more clear and easy to maintain.
(Expand_Limited_With_Clause) It is now a local subprogram of
Install_Limited_Context_Clauses, and contains the code that adds
the implicit limited-with clauses for parents of child units.
This functionality was prevously done by Analyze_Context.

* sem_ch4.adb (Analyze_Selected_Component): Check wrong use of
incomplete type.

* sem_ch7.adb (Analyze_Package_Declaration): Check if the package has
been erroneously named in a limited-with clause of its own context.
In this case the error has been previously notified by Analyze_Context.

From-SVN: r101697

19 years agore PR ada/22301 (Ada does not build into a clean prefix when unwind.h is not installed)
Olivier Hainque [Thu, 7 Jul 2005 09:46:29 +0000 (11:46 +0200)]
re PR ada/22301 (Ada does not build into a clean prefix when unwind.h is not installed)

2005-07-07  Olivier Hainque  <hainque@adacore.com>

PR ada/22301

* raise.c: Only include unwind.h if IN_RTS, and provide dummy type
definitions for the Unwind wrappers in the compiler case.

From-SVN: r101696

19 years agofreeze.adb (Freeze_Entity): Check wrong uses of tag incomplete types.
Javier Miranda [Thu, 7 Jul 2005 09:46:16 +0000 (11:46 +0200)]
freeze.adb (Freeze_Entity): Check wrong uses of tag incomplete types.

2005-07-07  Javier Miranda  <miranda@adacore.com>

* freeze.adb (Freeze_Entity): Check wrong uses of tag incomplete types.

* par-ch3.adb (P_Type_Declaration): Give support to tagged incomplete
types:
--
  type DEFINING_IDENTIFIER [DISCRIMINANT_PART] [IS TAGGED];
--

* sem_attr.adb (Check_Not_Incomplete_Type): Additional checks for wrong
use of tag incomplete types.

* sem_ch3.adb (Analyze_Incomplete_Type): Add mininum decoration to
give support to tagged incomplete types.

* sem_ch5.adb (Analyze_Case_Statement): In generated code, if the
expression is a discriminant reference and its type is private, as can
happen within a stream operation for a mutable record, use the full
view of the type to resolve the case alternatives.
(Analyze_Assignment): Check wrong dereference of incomplete types.

* sem_ch6.adb (Process_Formals): Allow the use of tagged incomplete
types.

* sem_res.adb (Resolve_Explicit_Dereference): Allow the use of tagged
incomplete types.

* sinfo.adb (Taggged_Present/Set_Taggged_Present): Applicable to
N_Incomplete_Type_Declaration nodes.

* sinfo.ads (N_Incomplete_Type_Declaration): Addition of attribute
Tag_Present to give support to tagged incomplete types:
--
  type DEFINING_IDENTIFIER [DISCRIMINANT_PART] [IS TAGGED];
--

From-SVN: r101695

19 years agoexp_ch3.adb (Build_Record_Init_Proc/Freeze_Record_Type): Reimplementation of the...
Javier Miranda [Thu, 7 Jul 2005 09:42:10 +0000 (11:42 +0200)]
exp_ch3.adb (Build_Record_Init_Proc/Freeze_Record_Type): Reimplementation of the support for abstract interface types in order to leave...

2005-07-07  Javier Miranda  <miranda@adacore.com>

* exp_ch3.adb (Build_Record_Init_Proc/Freeze_Record_Type):
Reimplementation of the support for abstract interface types in order
to leave the code more clear and easy to maintain.

* exp_ch6.adb (Freeze_Subprogram): Reimplementation of the support for
abstract interface types in order to leave the code clearer and easier
to maintain.

* exp_disp.ads, exp_disp.adb (Fill_DT_Entry): Part of its functionality
is now implemented by the new subprogram Fill_Secondary_DT_Entry.
(Fill_Secondary_DT_Entry): Generate the code necessary to fill the
appropriate entry of the secondary dispatch table.
(Make_DT): Add code to inherit the secondary dispatch tables of
the ancestors.

* exp_util.adb (Find_Interface_Tag/Find_Interface_ADT): Instead of
implementing both functionalities by means of a common routine, each
routine has its own code.

From-SVN: r101694

19 years agodecl.c (gnat_to_gnu_entity): Do not strip the padding type if the parameter is not...
Eric Botcazou [Thu, 7 Jul 2005 09:41:56 +0000 (11:41 +0200)]
decl.c (gnat_to_gnu_entity): Do not strip the padding type if the parameter is not passed by copy but...

2005-07-07  Eric Botcazou  <ebotcazou@adacore.com>

* decl.c (gnat_to_gnu_entity) <E_Procedure>: Do not strip the padding
type if the parameter is not passed by copy but reference by default.

From-SVN: r101693

19 years agobindgen.adb (Gen_Output_File_C): When switch -a was specified...
Vincent Celier [Thu, 7 Jul 2005 09:41:44 +0000 (11:41 +0200)]
bindgen.adb (Gen_Output_File_C): When switch -a was specified...

2005-07-07  Vincent Celier  <celier@adacore.com>

* bindgen.adb (Gen_Output_File_C): When switch -a was specified, put
the destructor/constructor attributes for <lib>final/<lib>init.

* gnatbind.adb (Gnatbind): Allow -a to be used in conjunction with -C

From-SVN: r101692

19 years agog-socthi-mingw.adb (C_Inet_Addr): New body used to convert the returned type on Windows.
Pascal Obry [Thu, 7 Jul 2005 09:41:29 +0000 (11:41 +0200)]
g-socthi-mingw.adb (C_Inet_Addr): New body used to convert the returned type on Windows.

2005-07-07  Pascal Obry  <obry@adacore.com>

* g-socthi-mingw.adb (C_Inet_Addr): New body used to convert the
returned type on Windows.

* g-socthi-mingw.ads (C_Inet_Addr): Remove pragma Import for this
routine.

* g-socket.adb (Inet_Addr): Check for empty Image and raises an
exception in this case.
Simplify the code as "Image (Image'Range)" = "Image".

From-SVN: r101691

19 years agosparc.md (stack_protect_testsi): Put clobbers after all sets in the pattern.
Jakub Jelinek [Thu, 7 Jul 2005 08:26:18 +0000 (10:26 +0200)]
sparc.md (stack_protect_testsi): Put clobbers after all sets in the pattern.

* config/sparc/sparc.md (stack_protect_testsi): Put clobbers after
all sets in the pattern.
* config/rs6000/rs6000.md (stack_protect_testsi,
stack_protect_testdi): Likewise.

From-SVN: r101690

19 years agoReal commit for Hollerith constants.
Feng Wang [Thu, 7 Jul 2005 07:56:46 +0000 (07:56 +0000)]
Real commit for Hollerith constants.

From-SVN: r101689

19 years agoFor the 60th anniversary of Chinese people��s Anti-Japan war victory.
Feng Wang [Thu, 7 Jul 2005 07:54:58 +0000 (07:54 +0000)]
For the 60th anniversary of Chinese people��s Anti-Japan war victory.

2005-07-07  Feng Wang  <fengwang@nudt.edu.cn>

PR fortran/16531
PR fortran/15966
PR fortran/18781
* arith.c (gfc_hollerith2int, gfc_hollerith2real,
gfc_hollerith2complex, gfc_hollerith2character, gfc_hollerith2logical):
New functions.
(eval_intrinsic): Don't evaluate if Hollerith constant arguments exist.
* arith.h (gfc_hollerith2int, gfc_hollerith2real,
gfc_hollerith2complex, gfc_hollerith2character, gfc_hollerith2logical):
Add prototypes.
* expr.c (free_expr0): Free memery allocated for Hollerith constant.
(gfc_copy_expr): Allocate and copy string if Expr is from Hollerith.
(gfc_check_assign): Enable conversion from Hollerith to other.
* gfortran.h (bt): Add BT_HOLLERITH.
(gfc_expr): Add from_H flag.
* intrinsic.c (gfc_type_letter): Return 'h' for BT_HOLLERITH.
(add_conversions): Add conversions from Hollerith constant to other.
(do_simplify): Don't simplify if  Hollerith constant arguments exist.
* io.c (resolve_tag): Enable array in FORMAT tag under GFC_STD_GNU.
* misc.c (gfc_basetype_name): Return "HOLLERITH" for BT_HOLLERITH.
(gfc_type_name): Print "HOLLERITH" for BT_HOLLERITH.
* primary.c (match_hollerith_constant): New function.
(gfc_match_literal_constant): Add match Hollerith before Integer.
* simplify.c (gfc_convert_constant): Add conversion from Hollerith
to other.
* trans-const.c (gfc_conv_constant_to_tree): Use VIEW_CONVERT_EXPR to
convert Hollerith constant to tree.
* trans-io.c (gfc_convert_array_to_string): Get array's address and
length to set string expr.
(set_string): Deal with array assigned Hollerith constant and character
array.
* gfortran.texi: Document Hollerith constants as extention support.

2005-07-07  Feng Wang  <fengwang@nudt.edu.cn>

PR fortran/16531
PR fortran/15966
PR fortran/18781
* gfortran.dg/hollerith.f90: New.
* gfortran.dg/hollerith2.f90: New.
* gfortran.dg/hollerith3.f90: New.
* gfortran.dg/hollerith4.f90: New.
* gfortran.dg/hollerith_f95.f90: New.
* gfortran.dg/hollerith_legacy.f90: New.
* gfortran.dg/g77/cpp4.F: New. Port from g77.

2005-07-07  Feng Wang  <fengwang@nudt.edu.cn>

PR fortran/16531
* io/transfer.c (formatted_transfer): Enable FMT_A on other types to
support Hollerith constants.

From-SVN: r101688

19 years agore PR fortran/16531 ([4.0 only, gfortran] Hollerith Data not supported)
Feng Wang [Thu, 7 Jul 2005 07:54:40 +0000 (07:54 +0000)]
re PR fortran/16531 ([4.0 only, gfortran] Hollerith Data not supported)

2005-07-07  Feng Wang  <fengwang@nudt.edu.cn>

        PR fortran/16531
        PR fortran/15966
        PR fortran/18781
        * arith.c (gfc_hollerith2int, gfc_hollerith2real,
        gfc_hollerith2complex, gfc_hollerith2character, gfc_hollerith2logical):
        New functions.
        (eval_intrinsic): Don't evaluate if Hollerith constant arguments exist.
        * arith.h (gfc_hollerith2int, gfc_hollerith2real,
        gfc_hollerith2complex, gfc_hollerith2character, gfc_hollerith2logical):
        Add prototypes.
        * expr.c (free_expr0): Free memery allocated for Hollerith constant.
        (gfc_copy_expr): Allocate and copy string if Expr is from Hollerith.
        (gfc_check_assign): Enable conversion from Hollerith to other.
        * gfortran.h (bt): Add BT_HOLLERITH.
        (gfc_expr): Add from_H flag.
        * intrinsic.c (gfc_type_letter): Return 'h' for BT_HOLLERITH.
        (add_conversions): Add conversions from Hollerith constant to other.
        (do_simplify): Don't simplify if  Hollerith constant arguments exist.
        * io.c (resolve_tag): Enable array in FORMAT tag under GFC_STD_GNU.
        * misc.c (gfc_basetype_name): Return "HOLLERITH" for BT_HOLLERITH.
        (gfc_type_name): Print "HOLLERITH" for BT_HOLLERITH.
        * primary.c (match_hollerith_constant): New function.
        (gfc_match_literal_constant): Add match Hollerith before Integer.
        * simplify.c (gfc_convert_constant): Add conversion from Hollerith
        to other.
        * trans-const.c (gfc_conv_constant_to_tree): Use VIEW_CONVERT_EXPR to
        convert Hollerith constant to tree.
        * trans-io.c (gfc_convert_array_to_string): Get array's address and
        length to set string expr.
        (set_string): Deal with array assigned Hollerith constant and character
        array.
        * gfortran.texi: Document Hollerith constants as extention support.

2005-07-07  Feng Wang  <fengwang@nudt.edu.cn>

        PR fortran/16531
        PR fortran/15966
        PR fortran/18781
        * gfortran.dg/hollerith.f90: New.
        * gfortran.dg/hollerith2.f90: New.
        * gfortran.dg/hollerith3.f90: New.
        * gfortran.dg/hollerith4.f90: New.
        * gfortran.dg/hollerith_f95.f90: New.
        * gfortran.dg/hollerith_legacy.f90: New.
        * gfortran.dg/g77/cpp4.F: New. Port from g77.

2005-07-07  Feng Wang  <fengwang@nudt.edu.cn>

        PR fortran/16531
        * io/transfer.c (formatted_transfer): Enable FMT_A on other types to
        support Hollerith constants.

From-SVN: r101687

19 years agore PR objc/22274 (string[1-4].m, const-str-5.m fails with the gnu runtime)
Ziemowit Laski [Thu, 7 Jul 2005 06:25:49 +0000 (06:25 +0000)]
re PR objc/22274 (string[1-4].m, const-str-5.m fails with the gnu runtime)

/objc/ChangeLog]
2005-07-07  Ziemowit Laski  <zlaski@apple.com>

        PR objc/22274
        * objc-act.c (objc_build_string_object): For GNU-style constants,
        use the @interface type rather than the built-in type.

[gcc/testsuite/ChangeLog]
2005-07-07  Ziemowit Laski  <zlaski@apple.com>

        PR objc/22274
        * obj-c++.dg/gnu-runtime-[1-2].mm: New.
        * objc.dg/gnu-runtime-2.m: New.

From-SVN: r101686