gcc.git
19 years ago* function.c (assign_parm_setup_block): Handle parallels correctly.
Aldy Hernandez [Thu, 28 Oct 2004 12:29:36 +0000 (12:29 +0000)]
* function.c (assign_parm_setup_block): Handle parallels correctly.

From-SVN: r89750

19 years ago* final.c (shorten_branches): Initialize flags structure.
Kaz Kojima [Thu, 28 Oct 2004 10:34:04 +0000 (10:34 +0000)]
* final.c (shorten_branches): Initialize flags structure.

From-SVN: r89746

19 years agotree.c (int_cst_node, [...]): New variables.
Nathan Sidwell [Thu, 28 Oct 2004 10:08:03 +0000 (10:08 +0000)]
tree.c (int_cst_node, [...]): New variables.

* tree.c (int_cst_node, int_cst_hash_table): New variables.
(init_ttree): Initialize them.
(int_cst_hash_hash, int_cst_hash_eq): New hashing functions.
(build_int_cst_wide): Use hash table for oversized integers.

From-SVN: r89745

19 years agooops - fixed typo in previous delta
Nick Clifton [Thu, 28 Oct 2004 08:49:48 +0000 (08:49 +0000)]
oops - fixed typo in previous delta

From-SVN: r89744

19 years ago(DBX_OUTPUT_SOURCE_LINE): Define begin_label.
Nick Clifton [Thu, 28 Oct 2004 08:35:46 +0000 (08:35 +0000)]
(DBX_OUTPUT_SOURCE_LINE): Define begin_label.

From-SVN: r89743

19 years ago* g++.dg/init/ref12.C: New test.
Mark Mitchell [Thu, 28 Oct 2004 05:24:21 +0000 (05:24 +0000)]
* g++.dg/init/ref12.C: New test.

From-SVN: r89739

19 years agore PR c++/17435 (Binding a temporary of derived type to reference of base)
Mark Mitchell [Thu, 28 Oct 2004 05:17:14 +0000 (05:17 +0000)]
re PR c++/17435 (Binding a temporary of derived type to reference of base)

PR c++/17435
* call.c (convert_like_real): Fix formatting.
(initialize_reference): When binding a temporary to a base class,
ensure that the nominal copy made is to the derived class, not the
base class.

PR c++/18140
* parser.c (cp_parser_next_token_ends_template_argument_p): Do not
include ">>".

PR c++/17435
* g++.dg/init/ref12.C: New test.

PR c++/18140
* g++.dg/template/shift1.C: New test.
* g++.dg/template/error10.C: Adjust error markers.

From-SVN: r89738

19 years agore PR middle-end/18163 (libffi test case ICE's on darwin)
Richard Henderson [Thu, 28 Oct 2004 03:53:31 +0000 (20:53 -0700)]
re PR middle-end/18163 (libffi test case ICE's on darwin)

        PR middle-end/18163
        * expr.c (emit_group_load): Don't go force temporary for memory
        or concat source.
        (emit_group_store): Similarly.

From-SVN: r89735

19 years agore PR other/18186 (Spelling error)
Andrew Pinski [Thu, 28 Oct 2004 03:42:22 +0000 (03:42 +0000)]
re PR other/18186 (Spelling error)

2004-10-27  Andrew Pinski  <pinskia@physics.uc.edu>

        PR other/18186
        * common.opt (--param): Fix spelling of parameter.

From-SVN: r89731

19 years agore PR tree-optimization/17529 (ICE in get_indirect_ref_operands)
Andrew Pinski [Thu, 28 Oct 2004 03:03:48 +0000 (03:03 +0000)]
re PR tree-optimization/17529 (ICE in get_indirect_ref_operands)

2004-10-27  Andrew Pinski  <pinskia@physics.uc.edu>

        PR tree-opt/17529
        * tree-cfg.c (remove_useless_stmts_1) <case SWITCH_EXPR>:
        Don't fold statement.
        <case ASM_EXPR>: Fold the statement.

2004-10-27  Andrew Pinski  <pinskia@physics.uc.edu>

        PR tree-opt/17529
        * gcc.c-torture/compile/pr17529.c: Remove the xfail.

From-SVN: r89730

19 years agotree-ssa-dce.c (mark_stmt_if_obviously_necessary): Use EDGE_COUNT instead of GOTO_DES...
Kazu Hirata [Thu, 28 Oct 2004 02:56:50 +0000 (02:56 +0000)]
tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Use EDGE_COUNT instead of GOTO_DESTINATION.

* tree-ssa-dce.c (mark_stmt_if_obviously_necessary)
<COND_EXPR>: Use EDGE_COUNT instead of GOTO_DESTINATION.

From-SVN: r89729

19 years agodecl.c: Move the q after the %.
Andrew Pinski [Thu, 28 Oct 2004 02:32:44 +0000 (02:32 +0000)]
decl.c: Move the q after the %.

2004-10-27  Andrew Pinski  <pinskia@physics.uc.edu>

        * decl.c: Move the q after the %.

From-SVN: r89728

19 years agoparser.c (cp_parser_diagnose_invalid_type_name): Move the q after the %.
Andrew Pinski [Thu, 28 Oct 2004 02:17:46 +0000 (02:17 +0000)]
parser.c (cp_parser_diagnose_invalid_type_name): Move the q after the %.

2004-10-27  Andrew Pinski  <pinskia@physics.uc.edu>

        * parser.c (cp_parser_diagnose_invalid_type_name): Move the q after
        the %.

From-SVN: r89727

19 years agobasic_string.h (assign(const basic_string&)): Move out of line...
Paolo Carlini [Thu, 28 Oct 2004 01:04:35 +0000 (01:04 +0000)]
basic_string.h (assign(const basic_string&)): Move out of line...

2004-10-27  Paolo Carlini  <pcarlini@suse.de>

* include/bits/basic_string.h (assign(const basic_string&)):
Move out of line...
* include/bits/basic_string.tcc: ... here.

From-SVN: r89726

19 years agocontrib.texi, [...]: Improve Texinfo formatting.
Joseph Myers [Thu, 28 Oct 2004 01:00:31 +0000 (02:00 +0100)]
contrib.texi, [...]: Improve Texinfo formatting.

* doc/contrib.texi, doc/cpp.texi, doc/cppopts.texi,
doc/extend.texi, doc/gcov.texi, doc/install.texi, doc/invoke.texi,
doc/libgcc.texi, doc/md.texi, doc/passes.texi,
doc/sourcebuild.texi, doc/tm.texi: Improve Texinfo formatting.

From-SVN: r89725

19 years agoc-tree.texi, [...]: Put punctuation outside quotes.
Joseph Myers [Thu, 28 Oct 2004 00:20:42 +0000 (01:20 +0100)]
c-tree.texi, [...]: Put punctuation outside quotes.

* doc/c-tree.texi, doc/cpp.texi, doc/implement-c.texi,
doc/invoke.texi, doc/md.texi, doc/passes.texi, doc/tm.texi: Put
punctuation outside quotes.

From-SVN: r89724

19 years agotypeof-2.c: Needs aliases as well as weak.
Geoffrey Keating [Thu, 28 Oct 2004 00:16:57 +0000 (00:16 +0000)]
typeof-2.c: Needs aliases as well as weak.

* gcc.dg/weak/typeof-2.c: Needs aliases as well as weak.
* gcc.dg/weak/weak-3.c: Likewise.
* gcc.dg/weak/weak-5.c: Likewise.
* gcc.dg/weak/weak-9.c: Likewise.
* lib/file-format.exp (gcc_target_object_format): Darwin has Mach-O.
* lib/target-supports.exp (check_weak_available): Mach-O does weak.

From-SVN: r89723

19 years agoDaily bump.
GCC Administrator [Thu, 28 Oct 2004 00:16:23 +0000 (00:16 +0000)]
Daily bump.

[[Split portion of a mixed commit.]]

From-SVN: r89721.2

19 years agoDaily bump.
GCC Administrator [Thu, 28 Oct 2004 00:16:16 +0000 (00:16 +0000)]
Daily bump.

[[Split portion of a mixed commit.]]

From-SVN: r89720.2

19 years agoIndex: fixincludes/ChangeLog
Geoffrey Keating [Wed, 27 Oct 2004 23:02:39 +0000 (23:02 +0000)]
Index: fixincludes/ChangeLog
2004-10-27  Geoffrey Keating  <geoffk@apple.com>

* inclhack.def (darwin_gcc4_breakage): New.
* fixincl.x: Regenerate.

Index: gcc/ChangeLog
2004-10-27  Geoffrey Keating  <geoffk@apple.com>

* config/rs6000/rs6000.c (rs6000_attribute_table): Add
SUBTARGET_ATTRIBUTE_TABLE.
* config/darwin.h (ASM_WEAKEN_DECL): Handle weak_import.
(SUBTARGET_ATTRIBUTE_TABLE): Define.
* config/darwin.c (darwin_handle_weak_import_attribute): New.
(HAVE_DEAD_STRIP): Delete.
(no_dead_strip): Don't test HAVE_DEAD_STRIP.
* config/darwin-protos.h (darwin_handle_weak_import_attribute):
Prototype.

Index: gcc/testsuite/ChangeLog
2004-10-27  Geoffrey Keating  <geoffk@apple.com>

* gcc.dg/darwin-weakimport-1.c: New.

From-SVN: r89716

19 years agocorrect attribution for last patch
David Mosberger [Wed, 27 Oct 2004 22:46:18 +0000 (15:46 -0700)]
correct attribution for last patch

From-SVN: r89715

19 years agoIA-64 sibcall unwind bug, PR target/13158
David Mosberger [Wed, 27 Oct 2004 22:44:07 +0000 (15:44 -0700)]
IA-64 sibcall unwind bug, PR target/13158

IA-64 sibcall unwind bug, PR target/13158
* config/ia64/ia64.c (ia64_expand_epilogue): Set RTX_FRAME_RELATED_P on
sibcall alloc instruction.
(process_set): Handle sibcall alloc instruction.

From-SVN: r89714

19 years ago* doc/tm.texi (USE_SELECT_SECTION_FOR_FUNCTIONS): Document.
Geoffrey Keating [Wed, 27 Oct 2004 21:17:08 +0000 (21:17 +0000)]
* doc/tm.texi (USE_SELECT_SECTION_FOR_FUNCTIONS): Document.

From-SVN: r89713

19 years ago* config/darwin.h (GTHREAD_USE_WEAK): Define.
Geoffrey Keating [Wed, 27 Oct 2004 21:03:43 +0000 (21:03 +0000)]
* config/darwin.h (GTHREAD_USE_WEAK): Define.

From-SVN: r89712

19 years agoparams.def (PARAM_SRA_MAX_STRUCTURE_SIZE): New.
Ben Elliston [Wed, 27 Oct 2004 21:02:16 +0000 (21:02 +0000)]
params.def (PARAM_SRA_MAX_STRUCTURE_SIZE): New.

* params.def (PARAM_SRA_MAX_STRUCTURE_SIZE): New.
(PARAM_SRA_FIELD_STRUCTURE_RATIO): Likewise.
* params.h (SRA_MAX_STRUCTURE_SIZE): New.
(SRA_FIELD_STRUCTURE_RATIO): Likewise.
* tree-sra.c: Include "params.h".
(decide_block_copy): Use new parameters.
* doc/invoke.texi (Optimize Options): Document new SRA pass
parameters sra-max-structure-size and sra-field-structure-ratio.

[testsuite]
* gcc.dg/tree-ssa/sra-1.c: Pass --param sra-max-structure-size.

From-SVN: r89711

19 years ago* config/arm/ieee754-df.S (floatdidf): Fix regression with big values.
Nicolas Pitre [Wed, 27 Oct 2004 20:32:02 +0000 (20:32 +0000)]
* config/arm/ieee754-df.S (floatdidf): Fix regression with big values.

From-SVN: r89709

19 years agore PR tree-optimization/18048 (mgrid loop performance regression with ivopts (registe...
Zdenek Dvorak [Wed, 27 Oct 2004 20:27:20 +0000 (22:27 +0200)]
re PR tree-optimization/18048 (mgrid loop performance regression with ivopts (register pressure))

PR tree-optimization/18048
* fold-const.c (try_move_mult_to_index): New function.
(fold): Use try_move_mult_to_index.
* tree-ssa-loop-ivopts.c (try_add_cand_for): Prefer common candidates.
* tree-ssa-loop-niter.c (number_of_iterations_cond): Produce
an all-ones unsigned constant without extra bits.
* tree.c (build_low_bits_mask): New function.
* tree.h (build_low_bits_mask): Declare.

From-SVN: r89708

19 years agore PR target/17956 (ICE in rs6000_emit_minmax, config/rs6000/rs6000.c:11725)
David Edelsohn [Wed, 27 Oct 2004 20:18:42 +0000 (20:18 +0000)]
re PR target/17956 (ICE in rs6000_emit_minmax, config/rs6000/rs6000.c:11725)

PR target/17956
* config/rs6000/rs6000.md (maxsf3): Add !flag_trapping_math to
final condition.
(minsf3): Same.
(maxdf3): Same.
(mindf3): Same.

From-SVN: r89707

19 years agore PR bootstrap/17832 (Bootstrap broken by fixincludes failures)
Aaron W. LaFramboise [Wed, 27 Oct 2004 20:13:57 +0000 (14:13 -0600)]
re PR bootstrap/17832 (Bootstrap broken by fixincludes failures)

PR bootstrap/17832

* fixfixes.c (main): Check for _PC_NAME_MAX.
----------------------------------------------------------------------

From-SVN: r89706

19 years agotree-cfg.c (thread_jumps): Speed up by reordering the two conditions for entering...
Kazu Hirata [Wed, 27 Oct 2004 18:33:26 +0000 (18:33 +0000)]
tree-cfg.c (thread_jumps): Speed up by reordering the two conditions for entering basic blocks into worklist.

* tree-cfg.c (thread_jumps): Speed up by reordering the two
conditions for entering basic blocks into worklist.

From-SVN: r89700

19 years agotree-cfg.c (thread_jumps): Speed up by pretending to have ENTRY_BLOCK_PTR in worklist.
Kazu Hirata [Wed, 27 Oct 2004 18:24:13 +0000 (18:24 +0000)]
tree-cfg.c (thread_jumps): Speed up by pretending to have ENTRY_BLOCK_PTR in worklist.

* tree-cfg.c (thread_jumps): Speed up by pretending to have
ENTRY_BLOCK_PTR in worklist.

From-SVN: r89699

19 years agotree-ssa-dce.c (mark_stmt_if_obviously_necessary): Don't let an explicit GOTO_EXPR...
Kazu Hirata [Wed, 27 Oct 2004 18:20:26 +0000 (18:20 +0000)]
tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Don't let an explicit GOTO_EXPR slip through.

* tree-ssa-dce.c (mark_stmt_if_obviously_necessary)
<GOTO_EXPR>: Don't let an explicit GOTO_EXPR slip through.

From-SVN: r89698

19 years agobtest-gcc.sh (TESTLOGS): The libstdc++-v3 test log is called libstd++.sum not libstdc...
Geoffrey Keating [Wed, 27 Oct 2004 18:19:41 +0000 (18:19 +0000)]
btest-gcc.sh (TESTLOGS): The libstdc++-v3 test log is called libstd++.sum not libstdc++-v3.sum.

* btest-gcc.sh (TESTLOGS): The libstdc++-v3 test log is called
libstd++.sum not libstdc++-v3.sum.

From-SVN: r89697

19 years agoAdd missing ChangeLog line for configure.host change.
Geoffrey Keating [Wed, 27 Oct 2004 18:09:48 +0000 (18:09 +0000)]
Add missing ChangeLog line for configure.host change.

From-SVN: r89696

19 years agore PR tree-optimization/17133 (wrong code with -ftree-lim)
Daniel Berlin [Wed, 27 Oct 2004 17:45:21 +0000 (17:45 +0000)]
re PR tree-optimization/17133 (wrong code with -ftree-lim)

2004-10-27  Daniel Berlin <dberlin@dberlin.org>

Fix PR tree-optimization/17133

* tree-cfg.c (rewrite_to_new_ssa_names_bb): Also rewrite must
def kill operand.

* tree-flow-inline.h: V_MUST_DEF_OP became V_MUST_DEF_RESULT.
(get_v_must_def_result_ptr): Modify for new structure of
v_must_defs array.
(get_v_must_def_kill_ptr): New.
(op_iter_next_use): Add support for the kill that occurs in V_MUST_DEFs.
(op_iter_next_tree): Ditto. Also V_MAY_DEF_OP became V_MAY_DEF_RESULT.
(op_iter_next_def): V_MAY_DEF_OP became V_MAY_DEF_RESULT.
(op_iter_init): Initialize new mustu members.
(op_iter_next_mustdef): New function.
(op_iter_init_mustdef): Ditto.

* tree-flow.h (rewrite_def_def_chains): New function.

* tree-into-ssa.c (mark_def_sites): Handle mustdefkill operands.
(ssa_mark_def_sites): Ditto.
(rewrite_stmt): Ditto.
(ssa_rewrite_stmt): Ditto.
(rewrite_blocks): Factor out from rewrite_into_ssa.
(mark_def_block_sites): Ditto.
(rewrite_def_def_chains): New function, just rewrites def-def
chains without phi node insertion.

* tree-pass.h (TODO_fix_def_def_chains): New todo flag.

* tree-optimize.c (execute_todo): Handle TODO_fix_def_def_chains.

* tree-pretty-print.c (dump_vops): Print out MUST_DEF's so that
they include the rhs now.

* tree-ssa-ccp.c (visit_assignment): V_MUST_DEF_OP became
V_MUST_DEF_RESULT.

* tree-ssa-dce.c (mark_operand_necessary): Add phionly argument.
Update callers.
(mark_really_necessary_kill_operand_phis): New function.
(perform_tree_ssa_dce): Call it.
(pass_dce): Add TODO_fix_def_def_chains.
(pass_cd_dce): Ditto.

* tree-ssa-loop-im.c (determine_max_movement): Look at kills as
well.
(rewrite_mem_refs): Ditto.

* tree-ssa-loop-manip.c (find_uses_to_rename_stmt): Look at kills
as well.

* tree-ssa-operands.c (allocate_v_may_def_optype):
v_may_def_operand_type_t became v_def_use_operand_type_t.
(allocate_v_must_def_optype) Ditto.
(finalize_ssa_v_must_defs): Update for new operand type, as well
as setting the use portion as well.
(copy_virtual_operands): Copy the kill operand as well.
(create_ssa_artficial_load_stmt): V_MUST_DEF_OP became
V_MUST_DEF_RESULT.

* tree-ssa-operands.h (v_may_def_operand_type): Renamed to
v_def_use_operand_type.
(v_must_def_optype_d): Use v_def_use_operand_type.
(V_MUST_DEF_OP_*): Renamed to V_MUST_DEF_RESULT_*
(V_MUST_DEF_KILL_*): New macros.
(struct ssa_operand_iterator_d): Add num_v_mustu and v_mustu_i
members.
Rename existing must_i and num_v_must members to mustd_i and
num_v_mustd.
(SSA_OP_VMUSTDEFKILL): New flag.
(SSA_OP_VIRTUAL_KILLS): New flag.
(SSA_OP_ALL_OPERANDS): Add in SSA_OP_ALL_KILLS.
(SSA_OP_ALL_KILLS): New flag.
(FOR_EACH_SSA_MUSTDEF_OPERAND): New macro.

* tree-ssa.c (verify_ssa): Verify virtual kills as well.

* tree-vectorizer.c (vect_create_data_ref_ptr): V_MUST_DEF_OP
became V_MUST_DEF_RESULT.
(rename_variables_in_bb): Rename kill pointer as well.

* tree-dfa.c (compute_immediate_uses_for_stmt): Add kills into the
immediate uses.

From-SVN: r89695

19 years agodbxout.c (dbxout_source_line): Move declaration of begin_label to the block that...
Richard Sandiford [Wed, 27 Oct 2004 17:31:14 +0000 (17:31 +0000)]
dbxout.c (dbxout_source_line): Move declaration of begin_label to the block that needs it.

* dbxout.c (dbxout_source_line): Move declaration of begin_label to
the block that needs it.

From-SVN: r89694

19 years agore PR c++/18075 (#pragma implementation broken in presence of #pragma ident)
Zack Weinberg [Wed, 27 Oct 2004 17:29:29 +0000 (17:29 +0000)]
re PR c++/18075 (#pragma implementation broken in presence of #pragma ident)

PR 18075
* directives.c (do_pragma): Do not defer pragmas which are unknown.
(cpp_handle_deferred_pragma): Add cast to silence warning.

From-SVN: r89693

19 years agodbxout.c (dbxout_finish_complex_stabs): Mark 'line' variable ATTRIBUTE_UNUSED.
Zack Weinberg [Wed, 27 Oct 2004 17:28:29 +0000 (17:28 +0000)]
dbxout.c (dbxout_finish_complex_stabs): Mark 'line' variable ATTRIBUTE_UNUSED.

* dbxout.c (dbxout_finish_complex_stabs): Mark 'line' variable
ATTRIBUTE_UNUSED.

From-SVN: r89692

19 years agoc-lex.c (cb_def_pragma): Clean up code for making location palatable to diagnostic.c.
Zack Weinberg [Wed, 27 Oct 2004 17:24:20 +0000 (17:24 +0000)]
c-lex.c (cb_def_pragma): Clean up code for making location palatable to diagnostic.c.

* c-lex.c (cb_def_pragma): Clean up code for making location
palatable to diagnostic.c.

From-SVN: r89691

19 years agoAdd PR number.
Steven Bosscher [Wed, 27 Oct 2004 17:20:57 +0000 (17:20 +0000)]
Add PR number.

From-SVN: r89690

19 years agotree-phinodes.c (remove_phi_arg_num): Don't remove PHIs without any PHI arguments...
Steven Bosscher [Wed, 27 Oct 2004 17:14:19 +0000 (17:14 +0000)]
tree-phinodes.c (remove_phi_arg_num): Don't remove PHIs without any PHI arguments left.

* tree-phinodes.c (remove_phi_arg_num): Don't remove PHIs
without any PHI arguments left.  Make sure the argument that
we're supposed to remove exists at all.

From-SVN: r89689

19 years ago* de.po: Update.
Joseph Myers [Wed, 27 Oct 2004 17:09:33 +0000 (18:09 +0100)]
* de.po: Update.

From-SVN: r89687

19 years agoconfigure.ac: Don't test for [build] __cxa_atexit when building a cross compiler.
Paul Brook [Wed, 27 Oct 2004 16:08:48 +0000 (16:08 +0000)]
configure.ac: Don't test for [build] __cxa_atexit when building a cross compiler.

* configure.ac: Don't test for [build] __cxa_atexit when building a
cross compiler.
* configure: Regenerate.

From-SVN: r89684

19 years agoconfigure.ac: Use build_exeext not host_exeext when lookin for target tools.
Paul Brook [Wed, 27 Oct 2004 16:06:39 +0000 (16:06 +0000)]
configure.ac: Use build_exeext not host_exeext when lookin for target tools.

* configure.ac: Use build_exeext not host_exeext when lookin for
target tools.
* configure: Regenerate.

From-SVN: r89683

19 years agoffi.c (ffi_prep_cif_machdep): Handle functions that return long long values.
Richard Earnshaw [Wed, 27 Oct 2004 15:10:22 +0000 (15:10 +0000)]
ffi.c (ffi_prep_cif_machdep): Handle functions that return long long values.

* src/arm/ffi.c (ffi_prep_cif_machdep): Handle functions that return
long long values.  Round stack allocation to a multiple of 8 bytes
for ATPCS compatibility.
* src/arm/sysv.S (ffi_call_SYSV): Rework to avoid use of APCS register
names.  Handle returning long long types.  Add Thumb and interworking
support.  Improve soft-float code.

From-SVN: r89681

19 years agore PR other/17991 (Two-process fixincludes broken: pz_mn_name_pat undefined)
Paolo Bonzini [Wed, 27 Oct 2004 14:42:56 +0000 (14:42 +0000)]
re PR other/17991 (Two-process fixincludes broken: pz_mn_name_pat undefined)

2004-10-27  Paolo Bonzini  <bonzini@gnu.org>

PR other/17991

* configure.ac: Fix typo.
* configure: Regenerate.
* fixincl.c (fix_with_system): tSCC is not a pointer.  Fix.

From-SVN: r89680

19 years agoResync.
Arnaud Charlet [Wed, 27 Oct 2004 13:57:10 +0000 (15:57 +0200)]
Resync.

From-SVN: r89679

19 years agognat_ugn.texi: Generalize "finding memory problems" section into a "memory management...
Cyrille Comar [Wed, 27 Oct 2004 13:56:19 +0000 (15:56 +0200)]
gnat_ugn.texi: Generalize "finding memory problems" section into a "memory management issues"...

2004-10-26  Cyrille Comar    <comar@act-europe.fr>
    Vasiliy Fofanov  <fofanov@act-europe.fr>
    Vincent Celier   <celier@gnat.com>

* gnat_ugn.texi: Generalize "finding memory problems" section into a
"memory management issues" section and document some of the useful
memory pools provided as part of the GNAT library.
Remove "virtual" from declaration of A::method2 in
the simple example of Ada/C++ mixed system.
Library Projects may be virtually extended: their virtual extensions
are not Library Projects.
Added section on extending project hierarchies.

From-SVN: r89678

19 years ago2004-10-26 Vincent Celier <celier@gnat.com>
Vincent Celier [Wed, 27 Oct 2004 13:56:03 +0000 (15:56 +0200)]
2004-10-26  Vincent Celier  <celier@gnat.com>

* a-dirval.ads, a-dirval.adb, a-dirval-vms.adb, a-dirval-mingw.adb
(Is_Path_Name_Case_Sensitive): New function

* a-direct.adb (To_Lower_If_Case_Insensitive): New procedure
(Base_Name, Simple_Name, Current_Directory, Compose,
Containing_Directory, Full_Name): Call To_Lower_If_Case_Insensitive on
the result.

From-SVN: r89677

19 years agotrans.c (call_to_gnu): For an (in-)out parameter passed by reference whose type is...
Eric Botcazou [Wed, 27 Oct 2004 13:55:45 +0000 (15:55 +0200)]
trans.c (call_to_gnu): For an (in-)out parameter passed by reference whose type is a constructed...

2004-10-26  Eric Botcazou  <ebotcazou@act-europe.fr>

* trans.c (call_to_gnu): For an (in-)out parameter passed by reference
whose type is a constructed subtype of an aliased object with an
unconstrained nominal subtype, convert the actual to the constructed
subtype before taking its address.

From-SVN: r89676

19 years agotracebak.c (IS_BAD_PTR): Use IsBadCodePtr on Win32 to check for ptr validity (process...
Pascal Obry [Wed, 27 Oct 2004 13:55:31 +0000 (15:55 +0200)]
tracebak.c (IS_BAD_PTR): Use IsBadCodePtr on Win32 to check for ptr validity (process must have read access).

2004-10-26  Pascal Obry  <obry@gnat.com>

* tracebak.c (IS_BAD_PTR): Use IsBadCodePtr on Win32 to check for ptr
validity (process must have read access). Set to 0 in all other cases.
(STOP_FRAME): Now check for ptr validity to avoid a segmentation
violation on Win32.
(VALID_STACK_FRAME): Check for ptr validity on Win32 to avoid a
segmentation violation.

From-SVN: r89675

19 years agosem_util.adb (Is_Aliased_View): Defend against the case where this subprogram is...
Thomas Quinot [Wed, 27 Oct 2004 13:54:52 +0000 (15:54 +0200)]
sem_util.adb (Is_Aliased_View): Defend against the case where this subprogram is called with a parameter that...

2004-10-26  Thomas Quinot  <quinot@act-europe.fr>
    Ed Schonberg   <schonberg@gnat.com>

* sem_util.adb (Is_Aliased_View): Defend against the case where this
subprogram is called with a parameter that is not an object name. This
situation arises for some cases of illegal code, which is diagnosed
later, and in this case it is wrong to call Is_Aliased, as that might
cause a compiler crash.
(Explain_Limited_Type): Refine previous fix to include
inherited components of derived types, to provide complete information.

* exp_ch9.adb (Set_Privals): Set the Ekind of the actual object that
is the prival for a protected object.
It is necessary to mark this entity as a variable, in addition to
flagging it as Aliased, because Sem_Util.Is_Aliased_View has been
modified to avoid checking the Aliased flag on entities that are not
objects. (Checking that flag for non-objects is erroneous and could
lead to a compiler crash).

From-SVN: r89674

19 years agosem_elab.adb (Check_Elab_Call): Do not check a call that does not appear in the code...
Ed Schonberg [Wed, 27 Oct 2004 13:54:38 +0000 (15:54 +0200)]
sem_elab.adb (Check_Elab_Call): Do not check a call that does not appear in the code for the main unit.

2004-10-26  Ed Schonberg  <schonberg@gnat.com>

* sem_elab.adb (Check_Elab_Call): Do not check a call that does not
appear in the code for the main unit. Dependencies among units in the
context of the main unit are established when those other units are
compiled. Otherwise spurious elaboration constraints can generate
incorrect elaboration circularities.

From-SVN: r89673

19 years agosem_ch6.adb (Analyze_Subprogram_Body): If body is a subunit for a different kind...
Ed Schonberg [Wed, 27 Oct 2004 13:42:11 +0000 (15:42 +0200)]
sem_ch6.adb (Analyze_Subprogram_Body): If body is a subunit for a different kind of stub (possibly wrong name for file)...

2004-10-26  Ed Schonberg  <schonberg@gnat.com>

* sem_ch6.adb (Analyze_Subprogram_Body): If body is a subunit for a
different kind of stub (possibly wrong name for file), do not check
for conformance.
(Uses_Secondary_Stack): New subsidiary to Build_Body_To_Inline. If body
includes call to some function that returns an unconstrained type, do
not inline.

From-SVN: r89671

19 years agosem_ch3.adb (Complete_Private_Subtype): If the full view is a task or protected type...
Ed Schonberg [Wed, 27 Oct 2004 13:41:55 +0000 (15:41 +0200)]
sem_ch3.adb (Complete_Private_Subtype): If the full view is a task or protected type with discriminants...

2004-10-26  Ed Schonberg  <schonberg@gnat.com>

* sem_ch3.adb (Complete_Private_Subtype): If the full view is a task
or protected type with discriminants, do not constrain the
corresponding record type if the subtype declaration has no
discriminant constraints. This can be the case in source code, or in
the subtype declaration created to rename an actual type within an
instantiation.

From-SVN: r89670

19 years agosem_ch13.adb (Analyze_Attribute_Definition_Clause, [...]): enhance, document & limit...
Cyrille Comar [Wed, 27 Oct 2004 13:41:23 +0000 (15:41 +0200)]
sem_ch13.adb (Analyze_Attribute_Definition_Clause, [...]): enhance, document & limit detection of non-sharable internal pools.

2004-10-26  Cyrille Comar  <comar@act-europe.fr>

* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case
'Storage_Pool): enhance, document & limit detection of non-sharable
internal pools.

* impunit.adb: Make System.Pool_Global and System.Pool_Local visible.

* s-pooglo.ads: Add more documentation now that this pool is properly
documented.

From-SVN: r89669

19 years agos390.md ("*subdf3_cc"): Replaced plus by minus.
Andreas Krebbel [Wed, 27 Oct 2004 13:41:18 +0000 (13:41 +0000)]
s390.md ("*subdf3_cc"): Replaced plus by minus.

2004-10-27  Andreas Krebbel  <krebbel1@de.ibm.com>

* config/s390/s390.md ("*subdf3_cc"): Replaced plus by minus.

From-SVN: r89668

19 years agosem_ch12.adb (In_Main_Context): Predicate to determine whether the current instance...
Ed Schonberg [Wed, 27 Oct 2004 13:40:55 +0000 (15:40 +0200)]
sem_ch12.adb (In_Main_Context): Predicate to determine whether the current instance appears within a unit that...

2004-10-26  Ed Schonberg  <schonberg@gnat.com>
    Javier Miranda  <miranda@gnat.com>

* sem_ch12.adb (In_Main_Context): Predicate to determine whether the
current instance appears within a unit that is directly in the context
of the main unit.
Used to determine whether the body of the instance should be analyzed
immediately after its spec, to make its subprogram bodies available
for front-end inlining.
(Analyze_Formal_Array_Type): Cleanup condition that checks that range
constraint is not allowed on the component type (AARM 12.5.3(3))

From-SVN: r89667

19 years agosem_ch10.adb (Optional_Subunit): If file of expected subunit is empty, post message...
Ed Schonberg [Wed, 27 Oct 2004 13:40:29 +0000 (15:40 +0200)]
sem_ch10.adb (Optional_Subunit): If file of expected subunit is empty, post message on stub.

2004-10-26  Ed Schonberg  <schonberg@gnat.com>

* sem_ch10.adb (Optional_Subunit): If file of expected subunit is
empty, post message on stub.

From-SVN: r89666

19 years agosem_attr.adb (Resolve_Attribute, [...]): Apply proper accessibility check to prefix...
Ed Schonberg [Wed, 27 Oct 2004 13:40:08 +0000 (15:40 +0200)]
sem_attr.adb (Resolve_Attribute, [...]): Apply proper accessibility check to prefix that is a protected operation.

2004-10-26  Ed Schonberg  <schonberg@gnat.com>

* sem_attr.adb (Resolve_Attribute, case 'Access): Apply proper
accessibility check to prefix that is a protected operation.

From-SVN: r89665

19 years agos-bitops.adb (Bit_Eq): Remove redundant check.
Robert Dewar [Wed, 27 Oct 2004 13:39:44 +0000 (15:39 +0200)]
s-bitops.adb (Bit_Eq): Remove redundant check.

2004-10-26  Robert Dewar  <dewar@gnat.com>

* s-bitops.adb (Bit_Eq): Remove redundant check.

* s-bitops.ads: Minor comment updates
Change some occurrences of Address to System.Address

* s-carsi8.ads: Fix minor cut-and-paste error in comments

From-SVN: r89664

19 years agos-arit64.adb: (Le3): New function, used by Scaled_Divide
Robert Dewar [Wed, 27 Oct 2004 13:39:21 +0000 (15:39 +0200)]
s-arit64.adb: (Le3): New function, used by Scaled_Divide

2004-10-26  Robert Dewar  <dewar@gnat.com>

* s-arit64.adb: (Le3): New function, used by Scaled_Divide
(Sub3): New procedure, used by Scaled_Divide
(Scaled_Divide): Substantial rewrite, avoid duplicated code, and also
correct more than one instance of failure to propagate carries
correctly.
(Double_Divide): Handle overflow case of largest negative number
divided by minus one.

* s-arit64.ads (Double_Divide): Document that overflow can occur in
the case of a quotient value out of range.
Fix comments.

From-SVN: r89663

19 years agoprj-nmsc.adb (Language_Independent_Check): Do not forbid virtual extension of library...
Vincent Celier [Wed, 27 Oct 2004 13:38:58 +0000 (15:38 +0200)]
prj-nmsc.adb (Language_Independent_Check): Do not forbid virtual extension of library projects.

2004-10-26  Vincent Celier  <celier@gnat.com>

* prj-nmsc.adb (Language_Independent_Check): Do not forbid virtual
extension of library projects.

* prj-part.adb: If env var ADA_PROJECT_PATH is not defined, project
path defaults to ".:<prefix>/lib/gnat".
(Parse): For an extending all project, allow direct import of a project
that is virtually extended.

* prj-proc.adb (Imported_Or_Extended_Project_From): If a project with
the specified name is directly imported, return its ID. Otherwise, if
an extension of this project is imported, return the ID of the
extension.

From-SVN: r89662

19 years agoprj-env.adb: (Contains_ALI_Files): New Boolean function
Vincent Celier [Wed, 27 Oct 2004 13:38:32 +0000 (15:38 +0200)]
prj-env.adb: (Contains_ALI_Files): New Boolean function

2004-10-26  Vincent Celier  <celier@gnat.com>

* prj-env.adb: (Contains_ALI_Files): New Boolean function
(Ada_Objects_Path.Add): For a library project, add to the object path
the library directory only if there is no object directory or if the
library directory contains ALI files.
(Set_Ada_Paths.Add.Recursive_Add): Ditto

From-SVN: r89661

19 years agoFix email address in last entry.
Ulrich Weigand [Wed, 27 Oct 2004 13:37:20 +0000 (13:37 +0000)]
Fix email address in last entry.

From-SVN: r89660

19 years agore PR middle-end/14684 (-fprofile-use/-fprofile-generate failure because of coverage...
Andreas Krebbel [Wed, 27 Oct 2004 13:35:44 +0000 (13:35 +0000)]
re PR middle-end/14684 (-fprofile-use/-fprofile-generate failure because of coverage mismatch)

2004-10-27  Andreas Krebbel  <krebbel@de.ibm.com>
            patch originally created by Kelley Cook  <kcook@gcc.gnu.org>

PR middle-end/14684
* opts.c (OPT_fprofile_generate): Default to -funroll-loops
to match -fprofile-use.

Co-Authored-By: Kelley Cook <kcook@gcc.gnu.org>
From-SVN: r89659

19 years ago* config/rs6000/rs6000.c: Fix a comment typo.
Kazu Hirata [Wed, 27 Oct 2004 13:11:50 +0000 (13:11 +0000)]
* config/rs6000/rs6000.c: Fix a comment typo.

From-SVN: r89658

19 years agolib-xref.adb (Generate_Reference): Don't complain about reference to entry parameter...
Robert Dewar [Wed, 27 Oct 2004 13:05:51 +0000 (15:05 +0200)]
lib-xref.adb (Generate_Reference): Don't complain about reference to entry parameter if pragma Unreferenced set...

2004-10-26  Robert Dewar  <dewar@gnat.com>

* lib-xref.adb (Generate_Reference): Don't complain about reference to
entry parameter if pragma Unreferenced set, since we do not properly
handle the case of multiple parameters.

From-SVN: r89657

19 years agoinit.c (__gnat_error_handler): Instead of trying to read the memory before the faulti...
Pascal Obry [Wed, 27 Oct 2004 13:05:35 +0000 (15:05 +0200)]
init.c (__gnat_error_handler): Instead of trying to read the memory before the faulting page we properly test...

2004-10-26  Pascal Obry  <obry@gnat.com>

* init.c (__gnat_error_handler) [Win32]: Instead of trying to read the
memory before the faulting page we properly test the process read
access for this address using appropriate Win32 routine.
(HPUX sections): guard with "__hpux__" instead of "hpux".

From-SVN: r89656

19 years agoi-cpp.ads, i-cpp.adb: Change layout of VTable for new C++ ABI.
Matthew Gingell [Wed, 27 Oct 2004 13:05:18 +0000 (15:05 +0200)]
i-cpp.ads, i-cpp.adb: Change layout of VTable for new C++ ABI.

2004-10-26  Matthew Gingell  <gingell@gnat.com>

* i-cpp.ads, i-cpp.adb: Change layout of VTable for new C++ ABI.

From-SVN: r89655

19 years agog-os_lib.ads, [...] (Set_Executable, [...]): New subprograms.
Thomas Quinot [Wed, 27 Oct 2004 13:03:38 +0000 (15:03 +0200)]
g-os_lib.ads, [...] (Set_Executable, [...]): New subprograms.

2004-10-26  Thomas Quinot  <quinot@act-europe.fr>

* g-os_lib.ads, g-os_lib.adb (Set_Executable, Set_Writable,
Set_Read_Only): New subprograms.
These new routines allow the user to set or unset the Owner execute
and Owner write permission flags on a file.

* makegpr.adb, mlib.adb, mlib-prj.adb: Use
GNAT.OS_Lib.Set_Executable instead of rolling our own.

From-SVN: r89654

19 years agognat1drv.adb: Suppress calling the back end when Frontend_Layout_On_Target is true.
Gary Dismukes [Wed, 27 Oct 2004 13:02:23 +0000 (15:02 +0200)]
gnat1drv.adb: Suppress calling the back end when Frontend_Layout_On_Target is true.

2004-10-26  Gary Dismukes  <dismukes@gnat.com>

* gnat1drv.adb: Suppress calling the back end when
Frontend_Layout_On_Target is true.

From-SVN: r89653

19 years agoexp_dist.adb (Build_General_Calling_Stubs): New formal parameter RACW_Type, used...
Thomas Quinot [Wed, 27 Oct 2004 13:02:12 +0000 (15:02 +0200)]
exp_dist.adb (Build_General_Calling_Stubs): New formal parameter RACW_Type, used in the PolyORB version.

2004-10-26  Thomas Quinot  <quinot@act-europe.fr>

* exp_dist.adb (Build_General_Calling_Stubs): New formal parameter
RACW_Type, used in the PolyORB version.
Rename RCI_Info to RCI_Locator, for consistency between the PolyORB
version and the GARLIC version.

* snames.ads, snames.adb, s-parint.ads, s-parint.adb:
Rename RCI_Info to RCI_Locator for better consistency between the
GARLIC and PolyORB versions of the distributed systems annex.
(DSA_Implementation_Name): This enumeration lists the possible
implementations of the Partition Communication Subsystem for the
Distributed Systems Annex (DSA). The three available implementations
are the dummy stub implementation (No_DSA), and two versions based on
two different distribution runtime libraries: GARLIC and PolyORB. Both
the GARLIC PCS and the PolyORB PCS are part of the GLADE distribution
technology.
Change the literal GLADE_DSA to GARLIC_DSA to accurately describe
that organization.

* rtsfind.ads: Rename RCI_Info to RCI_Locator for better consistency
between the GARLIC and PolyORB versions of the distributed systems
annex.
Remove RE_Unbounded_Reclaim_Pool since it is unused.

From-SVN: r89652

19 years agoexp_ch6.adb (Expand_Actuals): If the actual for an in-out parameter is aliased and...
Ed Schonberg [Wed, 27 Oct 2004 13:01:55 +0000 (15:01 +0200)]
exp_ch6.adb (Expand_Actuals): If the actual for an in-out parameter is aliased and is a by_reference type...

2004-10-26  Ed Schonberg  <schonberg@gnat.com>
    Eric Botcazou  <ebotcazou@act-europe.fr>

* exp_ch6.adb (Expand_Actuals): If the actual for an in-out parameter
is aliased and is a by_reference type, do not pass by copy.
(Expand_N_Function_Call) <Rhs_Of_Assign_Or_Decl>: New function to
detect whether the call is in the right side of an assignment or
the expression of an object declaration.  Recurse on component
association within aggregates.
Call it in the condition that determines whether the temporary is
necessary for correct stack-checking.

From-SVN: r89651

19 years agoexp_ch4.adb (Expand_N_Op_Eq): Make sure we expand a loop for array compares if the...
Robert Dewar [Wed, 27 Oct 2004 13:01:38 +0000 (15:01 +0200)]
exp_ch4.adb (Expand_N_Op_Eq): Make sure we expand a loop for array compares if the component is atomic.

2004-10-26  Robert Dewar  <dewar@gnat.com>

* exp_ch4.adb (Expand_N_Op_Eq): Make sure we expand a loop for array
compares if the component is atomic.

* exp_ch5.adb (Expand_Assign_Array): Make sure we expand a loop for
array assignment if the component type is atomic.

From-SVN: r89650

19 years agoexp_aggr.adb (Safe_Component): An aggregate component that is an unchecked conversion...
Ed Schonberg [Wed, 27 Oct 2004 13:01:17 +0000 (15:01 +0200)]
exp_aggr.adb (Safe_Component): An aggregate component that is an unchecked conversion is safe for in-place use...

2004-10-26  Ed Schonberg  <schonberg@gnat.com>

* exp_aggr.adb (Safe_Component): An aggregate component that is an
unchecked conversion is safe for in-place use if the expression of the
conversion is safe.
(Expand_Array_Aggregate): An aggregate that initializes an allocator may
be expandable in place even if the aggregate does not come from source.
(Convert_Array_Aggr_In_Allocator): New procedure to initialize the
designated object of an allocator in place, rather than building it
first on the stack. The previous scheme forces a full copy of the array,
and may be altogether unsusable if the size of the array is too large
for stack allocation.

From-SVN: r89649

19 years agoeval_fat.adb (Eps_Model,Eps_Denorm): Remove, no longer used.
Geert Bosch [Wed, 27 Oct 2004 13:01:02 +0000 (15:01 +0200)]
eval_fat.adb (Eps_Model,Eps_Denorm): Remove, no longer used.

2004-10-26  Geert Bosch  <bosch@gnat.com>

* eval_fat.adb (Eps_Model,Eps_Denorm): Remove, no longer used.
(Succ): Re-implement using Scaling, Exponent and Ceiling attributes.
(Pred): Implement in terms of Succ.

From-SVN: r89648

19 years agodecl.c (gnat_to_gnu_field): Use the type of the inner object for a JM type only if...
Eric Botcazou [Wed, 27 Oct 2004 12:29:59 +0000 (14:29 +0200)]
decl.c (gnat_to_gnu_field): Use the type of the inner object for a JM type only if...

2004-10-26  Eric Botcazou  <ebotcazou@act-europe.fr>

* decl.c (gnat_to_gnu_field): Use the type of the inner object for a
JM type only if its size matches that of the wrapper.  When a size is
prescribed and the field is not aliased, remove the wrapper of a JM
type only if the size is not greater than that of the packed array.
(gnat_to_gnu_entity): Change the extension of packed array wrappers
from LJM to JM.

From-SVN: r89647

19 years agoclean.adb (Delete): Do not output warnings when in quiet output and not in verbose...
Vincent Celier [Wed, 27 Oct 2004 12:29:44 +0000 (14:29 +0200)]
clean.adb (Delete): Do not output warnings when in quiet output and not in verbose mode.

2004-10-26  Vincent Celier  <celier@gnat.com>

* clean.adb (Delete): Do not output warnings when in quiet output and
not in verbose mode.
(Force_Deletions): New Boolean flag, defaulted to False
(Delete): Only delete a file if it is writable, and when
Force_Deletions is True.
(Parse_Cmd_Line): New switch -f: set Force_Deletions to True
(Usage): Line for new switch -f
(Clean_Directory): Use GNAT.OS_Lib.Set_Writable instead of rolling our
own.

From-SVN: r89646

19 years agochecks.adb (Expr_Known_Valid): If floating-point validity checks are enabled...
Ed Schonberg [Wed, 27 Oct 2004 12:29:32 +0000 (14:29 +0200)]
checks.adb (Expr_Known_Valid): If floating-point validity checks are enabled...

2004-10-26  Ed Schonberg  <schonberg@gnat.com>

* checks.adb (Expr_Known_Valid): If floating-point validity checks are
enabled, check the result of unary and binary operations when the
expression is the right-hand side of an assignment.

From-SVN: r89645

19 years agoa-filico.ads, [...]: fix incorrect header.
Arnaud Charlet [Wed, 27 Oct 2004 12:29:19 +0000 (14:29 +0200)]
a-filico.ads, [...]: fix incorrect header.

* a-filico.ads, a-filico.adb: fix incorrect header.
* a-ststio.ads: Fix typo in identifier
* sem_ch4.adb: Minor reformatting.

From-SVN: r89644

19 years agoa-exexpr.adb (Setup_Key): Change initial value to 16#DEAD#...
Gary Dismukes [Wed, 27 Oct 2004 12:28:57 +0000 (14:28 +0200)]
a-exexpr.adb (Setup_Key): Change initial value to 16#DEAD#...

2004-10-26  Gary Dismukes  <dismukes@gnat.com>

* a-exexpr.adb (Setup_Key): Change initial value to 16#DEAD#, for
compatibility with type Unwind_Word on 16-bit targets such as AAMP.

From-SVN: r89643

19 years agoexpect.c, [...] (unix sections): Guard with "__unix__" instead of "unix".
Olivier Hainque [Wed, 27 Oct 2004 12:28:44 +0000 (14:28 +0200)]
expect.c, [...] (unix sections): Guard with "__unix__" instead of "unix".

2004-10-26  Olivier Hainque  <hainque@act-europe.fr>
    Nicolas Setton  <setton@act-europe.fr>

* expect.c, adaint.c, link.c, sysdep.c (unix sections): Guard with
"__unix__" instead of "unix".
The latter is implicitly defined by gcc3.2 but not by gcc >= 3.4, so the
sections were just mistakenly ignored. The former is
implicitely defined by gcc2.8, gcc3.2 and gcc3.4.
Update #ifdef preprocessor macro to detect the symbol __hpux__ instead
of hpux. This prevents an unwanted definition of the symbol
convert_addresses in adaint.o.

From-SVN: r89642

19 years agos-parame-mingw.adb (Default_Stack_Size): Add some comments.
Pascal Obry [Wed, 27 Oct 2004 12:28:25 +0000 (14:28 +0200)]
s-parame-mingw.adb (Default_Stack_Size): Add some comments.

2004-10-26  Pascal Obry  <obry@gnat.com>

* s-parame-mingw.adb (Default_Stack_Size): Add some comments.

* s-taprop-mingw.adb (Create_Task): Set initial stack size to 1024. On
Windows only the initial thread stack size can be set so it is good to
start we a low stack size.
The OS will adjust the size as needed.

From-SVN: r89641

19 years agos-parame-linux.adb (Minimum_Stack_Size): Adjust to return 12K instead of 8K...
Olivier Hainque [Wed, 27 Oct 2004 12:28:07 +0000 (14:28 +0200)]
s-parame-linux.adb (Minimum_Stack_Size): Adjust to return 12K instead of 8K...

2004-10-26  Olivier Hainque  <hainque@act-europe.fr>

* s-parame-linux.adb (Minimum_Stack_Size): Adjust to return 12K
instead of 8K, to reflect the real potential needs for stack-checking
in the ZCX case.

From-SVN: r89640

19 years agomlib-tgt-darwin.adb: New file.
Nicolas Setton [Wed, 27 Oct 2004 12:27:53 +0000 (14:27 +0200)]
mlib-tgt-darwin.adb: New file.

2004-10-26  Nicolas Setton  <setton@act-europe.fr>

* mlib-tgt-darwin.adb: New file.

* mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb,
mlib-tgt-hpux.adb, mlib-tgt-linux.adb, mlib-tgt-solaris.adb,
mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb,
mlib-tgt-mingw.adb, mlib-tgt-vxworks.adb (Archive_Indexer_Options): New
subprogram body.

* Makefile.in: Add support for building shared libraries under Darwin.
(EXTRA_GNATRTL_NONTASKING_OBJS, ppc-vxworks): Add s-vxwexc.o, containing
the low level EH init subprogram to be called from __gnat_initialize.

* mlib-tgt.ads, mlib-tgt.adb (Archive_Indexer_Options): New subprogram,
indicates which options to pass to the archive indexer.

* mlib-utl.adb: Add support for calling ranlib with additional
options. This is needed for instance under Mac OS X.
(Ranlib_Options): New global variable, used to store the potential
options to pass to ranlib.
(Ar): Use Ranlib_Options when spawning ranlib.
(Initialize): Set the value of ranlib option.

From-SVN: r89639

19 years ago2004-10-26 Vincent Celier <celier@gnat.com>
Vincent Celier [Wed, 27 Oct 2004 12:27:16 +0000 (14:27 +0200)]
2004-10-26  Vincent Celier  <celier@gnat.com>
    Thomas Quinot   <quinot@act-europe.fr>

* g-socthi-vms.adb, g-socthi-mingw.adb, g-socthi-vxworks.ads:
(C_Writev): Change MSG_Forced_Flags to Constants.MSG_Forced_Flags as
there is no use of GNAT.Sockets.Constants.
Remove remaining pragma Import for C_Write
Remove C_Read and C_Write from internal implementation unit
GNAT.Sockets.Thin, as their usage for sockets is non-portable (using
the read and write functions from the system runtime library is fine
on UNIX but won't work under Windows).

* g-socket.adb: (Abort_Selector): Use C_Send instead of C_Write.
(Check_Selector): Use C_Recv instead of C_Read.
Selectors are the GNAT.Sockets abstraction to perform a select()
call on a set of descriptors. To allow abortion of an ongoing
select operation, some data is written to a dedicated socket that
is always monitored.
Under Windows, the write and read library functions cannot operate
on sockets, so we need to use send and recv instead, which is portable
across all supported platforms.

* g-socthi.ads: Remove C_Read and C_Write from internal implementation
unit GNAT.Sockets.Thin, as their usage for sockets is non-portable
(using the read and write functions from the system runtime library is
fine on UNIX but won't work under Windows).

From-SVN: r89638

19 years agobasic_string.h (_M_replace_aux, [...]): Move out of line...
Paolo Carlini [Wed, 27 Oct 2004 12:02:37 +0000 (12:02 +0000)]
basic_string.h (_M_replace_aux, [...]): Move out of line...

2004-10-27  Paolo Carlini  <pcarlini@suse.de>

* include/bits/basic_string.h (_M_replace_aux, _M_replace_safe):
Move out of line...
* include/bits/basic_string.tcc: ... here.

From-SVN: r89637

19 years agolibffi-db.exp (load_gcc_lib): New function.
Richard Earnshaw [Wed, 27 Oct 2004 10:56:06 +0000 (10:56 +0000)]
libffi-db.exp (load_gcc_lib): New function.

* testsuite/lib/libffi-db.exp (load_gcc_lib): New function.
(libffi_exit): New function.
(libffi_init): Build the testglue wrapper if needed.

From-SVN: r89636

19 years agodirect2.c: Cope with different bison 'parse' or 'syntax' error messages.
Nathan Sidwell [Wed, 27 Oct 2004 10:20:55 +0000 (10:20 +0000)]
direct2.c: Cope with different bison 'parse' or 'syntax' error messages.

* gcc.dg/cpp/direct2.c: Cope with different bison 'parse' or
'syntax' error messages.
* gcc.dg/cpp/direct2s.c: Likewise.

From-SVN: r89635

19 years ago(DBX_OUTPUT_SOURCE_LINE): Increment line counter.
Zack Weinberg [Wed, 27 Oct 2004 10:06:27 +0000 (10:06 +0000)]
(DBX_OUTPUT_SOURCE_LINE): Increment line counter.

From-SVN: r89634

19 years agovarasm.c (default_stabs_asm_out_destructor): Mark symbol as unused.
Andreas Schwab [Wed, 27 Oct 2004 09:22:02 +0000 (09:22 +0000)]
varasm.c (default_stabs_asm_out_destructor): Mark symbol as unused.

* varasm.c (default_stabs_asm_out_destructor): Mark symbol as
unused.
(default_stabs_asm_out_constructor): Likewise.

From-SVN: r89633

19 years agoname-lookup.c (do_namespace_alias): Use FROB_CONTEXT.
Mark Mitchell [Wed, 27 Oct 2004 05:51:24 +0000 (05:51 +0000)]
name-lookup.c (do_namespace_alias): Use FROB_CONTEXT.

* name-lookup.c (do_namespace_alias): Use FROB_CONTEXT.
* search.c (current_scope): Fix prototype.

From-SVN: r89632

19 years agobtest-gcc.sh (TESTLOGS): Examine regressions in libstdc++, libffi, and libjava.
Geoffrey Keating [Wed, 27 Oct 2004 02:48:26 +0000 (02:48 +0000)]
btest-gcc.sh (TESTLOGS): Examine regressions in libstdc++, libffi, and libjava.

* btest-gcc.sh (TESTLOGS): Examine regressions in libstdc++,
libffi, and libjava.

From-SVN: r89629

19 years agore PR libgcj/18104 (Incorrect CLASSPATH separator in libjava breaks bootstrap)
Aaron W. LaFramboise [Wed, 27 Oct 2004 02:43:43 +0000 (20:43 -0600)]
re PR libgcj/18104 (Incorrect CLASSPATH separator in libjava breaks bootstrap)

PR libgcj/18104
* Makefile.am (CLASSPATH_SEPARATOR): Use instead of a
colon.
* Makefile.in: Regenerate.
* configure: Regenerate.
* configure.ac (CLASSPATH_SEPARATOR): Define.
* gcj/Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
* testsuite/lib/libjava.exp (libjava_arguments): Fix
CLASSPATH separator handling for Windows.
----------------------------------------------------------------------

From-SVN: r89628

19 years agore PR c++/18093 (bogus conflict in namespace aliasing)
Mark Mitchell [Wed, 27 Oct 2004 02:23:16 +0000 (02:23 +0000)]
re PR c++/18093 (bogus conflict in namespace aliasing)

PR c++/18093
* search.c (current_scope): Return the innermost non-block scope,
not the innermost non-block, non-namespace scope.
(at_namespace_scope_p): Adjust accordingly.
(dfs_accessible_post): Do not pass namespaces to is_friend.
(dfs_walk_once_accessible_r): Likewise.
* decl.c (grokvardecl): Adjust call to current_scope.
(build_enumerator): Likewise.
* parser.c (cp_parser_using_declaration): Likewise.
(cp_parser_direct_declarator): Use at_namespace_scope_p instead of
current_scope.
(cp_parser_class_head): Adjust call to current_scope.
* name-lookup.c (do_namespace_alias): Set the DECL_CONTEXT for the
alias.

PR c++/18020
* pt.c (tusbst_copy_and_build): Resolve enumeration constants to
their underlying values.

PR c++/18161
* typeck.c (build_binary_op): Honor build_type, even when in a
template.

PR c++/18093
* g++.dg/lookup/ns2.C: New test.

PR c++/18020
* g++.dg/template/enum4.C: New test.

PR c++/18161
* g++.dg/template/expr1.C: New test.

From-SVN: r89627

19 years agoFix for PR 18010, copy epilogue unwind info when copying epilogue insns.
James E Wilson [Wed, 27 Oct 2004 01:36:11 +0000 (01:36 +0000)]
Fix for PR 18010, copy epilogue unwind info when copying epilogue insns.

* emit-rtl.c (emit_copy_of_insn_after): Copy RTX_FRAME_RELATED_P.

From-SVN: r89624

19 years agodbxout.c: Include obstack.h.
Zack Weinberg [Wed, 27 Oct 2004 01:29:42 +0000 (01:29 +0000)]
dbxout.c: Include obstack.h.

* dbxout.c: Include obstack.h.
(ASM_STABS_OP): Take XCOFF_DEBUGGING_INFO into account in
default definition.
(ASM_STABD_OP, NO_DBX_MAIN_SOURCE_DIRECTORY, DBX_CONTIN_CHAR):
Default-define here.
(DBX_CONTIN_LENGTH): Move definition with others.
(DBX_FINISH_STABS): New target macro.
(current_sym_code, current_sym_value, current_sym_addr)
(current_sym_nchars, CHARS, dbxout_continue)
(print_int_cst_octal, print_octal, print_wide_int)
(dbxout_prepare_symbol, dbxout_finish_symbol): Delete.
(stabstr_ob, stabstr_last_contin_point): New variables.
(NUMBER_FMT_LOOP): New improper macro.
(dbxout_int, dbxout_stab_value_zero, dbxout_stab_value_label)
(dbxout_stab_value_label_diff, dbxout_stab_value_internal_label)
(dbxout_stab_value_internal_label_diff, dbxout_stabd)
(dbxout_begin_stabn, dbxout_begin_stabn_sline)
(dbxout_begin_simple_stabs, dbxout_begin_simple_stabs_desc)
(dbxout_begin_complex_stabs, dbxout_finish_complex_stabs)
(stabstr_C, stabstr_S, stabstr_I, stabstr_D, stabstr_U, stabstr_O)
(stabstr_continue, DECL_ACCESSIBILITY_CHAR)
New functions and/or proper function-like macros.
(CONTIN): Use stabstr_continue, unconditionally.
(get_lang_number): Define unconditionally, with ATTRIBUTE_UNUSED.
(dbxout_init): Initialize stabstr_ob.  Check
NO_DBX_MAIN_SOURCE_DIRECTORY.  Only write out the Ltext label
if it was used.  Use the new interfaces.
(dbxout_source_file): Remove file argument; always write to
asm_out_file.  Use the new interfaces.
(dbxout_type_method_1): Remove second argument which is always
DECL_ASSEMBLER_NAME of the first argument.  Use the new interfaces.
(dbxout_type_methods): Remove write-only variables.  Use the
new interfaces.
(dbxout_parms): Refactor to remove code duplicated in each of
several successive if-else-if blocks.  Use the new interfaces.
(dbxout_function_end, emit_bincl_stab, dbxout_end_source_file)
(dbxout_source_line, dbxout_finish, dbxout_type_index)
(dbxout_type_fields, dbxout_range_type, dbxout_type, dbxout_type_name)
(dbxout_class_name_qualifiers, dbxout_symbol, dbxout_symbol_location)
(dbxout_symbol_name, dbxout_reg_parms, dbxout_args)
(dbx_output_lbrac, dbx_output_rbrac, dbxout_block):
Use the new interfaces.
* Makefile.in (dbxout.o): Update dependencies.

* defaults.h: Don't define ASM_STABD_OP.
* output.h: Prototype new dbxout_* interfaces.
* system.h: Poison DBX_OUTPUT_GCC_MARKER and DBX_FINISH_SYMBOL.
* varasm.c: Don't define ASM_STABS_OP.
(default_stabs_asm_out_constructor, default_stabs_asm_out_destructor):
Use the new dbxout.c interfaces.  Call sorry if neither
DBX_DEBUGGING_INFO nor XCOFF_DEBUGGING_INFO is defined.

* xcoffout.h: Don't define ASM_STABS_OP.
(DBX_FINISH_SYMBOL): Rewrite and rename DBX_FINISH_STABS.
(DBX_OUTPUT_MAIN_SOURCE_DIRECTORY, DBX_OUTPUT_GCC_MARKER): Delete.
(NO_DBX_MAIN_SOURCE_DIRECTORY, NO_DBX_GCC_MARKER): Define.
(DBX_OUTPUT_MAIN_SOURCE_FILE_END): Change bare block to
do { ... } while (0) idiom.

* config/alpha/alpha.c (num_source_filenames): Export.
* config/alpha/alpha.h (num_source_filenames): Declare.
(DBX_OUTPUT_SOURCE_LINE): Use new interfaces.
(SDB_OUTPUT_SOURCE_LINE): Add missing newline.
* config/m32r/m32r.h (DBX_OUTPUT_SOURCE_LINE): Use new interfaces.
Always use .debugsym.  Update commentary.
* config/mips/mips.h (DBX_OUTPUT_SOURCE_LINE): Use new interfaces.
(SDB_OUTPUT_SOURCE_LINE): Add missing newline.
* config/rs6000/linux64.h (DBX_OUTPUT_SOURCE_LINE, DBX_OUTPUT_BRAC):
Use new interfaces.
* config/rs6000/rs6000.c: If TARGET_MACHO, include gstab.h.
(macho_branch_islands): Use new interfaces.

* doc/tm.texi: Update.

From-SVN: r89623

19 years agobasic_string.h (append(const basic_string&), [...]): Move out of line...
Paolo Carlini [Wed, 27 Oct 2004 01:02:47 +0000 (01:02 +0000)]
basic_string.h (append(const basic_string&), [...]): Move out of line...

2004-10-26  Paolo Carlini  <pcarlini@suse.de>

* include/bits/basic_string.h (append(const basic_string&),
append(size_type, _CharT)): Move out of line...
* include/bits/basic_string.tcc: ... here.

From-SVN: r89622

19 years agoDaily bump.
GCC Administrator [Wed, 27 Oct 2004 00:16:16 +0000 (00:16 +0000)]
Daily bump.

[[Split portion of a mixed commit.]]

From-SVN: r89618.2