OSDN Git Service

13 years ago2008-03-27 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 27 Mar 2008 17:09:54 +0000 (17:09 +0000)]
2008-03-27  Richard Guenther  <rguenther@suse.de>

PR middle-end/35716
* fold-const.c (fold_comparison): Restrict distinct decl
comparison folding to VAR_DECLs and PARM_DECLs.  Do not
solely rely on operand_equal_p.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133647 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-27 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 27 Mar 2008 16:34:55 +0000 (16:34 +0000)]
2008-03-27  Richard Guenther  <rguenther@suse.de>

PR c/32511
* c-common.c (handle_weak_attribute): Reject combination of
weak and inline.

* gcc.dg/attr-weak-1.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133646 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-27 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 27 Mar 2008 16:32:28 +0000 (16:32 +0000)]
2008-03-27  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/32810
* tree-ssa-ccp.c (get_symbol_constant_value): Strip useless
conversions from DECL_INITIAL.
(fold_const_aggregate_ref): Likewise from constructor elements.

* gcc.dg/tree-ssa/ssa-ccp-18.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133645 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-27 Douglas Gregor <doug.gregor@gmail.com>
dgregor [Thu, 27 Mar 2008 14:53:57 +0000 (14:53 +0000)]
2008-03-27  Douglas Gregor  <doug.gregor@gmail.com>

PR obj-c++/35704
* typeck.c (build_x_compound_expr): Use cp_build_compound_expr.
(build_compound_expr): New, for compatibility with C
(cp_build_compound_expr): Renamed from build_compound_expr.
(build_c_cast): New, for compatibility with C build_c_cast.
(cp_build_c_cast): Renamed from build_c_cast.
* init.c (build_vec_delete_1): Fix calls to build_compound_expr.
* decl.c (cxx_maybe_build_cleanup): Ditto.
* cp-tree.h (build_compound_expr): Add C-compatibile prototype.
(cp_build_compound_expr): Renamed from build_compound_expr.
(build_c_cast): Add C-compatible prototype.
(cp_build_c_cast): Renamed from build_c_cast.
* typeck2.c (build_functional_cast): Use cp_build_c_cast.
* parser.c (cp_parser_cast_expression): Fix call to build_c_cast.

2008-03-27  Douglas Gregor  <doug.gregor@gmail.com>

PR obj-c++/35704
* objc-act.c (objc_build_component_ref): Fix call to
(objc_generate_cxx_ctor_or_dtor): Fix call to

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133643 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-27 Douglas Gregor <doug.gregor@gmail.com>
dgregor [Thu, 27 Mar 2008 14:31:47 +0000 (14:31 +0000)]
2008-03-27  Douglas Gregor  <doug.gregor@gmail.com>

* pt.c (tsubst_copy) <case SIZEOF_EXPR>: Cope with
tsubst_pack_expansion returning a pack expansion, or a TREE_VEC
ending in a pack expansion, both of which can occur when
substituting into a nested template.
(tsubst_copy_and_build) <case SIZEOF_EXPR>: When we're
instantiating the sizeof...(X) form, make tsubst_copy do the work.
* parser.c (cp_parser_template_parameter): Deal with unnamed
non-type template parameter packs identified by pack expansions in
the parameter type.

2008-03-27  Douglas Gregor  <doug.gregor@gmail.com>

       * g++.dg/cpp0x/variadic91.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133642 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-27 Paolo Bonzini <bonzini@gnu.org>
bonzini [Thu, 27 Mar 2008 13:40:08 +0000 (13:40 +0000)]
2008-03-27  Paolo Bonzini  <bonzini@gnu.org>

* configure.ac (frags): Don't set, use frag instead.
(PICFLAG): Set here and substitute.
* Makefile.in (PICFLAG): Substitute from autoconf.
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133639 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-27 Zdenek Dvorak <ook@ucw.cz>
rguenth [Thu, 27 Mar 2008 10:25:36 +0000 (10:25 +0000)]
2008-03-27  Zdenek Dvorak  <ook@ucw.cz>

* tree-affine.h (aff_combination_expand): Declare.
(get_inner_reference_aff): Likewise.
* tree-affine.c (aff_combination_expand): Split out from
(get_inner_reference_aff): New function.
* tree-parloops.c (loop_parallel_p): Free vectorizer info.
        * tree-ssa-loop-im.c: Include tree-affine.h and pointer-set.h.
        (struct lim_aux_data): sm_done field removed.
        (mem_ref_loc_p, mem_ref_locs_p): New types.
        (struct mem_ref): Added id, stored, accesses_in_loop,
        indep_loop, dep_loop, indep_ref, dep_ref fields.
        Removed is_stored, locs and next fields.
        (memory_accesses): New variable.
        (movement_possibility): Do not allow moving statements
        that store to memory.
        (outermost_indep_loop, simple_mem_ref_in_stmt, mem_ref_in_stmt):
        New functions.
        (determine_max_movement): For statements with memory references,
        find the outermost loop in that the reference is independent.
        (move_computations_stmt): Mark the virtual operands for
        (memref_free, mem_ref_alloc, mem_ref_locs_alloc, mark_ref_stored,
        gather_mem_refs_stmt, gather_mem_refs_in_loops, vtoe_hash, vtoe_eq,
        vtoe_free, record_vop_access, get_vop_accesses, get_vop_stores,
        add_vop_ref_mapping, create_vop_ref_mapping_loop,
        create_vop_ref_mapping, analyze_memory_references,
        cannot_overlap_p, mem_refs_may_alias_p, rewrite_mem_ref_loc,
        get_all_locs_in_loop, ref_always_accessed_p,
        refs_independent_p, record_indep_loop, ref_indep_loop_p_1,
        ref_indep_loop_p, can_sm_ref_p, find_refs_for_sm,
        store_motion_loop, store_motion): New functions.
        (struct vop_to_refs_elt): New type.
        (record_mem_ref_loc, free_mem_ref_locs, rewrite_mem_refs,
        memref_hash, memref_eq, hoist_memory_references): Rewritten.
        (schedule_sm): Replaced by...
        (execute_sm): ... this.
        (determine_lsm_ref, hoist_memory_references,
        loop_suitable_for_sm, gather_mem_refs_stmt, gather_mem_refs,
        find_more_ref_vops, free_mem_ref, free_mem_refs,
        determine_lsm_loop, determine_lsm): Removed.
        (tree_ssa_lim_finalize): Free data structures used by store
        (tree_ssa_lim): Call analyze_memory_references.  Use
        store_motion instead of determine_lsm.

* gcc.dg/tree-ssa/loop-32.c: New testcase.
* gcc.dg/tree-ssa/loop-33.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133637 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-27 Paolo Bonzini <bonzini@gnu.org>
bonzini [Thu, 27 Mar 2008 10:04:08 +0000 (10:04 +0000)]
2008-03-27  Paolo Bonzini  <bonzini@gnu.org>

* config.cc (m68hc11, m6811, m68hc12, m6812): Add usegas.h,
rename tmake_file to m68hc11/t-m68hc11.
(mcore): Set inhibit_libc to true.
* config.host (alpha*-dec-*vms*): Set extra_programs.
(interix3*): Don't use host_xmake_file.
* configure.ac: Let config.gcc override inhibit_libc.
* configure: Regenerate.

* config/alpha/x-vms (EXTRA_PROGRAMS): Remove.
* config/x-interix: Remove.

* config/t-openbsd-thread: Remove commented out lines.

* config/m68hc11/t-m68hc11-gas: Rename to...
* config/m68hc11/t-m68hc11: ... this.  Remove T_CPPFLAGS.

* config/mcore/t-mcore: Remove T_CFLAGS.
* config/mcore/t-mcore-pe: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133636 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoconfig:
bonzini [Thu, 27 Mar 2008 09:46:19 +0000 (09:46 +0000)]
2008-03-27  Paolo Bonzini  <bonzini@gnu.org>

* extensions.m4: New.

2008-03-27  Paolo Bonzini  <bonzini@gnu.org>

* configure.ac: Replace custom __GNU_SOURCE test with
* aclocal.m4: Regenerate.
* configure: Regenerate.
* config.in: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133635 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-27 Paolo Bonzini <bonzini@gnu.org>
bonzini [Thu, 27 Mar 2008 09:35:02 +0000 (09:35 +0000)]
2008-03-27  Paolo Bonzini  <bonzini@gnu.org>

* Makefile.tpl (PICFLAG, PICFLAG_FOR_TARGET): Remove.
* Makefile.in: Regenerate.

2008-03-27  Paolo Bonzini  <bonzini@gnu.org>

* mh-armpic: Remove.
* mh-i370pic: Remove.
* mh-m68kpic: Remove.
* mh-ppcpic: Remove.
* mh-sparcpic: Remove.
* mh-ia64pic: Remove.
* mh-papic: Remove.
* mh-s390pic: Remove.
* mh-x86pic: Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133634 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-27 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 27 Mar 2008 09:17:43 +0000 (09:17 +0000)]
2008-03-27  Richard Guenther  <rguenther@suse.de>

* fold-const.c (target.h): Include.
(fold_comparison): Fold comparison of addresses of decls
that bind locally or of constants.  Consolidate address folding code.
* tree-vrp.c (operand_less_p): Deal with non-INTEGER_CST
results from fold_binary_to_constant.
(compare_values_warnv): Likewise.

* gcc.dg/fold-addr-1.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133632 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-27 Andrew Pinski <pinskia@gmail.com>
pinskia [Thu, 27 Mar 2008 08:55:50 +0000 (08:55 +0000)]
2008-03-27  Andrew Pinski  <pinskia@gmail.com>

        PR middle-end/35429
        * fold-const.c (fold_truthop): Check for integeral types when folding
        a == 0 && b == 0 and a != 0 || b != 0 .

2008-03-27  Andrew Pinski  <pinskia@gmail.com>

        PR middle-end/35429
        * gcc.c-torture/compile/complex-5.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133631 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Thu, 27 Mar 2008 05:30:18 +0000 (05:30 +0000)]
2008-03-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

* io/unix.c (fd_close):  Do not close STDIN.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133630 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoDaily bump.
gccadmin [Thu, 27 Mar 2008 00:17:16 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133628 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * tree.c (get_unwidened): Remove code fiddling with COMPONENT_REF.
ebotcazou [Thu, 27 Mar 2008 00:09:30 +0000 (00:09 +0000)]
* tree.c (get_unwidened): Remove code fiddling with COMPONENT_REF.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133624 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * src/sh/sysv.S: Add .note.GNU-stack on Linux.
kkojima [Thu, 27 Mar 2008 00:07:40 +0000 (00:07 +0000)]
* src/sh/sysv.S: Add .note.GNU-stack on Linux.
* src/sh64/sysv.S: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133623 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Wed, 26 Mar 2008 22:29:13 +0000 (22:29 +0000)]
2008-03-26  Benjamin Kosnik  <bkoz@redhat.com>

* testsuite/util/testsuite_abi.h: Remove symbol_objects,
symbol_names typedefs.
* testsuite/util/testsuite_abi.cc (compare_symbols): Correct check
for long double compatiblity symbols, simplify data structures used.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133621 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoJakub Staszak <kuba@et.pl>
kuba [Wed, 26 Mar 2008 22:13:26 +0000 (22:13 +0000)]
Jakub Staszak  <kuba@et.pl>

        * MAINTAINERS (Write After Approval): Add myself.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133620 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * gcc.dg/uninit-16.c (decode_reloc): Mark static.
ghazi [Wed, 26 Mar 2008 21:37:03 +0000 (21:37 +0000)]
* gcc.dg/uninit-16.c (decode_reloc): Mark static.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133618 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/35546
jakub [Wed, 26 Mar 2008 20:34:14 +0000 (20:34 +0000)]
PR c++/35546
* pt.c (apply_late_template_attributes): Don't call tsubst on
first attribute argument if it is IDENTIFIER_NODE.

* g++.dg/ext/attrib33.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133615 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * doc/invoke.texi: Fix use of @item vs. @itemx.
schwab [Wed, 26 Mar 2008 20:14:54 +0000 (20:14 +0000)]
* doc/invoke.texi: Fix use of @item vs. @itemx.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133614 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * Makefile.in (build/gensupport.o, build/print-rtl.o,
tromey [Wed, 26 Mar 2008 17:54:53 +0000 (17:54 +0000)]
* Makefile.in (build/gensupport.o, build/print-rtl.o,
build/read-rtl.o, build/rtl.o, build/gencondmd.o, build/genattr.o,
build/genattrtab.o, build/genautomata.o, build/gencheck.o,
build/gencodes.o, build/genconditions.o, build/genconfig.o,
build/genconstants.o, build/genemit.o, build/genextract.o,
build/genflags.o, build/genmddeps.o, build/genopinit.o,
build/genoutput.o, build/genpeep.o, build/genrecog.o): Depend on

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133612 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 26 Mar 2008 15:07:27 +0000 (15:07 +0000)]
2008-03-26  Richard Guenther  <rguenther@suse.de>

        2008-03-26  Richard Guenther  <rguenther@suse.de>

* fold-const.c (target.h): Include.
(fold_comparison): Fold comparison of addresses of two decls
that bind locally.  Consolidate address folding code.

* gcc.dg/fold-addr-1.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133608 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * builtins.c (expand_builtin_pow, fold_builtin_cabs,
ghazi [Wed, 26 Mar 2008 15:04:44 +0000 (15:04 +0000)]
* builtins.c (expand_builtin_pow, fold_builtin_cabs,
fold_builtin_sqrt, fold_builtin_cbrt, fold_builtin_logarithm,
fold_builtin_hypot, fold_builtin_pow): Remove uses of dconst3,
dconstsqrt2, dconstthird, dconste and/or dconst10.
* config/i386/i386.c (ix86_emit_swsqrtsf): Likewise.
* emit-rtl.c (dconst3, dconst10, dconstm2, dconstthird,
dconstsqrt2, dconste): Delete.
(init_emit_once): Likewise.  Simplify initializing dconstm1.
Constify variable.
* real.c (get_real_const): New.
* real.h (dconst3, dconst10, dconstm2, dconstthird,
dconstsqrt2, dconste): Delete.
(real_value_const, get_real_const): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133607 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 H.J. Lu <hongjiu.lu@intel.com>
hjl [Wed, 26 Mar 2008 13:30:18 +0000 (13:30 +0000)]
2008-03-26  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/cygming.h (BIGGEST_ALIGNMENT): Removed.

* config/i386/i386.c (ix86_function_arg_boundary): Check
BIGGEST_ALIGNMENT instead of 128.
(setup_incoming_varargs_64): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133605 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * Makefile.in (DEPFILES): Add missing '/'.
tromey [Wed, 26 Mar 2008 13:18:34 +0000 (13:18 +0000)]
* Makefile.in (DEPFILES): Add missing '/'.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133604 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * gcc.target/i386/sse-13.c: Include <mm_malloc.h>
uros [Wed, 26 Mar 2008 13:08:08 +0000 (13:08 +0000)]
    * gcc.target/i386/sse-13.c: Include <mm_malloc.h>
        before redefinitions of extern and __inline.
        * gcc.target/i386/sse-13.c: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133602 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago PR c++/35332
jakub [Wed, 26 Mar 2008 13:03:30 +0000 (13:03 +0000)]
PR c++/35332
* error.c (dump_expr): Pass {,UN}ORDERED_EXPR, UN{LT,LE,GT,GE,EQ}_EXPR
and LTGT_EXPR to pp_expression.

* g++.dg/other/error27.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133600 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 26 Mar 2008 12:37:29 +0000 (12:37 +0000)]
2008-03-26  Richard Guenther  <rguenther@suse.de>

* fold-const.c (target.h): Include.
(fold_comparison): Fold comparison of addresses of two decls
that bind locally.  Consolidate address folding code.

* gcc.dg/fold-addr-1.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133599 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoPR target/31232
nickc [Wed, 26 Mar 2008 12:32:22 +0000 (12:32 +0000)]
PR target/31232
   * config/stormy16/stormy16.c (xstormy16_legitimate_address_p): Do
   not allow INT+INT as a legitimate addressing mode.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133598 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 26 Mar 2008 11:09:43 +0000 (11:09 +0000)]
2008-03-26  Richard Guenther  <rguenther@suse.de>

* tree-flow.h (widen_bitfield): Remove declaration.
* tree-ssa-ccp.c (visit_assignment): Remove unneeded code.
(widen_bitfield): Remove function.
* tree-ssa-dom.c (record_equivalences_from_stmt): Remove unneeded

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133597 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 26 Mar 2008 11:05:54 +0000 (11:05 +0000)]
2008-03-26  Richard Guenther  <rguenther@suse.de>

* gcc.dg/tree-ssa/20030731-2.c: Scan dce1 dump.
* gcc.dg/tree-ssa/20030917-1.c: Scan optimized dump.
* gcc.dg/tree-ssa/20030917-3.c: Scan ccp1 dump.
* gcc.dg/tree-ssa/20040721-1.c: Test linking, do not disable DOM.
* gcc.dg/tree-ssa/pr21574.c: Scan the fre dump.
* gcc.dg/tree-ssa/ssa-ccp-1.c: Scan ccp1 dump.
* gcc.dg/tree-ssa/ssa-ccp-3.c: Scan ccp2 dump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133596 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * adaint.c: Fix warnings.
charlet [Wed, 26 Mar 2008 11:05:34 +0000 (11:05 +0000)]
* adaint.c: Fix warnings.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133595 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Daniel Jacobowitz <dan@debian.org>
doko [Wed, 26 Mar 2008 08:24:42 +0000 (08:24 +0000)]
2008-03-26  Daniel Jacobowitz  <dan@debian.org>

        * src/arm/sysv.S: Fix ARM comment marker.

2008-03-26  Jakub Jelinek  <jakub@redhat.com>

        * src/alpha/osf.S: Add .note.GNU-stack on Linux.
        * src/s390/sysv.S: Likewise.
        * src/powerpc/ppc_closure.S: Likewise.
        * src/powerpc/sysv.S: Likewise.
        * src/x86/unix64.S: Likewise.
        * src/x86/sysv.S: Likewise.
        * src/sparc/v8.S: Likewise.
        * src/sparc/v9.S: Likewise.
        * src/m68k/sysv.S: Likewise.
        * src/arm/sysv.S: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133594 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoNew tests
charlet [Wed, 26 Mar 2008 08:07:07 +0000 (08:07 +0000)]
New tests

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133593 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * g-dirope.ads, g-dirope.adb: (Dir_Type_Value): Moved to spec.
charlet [Wed, 26 Mar 2008 07:56:12 +0000 (07:56 +0000)]
* g-dirope.ads, g-dirope.adb: (Dir_Type_Value): Moved to spec.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133592 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * a-witeio.adb: Fix problem with Current_Output (introduce Self).
charlet [Wed, 26 Mar 2008 07:54:59 +0000 (07:54 +0000)]
* a-witeio.adb: Fix problem with Current_Output (introduce Self).
Fix problem of status check for null file

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133591 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * s-proinf-irix-athread.ads, s-vxwork-mips.ads,
charlet [Wed, 26 Mar 2008 07:53:37 +0000 (07:53 +0000)]
* s-proinf-irix-athread.ads, s-vxwork-mips.ads,
s-traces.ads, s-vxwork-arm.ads, s-vxwork-ppc.ads, s-vxwork-sparcv9.ads,
s-tasinf-mingw.ads, s-tasinf-linux.ads, s-tasdeb.ads, mlib-tgt.ads,
i-cstrin.ads, uintp.adb, g-catiio.adb, s-vmexta.ads,
s-trafor-default.ads, s-vxwork-m68k.ads: Minor reformatting. Update

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133590 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoResync.
charlet [Wed, 26 Mar 2008 07:46:50 +0000 (07:46 +0000)]

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133589 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Robert Dewar <dewar@adacore.com>
charlet [Wed, 26 Mar 2008 07:44:09 +0000 (07:44 +0000)]
2008-03-26  Robert Dewar  <dewar@adacore.com>

* gnat_ugn.texi: Add documentation for -gnatw.w/-gnatw.W
Add description for the new gnatstub option '--header-file'
clarification of -gnatwz/-gnatwZ
Add a "Irix-Specific Considerations" section to document the need to
set LD_LIBRARY_PATH when using the default shared runtime library.
Added documentation for both gcov and gprof.

* gnat_rm.texi: Document that pragma Compile_Time_Warning generates
messages that are not suppressed when clients are compiled.
Add documentation of s-pooglo s-pooloc
Document the new GNAT.Serial_Communications API.
Add documentation for 'Old attribute
Add description of pragma Optimize_Alignment

* ug_words: Add entries for -gnatw.w -gnatw.W

* usage.adb: Add line for -gnatw.w (warn on warnings off)

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133588 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Robert Dewar <dewar@adacore.com>
charlet [Wed, 26 Mar 2008 07:43:59 +0000 (07:43 +0000)]
2008-03-26  Robert Dewar  <dewar@adacore.com>

* tbuild.ads, tbuild.adb, trans.c, sprint.adb, exp_prag.adb, decl.c,
par-ch2.adb, sem_elab.adb, sem_util.ads (N_Pragma): Chars field
removed, use Chars (Pragma_Identifier (..  instead, adjustments
throughout to accomodate this change.

* s-pooglo.ads, s-pooloc.ads: Minor comment updates

* exp_dbug.adb: Use Sem_Util.Set_Debug_Info_Needed (not

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133587 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Tristan Gingold <gingold@adacore.com>
charlet [Wed, 26 Mar 2008 07:43:45 +0000 (07:43 +0000)]
2008-03-26  Tristan Gingold  <gingold@adacore.com>

* init.c: Do not adjust pc for HPARITH on alpha/vms.

2008-03-26  Robert Dewar  <dewar@adacore.com>

* lib-xref.adb: (OK_To_Set_Reference): New function
(Generate_Reference): Don't set referenced from occurrence in Warnings,
Unmodified, or Unreferenced pragma

2008-03-26  Robert Dewar  <dewar@adacore.com>

* alloc.ads: Add entries for Warnings_Off_Pragmas table

2008-03-26  GNAT Script  <nobody@adacore.com>

* Make-lang.in: Makefile automatically updated

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133586 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Robert Dewar <dewar@adacore.com>
charlet [Wed, 26 Mar 2008 07:43:27 +0000 (07:43 +0000)]
2008-03-26  Robert Dewar  <dewar@adacore.com>

* back_end.adb, back_end.ads: Minor reformatting

* bindgen.adb: Minor clarification of comments

* fname.ads: Minor comment fixes

* g-altive.ads, g-catiio.ads, g-trasym.ads, prj.ads,
prj-nmsc.adb, sem_aggr.adb: Minor reformatting

* xeinfo.adb, xnmake.adb, xsinfo.adb, xtreeprs.adb,
xsnames.adb: Remove warnings off pragma no longer needed

* a-catizo.ads, a-calari.ads, a-calfor.adb,
a-calfor.ads: Fix header.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133585 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Robert Dewar <dewar@adacore.com>
charlet [Wed, 26 Mar 2008 07:43:18 +0000 (07:43 +0000)]
2008-03-26  Robert Dewar  <dewar@adacore.com>

* g-byorma.adb (Read_BOM): Reorder tests so that UTF_32 is recognized

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133584 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Matthew Heaney <heaney@adacore.com>
charlet [Wed, 26 Mar 2008 07:43:07 +0000 (07:43 +0000)]
2008-03-26  Matthew Heaney  <heaney@adacore.com>

* a-ciorse.ads, a-cidlli.ads, a-cdlili.ads, a-cihase.ads, a-cohase.ads,
a-ciorma.ads, a-coorma.ads, a-ciormu.ads, a-coormu.ads, a-coorse.ads:
Marked with clauses as private, and controlled operations as overriding

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133582 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Vincent Celier <celier@adacore.com>
charlet [Wed, 26 Mar 2008 07:42:56 +0000 (07:42 +0000)]
2008-03-26  Vincent Celier  <celier@adacore.com>

* a-direct.adb (Start_Search): Raise Use_Error if the directory is not

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133581 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Robert Dewar <dewar@adacore.com>
charlet [Wed, 26 Mar 2008 07:42:47 +0000 (07:42 +0000)]
2008-03-26  Robert Dewar  <dewar@adacore.com>

* sem_warn.ads, sem_warn.adb (Warnings_Off_Pragmas): New table
(Initialize): New procedure
(Output_Warnings_Off_Warnings): New procedure
(Check_References): Suppress certain msgs if Is_Trivial_Subprogram
(Output_Non_Modifed_In_Out_Warnings): Ditto
(Warn_On_Unreferenced_Entity): Ditto

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133580 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Robert Dewar <dewar@adacore.com>
charlet [Wed, 26 Mar 2008 07:42:37 +0000 (07:42 +0000)]
2008-03-26  Robert Dewar  <dewar@adacore.com>

* sem_res.adb (Check_Infinite_Recursion): Diagnose definite infinite
recursion and raise SE directly.
(Resolve_Actuals): Reset Never_Set_In_Source if warnings off is
set for formal type for IN mode parameter.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133579 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Ed Schonberg <schonberg@adacore.com>
charlet [Wed, 26 Mar 2008 07:42:25 +0000 (07:42 +0000)]
2008-03-26  Ed Schonberg  <schonberg@adacore.com>

* sem_ch7.adb (Install_Parent_Private_Declarations): If the private
declarations of a parent unit are made visible when compiling a child
instance, the parent is not a hidden open scope, even though it may
contain other pending instance.

* sem_ch8.adb (Restore_Scope_Stack): If an entry on the stack is a
hidden open scope for some child instance, it does affect the
visibility status of other stach entries.
(Analyze_Object_Renaming): Check that a class-wide object cannot be
renamed as an object of a specific type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133578 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Ed Schonberg <schonberg@adacore.com>
charlet [Wed, 26 Mar 2008 07:42:14 +0000 (07:42 +0000)]
2008-03-26  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Analyze_Subprogram_Body): Remove spurious check on
operations that have an interface parameter.
(Analyze_Subprogram_Body): Set Is_Trivial_Subprogram flag
Don't treat No_Return call as raise.

* sem_disp.adb (Check_Dispatching_Operations): apply check for
non-primitive interface primitives to access parameters, not to all
parameters of an access type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133577 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Robert Dewar <dewar@adacore.com>
charlet [Wed, 26 Mar 2008 07:42:03 +0000 (07:42 +0000)]
2008-03-26  Robert Dewar  <dewar@adacore.com>

* sem_ch11.adb: Fix No_Exception_Restriction violation for SJLJ
* sinfo.ads, sinfo.adb (From_At_End): New flag

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133576 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Ed Schonberg <schonberg@adacore.com>
charlet [Wed, 26 Mar 2008 07:41:53 +0000 (07:41 +0000)]
2008-03-26  Ed Schonberg  <schonberg@adacore.com>

* sem_ch10.adb (Analyze_Compilation_Unit): if a unit in the context is
a generic subprogram that is imported, do not attempt to compile
non-existent body.

* sem_ch12.adb (Instantiate_Subprogram_Body): if the generic is
imported, do not generate a raise_program_error for the non-existent
(Pre_Analyze_Actuals): If an error is detected during pre-analysis,
perform minimal name resolution on the generic to avoid spurious
(Find_Actual_Type): the designated type of the actual in a child unit
may be declared in a parent unit without being an actual.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133575 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Robert Dewar <dewar@adacore.com>
charlet [Wed, 26 Mar 2008 07:41:37 +0000 (07:41 +0000)]
2008-03-26  Robert Dewar  <dewar@adacore.com>

* scn.adb (Initialize_Scanner): Format messages belong on standard error

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133574 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Vincent Celier <celier@adacore.com>
charlet [Wed, 26 Mar 2008 07:41:16 +0000 (07:41 +0000)]
2008-03-26  Vincent Celier  <celier@adacore.com>

* prj-dect.adb (Parse_Package_Declaration): When a package name is not
known, check if it may be a missspelling of a known package name. In
not verbose, not mode, issue warnings only if the package name is a
possible misspelling.
In verbose mode, always issue a warning for a not known package name,
plus a warning if the name is a misspelling of a known package name.

* prj-part.adb (Post_Parse_Context_Clause): Modify so that only non
limited withs or limited withs are parse during one call.
(Parse_Single_Project): Post parse context clause in two passes: non
limited withs before current project and limited withs after current

* prj-proc.adb (Imported_Or_Extended_Project_From): Returns an extended
project with the name With_Name, even if it is only extended indirectly.
(Recursive_Process): Process projects in order: first single withs, then
current project, then limited withs.

* prj-tree.adb (Imported_Or_Extended_Project_Of): Returns an extended
project with the name With_Name, even if it is only extended indirectly.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133573 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Thomas Quinot <quinot@adacore.com>
charlet [Wed, 26 Mar 2008 07:41:04 +0000 (07:41 +0000)]
2008-03-26  Thomas Quinot  <quinot@adacore.com>

* sem_cat.adb (Validate_RACW_Primitives): Do not rely on
Comes_From_Source to exclude primitives from being checked. We want to
exclude predefined primitives only, so use the appropriate specific
predicate. Also, flag a formal parameter of an anonymous
access-to-subprogram type as illegal for a primitive operation of a
remote access to class-wide type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133572 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Vincent Celier <celier@adacore.com>
charlet [Wed, 26 Mar 2008 07:40:35 +0000 (07:40 +0000)]
2008-03-26  Vincent Celier  <celier@adacore.com>

* osint-c.adb (Set_Library_Info_Name): Use canonical case file names
to check if the specified object file is correct.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133571 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Robert Dewar <dewar@adacore.com>
charlet [Wed, 26 Mar 2008 07:40:27 +0000 (07:40 +0000)]
2008-03-26  Robert Dewar  <dewar@adacore.com>

* itypes.adb (Create_Itype): Use new name Access_Subprogram_Kind

* sem_ch13.adb (Validate_Unchecked_Conversion): Give warning for
unchecked conversion for different conventions only for subprogram
pointers or on VMS.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133570 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Pascal Obry <obry@adacore.com>
charlet [Wed, 26 Mar 2008 07:40:18 +0000 (07:40 +0000)]
2008-03-26  Pascal Obry  <obry@adacore.com>

* Makefile.in: Add proper GNAT.Serial_Communications implementation on
supported platforms.

* Makefile.rtl: Add g-sercom.o.

* impunit.adb: Add g-sercom.adb.

* s-crtl.ads (open): New routine.
(close): Likewise.
(write): Likewise.

* s-osinte-mingw.ads (BYTE): New type.
(CHAR): Likewise.
(OVERLAPPED): Likewise.
(GENERIC_READ): New constant.
(GENERIC_WRITE): Likewise.
(OPEN_EXISTING): Likewise.
(PSECURITY_ATTRIBUTES): Removed this type, use anonymous access
type instead.
(CreateFile): New routine.
(WriteFile): Likewise.
(ReadFile): Likewise.
(CloseHandle): Move next to the other file oriented routines.

* g-sercom.ads: New unit.

* g-sercom.adb: Default implementation, calls to this unit will raise
a program error exception.

* g-sercom-mingw.adb, g-sercom-linux.adb: Windows and
GNU/Linux implementations.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133569 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Robert Dewar <dewar@adacore.com>
charlet [Wed, 26 Mar 2008 07:40:04 +0000 (07:40 +0000)]
2008-03-26  Robert Dewar  <dewar@adacore.com>

* g-pehage.adb, g-regist.adb, g-spipat.ads, g-spipat.adb,
s-asthan.adb, s-parint.adb, s-rpc.adb, s-stchop.adb: Replace
Raise_Exception by "raise with" construct.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133568 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Vincent Celier <celier@adacore.com>
charlet [Wed, 26 Mar 2008 07:39:50 +0000 (07:39 +0000)]
2008-03-26  Vincent Celier  <celier@adacore.com>

* gnatcmd.adb: Add processing for GNAT SYNC

* vms_conv.ads: (Command_Type): Add command Sync

* vms_conv.adb (Initialize): Add Command_List data for new command Sync

* vms_data.ads: Add entries for -gnatw.w
Add qualifier for gnatstub --header-file option
Add switches for GNAT SYNC

* prj-attr.ads, prj-attr.adb: Add new package Synchronize for GNAT SYNC
(Add_Package_Name): New procedure
(Package_Name_List): New function
(Initialize): Add known package names to the list
(Register_New_Package): Add the new package name to the list

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133567 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Ed Schonberg <schonberg@adacore.com>
charlet [Wed, 26 Mar 2008 07:39:39 +0000 (07:39 +0000)]
2008-03-26  Ed Schonberg  <schonberg@adacore.com>

* exp_pakd.adb (Expand_Bit_Packed_Element_Set): If the component
assignment is within the initialization procedure for a packed array,
and Initialize_Scalars is enabled, compile right-hand side with checks
off, because the value is purposely out of range.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133566 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Javier Miranda <miranda@adacore.com>
charlet [Wed, 26 Mar 2008 07:39:28 +0000 (07:39 +0000)]
2008-03-26  Javier Miranda  <miranda@adacore.com>

* exp_ch7.adb (Make_Clean): Code cleanup using the new centralized
subprogram Corresponding_Runtime_Package to know the runtime package
that will provide support to a given protected type.

* exp_ch9.adb (Add_Private_Declarations,
Build_Protected_Entry, Build_Simple_Entry_Call,
Expand_N_Protected_Body, Expand_N_Protected_Type_Declaration,
Expand_N_Timed_Entry_Call, Make_Initialize_Protection): Code
cleanup using the new centralized subprogram Corresponding_Runtime
Package to know the runtime package that provides support to
a given protected type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133565 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Javier Miranda <miranda@adacore.com>
charlet [Wed, 26 Mar 2008 07:39:17 +0000 (07:39 +0000)]
2008-03-26  Javier Miranda  <miranda@adacore.com>

* exp_disp.adb (Make_DT, Make_Secondary_DT): Set attribute
(Build_Dispatch_Tables): Replace calls to Exchange_Entities() by calls
to Exchange_Declarations to exchange the private and full-view. Bug
found working in this issue.
(Expand_Dispatching_Call): Propagate the convention of the subprogram
to the subprogram pointer type.
(Make_Secondary_DT): Replace generation of Prim'Address by
Address (Prim'Unrestricted_Access)
(Make_DT): Replace generation of Prim'Address by
Address (Prim'Unrestricted_Access)
(Make_Disp_*_Bodies): When compiling for a restricted profile, use
simple call form for single entry.
(Make_DT): Handle new contents of Access_Disp_Table (access to dispatch
tables of predefined primitives).
(Make_Secondary_DT): Add support to handle access to dispatch tables of
predefined primitives.
(Make_Tags): Add entities to Access_Dispatch_Table associated with
access to dispatch tables containing predefined primitives.

* exp_ch6.adb (N_Pragma): Chars field removed, use Chars
(Pragma_Identifier (..  instead, adjustments throughout to accomodate
this change.
(Register_Predefined_DT_Entry): Updated to handle the new contents
of attribute Access_Disp_Table (pointers to dispatch tables containing
predefined primitives).

* exp_util.ads, exp_util.adb (Corresponding_Runtime_Package): New
(Find_Interface_ADT): Updated to skip the new contents of attribute
Access_Dispatch_Table (pointers to dispatch tables containing predefined

* sem_util.adb (Has_Abstract_Interfaces): Add missing support for
concurrent types.
(Set_Convention): Use new function Is_Access_Subprogram_Type
(Collect_Interfaces_Info): Updated to skip the new contents of attribute
Access_Dispatch_Table (pointers to dispatch tables containing predefined

* exp_atag.ads, exp_atag.adb (Build_Inherit_Predefined_Prims): Improve
expanded code avoiding calls to Build_Predef_Prims.
(Build_Set_Predefined_Prim_Op_Address): Improve expanded code avoiding
call to Build_Get_Predefined_Prim_Op_Address.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133564 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Gary Dismukes <dismukes@adacore.com>
charlet [Wed, 26 Mar 2008 07:39:04 +0000 (07:39 +0000)]
2008-03-26  Gary Dismukes  <dismukes@adacore.com>

* exp_ch5.adb (Expand_N_Extended_Return_Statement): Suppress generation
of a heap allocator for a limited unconstrained function return when
resstriction No_Allocators is active.
(Analyze_Allocator): The restriction No_Allocators is now only checked
on allocators that have Comes_From_Source set, as per RM-H.4(7).

* sem_ch4.adb (Expand_N_Extended_Return_Statement): Suppress generation
of a heap allocator for a limited unconstrained function return when
resstriction No_Allocators is active.
(Analyze_Allocator): The restriction No_Allocators is now only checked
on allocators that have Comes_From_Source set, as per RM-H.4(7).
(Has_Fixed_Op):  If the name in a function call is Standard."*" and the
operands are fixed-point types, the universal_fixed predefined operation
is used, regardless of whether the operand type (s) have a primitive
operation of the same name.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133563 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Robert Dewar <dewar@adacore.com>
charlet [Wed, 26 Mar 2008 07:38:51 +0000 (07:38 +0000)]
2008-03-26  Robert Dewar  <dewar@adacore.com>

* exp_ch4.adb (Expand_N_Op_Concat): Remove special tests for

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133562 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Ed Schonberg <schonberg@adacore.com>
charlet [Wed, 26 Mar 2008 07:38:40 +0000 (07:38 +0000)]
2008-03-26  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb (Access_Definition): If the access type is the return
result of a protected function, create an itype reference for it
because usage will be in an inner scope from the point of declaration.
(Build_Derived_Record_Type): Inherit Reverse_Bit_Order and
(Make_Index): If an overloaded range includes a universal integer
interpretation, resolve to Standard.Integer.
(Analyze_Subtype_Indication): Copy Convention to subtype
(Check_Abstract_Interfaces): Complete semantic checks on the legality of
limited an synchronized progenitors in type declaration and private
extension declarations.

* exp_ch13.adb (Expand_N_Freeze_Entity): If the scope of the entity is a
protected subprogram body, determine proper scope from subprogram

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133561 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Robert Dewar <dewar@adacore.com>
charlet [Wed, 26 Mar 2008 07:38:28 +0000 (07:38 +0000)]
2008-03-26  Robert Dewar  <dewar@adacore.com>
    Arnaud Charlet  <charlet@adacore.com>

* exp_ch11.adb (Expand_At_End_Handler): Set From_At_End flag on raise
(No_Exception_Propagation_Active): New function.
(Expand_Exception_Handlers): Use No_Exception_Propagation_Active.
Update comments, and review all uses of No_Exception_Propagation, which
are now correct and in sync with what gigi expects.

* restrict.ads, restrict.adb (No_Exception_Propagation_Active): New
(Expand_Exception_Handlers): Use No_Exception_Propagation_Active.
Update comments, and review all uses of No_Exception_Propagation, which
are now correct and in sync with what gigi expects.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133560 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Javier Miranda <miranda@adacore.com>
charlet [Wed, 26 Mar 2008 07:38:16 +0000 (07:38 +0000)]
2008-03-26  Javier Miranda  <miranda@adacore.com>
    Robert Dewar  <dewar@adacore.com>

* exp_attr.adb (N_Pragma): Chars field removed.
(Expand_N_Attribute_Reference): If the designated type associated with
attribute 'Unrestricted_Access is a subprogram entity then replace it
by an E_Subprogram_Type itype.
Implement attribute Old

* sem_attr.ads (Attribute_Class_Array): Move to snames.ads

* sem_attr.adb (Build_Access_Subprogram_Itype): Add documentation.
Replace call to
New_Internal_Entity by call to Create_Itype to centralize calls
building itypes, ad propagate the convention of the designated
subprogram. In addition, disable the machinery cleaning constant
indications from all entities in current scope when 'Unrestricted_Access
corresponds with a node initializing a dispatch table slot.
(Analyze_Attribute): Parameterless attributes returning a string or a
type will not be called with improper arguments, so we can remove junk
code that was dealing with this case.
Implement attribute Old

* snames.ads, snames.h, snames.adb: Add entries for attribute Old
Add entry for pragma Optimize_Alignment
New standard names Sync and Synchronize

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133559 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Ed Schonberg <schonberg@adacore.com>
charlet [Wed, 26 Mar 2008 07:38:00 +0000 (07:38 +0000)]
2008-03-26  Ed Schonberg  <schonberg@adacore.com>

* exp_aggr.adb (Replace_Type): When checking for self-reference, verify
that the prefix of an attribute is the type of the aggregate being

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133558 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Robert Dewar <dewar@adacore.com>
charlet [Wed, 26 Mar 2008 07:37:49 +0000 (07:37 +0000)]
2008-03-26  Robert Dewar  <dewar@adacore.com>

* par.adb (Check_No_Right_Paren): Removed no longer used

* par-ch10.adb (N_Pragma): Chars field removed, use Chars
(Pragma_Identifier (..  instead.

* par-ch10.adb (P_Subunit): Improvement in error recovery and message

* par-tchk.adb, par-ch5.adb, par-ch6.adb, par-ch3.adb,
par-ch4.adb: Minor improvements in error recovery and messages.

* erroutc.adb (Test_Style_Warning_Serious_Msg): Treat style msgs as

* par-ch9.adb: Minor improvements in error recovery and messages
(P_Protected): Better error recovery for "protected type x;"

* par-util.adb: Minor improvements in error recovery and messages
(Check_No_Right_Paren): Removed no longer used

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133557 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Robert Dewar <dewar@adacore.com>
charlet [Wed, 26 Mar 2008 07:37:35 +0000 (07:37 +0000)]
2008-03-26  Robert Dewar  <dewar@adacore.com>

* errout.ads: Document new !! insertion sequence

* errout.adb (N_Pragma): Chars field removed, use Chars
(Pragma_Identifier (..  instead.
Replace use of Warnings_Off by Has_Warnings_Off
(Error_Msg_Internal): Don't delete warning ending in !!

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133556 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Robert Dewar <dewar@adacore.com>
charlet [Wed, 26 Mar 2008 07:37:24 +0000 (07:37 +0000)]
2008-03-26  Robert Dewar  <dewar@adacore.com>

* einfo.ads, einfo.adb (N_Pragma): Chars field removed, use Chars
(Pragma_Identifier (.. instead.
(OK_To_Reorder_Components): New flag
(Has_Entries): Code cleanup.
(Warnings_Off_Used): New flag
(Warnings_Off_Used_Unmodified): New flag
(Warnings_Off_Used_Unreferenced): New flag
(Has_Warnings_Off): New function
(Has_Unmodified): New function
(Has_Unreferenced): New function
(Is_Trivial_Subprogram): New flag
(Is_Static_Dispatch_Table_Entity): New attribute.
Change name Access_Subprogram_Type_Kind to Access_Subprogram_Kind
(more consistent with other similar names)
(Access_Subprogram_Type): New classification function

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133555 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Robert Dewar <dewar@adacore.com>
charlet [Wed, 26 Mar 2008 07:37:12 +0000 (07:37 +0000)]
2008-03-26  Robert Dewar  <dewar@adacore.com>

* stand.ads: Deal with reordering of package standard declarations

* cstand.adb: Put package Standard declarations in proper order

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133554 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Robert Dewar <dewar@adacore.com>
charlet [Wed, 26 Mar 2008 07:37:00 +0000 (07:37 +0000)]
2008-03-26  Robert Dewar  <dewar@adacore.com>

* checks.adb (Ensure_Valid): Capture valid status if possible
(eliminate checks)

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133553 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Robert Dewar <dewar@adacore.com>
charlet [Wed, 26 Mar 2008 07:36:48 +0000 (07:36 +0000)]
2008-03-26  Robert Dewar  <dewar@adacore.com>

* a-ztexio.adb, a-ztexio.ads, a-witeio.ads, a-witeio.adb: Fix problem
with Current_Output (introduce Self).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133552 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Robert Dewar <dewar@adacore.com>
charlet [Wed, 26 Mar 2008 07:36:36 +0000 (07:36 +0000)]
2008-03-26  Robert Dewar  <dewar@adacore.com>

* a-teioed.ads: Correct value of Default_Fill

* a-teioed.adb (Image): Use Fill_Character instead of '*' to fill

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133551 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Vincent Celier <celier@adacore.com>
charlet [Wed, 26 Mar 2008 07:36:23 +0000 (07:36 +0000)]
2008-03-26  Vincent Celier  <celier@adacore.com>

* a-szuzti.adb, a-swuwti.adb, a-suteio.adb (functions Get_Line):
Improve memory usage to avoid use of stack.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133550 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Robert Dewar <dewar@adacore.com>
charlet [Wed, 26 Mar 2008 07:36:02 +0000 (07:36 +0000)]
2008-03-26  Robert Dewar  <dewar@adacore.com>

* ali.ads, ali.adb (Optimize_Alignment_Setting): New field in ALI record

* bcheck.adb (Check_Consistent_Optimize_Alignment): New procedure

* debug.adb: Add debug flags d.r and d.v
Add debug flag .T (Optimize_Alignment (Time))
Add debug flag .S (Optimize_Alignment (Space))

* freeze.adb (Freeze_Record_Type): Set OK_To_Reorder_Components
depending on setting of relevant debug flags.
Replace use of Warnings_Off by Has_Warnings_Off
(Freeze_Entity): In circuit for warning on suspicious convention
actuals, do not give warning if subprogram has same entity as formal
type, or if subprogram does not come from source.
(Freeze_Entity): Don't reset Is_Packed for fully rep speced record
if Optimize_Alignment set to Space.

* frontend.adb: Add call to Sem_Warn.Initialize
Add call to Sem_Warn.Output_Unused_Warnings_Off_Warnings
Reset Optimize_Alignment mode from debug switches .S and .T

* layout.adb (Layout_Composite_Object): Rewritten for
Optimize_Aligment pragma.

* lib-writ.ads, lib-writ.adb: New Ox parameter for Optimize_Alignment

* opt.ads, opt.adb: (Optimize_Alignment): New global switch

* par-prag.adb (N_Pragma): Chars field removed, use Chars
(Pragma_Identifier (..  instead, adjustments throughout to accomodate
this change. Add entry for pragma Optimize_Alignment

* sem_prag.adb (N_Pragma): Chars field removed, use Chars
(Pragma_Identifier (..
instead, adjustments throughout to accomodate this change.
(Process_Compile_Time_Warning_Or_Error): Use !! for generated msg
(Favor_Top_Level): Use new function Is_Access_Subprogram_Type
Add implementation of pragma Optimize_Alignment

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133549 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Arnaud Charlet <charlet@adacore.com>
charlet [Wed, 26 Mar 2008 07:35:45 +0000 (07:35 +0000)]
2008-03-26  Arnaud Charlet  <charlet@adacore.com>

* gnatvsn.ads (Library_Version): Bump to 4.4.
(Current_Year): Bump to 2008.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133548 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Arnaud Charlet <charlet@adacore.com>
charlet [Wed, 26 Mar 2008 07:35:35 +0000 (07:35 +0000)]
2008-03-26  Arnaud Charlet  <charlet@adacore.com>

* s-taprop-irix.adb, s-taprop-tru64.adb, s-taprop-lynxos.adb,
s-taprop-linux.adb, s-taprop-mingw.adb, s-taprop-vxworks.adb,
s-taprop-posix.adb (Create_Task): Do not attempt to set task priority
or task info if the thread could not be created.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133547 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Robert Dewar <dewar@adacore.com>
charlet [Wed, 26 Mar 2008 07:35:19 +0000 (07:35 +0000)]
2008-03-26  Robert Dewar  <dewar@adacore.com>

* a-taster.adb, s-shasto.adb, s-soflin.adb, s-taasde.adb, s-taenca.adb,
a-sytaco.adb, a-sytaco.ads, a-tasatt.adb, a-taside.adb,
a-intnam-lynxos.ads, a-retide.adb, a-intnam-tru64.ads, a-intnam-aix.ads,
a-intnam-irix.ads, a-intnam-hpux.ads, a-intnam-linux.ads,
a-intnam-solaris.ads, a-caldel-vms.adb, a-intnam-vms.ads,
a-excpol-abort.adb, a-intnam-mingw.ads, s-interr.adb, s-interr.ads,
s-intman.ads, s-gloloc.adb, s-osinte-lynxos-3.ads,
s-interr-sigaction.adb, s-osinte-hpux.ads, s-osinte-solaris-posix.ads,
a-intnam-freebsd.ads, s-osinte-freebsd.ads, s-osinte-lynxos.ads,
s-taspri-lynxos.ads, s-osinte-tru64.ads, s-osinte-tru64.ads,
s-taspri-tru64.ads, s-osinte-aix.ads, s-osinte-irix.ads,
s-osinte-hpux-dce.ads, s-taprop-hpux-dce.adb, s-taspri-hpux-dce.ads,
s-osinte-linux.ads, s-osinte-dummy.ads, s-taprop-dummy.adb,
s-taspri-dummy.ads, s-interr-dummy.adb, s-osinte-solaris.ads,
s-osinte-mingw.ads, s-taprop-solaris.adb, s-taspri-solaris.ads,
s-inmaop-vms.adb, s-interr-vms.adb, s-intman-vms.ads, s-osinte-vms.ads,
s-osinte-vms.ads, s-taprop-vms.adb, s-taspri-vms.ads,
s-taspri-mingw.ads, s-interr-vxworks.adb, s-inmaop-posix.adb,
s-intman-vxworks.ads, s-osinte-vxworks.ads, s-osprim-vxworks.adb,
s-taspri-vxworks.ads, s-taspri-posix.ads, a-caldel.adb, a-calend.adb,
a-elchha.adb, a-dynpri.adb, a-except.adb, a-except.ads, a-interr.ads,
a-textio.adb, a-tigeau.ads, atree.adb, s-taprob.adb, s-taprop.ads,
s-tarest.adb, s-tarest.ads, s-tasini.adb, s-taskin.adb, s-taskin.ads,
s-tasque.adb, s-tasren.adb, s-tasren.ads, s-tassta.adb, s-tassta.ads,
s-tasuti.adb, s-tataat.adb, s-tataat.ads, s-tpoben.adb, s-tpoben.ads,
s-tpobop.adb, s-tpobop.ads, s-tposen.adb, s-tposen.ads, s-valrea.adb,
s-valuti.adb, a-intnam-darwin.ads, s-osinte-darwin.ads, s-solita.adb,
a-ztinau.ads, s-osinte-linux-hppa.ads, a-except-2005.adb,
a-except-2005.ads, a-rttiev.adb, s-osinte-vxworks6.ads, s-regexp.adb,
s-tasloc.adb: Minor reformatting.
Update comments.
Remove "used for" sections from comments.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133546 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Thomas Quinot <quinot@adacore.com>
charlet [Wed, 26 Mar 2008 07:34:57 +0000 (07:34 +0000)]
2008-03-26  Thomas Quinot  <quinot@adacore.com>

PR ada/33688

* g-socket.ads, g-socket.adb (Options, Set_Socket_Option,
Get_Socket_Option): Add support for Receive_Packet_Info.

* g-soccon.ads, g-soccon-tru64.ads, g-soccon-aix.ads,
g-soccon-irix.ads, g-soccon-hpux.ads, g-soccon-solaris.ads,
g-soccon-vms.ads, g-soccon-mingw.ads, g-soccon-freebsd.ads,
g-soccon-hpux-ia64.ads, g-soccon-solaris-64.ads, g-soccon-darwin.ads,
g-soccon-lynxos.ads, g-soccon-linux-64.ads, g-soccon-linux-x86.ads: Add
new constants SO_REUSEPORT and IP_PKTINFO

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133545 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-25 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Wed, 26 Mar 2008 06:27:35 +0000 (06:27 +0000)]
2008-03-25  Benjamin Kosnik  <bkoz@redhat.com>

* scripts/run_doxygen: Remove html_output_dir. Downgrade to
Doxygen 1.5.1.
* doc/doxygen/style.css: Delete.
* doc/doxygen/user.cfg.in: Regenerate with Doxygen 1.5.1.
(INPUT): Update.
(HTML_OUTPUT): Remove html_output_dir, use html.
(HTML_STYLESHEET): Remove style.css.
* doc/doxygen/tables.html: Remove style.css use.
* doc/doxygen/mainpage.html: Nested lists for Namespaces and Classes.
* doc/doxygen/doxygroups.cc: Namespace edits.
* doc/doxygen/Intro.3: Correct typo.

* doc/xml/api.xml: Add gcc-4.3 links.
* doc/html/api.html: Regenerate.

* include/debug/debug.h: Document namepaces here.
* include/parallel/base.h: Same.
* include/ext/typelist.h: Same.
* include/ext/pb_ds/tag_and_trait.hpp: Same.

* include/tr1_impl/random: Adjust line break.
* include/tr1_impl/unordered_map: Correct and or add markup.
* include/tr1_impl/boost_shared_ptr.h: Correct and or add markup.
* include/tr1_impl/functional_hash.h: Same.
* include/tr1_impl/cmath: Same.
* include/tr1_impl/functional: Same.
* include/tr1_impl/unordered_set: Same.
* include/tr1_impl/complex: Same.
* include/tr1_impl/type_traits: Same.
* include/tr1_impl/regex: Same.
* include/tr1_impl/array: Same.
* include/std/tuple: Same.
* include/std/date_time: Same.
* include/std/system_error: Same.
* include/std/type_traits: Same.
* include/ext/enc_filebuf.h: Same.
* include/ext/throw_allocator.h: Same.
* include/ext/pool_allocator.h: Same.
* include/ext/bitmap_allocator.h: Same.
* include/ext/concurrence.h: Same.
* include/ext/codecvt_specializations.h: Same.
* include/ext/stdio_sync_filebuf.h: Same.
* include/ext/array_allocator.h: Same.
* include/ext/mt_allocator.h: Same.
* include/bits/locale_classes.h: Same.
* include/bits/locale_facets.h: Same.
* include/bits/codecvt.h: Same.
* include/bits/char_traits.h: Same.
* include/bits/allocator.h: Same.
* include/bits/locale_facets_nonio.h: Same.
* include/tr1/poly_laguerre.tcc: Same.
* include/tr1/riemann_zeta.tcc: Same.
* include/tr1/beta_function.tcc: Same.
* include/tr1/tuple: Same.
* include/tr1/exp_integral.tcc: Same.
* include/tr1/gamma.tcc: Same.
* include/tr1/hypergeometric.tcc: Same.
* include/tr1/modified_bessel_func.tcc: Same.
* include/tr1/legendre_function.tcc: Same.
* include/tr1/type_traits: Same.
* include/tr1/special_function_util.h: Same.
* include/tr1/bessel_function.tcc: Same.
* include/tr1/cmath: Same.
* include/tr1/poly_hermite.tcc: Same.
* include/tr1/ell_integral.tcc: Same.
* config/abi/compatibility.h: Adjust file name.

* testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Adjust
line numbers.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133544 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-26 Douglas Gregor <doug.gregor@gmail.com>
dgregor [Wed, 26 Mar 2008 04:17:57 +0000 (04:17 +0000)]
2008-03-26  Douglas Gregor  <doug.gregor@gmail.com>

       * pt.c (coerce_template_template_parm): Moved the body of the loop
       of coerce_template_template_parms here, to make iteration over a
       template argument pack simpler.
       Also, allow matching of a template parameter pack in the template
       template parameter to a template parameter in the template
       template argument.
       (coerce_template_template_parms): Deal with variadic template
       template parameters. Use coerce_template_template_parm.
       (unify): Make sure we coerce the template template argument's
       template arguments to the template template parameter's template
       parameters, not the other way around.

2008-03-26  Douglas Gregor  <doug.gregor@gmail.com>

       * g++.dg/cpp0x/variadic84.C: Update to reflect the change in
       variadic template template parameter binding semantics.
       * g++.dg/cpp0x/variadic85.C: Ditto.
       * g++.dg/cpp0x/variadic88.C: New.
       * g++.dg/cpp0x/variadic89.C: New.
       * g++.dg/cpp0x/variadic90.C: New.
       * g++.dg/cpp0x/variadic-ex14.C: Update to reflect the change in
       variadic template template parameter binding semantics.
       * g++.dg/cpp0x/variadic-lambda.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133543 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-25 Andrew Pinski <andrew_pinski@playstation.sony.com>
pinskia [Wed, 26 Mar 2008 03:35:02 +0000 (03:35 +0000)]
2008-03-25  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR target/31558
        * config/rs6000/rs6000-c.c (rs6000_builtin_type_compatible): Handle

2008-03-25  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR target/31558
        * g++.dg/ext/altivec-15.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133542 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-25 Andrew Pinski <andrew_pinski@playstation.sony.com>
pinskia [Wed, 26 Mar 2008 03:32:13 +0000 (03:32 +0000)]
2008-03-25  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR target/31588
        * config/rs6000/rs6000-c.c (rs6000_builtin_type_compatible): Handle

2008-03-25  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR target/31588
        * g++.dg/ext/altivec-15.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133541 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-25 Andrew Pinski <pinskia@gmail.com>
pinskia [Wed, 26 Mar 2008 03:19:58 +0000 (03:19 +0000)]
2008-03-25  Andrew Pinski  <pinskia@gmail.com>

        PR objc/29197
        * objc-act.c (encode_type): Handle when type is error_mark_node.
        (objc_push_parm): Handle when the type of parm is error_mark_node.

2008-03-25  Andrew Pinski  <pinskia@gmail.com>

        PR objc/29197
        * objc.dg/method-20.m: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133540 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agoDaily bump.
gccadmin [Wed, 26 Mar 2008 00:17:35 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133538 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * Make-lang.in (obj-c++_OBJS): Rename from objcp_OBJS.
tromey [Tue, 25 Mar 2008 20:52:41 +0000 (20:52 +0000)]
* Make-lang.in (obj-c++_OBJS): Rename from objcp_OBJS.
(objcp/objcp-act.o): Restore target.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133532 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agogcc/
rsandifo [Tue, 25 Mar 2008 20:43:06 +0000 (20:43 +0000)]
PR rtl-optimization/35232
* reload1.c (reg_reloaded_call_part_clobbered): Clarify comment.
(forget_old_reloads_1, forget_marked_reloads): Don't clear
reg_reloaded_call_part_clobbered here.
(reload_regs_reach_end_p): New function.
(reload_reg_rtx_for_input): New variable.
(reload_reg_rtx_for_output): Likewise.
(emit_input_reload_insns): Use reloadreg rather than rl->reg_rtx
when reassigning a pseudo register.  Load reloadreg from
reload_reg_rtx_for_input, moving the mode and register
calculation to...
(do_input_reload): ...here.  Use the mode-adjusted reg_rtx
instead of the original when deciding whether an input reload
would be a no-op or whether an output reload can be deleted.
(emit_output_reload_insns): Use the mode-adjusted reg_rtx
when setting up new_spill_reg_store.  Load it from
reload_reg_rtx_for_output, moving the mode and register
calculation to...
(do_output_reload): ...here.  Use the mode-adjusted reg_rtx
instead of the original when deciding whether an output reload
would be a no-op.  Do the same when modifying insn notes.
Use rtx_equal_p instead of == to compare the registers.
(inherit_piecemeal_p): Take a mode and two register numbers
as argument.
(emit_reload_insns): Clear new_spill_reg_store for every hard
register in the reload register.  Remove spill registers
from reg_reloaded_valid before considering whether to record
inheritance information for them.  Use reload_reg_rtx_for_output
instead of reg_rtx when recording output reloads.  Use
reload_reg_rtx_for_input instead of reg_rtx when recording
input reloads.  Set or clear reg_reloaded_call_part_clobbered
at the same time as setting reg_reloaded_valid.
(delete_output_reload): Add a new_reload_reg parameter and use it
instead of rld[j].reg_rtx.
(emit_input_reload_insns, do_input_reload, do_output_reload): Adjust
calls accordingly.

PR rtl-optimization/35232
* gcc.target/mips/pr35232.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133531 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * Makefile.in (build/gensupport.o): Depend on insn-modes.h.
tromey [Tue, 25 Mar 2008 18:53:41 +0000 (18:53 +0000)]
* Makefile.in (build/gensupport.o): Depend on insn-modes.h.
(build/genattr.o): Likewise.
(build/genattrtab.o): Likewise.
(build/gencodes.o): Likewise.
(build/genconfig.o): Likewise.
(build/genconstants.o): Likewise.
(build/genemit.o): Likewise.
(build/genextract.o): Likewise.
(build/genflags.o): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133527 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago Revert
ebotcazou [Tue, 25 Mar 2008 17:58:54 +0000 (17:58 +0000)]
        2008-03-05  Eric Botcazou  <ebotcazou@adacore.com>
        PR ada/35186
        * decl.c (maybe_pad_type): Avoid padding an integral type when
        bumping its alignment is sufficient.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133526 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/xtensa/xtensa.c (xtensa_va_start): Use build_int_cst
bwilson [Tue, 25 Mar 2008 17:56:31 +0000 (17:56 +0000)]
* config/xtensa/xtensa.c (xtensa_va_start): Use build_int_cst
instead of size_int for integer types.
(xtensa_gimplify_va_arg_expr): Likewise.  Convert index to sizetype
to match type of MINUS_EXPR.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133525 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * configure: Rebuilt.
tromey [Tue, 25 Mar 2008 17:29:02 +0000 (17:29 +0000)]
* configure: Rebuilt.
* configure.ac (BUILD_DEPMODE): Extract CCDEPMODE from temporary

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133524 138bc75d-0d04-0410-961f-82ee72b054a4

13 years agogcc
tromey [Tue, 25 Mar 2008 16:56:50 +0000 (16:56 +0000)]
* config/x-solaris (host-solaris.o): Update.
* config/x-linux (host-linux.o): Update.
* config/x-hpux (host-hpux.o): Update.
* config/x-darwin (host-darwin.o): Update.
* config/v850/t-v850e (v850-c.o): Update.
* config/v850/t-v850 (v850-c.o): Update.
* config/t-vxworks (vxworks.o): Update.
* config/t-sol2 (sol2-c.o, sol2.o): Update.
* config/t-darwin (darwin.o, darwin-c.o, darwin-driver.o):
* config/spu/t-spu-elf (spu-c.o): Update.
(spu.o): Remove.
* config/sh/t-symbian (sh-c.o): Update.
(symbian.o): Update.
* config/sh/t-sh (sh-c.o): Update.
* config/score/t-score-elf (score7.o, score3.o): Update.
* config/rs6000/x-rs6000 (driver-rs6000.o): Update.
* config/rs6000/x-darwin64 (host-ppc64-darwin.o): Update.
* config/rs6000/x-darwin (host-ppc-darwin.o): Update.
* config/rs6000/t-rs6000 (rs6000-c.o): Update.
(rs6000.o): Remove.
* config/m68k/t-uclinux (generated_files): Add sysroot-suffix.h.
* config/m32c/t-m32c (m32c-pragma.o): Update.
* config/ia64/t-ia64 (ia64-c.o): Update.
* config/i386/x-mingw32 (host-mingw32.o): Update.
* config/i386/x-i386 (driver-i386.o): Update.
* config/i386/x-darwin (host-i386-darwin.o): Update.
* config/i386/x-cygwin (host-cygwin.o): Update.
* config/i386/t-nwld (nwld.o): Update.
* config/i386/t-netware (netware.o): Update.
* config/i386/t-interix (winnt.o): Update.
* config/i386/t-cygwin (cygwin1.o, cygwin2.o): Update.
* config/i386/t-cygming (winnt.o, winnt-cxx.o, winnt-stubs.o,
msformat-c.o): Update.
* config/bfin/t-bfin-linux (generated_files): Add
* config/arm/t-wince-pe (pe.o): Update.
* config/arm/t-strongarm-pe (pe.o): Update.
* config/arm/t-pe (pe.o): Update.
* config/arm/t-arm (arm-c.o): Update.
* doc/install.texi (Prerequisites): Require make 3.80.
* Makefile.in: Remove .o targets.
(CCDEPMODE, DEPDIR, depcomp, BUILD_DEPMODE): New variables.
(simple_generated_h, simple_generated_c): Move earlier.
(generated_files): New variable.
(.c.o): Remove.
(COMPILE.base, COMPILE): New variables.
(%.o): New pattern rule.
(ALL_HOST_OBJS): New variable.
(xgcc$(exeext), cpp$(exeext)): Remove extra version.o.
(dummy-checksum.o, cc1-checksum.o): Remove.
(DRIVER_SHLIB): New variable.
(gencondmd.c): Move out of build/.
(s-conditions): Update.
(ALL_BUILD_OBJS): Likewise.
(build/%.o): Use BUILDCOMPILE.
(build/ggc-none.o, build/ggc-none.o, build/min-insn-modes.o,
build/print-rtl.o, build/read-rtl.o, build/rtl.o, build/vec.o,
build/gencondmd.o, build/genattrtab.o, build/genautomata.o,
build/gencheck.o, build/gencodes.o, build/genconditions.o,
build/genconfig.o, build/genconstants.o, build/genemit.o,
build/genextract.o, build/genflags.o, build/genmddeps.o,
build/genopinit.o, build/genoutput.o, build/genpeep.o,
build/genpreds.o, build/genrecog.o, build/gcov-iov.o,
build/gen-protos.o, build/scan.o, build/fix-header.o,
build/scan-decls.o): Simplify.
(collect2.o, c-opts.o, gcc.o, gccspec.o, gcc-options.o,
cppdefault.o, protoize.o, unprotoize.o, intl.o, version.o,
prefix.o, toplev.o): Reduce to variable setting.
(libbackend.o): Use COMPILE.  Remove most dependencies.  Move
($(out_object_file), gcc-options.o): New targets.
($(ALL_HOST_OBJS)): New target.
Include dependency files.
* configure: Rebuilt.
* configure.ac: Call ZW_CREATE_DEPDIR,
* doc/sourcebuild.texi (Front End Directory): Document new
* Make-lang.in: Removed most explicit .o targets.
(java/jvspec.o): Reduce to variable setting.  Moved to java/.
($(GCJ)$(exeext)): Update.
(JAVA_OBJS): New variable.
(JCFDUMP_OBJS): Reformat.
(java_OBJS): New variable.
(java/jvspec.o-warn): Update.
(java/parse.o-warn): Remove.
(JAVA_TREE_H): Remove.
(java/jcf-io.o): Reduce to variable setting.
(ALL_CPPFLAGS): Likewise.
* Make-lang.in (objc_OBJS): New variable.
(cc1obj-checksum.o, objc/objc-lang.o, objc/objc-act.o): Remove.
* Make-lang.in (objcp_OBJS): New variable.
(cc1objplus-checksum.o, objcp/objcp-lang.o, objcp/objcp-decl.o,
objcp/objcp-act.o): Remove.
* Make-lang.in: Remove .o targets.
(cp/g++spec.o): Moved to cp/.  Reduce to variable setting.
(GXX_OBJS): Update.
(c++_OBJS): New variable.
* Make-lang.in: Remove .o targets.
(fortran_OBJS): New variable.
(fortran/gfortranspec.o): Move to fortran/.  Reduce to variable

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133523 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago2008-03-25 Douglas Gregor <doug.gregor@gmail.com>
dgregor [Tue, 25 Mar 2008 13:53:58 +0000 (13:53 +0000)]
2008-03-25  Douglas Gregor  <doug.gregor@gmail.com>

       * typeck.c (composite_pointer_type_r): Add SFINAE support.
       (composite_pointer_type): Ditto.
       (common_type): Fix call to composite_pointer_type.
       (cxx_sizeof_nowarn): New; used to be a macro.
       (cxx_sizeof_expr): Add SFINAE support.
       (cxx_alignof_expr): Ditto.
       (decay_conversion): Fix calls for SFINAE support.
       (rationalize_conditional_expr): Add SFINAE support.
       (build_class_member_access_expr): Ditto.
       (finish_class_member_access_expr): Ditto.
       (build_x_indirect_ref): Ditto.
       (build_indirect_ref): Original version renamed to
       cp_build_indirect_ref; new version provides a bridge from
       (cp_build_indirect_ref): Was build_indirect_ref; added SFINAE
       (get_member_function_from_ptrfunc): Fix calls for SFINAE support.
       (build_function_call): Original version renamed to
       cp_build_function_call; new version provides a bridge from
       (cp_build_function_call): Was build_function_call; added SFINAE
       (convert_arguments): Add SFINAE support.
       (build_x_binary_op): Ditto.
       (build_binary_op): Original version renamed to cp_build_binary_op;
       new version provides a bridge from c-common.
       (cp_build_binary_op): Was build_binary_op; added SFINAE support.
       (pointer_diff): Fix calls for SFINAE.
       (build_x_unary_op): Add SFINAE support.
       (condition_conversion): Fix calls for SFINAE.
       (build_unary_op): Original version renamed to cp_build_unary_op;
       new version provides a bridge from c-common.
       (cp_build_unary_op): Was build_unary_op; added SFINAE support.
       (unary_complex_lvalue): Fix calls for SFINAE.
       (build_x_conditional_expr): Add SFINAE support.
       (build_x_compound_expr_from_list): Fix calls for SFINAE.
       (build_x_compound_expr): Add SFINAE support.
       (convert_ptrmem): Fix calls for SFINAE.
       (build_static_cast_1): Add SFINAE support.
       (build_static_cast): Ditto.
       (build_reinterpret_cast_1): Ditto.
       (build_reinterpret_cast): Ditto.
       (build_const_cast_1): Ditto.
       (build_const_cast): Ditto.
       (build_c_cast): Ditto.
       (build_modify_expr): Original version renamed to
       cp_build_modify_expr; new version provides a bridge from c-common.
       (cp_build_modify_expr): Was build_modify_expr; added SFINAE
       (build_x_modify_expr): Add SFINAE support.
       (build_ptrmemfunc): Fix calls for SFINAE.
       (convert_for_assignment): Add SFINAE support.
       (convert_for_initialization): Ditto.
       (check_return_expr): Fix calls for SFINAE.
       (lvalue_or_else): Add SFINAE support.
       * init.c (perform_member_init): Fix calls for SFINAE.
       (emit_mem_initializers): Ditto.
       (expand_virtual_init): Ditto.
       (expand_cleanup_for_base): Ditto.
       (build_aggr_init): Add SFINAE support.
       (expand_default_init): Ditto.
       (expand_aggr_init_1): Fix calls for SFINAE.
       (build_offset_ref): Ditto.
       (build_new_1): Add SFINAE support.
       (build_new): Ditto.
       (build_vec_delete_1): Fix calls for SFINAE.
       (get_temp_regvar): Ditto.
       (build_vec_init): Add SFINAE support.
       (build_dtor_call): Fix calls for SFINAE.
       (build_delete): Ditto.
       (push_base_cleanups): Ditto.
       (build_vec_delete_1): Ditto.
       * class.c (build_base_path): Fix calls for SFINAE.
       (build_simple_base_path): Ditto.
       (convert_to_base_statically): Ditto.
       (build_vfn_ref): Ditto.
       (resolve_address_of_overloaded_function): Ditto.
       * decl.c (check_initializer): Fix calls for SFINAE.
       (register_dtor_fn): Ditto.
       (compute_array_index_type): Ditto.
       (finish_enum): Ditto.
       (start_preparsed_function): Ditto.
       (cxx_maybe_build_cleanup): Ditto.
       * call.c (convert_like): Add COMPLAIN argument.
       (convert_like_with_context): Ditto.
       (build_this): Fix calls for SFINAE.
       (build_user_type_conversion): Ditto.
       (resolve_args): Ditto.
       (build_new_function_call): Add SFINAE support.
       (build_operator_new_call): Fix calls for SFINAE.
       (build_object_call): Add SFINAE support.
       (build_conditional_expr): Ditto.
       (build_new_op): Ditto.
       (build_op_delete_call): Fix calls for SFINAE.
       (build_temp): Ditto.
       (convert_like_real): Add SFINAE support.
       (build_x_va_arg): Fix calls for SFINAE.
       (convert_default_arg): Ditto.
       (build_over_call): Add SFINAE support.
       (build_java_interface_fn_ref): Fix calls for SFINAE.
       (build_special_member_call): Add SFINAE support.
       (build_new_method_call): Ditto.
       (perform_implicit_conversion): Ditto.
       (perform_direct_initialization_if_possible): Ditto.
       (initialize_reference): Fix calls for SFINAE.
       * method.c (do_build_assign_ref): Fix calls for SFINAE.
       * rtti.c (build_headof): Fix calls for SFINAE.
       (get_tinfo_decl_dynamic): Ditto.
       (get_typeid): Ditto.
       (build_dynamic_cast_1): Add SFINAE support.
       (build_dynamic_cast): Ditto.
       (tinfo_base_init): Fix calls for SFINAE.
       * except.c (do_get_exception_ptr): Fix calls for SFINAE.
       (do_end_catch): Ditto.
       (initialize_handler_parm): Ditto.
       (expand_start_catch_block): Ditto.
       (do_allocate_exception): Ditto.
       (do_free_exception): Ditto.
       (build_throw): Ditto.
       * cvt.c (build_up_reference): Fix calls for SFINAE.
       (convert_to_reference): Ditto.
       (ocp_convert): Ditto.
       (convert_to_void): Add SFINAE support.
       * tree.c (build_dummy_object): Fix calls for SFINAE.
       (stabilize_expr): Ditto.
       * cp-tree.h (build_conditional_expr): Add tsubst_flags_t
       (build_new_method_call): Ditto.
       (build_special_member_call): Ditto.
       (build_new_op): Ditto.
       (perform_implicit_conversion): Ditto.
       (perform_direct_initialization_if_possible): Ditto.
       (convert_to_void): Ditto.
       (build_aggr_init): Ditto.
       (build_new): Ditto.
       (build_vec_init): Ditto.
       (build_dynamic_cast): Ditto.
       (finish_call_expr): Ditto
       (cxx_sizeof_or_alignof_expr): Add COMPLAIN parameter.
       (cxx_sizeof_nowarn): Remove macro; add function declaration.
       (build_class_member_access_expr): Add tsubst_flags_t parameter.
       (finish_class_member_access_expr): Ditto.
       (build_x_indirect_ref): Ditto.
       (cp_build_indirect_ref): New.
       (cp_build_function_call): Add tsubst_flags_t parameter.
       (build_x_unary_op): Ditto.
       (cp_build_unary_op): New.
       (build_x_conditional_expr): Add tsubst_flags_t parameter.
       (build_x_compound_expr): Ditto.
       (build_compound_expr): Ditto.
       (build_static_cast): Ditto.
       (build_reinterpret_cast): Ditto.
       (build_const_cast): Ditto.
       (build_c_cast): Ditto.
       (build_x_modify_expr): Ditto.
       (cp_build_modify_expr): New.
       (convert_for_initialization): Add tsubst_flags_t parameter.
       (cp_build_binary_op): Remove macro; add function declaration.
       (invalid_nonstatic_memfn_p): Add tsubst_flags_t parameter.
       (lvalue_or_else): Ditto.
       (build_functional_cast): Ditto.
       * typeck2.c (digest_init): Fix calls for SFINAE.
       (process_init_constructor_array): Ditto.
       (process_init_constructor_record): Ditto.
       (build_x_arrow): Ditto.
       (build_m_component_ref): Ditto.
       (build_functional_cast): Add SFINAE support.
       * pt.c (tsubst_copy_and_build): Add (more) SFINAE support.
       * semantics.c (simplify_loop_decl_cond): Fix calls for SFINAE.
       (finish_expr_stmt): Ditto.
       (finish_for_expr): Ditto.
       (finish_asm_stmt): Ditto.
       (finish_non_static_data_member): Ditto.
       (finish_qualified_id_expr): Ditto.
       (finish_call_expr): Add SFINAE support.
       (finish_increment_expr): Fix calls for SFINAE.
       (finish_unary_op_expr): Ditto.
       (simplify_aggr_init_expr): Ditto.
       (finish_omp_clauses): Ditto.
       (finish_omp_for): Ditto.
       (finish_omp_barrier): Ditto.
       (finish_omo_flush): Ditto.
       * decl2.c (grok_array_decl): Fix calls or SFINAE.
       (build_anon_union_vars): Ditto.
       (get_guard_cond): Ditto.
       (set_guard): Ditto.
       (one_static_initialization_or_destruction): Ditto.
       (do_static_initialization_or_destruction): Ditto.
       (generate_ctor_or_dtor_function): Ditto.
       (build_offset_ref_call_from_tree): Ditto.
       * parser.c (cp_parser_postfix_expression): Fix calls for SFINAE.
       (cp_parser_postfix_dot_deref_expression): Ditto.
       (cp_parser_unary_expression): Ditto.
       (cp_parser_new_expression): Ditto.
       (cp_parser_cast_expression): Ditto.
       (cp_parser_binary_expression): Ditto.
       (cp_parser_question_colon_clause): Ditto.
       (cp_parser_assignment_expression): Ditto.
       (cp_parser_expression): Ditto.
       (cp_parser_builtin_offsetof): Ditto.
       (cp_parser_template_argument): Ditto.
       (cp_parser_functional_cast): Ditto.

2008-03-25  Douglas Gregor  <doug.gregor@gmail.com>

       * c-common.c (c_sizeof_or_alignof_type): If we're not allowed to
       complain when we hit an error, return ERROR_MARK_NODE.

2008-03-25  Douglas Gregor  <doug.gregor@gmail.com>

       * g++.dg/template/sfinae4.C: New.
       * g++.dg/template/sfinae5.C: New.
       * g++.dg/template/sfinae6.C: New.
       * g++.dg/template/sfinae6_neg.C: New.
       * g++.dg/template/sfinae7.C: New.
       * g++.dg/template/sfinae8.C: New.
       * g++.dg/template/sfinae9.C: New.
       * g++.dg/template/sfinae10.C: New.
       * g++.dg/template/sfinae11.C: New.
       * g++.dg/template/sfinae12.C: New.
       * g++.dg/template/sfinae13.C: New.
       * g++.dg/template/sfinae14C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133519 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/sh/constraints.md (Pso, Psz): New constraints.
kkojima [Tue, 25 Mar 2008 13:44:00 +0000 (13:44 +0000)]
* config/sh/constraints.md (Pso, Psz): New constraints.
* config/sh/sh.c (print_operand): Add %V and %W operand codes.
* config/sh/sh.md (*andsi3_bclr, *iorsi3_bset): New insns.

* gcc.target/sh/sh2a-bclr.c: New test.
* gcc.target/sh/sh2a-bset.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133518 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/sh/sh.c (sh_expand_t_scc): Emit movrt for SH2A if
kkojima [Tue, 25 Mar 2008 13:41:23 +0000 (13:41 +0000)]
* config/sh/sh.c (sh_expand_t_scc): Emit movrt for SH2A if
* config/sh/sh.md (xorsi3_movrt, movrt): New insns.

* gcc.target/sh/sh2a-movrt.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133517 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/sh/sh.md (prefetch): Add condition for SH2A target.
kkojima [Tue, 25 Mar 2008 13:38:45 +0000 (13:38 +0000)]
* config/sh/sh.md (prefetch): Add condition for SH2A target.
(prefetch_sh2a): New.

* gcc.target/sh/sh2a-prefetch.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133516 138bc75d-0d04-0410-961f-82ee72b054a4

13 years ago * config/sh/constraints.md (I28): New constraint.
kkojima [Tue, 25 Mar 2008 13:36:11 +0000 (13:36 +0000)]
* config/sh/constraints.md (I28): New constraint.
* config/sh/sh.c (broken_move): Add support for movi20s.
* config/sh/sh.md (movsi_ie): Add the alternative for

* gcc.target/sh/sh2a-movi20s.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@133514 138bc75d-0d04-0410-961f-82ee72b054a4