platform/upstream/gcc.git
15 years agore PR fortran/37201 (ICE in in gfc_conv_string_parameter)
Tobias Burnus [Sun, 24 Aug 2008 17:16:46 +0000 (19:16 +0200)]
re PR fortran/37201 (ICE in in gfc_conv_string_parameter)

2008-08-24  Tobias Burnus  <burnus@net-b.de>

        PR fortran/37201
        * trans-expr.c (gfc_conv_function_call): Add string_length
        for character-returning bind(C) functions.

2008-08-24  Tobias Burnus  <burnus@net-b.de>

        PR fortran/37201
        * gfortran.dg/bind_c_usage_17.f90: New.
        * gfortran.dg/bind_c_usage_17_c.c: New.

From-SVN: r139537

15 years agoipa-cp.c (ipcp_analyze_node): New function.
Jan Hubicka [Sun, 24 Aug 2008 17:11:13 +0000 (19:11 +0200)]
ipa-cp.c (ipcp_analyze_node): New function.

* ipa-cp.c (ipcp_analyze_node): New function.
(ipcp_update_cloned_node): Use it.
(ipcp_init_stage): Likewise.
* ipa-inline.c (function_insertion_hook_holder): New static var.
(analyze_function): Break out from ....
(inline_generate_summary): Here; register insertion hook.
(cgraph_decide_inlining): Remove hook.
(add_new_function): New function.

From-SVN: r139536

15 years agogfortran.h (gfc_typebound_proc): New struct.
Daniel Kraft [Sun, 24 Aug 2008 16:15:27 +0000 (18:15 +0200)]
gfortran.h (gfc_typebound_proc): New struct.

2008-08-24  Daniel Kraft  <d@domob.eu>

* gfortran.h (gfc_typebound_proc):  New struct.
(gfc_symtree):  New member typebound.
(gfc_find_typebound_proc):  Prototype for new method.
(gfc_get_derived_super_type):  Prototype for new method.
* parse.h (gfc_compile_state):  New state COMP_DERIVED_CONTAINS.
* decl.c (gfc_match_procedure):  Handle PROCEDURE inside derived-type
CONTAINS section.
(gfc_match_end):  Handle new context COMP_DERIVED_CONTAINS.
(gfc_match_private):  Ditto.
(match_binding_attributes), (match_procedure_in_type):  New methods.
(gfc_match_final_decl):  Rewrote to make use of new
COMP_DERIVED_CONTAINS parser state.
* parse.c (typebound_default_access):  New global helper variable.
(set_typebound_default_access):  New callback method.
(parse_derived_contains):  New method.
(parse_derived):  Extracted handling of CONTAINS to new parser state
and parse_derived_contains.
* resolve.c (resolve_bindings_derived), (resolve_bindings_result):  New.
(check_typebound_override), (resolve_typebound_procedure):  New methods.
(resolve_typebound_procedures):  New method.
(resolve_fl_derived):  Call new resolving method for typebound procs.
* symbol.c (gfc_new_symtree):  Initialize new member typebound to NULL.
(gfc_find_typebound_proc):  New method.
(gfc_get_derived_super_type):  New method.

2008-08-24  Daniel Kraft  <d@domob.eu>

* gfortran.dg/finalize_5.f03:  Adapted expected error message to changes
to handling of CONTAINS in derived-type declarations.
* gfortran.dg/typebound_proc_1.f08:  New test.
* gfortran.dg/typebound_proc_2.f90:  New test.
* gfortran.dg/typebound_proc_3.f03:  New test.
* gfortran.dg/typebound_proc_4.f03:  New test.
* gfortran.dg/typebound_proc_5.f03:  New test.
* gfortran.dg/typebound_proc_6.f03:  New test.

From-SVN: r139534

15 years agoacinclude.m4 ([GLIBCXX_ENABLE_CLOCK_GETTIME]): Improve documentation.
Paolo Carlini [Sun, 24 Aug 2008 09:37:07 +0000 (09:37 +0000)]
acinclude.m4 ([GLIBCXX_ENABLE_CLOCK_GETTIME]): Improve documentation.

2008-08-24  Paolo Carlini  <paolo.carlini@oracle.com>

* acinclude.m4 ([GLIBCXX_ENABLE_CLOCK_GETTIME]): Improve documentation.
* doc/xml/manual/configure.xml: Likewise.

From-SVN: r139533

15 years ago* opts.c (decode_options): Revert accidental change enabling ipa-cp.
Jan Hubicka [Sun, 24 Aug 2008 09:29:57 +0000 (11:29 +0200)]
* opts.c (decode_options): Revert accidental change enabling ipa-cp.

From-SVN: r139532

15 years agoacinclude.m4 ([GLIBCXX_ENABLE_CLOCK_GETTIME]): Use [=KIND] in GLIBCXX_ENABLE.
Paolo Carlini [Sun, 24 Aug 2008 01:20:13 +0000 (01:20 +0000)]
acinclude.m4 ([GLIBCXX_ENABLE_CLOCK_GETTIME]): Use [=KIND] in GLIBCXX_ENABLE.

2008-08-23  Paolo Carlini  <paolo.carlini@oracle.com>

* acinclude.m4 ([GLIBCXX_ENABLE_CLOCK_GETTIME]): Use [=KIND] in
GLIBCXX_ENABLE.
* configure: Regenerate.

From-SVN: r139531

15 years agoacinclude.m4 ([GLIBCXX_CHECK_GETTIMEOFDAY]): Change to use GCC_TRY_COMPILE_OR_LINK.
Paolo Carlini [Sun, 24 Aug 2008 00:25:22 +0000 (00:25 +0000)]
acinclude.m4 ([GLIBCXX_CHECK_GETTIMEOFDAY]): Change to use GCC_TRY_COMPILE_OR_LINK.

2008-08-23  Paolo Carlini  <paolo.carlini@oracle.com>

* acinclude.m4 ([GLIBCXX_CHECK_GETTIMEOFDAY]): Change to use
GCC_TRY_COMPILE_OR_LINK.
([GLIBCXX_CHECK_CLOCK_GETTIME]): Rename to
[GLIBCXX_ENABLE_CLOCK_GETTIME], a versatile configure-time option,
[no] by default, since it includes TRY_LINK checks.  librt is also
searched, if requested.
* doc/xml/manual/configure.xml: Document the latter.
* configure.ac: Move the above checks outside native-only.
* configure: Regenerate.

From-SVN: r139530

15 years agoDaily bump.
GCC Administrator [Sun, 24 Aug 2008 00:16:58 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r139528

15 years agoipa-cp.c (constant_val_insert): Remove.
Jan Hubicka [Sat, 23 Aug 2008 22:25:20 +0000 (00:25 +0200)]
ipa-cp.c (constant_val_insert): Remove.

* ipa-cp.c (constant_val_insert): Remove.
(ipcp_propagate_one_const): Remove.
(ipcp_create_replace_map): Always insert replacements to the map.
(ipcp_insert_stage): Do not try to insert statements by hand.
* tree-inline.c (insert_init_stmt): Break out from ...
(setup_one_parameter): ... here; allow NULL BB pointer.
(tree_function_versioning): Use setup_one_parameter to process
replacement map.

From-SVN: r139525

15 years agogfortran.h (gfc_component): Add field "symbol_attribute attr"...
Janus Weil [Sat, 23 Aug 2008 21:04:01 +0000 (23:04 +0200)]
gfortran.h (gfc_component): Add field "symbol_attribute attr"...

2008-08-23  Janus Weil  <janus@gcc.gnu.org>

* gfortran.h (gfc_component): Add field "symbol_attribute attr", remove
fields "pointer", "allocatable", "dimension", "access".
Remove functions "gfc_set_component_attr" and "gfc_get_component_attr".
* interface.c (gfc_compare_derived_types): Ditto.
* trans-array.c (gfc_array_allocate,structure_alloc_comps): Ditto.
* trans-expr.c (gfc_conv_component_ref,gfc_trans_subcomponent_assign,
gfc_conv_structure): Ditto.
* symbol.c (gfc_find_component,free_components,gfc_set_component_attr,
gfc_get_component_attr,verify_bind_c_derived_type,
generate_isocbinding_symbol): Ditto.
* decl.c (build_struct): Ditto.
* dump-parse-tree.c (show_components): Ditto.
* trans-stmt.c (gfc_trans_deallocate): Ditto.
* expr.c (gfc_check_assign,gfc_check_pointer_assign,
gfc_default_initializer): Ditto.
* module.c (mio_component): Ditto.
* trans-types.c (copy_dt_decls_ifequal,gfc_get_derived_type): Ditto.
* resolve.c (has_default_initializer,resolve_structure_cons,
gfc_iso_c_func_interface,find_array_spec,resolve_ref,
resolve_deallocate_expr,resolve_allocate_expr,resolve_fl_derived,
resolve_equivalence_derived): Ditto.
* trans-io.c (transfer_expr): Ditto.
* parse.c (parse_derived): Ditto.
* dependency.c (gfc_check_dependency): Ditto.
* primary.c (gfc_variable_attr): Ditto.

From-SVN: r139524

15 years agotree.c (decl_address_ip_invariant_p): New function.
Jan Hubicka [Sat, 23 Aug 2008 20:28:07 +0000 (22:28 +0200)]
tree.c (decl_address_ip_invariant_p): New function.

* tree.c (decl_address_ip_invariant_p): New function.
* tree.h (decl_address_ip_invariant_p): Declare.
* gimple.c (strip_invariant_refs): Break out from ...
(is_gimple_invariant_address): ... here
(is_gimple_ip_invariant_address): New function.
(is_gimple_ip_invariant): New function.
* gimple.h (is_gimple_ip_invariant_address, is_gimple_ip_invariant):
Declare.

* ipa-cp.c (ipcp_lat_is_const): Remove handling of IPA_CONST_VALUE_REF.
(ipcp_lat_is_insertable): All constants are insertable.
(ipcp_lattice_from_jfunc, ipcp_print_all_lattices): Remove handling of
IPA_CONST_VALUE_REF.
(ipcp_initialize_node_lattices): Propagate all types of operands.
(build_const_val): Do not handle IPA_CONST_VALUE_REF.
(ipcp_create_replace_map): Reformat.
(ipcp_need_redirect_p): Simplify.
(ipcp_insert_stage): Check that argument is used before clonning.
* ipa-prop.c (ipa_print_node_jump_functions): Do not handle IPA_CONST_REF.
(compute_scalar_jump_functions): Simplify using is_gimple_ip_invariat.
(determine_cst_member_ptr): Keep wrapping ADDR_EXPR of members.
(update_call_notes_after_inlining): Expect ADDR_EXPR in operand.
* ipa-prop.h (jump_func_type): Remove IPA_CONST_REF.
(jump_func_type): Remove IPA_CONST_VALUE_REF.
* tree-inline.c (tree_function_versioning): Add variables referenced by
replacing trees.

From-SVN: r139523

15 years agore PR target/37094 (Ada build broken for i586)
Jan Hubicka [Sat, 23 Aug 2008 20:02:08 +0000 (22:02 +0200)]
re PR target/37094 (Ada build broken for i586)

PR target/37094
* i386.c (standard_80387_constant_p): Use optimize_size.

From-SVN: r139522

15 years agore PR fortran/37076 (Concatenation of KIND=4 strings with KIND=4 parameters fails)
Tobias Burnus [Sat, 23 Aug 2008 18:49:43 +0000 (20:49 +0200)]
re PR fortran/37076 (Concatenation of KIND=4 strings with KIND=4 parameters fails)

2008-08-23  Tobias Burnus  <burnus@net-b.de>

        PR fortran/37076
        * arith.c (gfc_arith_concat): Fix concat of kind=4 strings.

2008-08-23  Tobias Burnus  <burnus@net-b.de>

        PR fortran/37076
        * gfortran.dg/widechar_9.f90: New.

From-SVN: r139521

15 years agore PR fortran/37025 (ICE with TRANSFER to non-default-kind character: transfer(int...
Tobias Burnus [Sat, 23 Aug 2008 18:12:30 +0000 (20:12 +0200)]
re PR fortran/37025 (ICE with TRANSFER to non-default-kind character: transfer(int(z'bde4'),4_'a'))

2008-08-23  Tobias Burnus  <burnus@net-b.de>

        PR fortran/37025
        * target-memory.c (gfc_interpret_character): Support
        kind=4 characters.

2008-08-23  Tobias Burnus  <burnus@net-b.de>

        PR fortran/37025
        * gfortran.dg/widechar_8.f90: New.

From-SVN: r139520

15 years agore PR middle-end/37161 (Revision 139225 caused gfortran.dg/vect/pr33301.f -O)
Ira Rosen [Sat, 23 Aug 2008 17:04:12 +0000 (17:04 +0000)]
re PR middle-end/37161 (Revision 139225 caused gfortran.dg/vect/pr33301.f  -O)

PR tree-optimization/37161
* tree-vectorizer.h (vect_get_smallest_scalar_type): Declare.
* tree-vect-analyze.c (vect_get_smallest_scalar_type): New function.
(vect_determine_vectorization_factor): Move the scalar type
retrieval to vect_get_smallest_scalar_type.
(vect_build_slp_tree): Call vect_get_smallest_scalar_type to get
scalar type. Remove redundant computation.
* tree-vect-transform.c (vect_get_constant_vectors): Add argument.
(vect_get_slp_defs): Take the type of RHS into account if
necessary by calling vect_get_smallest_scalar_type. Call
vect_get_constant_vectors with additional argument.

From-SVN: r139518

15 years agore PR other/35648 (-Wall includes -Wwrite-strings)
Manuel López-Ibáñez [Sat, 23 Aug 2008 15:36:32 +0000 (15:36 +0000)]
re PR other/35648 (-Wall includes -Wwrite-strings)

2008-08-23  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

PR 35648
* doc/invoke.texi (Wwrite-strings): Clarify description.

From-SVN: r139517

15 years agoMAINTAINERS: Use correct Umlaut for last name.
Thomas Koenig [Sat, 23 Aug 2008 13:30:18 +0000 (13:30 +0000)]
MAINTAINERS: Use correct Umlaut for last name.

2008-08-23  Thomas Koenig  <tkoenig@gcc.gnu.org>

* MAINTAINERS:  Use correct Umlaut for last name.

From-SVN: r139510

15 years ago[multiple changes]
Paolo Carlini [Sat, 23 Aug 2008 11:28:30 +0000 (11:28 +0000)]
[multiple changes]

2008-08-23  Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/lib/libstdc++.exp (check_v3_target_atomic_builtins): Add.
* testsuite/lib/dg-options.exp (dg-require-atomic-builtins): Likewise.
* testsuite/18_support/exception_ptr/current_exception.cc: Use it.
        * testsuite/18_support/exception_ptr/rethrow_exception.cc: Likewise.
        * testsuite/18_support/exception_ptr/lifespan.cc: Likewise.

2008-08-23  Sebastian Redl <sebastian.redl@getdesigned.at>

Add (again) exception propagation support as per N2179.  Feature is
available only when _GLIBCXX_ATOMIC_BUILTINS_4 is defined.
* libsupc++/exception_ptr.h (exception_ptr, current_exception,
        copy_exception, rethrow_exception): New file, implement exception
propagation.
        * libsupc++/eh_ptr.cc (exception_ptr, current_exception,
        rethrow_exception, __gxx_dependent_exception_cleanup): Likewise.
        * libsupc++/unwind-cxx.h (__cxa_exception): Add reference count.
(__cxa_dependent_exception, __cxa_allocate_dependent_exception,
        __cxa_free_dependent_exception, __get_dependent_exception_from_ue,
        __GXX_INIT_DEPENDENT_EXCEPTION_CLASS, __is_dependent_exception,
        __gxx_dependent_exception_class, __get_object_from_ue,
        __get_object_from_ambiguous_exception): Add.
        (__GXX_INIT_EXCEPTION_CLASS, __gxx_exception_class): Rename.
        (__is_gxx_exception_class): Handle dependent exceptions.
        * libsupc++/eh_arm.cc (__cxa_type_match): Likewise.
        * libsupc++/eh_call.cc (__cxa_call_unexpected): Likewise.
        * libsupc++/eh_personality.cc (__gxx_personality_*): Likewise.
        * libsupc++/eh_type.cc (__cxa_current_exception_type): Likewise.
        * libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception,
        __cxa_free_dependent_exception): Add.
        * libsupc++/eh_throw.cc (__gxx_exception_cleanup): Handle reference
        counting.
        * libsupc++/exception: Conditionally include exception_ptr.h.
        * libsupc++/Makefile.am: Register new files.
        * libsupc++/Makefile.in: Regenerate.
        * config/abi/pre/gnu.ver: Add new symbols.
        * testsuite/18_support/exception_ptr/current_exception.cc: Test the
        core functionality of current_exception().
        * testsuite/18_support/exception_ptr/rethrow_exception.cc: Test the
        core functionality of rethrow_exception().
        * testsuite/18_support/exception_ptr/lifespan.cc: Test the life span of
        exception objects during exception propagation.

From-SVN: r139509

15 years agore PR middle-end/37174 (ICE: in vinfo_for_stmt, at tree-vectorizer.h:546)
Ira Rosen [Sat, 23 Aug 2008 10:42:34 +0000 (10:42 +0000)]
re PR middle-end/37174 (ICE: in vinfo_for_stmt, at tree-vectorizer.h:546)

PR tree-optimization/37174
* tree-vect-analyze.c (vect_get_and_check_slp_defs): Check that the
def stmt is a part of the loop before accessing its stmt_vec_info.

From-SVN: r139508

15 years ago* MAINTAINERS: Move myself from Reviewers to Write after Approval.
Francois-Xavier Coudert [Sat, 23 Aug 2008 08:33:12 +0000 (08:33 +0000)]
* MAINTAINERS: Move myself from Reviewers to Write after Approval.

From-SVN: r139507

15 years agoDaily bump.
GCC Administrator [Sat, 23 Aug 2008 00:17:39 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r139505

15 years agore PR target/11259 ([avr] gcc Double 'andi' missed optimization)
Anatoly Sokolov [Fri, 22 Aug 2008 21:24:56 +0000 (01:24 +0400)]
re PR target/11259 ([avr] gcc Double 'andi' missed optimization)

PR target/11259
* config/avr/avr.md (UNSPEC_SWAP): New constants.
(*swap): New insn pattern.
(*ashlqi3): Rename from ashlqi3 insn pattern.
(ashlqi3): New expanders.
(*lshrqi3): Rename from lshrqi3 insn pattern.
(lshrqi3): New expanders.
(ashlqi3_const4, ashlqi3_const5, ashlqi3_const6, lshrqi3_const4,
lshrqi3_const5, lshrqi3_const6): New splitters.
(andi, ashlqi3_l_const4, ashlqi3_l_const5, ashlqi3_l_const6,
lshrqi3_l_const4, lshrqi3_l_const5, lshrqi3_l_const6): Define
peephole2 patterns.

From-SVN: r139502

15 years agore PR middle-end/37078 (ICE in set_value_range, at tree-vrp.c:401 when compiling...
Richard Guenther [Fri, 22 Aug 2008 21:13:00 +0000 (21:13 +0000)]
re PR middle-end/37078 (ICE in set_value_range, at tree-vrp.c:401 when compiling gmp 4.2.3)

2008-08-22  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/37078
* tree-vrp.c (extract_range_from_unary_expr): Avoid generating
[+INF, +INF] ranges.

* gcc.c-torture/compile/pr37078.c: New testcase.

From-SVN: r139501

15 years agore PR tree-optimization/37143 (ICE in VRP with the auto-vectorizer)
Richard Guenther [Fri, 22 Aug 2008 21:11:48 +0000 (21:11 +0000)]
re PR tree-optimization/37143 (ICE in VRP with the auto-vectorizer)

2008-08-22  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/37143
* tree-vect-transform.c (vect_create_cond_for_align_checks): Build
a conversion statement instead of a copy.

* g++.dg/vect/pr37143.C: New testcase.

From-SVN: r139500

15 years agore PR fortran/30239 (duplicate data type assignment not detected)
Daniel Kraft [Fri, 22 Aug 2008 20:36:12 +0000 (22:36 +0200)]
re PR fortran/30239 (duplicate data type assignment not detected)

2008-08-22  Daniel Kraft  <d@domob.eu>

PR fortran/30239
* symbol.c (gfc_add_type): Warn on -Wsurprising if a function-result
type is re-declared but neither -pedantic nor -std=f* is given and so
this is no error.
* invoke.texi (-Wsurprising): Document this new behaviour.

From-SVN: r139499

15 years ago2008-08-22 Paolo Carlini <paolo.carlini@oracle.com>
Paolo Carlini [Fri, 22 Aug 2008 18:59:41 +0000 (18:59 +0000)]
2008-08-22  Paolo Carlini  <paolo.carlini@oracle.com>

Revert again the N2179 patch.

From-SVN: r139497

15 years agopr21658.c (dg-options): Use -fdump-tree-ccp1-details.
Uros Bizjak [Fri, 22 Aug 2008 18:10:21 +0000 (20:10 +0200)]
pr21658.c (dg-options): Use -fdump-tree-ccp1-details.

* gcc.dg/tree-ssa/pr21658.c (dg-options): Use -fdump-tree-ccp1-details.
(dg-final): Use cleanup-tree-dump "ccp1".
* gcc.dg/tree-prof/ic-misattribution-1a.c: Cleanup tree_profile.
* gcc.dg/ipa/iinline-1.c: Cleanup ipa dump, not tree dump.
* g++.dg/ipa/iinline-1.C: Ditto.
* gfortran.dg/intrinsic_std_1.f90: Cleanup "original" tree dump.
* gfortran.dg/char_eoshift_5.f90: Ditto.
* gfortran.dg/index_2.f90: Ditto.

From-SVN: r139496

15 years agoFix PR#.
Andrew Haley [Fri, 22 Aug 2008 16:17:19 +0000 (16:17 +0000)]
Fix PR#.

2008-08-22  Andrew Haley  <aph@redhat.com>

        PR libgcj/8995:

        * interpret-run.cc (REWRITE_INSN): Null this macro.

        * include/jvm.h (class _Jv_Linker): Declare resolve_mutex, init.
        (read_cpool_entry, write_cpool_entry): New functions.
        * link.cc (_Jv_Linker::resolve_mutex): new.
        (_Jv_Linker::init): New function.
        (_Jv_Linker::resolve_pool_entry): Use {read,write}_cpool_entry
        to ensure atomic access to constant pool entries.

From-SVN: r139493

15 years agore PR libgcj/8995 (race cases in interpreter)
Andrew Haley [Fri, 22 Aug 2008 16:04:29 +0000 (16:04 +0000)]
re PR libgcj/8995 (race cases in interpreter)

2008-08-22  Andrew Haley  <aph@redhat.com>

        PR libgcj/8895:

        * interpret-run.cc (REWRITE_INSN): Null this macro.

        * include/jvm.h (class _Jv_Linker): Declare resolve_mutex, init.
        (read_cpool_entry, write_cpool_entry): New functions.
        * link.cc (_Jv_Linker::resolve_mutex): new.
        (_Jv_Linker::init): New function.
        (_Jv_Linker::resolve_pool_entry): Use {read,write}_cpool_entry
        to ensure atomic access to constant pool entries.

From-SVN: r139492

15 years agoMinor code fix to avoid warning.
Robert Dewar [Fri, 22 Aug 2008 15:47:50 +0000 (15:47 +0000)]
Minor code fix to avoid warning.

From-SVN: r139491

15 years agos-wwdcha.adb: Minor code reorganization Remove dead code
Arnaud Charlet [Fri, 22 Aug 2008 15:46:29 +0000 (17:46 +0200)]
s-wwdcha.adb: Minor code reorganization Remove dead code

2008-08-22  Robert Dewar  <dewar@adacore.com>

* s-wwdcha.adb: Minor code reorganization
Remove dead code

From-SVN: r139490

15 years agos-utf_32.adb (Get_Category): Fix obvious typo
Robert Dewar [Fri, 22 Aug 2008 15:46:13 +0000 (17:46 +0200)]
s-utf_32.adb (Get_Category): Fix obvious typo

2008-08-22  Robert Dewar  <dewar@adacore.com>

* s-utf_32.adb (Get_Category): Fix obvious typo

From-SVN: r139489

15 years agos-sopco4.adb: Minor code fix to avoid warning
Robert Dewar [Fri, 22 Aug 2008 15:46:00 +0000 (17:46 +0200)]
s-sopco4.adb: Minor code fix to avoid warning

2008-08-22  Robert Dewar  <dewar@adacore.com>

* s-sopco4.adb: Minor code fix to avoid warning

* s-sopco5.adb: Minor code fix to avoid warning

* s-strops.adb: Minor code fix to avoid warning

From-SVN: r139488

15 years agolib-xref.ads: Fix typo in subprogram reference definition.
Arnaud Charlet [Fri, 22 Aug 2008 15:45:45 +0000 (17:45 +0200)]
lib-xref.ads: Fix typo in subprogram reference definition.

2008-08-22  Arnaud Charlet  <charlet@adacore.com>

* lib-xref.ads: Fix typo in subprogram reference definition.

From-SVN: r139487

15 years agos-sopco3.adb: Minor code fix to avoid warning
Robert Dewar [Fri, 22 Aug 2008 15:45:29 +0000 (17:45 +0200)]
s-sopco3.adb: Minor code fix to avoid warning

2008-08-22  Robert Dewar  <dewar@adacore.com>

* s-sopco3.adb: Minor code fix to avoid warning

From-SVN: r139486

15 years agochecks.adb (Determine_Range): Deal with values that might be invalid
Arnaud Charlet [Fri, 22 Aug 2008 15:07:34 +0000 (17:07 +0200)]
checks.adb (Determine_Range): Deal with values that might be invalid

2008-08-22  Robert Dewar  <dewar@adacore.com>

* checks.adb (Determine_Range): Deal with values that might be invalid

* opt.adb, opt.ads (Assume_No_Invalid_Values[_Config]): New configuration
switches.

* par-prag.adb: Dummy entry for pragma Assume_No_Invalid_Values

* sem_prag.adb: Implement pragma Assume_No_Default_Values

* snames.adb, snames.ads, snames.h:
Add entries for pragma Assume_No_Invalid_Values

* switch-c.adb: Add processing for -gnatB switch

* usage.adb: Add entry for flag -gnatB (no bad invalid values)

From-SVN: r139484

15 years agoexp_ch3.adb (Build_Init_Statements): Transfer to the body of the init procedure all...
Javier Miranda [Fri, 22 Aug 2008 15:07:18 +0000 (17:07 +0200)]
exp_ch3.adb (Build_Init_Statements): Transfer to the body of the init procedure all the expanded code associated...

2008-08-22  Javier Miranda  <miranda@adacore.com>

* exp_ch3.adb (Build_Init_Statements): Transfer to the body of the
init procedure all the expanded code associated with the spec of
task types and protected types.

From-SVN: r139483

15 years agoopt.ads: Minor code reorganization (put entries in alpha order)
Arnaud Charlet [Fri, 22 Aug 2008 14:56:55 +0000 (16:56 +0200)]
opt.ads: Minor code reorganization (put entries in alpha order)

2008-08-22  Robert Dewar  <dewar@adacore.com>

* opt.ads: Minor code reorganization (put entries in alpha order)

From-SVN: r139481

15 years agosem_util.adb (Has_Preelaborable_Initialization): Revise checking of private types...
Gary Dismukes [Fri, 22 Aug 2008 14:56:32 +0000 (16:56 +0200)]
sem_util.adb (Has_Preelaborable_Initialization): Revise checking of private types to allow for types derived from a private type...

2008-08-22  Gary Dismukes  <dismukes@adacore.com>

* sem_util.adb (Has_Preelaborable_Initialization): Revise checking of
private types to allow for types derived from a private type with
preelaborable initialization, but return False for a private extension
(unless it has the pragma).

From-SVN: r139480

15 years agoexp_aggr.adb (Static_Array_Aggregate): Call Analyze_And_Resolve on the component...
Gary Dismukes [Fri, 22 Aug 2008 14:56:20 +0000 (16:56 +0200)]
exp_aggr.adb (Static_Array_Aggregate): Call Analyze_And_Resolve on the component expression copies rather than...

2008-08-22  Gary Dismukes  <dismukes@adacore.com>

* exp_aggr.adb (Static_Array_Aggregate): Call Analyze_And_Resolve on the
component expression copies rather than directly setting Etype and
Is_Static_Expression.

From-SVN: r139479

15 years agoexp_ch3.adb: Revert previous patch.
Javier Miranda [Fri, 22 Aug 2008 14:55:14 +0000 (16:55 +0200)]
exp_ch3.adb: Revert previous patch.

2008-08-22  Javier Miranda  <miranda@adacore.com>

* exp_ch3.adb: Revert previous patch.

From-SVN: r139478

15 years agoexp_ch3.adb (Build_Init_Statements): Transfer to the body of the init procedure all...
Arnaud Charlet [Fri, 22 Aug 2008 14:38:14 +0000 (16:38 +0200)]
exp_ch3.adb (Build_Init_Statements): Transfer to the body of the init procedure all the expanded code associated...

2008-08-22  Javier Miranda  <miranda@adacore.com>

* exp_ch3.adb (Build_Init_Statements): Transfer to the body of the
init procedure all the expanded code associated with the spec of
task types and protected types.

From-SVN: r139477

15 years agoinitialize.c, adaint.c: Use Lock_Task and Unlock_Task for non-blocking spawn.
Pascal Obry [Fri, 22 Aug 2008 14:37:57 +0000 (16:37 +0200)]
initialize.c, adaint.c: Use Lock_Task and Unlock_Task for non-blocking spawn.

2008-08-22  Pascal Obry  <obry@adacore.com>

* initialize.c, adaint.c: Use Lock_Task and Unlock_Task for non-blocking
spawn.

From-SVN: r139476

15 years agore PR target/37184 (ice in ix86_match_ccmode)
Uros Bizjak [Fri, 22 Aug 2008 13:58:52 +0000 (15:58 +0200)]
re PR target/37184 (ice in ix86_match_ccmode)

        PR target/37184
        * config/i386/i386.c (ix86_match_ccmode): Handle CCAmode,
        CCCmode, CCOmode and CCSmode destination modes.

        PR target/37191
        * config/i386/mmx.md (*vec_extractv2sf_0): Avoid combining registers
        from different units in a single alternative.
        (*vec_extractv2sf_1): Ditto.
        (*vec_extractv2si_0): Ditto.
        (*vec_extractv2si_1): Ditto.
        * config/i386/sse.md (sse2_storehpd): Ditto.
        (sse2_storelpd): Ditto.
        (sse2_loadhpd): Ditto.
        (sse2_loadlpd): Ditto.

        PR target/37197
        * config/i386/i386.md (clzsi2_abm): Fix operand 1 constraints.
        (popcountsi2): Ditto.
        (clzdi2_abm): Ditto.
        (popcountdi2): Ditto.
        (clzhi2_abm): Ditto.
        (popcounthi2): Ditto.

testsuite/ChangeLog:

        PR target/37184
        * gcc.target/i386/pr37184.c: New test.

        PR target/37191
        * gcc.target/i386/pr37191.c: New test.

        PR target/37197
        * gcc.target/i386/pr37197.c: New test.

From-SVN: r139471

15 years agotrans.c: Define FP_ARITH_MAY_WIDEN
Geert Bosch [Fri, 22 Aug 2008 13:29:10 +0000 (13:29 +0000)]
trans.c: Define FP_ARITH_MAY_WIDEN

2008-08-22  Geert Bosch  <bosch@adacore.com>

* gcc-interface/trans.c: Define FP_ARITH_MAY_WIDEN
(convert_with_check): Only use longest_float_type if FP_ARITH_MAY_WIDEN is 0

From-SVN: r139468

15 years ago2008-08-22 Robert Dewar <dewar@adacore.com>
Arnaud Charlet [Fri, 22 Aug 2008 13:27:35 +0000 (15:27 +0200)]
2008-08-22  Robert Dewar  <dewar@adacore.com>

* checks.adb:
(In_Subrange_Of): New calling sequence
(Determine_Range): Prepare for new processing using base type

* exp_ch4.adb:
(Compile_Time_Compare): Use new calling sequence

* exp_ch5.adb:
(Compile_Time_Compare): Use new calling sequence

* sem_eval.adb:
(Compile_Time_Compare): New calling sequence allows dealing with
invalid values.
(In_Subrange_Of): Ditto

* sem_eval.ads:
(Compile_Time_Compare): New calling sequence allows dealing with
invalid values.
(In_Subrange_Of): Ditto

From-SVN: r139467

15 years agoadaint.c: Fix possible race condition on win32_wait().
Pascal Obry [Fri, 22 Aug 2008 13:26:38 +0000 (15:26 +0200)]
adaint.c: Fix possible race condition on win32_wait().

2008-08-22  Pascal Obry  <obry@adacore.com>

* adaint.c: Fix possible race condition on win32_wait().

From-SVN: r139466

15 years ago2008-08-22 Ed Schonberg <schonberg@adacore.com>
Ed Schonberg [Fri, 22 Aug 2008 13:26:28 +0000 (15:26 +0200)]
2008-08-22  Ed Schonberg  <schonberg@adacore.com>

* exp_tss.adb:
(Base_Init_Proc): For a protected subtype, use the base type of the
corresponding record to locate the propoer initialization procedure.

From-SVN: r139465

15 years agosem_ch5.adb (One_Bound): Fix latent bug involving secondary stack
Robert Dewar [Fri, 22 Aug 2008 13:26:19 +0000 (15:26 +0200)]
sem_ch5.adb (One_Bound): Fix latent bug involving secondary stack

2008-08-22  Robert Dewar  <dewar@adacore.com>

* sem_ch5.adb (One_Bound): Fix latent bug involving secondary stack

From-SVN: r139464

15 years agoprj.ads: Minor comment update
Vincent Celier [Fri, 22 Aug 2008 13:26:09 +0000 (15:26 +0200)]
prj.ads: Minor comment update

2008-08-22  Vincent Celier  <celier@adacore.com>

* prj.ads: Minor comment update

From-SVN: r139463

15 years agoexp_dist.adb: Minor reformatting
Robert Dewar [Fri, 22 Aug 2008 13:26:00 +0000 (15:26 +0200)]
exp_dist.adb: Minor reformatting

2008-08-22  Robert Dewar  <dewar@adacore.com>

* exp_dist.adb: Minor reformatting

From-SVN: r139462

15 years agoexp_ch7.ads: Put routines in proper alpha order
Robert Dewar [Fri, 22 Aug 2008 13:25:50 +0000 (15:25 +0200)]
exp_ch7.ads: Put routines in proper alpha order

2008-08-22  Robert Dewar  <dewar@adacore.com>

* exp_ch7.ads: Put routines in proper alpha order

From-SVN: r139461

15 years agoexp_ch7.adb: Minor reformatting
Robert Dewar [Fri, 22 Aug 2008 13:25:41 +0000 (15:25 +0200)]
exp_ch7.adb: Minor reformatting

2008-08-22  Robert Dewar  <dewar@adacore.com>

* exp_ch7.adb: Minor reformatting

From-SVN: r139460

15 years agoexp_ch6.adb: Minor reformatting
Robert Dewar [Fri, 22 Aug 2008 13:25:29 +0000 (15:25 +0200)]
exp_ch6.adb: Minor reformatting

2008-08-22  Robert Dewar  <dewar@adacore.com>

* exp_ch6.adb: Minor reformatting

From-SVN: r139459

15 years agoexp_ch6.ads: Remove pragma Precondition, since it breaks some builds.
Bob Duff [Fri, 22 Aug 2008 13:25:19 +0000 (15:25 +0200)]
exp_ch6.ads: Remove pragma Precondition, since it breaks some builds.

2008-08-22  Bob Duff  <duff@adacore.com>

* exp_ch6.ads: Remove pragma Precondition, since it breaks some builds.

From-SVN: r139458

15 years agosem_ch8.adb (Use_One_Type): Do not emit warning message about redundant use_type_clau...
Ed Schonberg [Fri, 22 Aug 2008 13:25:08 +0000 (15:25 +0200)]
sem_ch8.adb (Use_One_Type): Do not emit warning message about redundant use_type_clause in an instance.

2008-08-22  Ed Schonberg  <schonberg@adacore.com>

* sem_ch8.adb (Use_One_Type): Do not emit warning message about redundant
use_type_clause in an instance.

From-SVN: r139457

15 years agobindgen.adb [VMS] (Gen_Adainit_Ada, [...]): Import and call __gnat_set_features.
Doug Rupp [Fri, 22 Aug 2008 13:24:49 +0000 (15:24 +0200)]
bindgen.adb [VMS] (Gen_Adainit_Ada, [...]): Import and call __gnat_set_features.

2008-08-22  Doug Rupp  <rupp@adacore.com>

* bindgen.adb [VMS] (Gen_Adainit_Ada, Gen_Adainit_C): Import and call
__gnat_set_features.

* init.c
(__gnat_set_features): New function.
(__gnat_features_set): New tracking variable.
(__gl_no_malloc_64): New feature global variable

From-SVN: r139456

15 years agoexp_ch5.adb, [...]: Rename...
Bob Duff [Fri, 22 Aug 2008 12:59:45 +0000 (12:59 +0000)]
exp_ch5.adb, [...]: Rename...

2008-08-22  Bob Duff  <duff@adacore.com>

* exp_ch5.adb, exp_ch7.adb, exp_ch7.ads, exp_util.adb, freeze.adb,
exp_ch4.adb, exp_ch6.ads, exp_ch6.adb, sem_ch6.adb, exp_aggr.adb,
exp_intr.adb, exp_ch3.adb: Rename:
Exp_Ch7.Controlled_Type => Needs_Finalization
Exp_Ch7.CW_Or_Controlled_Type => CW_Or_Has_Controlled_Part
Exp_Ch5.Expand_N_Extended_Return_Statement.Controlled_Type =>
 Has_Controlled_Parts
(Has_Some_Controlled_Component): Fix bug in array case.

From-SVN: r139452

15 years agore PR middle-end/36548 (remainder gives the wrong result for wrapping case with unsig...
Richard Guenther [Fri, 22 Aug 2008 12:43:49 +0000 (12:43 +0000)]
re PR middle-end/36548 (remainder gives the wrong result for wrapping case with unsigned types)

2008-08-22  Richard Guenther  <rguenther@suse.de>

PR middle-end/36548
PR middle-end/37125
* fold-const.c (extract_muldiv_1): Optimize (X * C1) % C2 only
if the multiplication does not overflow.

* gcc.c-torture/execute/pr37125.c: New testcase.

From-SVN: r139450

15 years agoexp_ch6.ads: Minor comment fix
Arnaud Charlet [Fri, 22 Aug 2008 12:42:17 +0000 (14:42 +0200)]
exp_ch6.ads: Minor comment fix

2008-08-22  Bob Duff  <duff@adacore.com>

* exp_ch6.ads: Minor comment fix

From-SVN: r139449

15 years agoexp_ch7.adb: Minor comment fix
Bob Duff [Fri, 22 Aug 2008 12:41:42 +0000 (14:41 +0200)]
exp_ch7.adb: Minor comment fix

2008-08-22  Bob Duff  <duff@adacore.com>

* exp_ch7.adb: Minor comment fix

From-SVN: r139448

15 years agoexp_ch5.adb (Expand_Simple_Function_Return): If secondary stack is involved and the...
Ed Schonberg [Fri, 22 Aug 2008 12:41:30 +0000 (14:41 +0200)]
exp_ch5.adb (Expand_Simple_Function_Return): If secondary stack is involved and the return type is class-wide...

2008-08-22  Ed Schonberg  <schonberg@adacore.com>

* exp_ch5.adb (Expand_Simple_Function_Return): If secondary stack is
involved and the return type is class-wide, use the type of the expression
for the generated access type. Suppress useless discriminant checks on the
allocator.

From-SVN: r139447

15 years agoinit.c: adjust EH support code on Alpha/Tru64 as well.
Eric Botcazou [Fri, 22 Aug 2008 12:41:18 +0000 (14:41 +0200)]
init.c: adjust EH support code on Alpha/Tru64 as well.

2008-08-22  Eric Botcazou  <ebotcazou@adacore.com>

* init.c: adjust EH support code on Alpha/Tru64 as well.

* raise-gcc.c: Add back a couple of comments.

From-SVN: r139446

15 years agos-shasto.ads, [...]: Move Shared_Var_ROpen...
Kevin Pouget [Fri, 22 Aug 2008 12:41:03 +0000 (14:41 +0200)]
s-shasto.ads, [...]: Move Shared_Var_ROpen...

2008-08-22  Kevin Pouget  <pouget@adacore.com>

* s-shasto.ads, s-shasto.adb: Move Shared_Var_ROpen, Shared_Var_WOpen and
Shared_Var_Close procedure specifications from package spec to package body.

* rtsfind.ads: Remove RE_Shared_Var_Close, RE_Shared_Var_ROpen,
RE_Shared_Var_WOpen entries.

* exp_dist.adb: Update RE_Any_Content_Ptr to RE_Any_Container_Ptr in
Build_To_Any_Call, Build_TypeCode_Call and Build_From_Any_Call procedures.

From-SVN: r139445

15 years agosem_ch8.adb: Minor reformatting
Robert Dewar [Fri, 22 Aug 2008 12:40:43 +0000 (14:40 +0200)]
sem_ch8.adb: Minor reformatting

2008-08-22  Robert Dewar  <dewar@adacore.com>

* sem_ch8.adb: Minor reformatting

From-SVN: r139444

15 years ago2008-08-22 Robert Dewar <dewar@adacore.com>
Arnaud Charlet [Fri, 22 Aug 2008 12:13:14 +0000 (14:13 +0200)]
2008-08-22  Robert Dewar  <dewar@adacore.com>

* exp_attr.adb:
(Expand_N_Attribute_Reference): No validity checking on OUT parameter of
Read or Input attribute.

From-SVN: r139443

15 years agoexp_aggr.adb (Static_Array_Aggregate): When a static array aggregate with a range...
Gary Dismukes [Fri, 22 Aug 2008 12:12:04 +0000 (14:12 +0200)]
exp_aggr.adb (Static_Array_Aggregate): When a static array aggregate with a range is transformed into a positional...

2008-08-22  Gary Dismukes  <dismukes@adacore.com>

* exp_aggr.adb (Static_Array_Aggregate): When a static array aggregate
with a range is transformed into a positional aggregate, any copied
component literals should be marked Is_Static_Expression.

* sem_eval.adb (Compile_Time_Known_Value): Don't treat null literals as
not being known at at compile time when Configurable_Run_Time_Mode is
true.

From-SVN: r139442

15 years agoinit.c (__gnat_adjust_context_for_raise): Delete for AIX, HP-UX, Solaris, FreeBSD...
Eric Botcazou [Fri, 22 Aug 2008 12:11:31 +0000 (14:11 +0200)]
init.c (__gnat_adjust_context_for_raise): Delete for AIX, HP-UX, Solaris, FreeBSD, VxWorks and PowerPC/Linux.

2008-08-22  Eric Botcazou  <ebotcazou@adacore.com>

* init.c (__gnat_adjust_context_for_raise): Delete for AIX, HP-UX,
Solaris, FreeBSD, VxWorks and PowerPC/Linux.  For x86{-64}/Linux,
do not adjust the PC anymore.
(__gnat_error_handler): Do not call __gnat_adjust_context_for_raise
on AIX, HP-UX, Solaris, FreeBSD and VxWorks.

* raise-gcc.c (get_call_site_action_for): Use _Unwind_GetIPInfo
instead of _Unwind_GetIP.

From-SVN: r139441

15 years agognat_ugn.texi: Change the description of gnatcheck default rule settings.
Sergey Rybin [Fri, 22 Aug 2008 12:11:03 +0000 (14:11 +0200)]
gnat_ugn.texi: Change the description of gnatcheck default rule settings.

2008-08-22  Sergey Rybin  <rybin@adacore.com>

* gnat_ugn.texi: Change the description of gnatcheck default rule
settings.

From-SVN: r139440

15 years agosem_ch8.adb: Minor reformatting Minor code reorganization (introduce subprogram to...
Thomas Quinot [Fri, 22 Aug 2008 12:10:38 +0000 (14:10 +0200)]
sem_ch8.adb: Minor reformatting Minor code reorganization (introduce subprogram to factor...

2008-08-22  Thomas Quinot  <quinot@adacore.com>

* sem_ch8.adb: Minor reformatting
Minor code reorganization (introduce subprogram to factor duplicated
code).

From-SVN: r139439

15 years agogfortran.h (in_prefix): Removed from this header.
Daniel Kraft [Fri, 22 Aug 2008 10:53:40 +0000 (12:53 +0200)]
gfortran.h (in_prefix): Removed from this header.

2008-08-22  Daniel Kraft  <d@domob.eu>

* gfortran.h (in_prefix): Removed from this header.
* match.h (gfc_matching_prefix): Moved and renamed from `in_prefix'.
* decl.c (in_prefix): Removed from here.
(gfc_match_prefix): Use new name of `gfc_matching_prefix'.
* symbol.c (gfc_check_symbol_typed): Ditto.
* expr.c (check_typed_ns): New helper variable.
(expr_check_typed_help): New helper method.
(gfc_expr_check_typed): Rewrote to use gfc_traverse_expr to do the
work, fixing a minor problem.
* match.c (gfc_matching_prefix): New variable.

From-SVN: r139435

15 years agoexp_attr.adb (Expand_N_Attribute_Reference): In case of access attributes add missing...
Arnaud Charlet [Fri, 22 Aug 2008 09:03:53 +0000 (11:03 +0200)]
exp_attr.adb (Expand_N_Attribute_Reference): In case of access attributes add missing support to handle designated types...

2008-08-22  Javier Miranda  <miranda@adacore.com>

* exp_attr.adb (Expand_N_Attribute_Reference): In case of access
attributes add missing support to handle designated types that come
from the limited view.

* exp_disp.adb (Expand_Interface_Conversion): Remove wrong assertion.

From-SVN: r139432

15 years agovms_data.ads: Add entry for new gnatcheck -mNNN option
Sergey Rybin [Fri, 22 Aug 2008 09:03:30 +0000 (11:03 +0200)]
vms_data.ads: Add entry for new gnatcheck -mNNN option

2008-08-22  Sergey Rybin  <rybin@adacore.com>

* vms_data.ads: Add entry for new gnatcheck -mNNN option

* gnat_ugn.texi: Add description for gnatcheck option '-m'

From-SVN: r139431

15 years agosem_ch8.adb (Use_One_Type): when checking which of two use_type clauses in related...
Ed Schonberg [Fri, 22 Aug 2008 09:03:16 +0000 (11:03 +0200)]
sem_ch8.adb (Use_One_Type): when checking which of two use_type clauses in related units is redundant...

2008-08-22  Ed Schonberg  <schonberg@adacore.com>

* sem_ch8.adb (Use_One_Type): when checking which of two use_type
clauses in related units is redundant, if one of the units is a package
instantiation, use its instance_spec to determine which unit is the
ancestor of the other.

From-SVN: r139430

15 years agomake.adb (Check.File_Not_A_Source_Of): New Boolean function
Arnaud Charlet [Fri, 22 Aug 2008 08:54:46 +0000 (10:54 +0200)]
make.adb (Check.File_Not_A_Source_Of): New Boolean function

2008-08-22  Vincent Celier  <celier@adacore.com>

* make.adb (Check.File_Not_A_Source_Of): New Boolean function
(Check): Check if the file names registered in the ALI file for the
spec, the body and each of the subunits are the ones expected.

From-SVN: r139429

15 years agog-catiio.adb: Code cleanup.
Robert Dewar [Fri, 22 Aug 2008 08:54:14 +0000 (10:54 +0200)]
g-catiio.adb: Code cleanup.

2008-08-22  Robert Dewar  <dewar@adacore.com>

* g-catiio.adb: Code cleanup.

From-SVN: r139428

15 years agognat_ugn.texi: Update the gnatcheck subsection for metric rules acoording to the...
Sergey Rybin [Fri, 22 Aug 2008 08:54:05 +0000 (10:54 +0200)]
gnat_ugn.texi: Update the gnatcheck subsection for metric rules acoording to the latest...

2008-08-22  Sergey Rybin  <rybin@adacore.com>

* gnat_ugn.texi: Update the gnatcheck subsection for metric rules
acoording to the latest changes in the metric rule interface

From-SVN: r139427

15 years ago* c-ppoutput.c (init_pp_output): Initialize src_line to 1.
Nathan Sidwell [Fri, 22 Aug 2008 08:51:32 +0000 (08:51 +0000)]
* c-ppoutput.c (init_pp_output): Initialize src_line to 1.

From-SVN: r139426

15 years agore PR fortran/32095 (Accepts invalid character(len(a)),dimension(1) :: a)
Daniel Kraft [Fri, 22 Aug 2008 07:13:25 +0000 (09:13 +0200)]
re PR fortran/32095 (Accepts invalid character(len(a)),dimension(1) :: a)

2008-08-22  Daniel Kraft  <d@domob.eu>

PR fortran/32095
PR fortran/34228
* gfortran.h (in_prefix): New global.
(gfc_check_symbol_typed), (gfc_check_expr_typed): New methods.
* array.c (match_array_element_spec): Check that bounds-expressions
don't have symbols not-yet-typed in them.
* decl.c (var_element): Check that variable used is already typed.
(char_len_param_value): Check that expression does not contain
not-yet-typed symbols.
(in_prefix): New global.
(gfc_match_prefix): Record using `in_prefix' if we're at the moment
parsing a prefix or not.
* expr.c (gfc_expr_check_typed): New method.
* parse.c (verify_st_order): New argument to disable error output.
(check_function_result_typed): New helper method.
(parse_spec): Check that the function-result declaration, if given in
a prefix, contains no not-yet-typed symbols when the IMPLICIT rules are
parsed.
* symbol.c (gfc_check_symbol_typed): Check that a symbol already has
a type associated to it, otherwise use the IMPLICIT rules or signal
an error.

2008-08-22  Daniel Kraft  <d@domob.eu>

PR fortran/32095
PR fortran/34228
* gfortran.dg/used_before_typed_1.f90: New test.
* gfortran.dg/used_before_typed_2.f90: New test.
* gfortran.dg/used_before_typed_3.f90: New test.
* gfortran.dg/array_constructor_26.f03: Add -std=gnu to not enable
legacy-behaviour for the new check.
* gfortran.dg/array_constructor_27.f03: Ditto.
* gfortran.dg/blockdata_4.f90: Ditto.
* gfortran.dg/bound_2.f90: Reordered declarations to satisfy the check.
* gfortran.dg/result_in_spec_1.f90: Ditto.
* gfortran.dg/argument_checking_7.f90: Adapted expected error messages.

From-SVN: r139425

15 years agoDaily bump.
GCC Administrator [Fri, 22 Aug 2008 00:16:37 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r139421

15 years agoconfigure.ac (HAVE_GAS_CFI_PERSONALITY_DIRECTIVE): Remove spurrious comma from test.
Richard Henderson [Thu, 21 Aug 2008 19:31:02 +0000 (12:31 -0700)]
configure.ac (HAVE_GAS_CFI_PERSONALITY_DIRECTIVE): Remove spurrious comma from test.

        * configure.ac (HAVE_GAS_CFI_PERSONALITY_DIRECTIVE): Remove
        spurrious comma from test.
        * configure: Rebuild.

From-SVN: r139408

15 years agore PR c/30457 (Please warn about va_start(ap, invalid))
Manuel López-Ibáñez [Thu, 21 Aug 2008 19:05:46 +0000 (19:05 +0000)]
re PR c/30457 (Please warn about va_start(ap, invalid))

2008-08-21  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

PR 30457
* builtins.c (fold_builtin_next_arg): Add warning about undefined
behaviour.
testsuite/
* gcc.dg/pr30457.c: New.

From-SVN: r139406

15 years agoc-tree.h (grokfield): New argument.
Aldy Hernandez [Thu, 21 Aug 2008 17:50:01 +0000 (17:50 +0000)]
c-tree.h (grokfield): New argument.

        * c-tree.h (grokfield): New argument.
        * c-decl.c (grokfield): Handle new location argument.
        * c-parser.c (c_parser_struct_declaration): Pass location to
        grokfield.
testsuite/
        * gcc.dg/20011008-1.c: Test column.
        * gcc.dg/20080820.c: New.
        * gcc.dg/fltconst-1.c: Test column.
        * gcc.dg/cpp/cpp.exp: Add -fno-show-column.
        * gcc.dg/cpp/trad/trad.exp: Same.
        * lib/gcc.exp (gcc_target_compile): Remove -fno-show-column.
        * lib/gcc-dg.exp (process-message): Handle columns.

From-SVN: r139403

15 years agoeh_ptr.cc (__gxx_dependent_exception_cleanup): Call __cxa_free_dependent_exception.
Sebastian Redl [Thu, 21 Aug 2008 17:37:23 +0000 (19:37 +0200)]
eh_ptr.cc (__gxx_dependent_exception_cleanup): Call __cxa_free_dependent_exception.

2008-08-21  Sebastian Redl <sebastian.redl@getdesigned.at>

* libsupc++/eh_ptr.cc (__gxx_dependent_exception_cleanup): Call
__cxa_free_dependent_exception.

From-SVN: r139402

15 years agoanchor1.C (foo): Return the return value of ycf->ascent.
Joseph Myers [Thu, 21 Aug 2008 16:32:38 +0000 (17:32 +0100)]
anchor1.C (foo): Return the return value of ycf->ascent.

* g++.dg/opt/anchor1.C (foo): Return the return value of
ycf->ascent.

From-SVN: r139399

15 years agotree-ssa-ccp.c (ccp_fold): Fold VIEW_CONVERT_EXPRs of constants.
Richard Guenther [Thu, 21 Aug 2008 16:15:08 +0000 (16:15 +0000)]
tree-ssa-ccp.c (ccp_fold): Fold VIEW_CONVERT_EXPRs of constants.

2008-08-21  Richard Guenther  <rguenther@suse.de>

* tree-ssa-ccp.c (ccp_fold): Fold VIEW_CONVERT_EXPRs of constants.

* gcc.dg/vect/vect-fold-1.c: Scan ccp1 dump instead of dom1.

From-SVN: r139398

15 years agoclass.c (make_class_data): Don't add field_index when flag_reduced_reflection set.
David Daney [Thu, 21 Aug 2008 16:08:26 +0000 (16:08 +0000)]
class.c (make_class_data): Don't add field_index when flag_reduced_reflection set.

2008-08-21  David Daney  <ddaney@avtrex.com>

* class.c (make_class_data): Don't add field_index when
flag_reduced_reflection set.

From-SVN: r139397

15 years agoFix ChangeLog typo
Nathan Froyd [Thu, 21 Aug 2008 15:45:37 +0000 (15:45 +0000)]
Fix ChangeLog typo

From-SVN: r139394

15 years agolibgomp.exp (libgomp_init): Only set things that depend on blddir if blddir exists.
Nathan Froyd [Thu, 21 Aug 2008 15:37:05 +0000 (15:37 +0000)]
libgomp.exp (libgomp_init): Only set things that depend on blddir if blddir exists.

* testsuite/libgomp.exp (libgomp_init): Only set things that
depend on blddir if blddir exists.
(libgomp_target_compile): Likewise.
* testsuite/libgomp.c++/c++.exp: Likewise.
* testsuite/libgomp.fortran/fortran.exp: Likewise.

From-SVN: r139393

15 years agocgraph.c (first_cgraph_function_insertion_hook): New variable.
Jan Hubicka [Thu, 21 Aug 2008 15:26:59 +0000 (17:26 +0200)]
cgraph.c (first_cgraph_function_insertion_hook): New variable.

* cgraph.c (first_cgraph_function_insertion_hook): New variable.
(cgraph_add_function_insertion_hook, cgraph_remove_function_insertion_hook,
cgraph_call_function_insertion_hooks): New functions.
* cgraph.h (cgraph_add_function_insertion_hook, cgraph_remove_function_insertion_hook,
cgraph_call_function_insertion_hooks): Declare.
* ipa-reference.c (function_insertion_hook_holder): New variable.
(check_operand, look_for_address_of): When checking late, do not care
about module bitmaps.
(add_new_function): New function.
(generate_summary): Register hooks; zero module bitmaps.
(propagate): Unregister hooks.
* ipa-pure-const.c (function_insertion_hook_holder): New variable.
(add_new_function): New function.
(generate_summary): Register hook.
(propagate): Remove hook.

* ipa-cp.c (ipcp_need_redirect_p): Fix to not be constant 0.

* tree-pass.h (pass_ipa_cp): Make ipa_opt_pass.
* ipa-cp.c (ipcp_update_cloned_node): New function.
(build_const_val): Handle functions correctly; bring type logic
into sync with tree-inline.c
(ipcp_init_stage):  Take care of computing stuff needed by
indirect inlining; update clones.
(ipcp_generate_summary): Break out of ipcp_driver.
(ipcp_driver): Do only execution and transformation.
(pass_ipa_cp): Make IPA_PASS.
* tree-ssa-ccp.c (fold_stmt_r): Check type before trying to fold
offset to address.
* ipa-inline.c (inline_indirect_intraprocedural_analysis): When doing
ipcp, some info is already available.
* ipa-prop.c (ipa_count_arguments): Grow edge lists as needed.
* tree-inline.c (remap_ssa_name): Unshare expression.

From-SVN: r139389

15 years agotree-ssa-pre.c (insert_into_preds_of_block): Before inserting a PHI ask VN if it...
Richard Guenther [Thu, 21 Aug 2008 15:18:58 +0000 (15:18 +0000)]
tree-ssa-pre.c (insert_into_preds_of_block): Before inserting a PHI ask VN if it is already available.

2008-08-21  Richard Guenther  <rguenther@suse.de>

* tree-ssa-pre.c (insert_into_preds_of_block): Before inserting
a PHI ask VN if it is already available.
* tree-ssa-sccvn.h (vn_phi_lookup): Declare.
* tree-ssa-sccvn.c (vn_phi_lookup): Export.

From-SVN: r139388

15 years agore PR middle-end/36817 (internal compiler error: in compare_values_warnv)
Richard Guenther [Thu, 21 Aug 2008 13:50:30 +0000 (13:50 +0000)]
re PR middle-end/36817 (internal compiler error: in compare_values_warnv)

2008-08-21  Richard Guenther  <rguenther@suse.de>

PR middle-end/36817
* tree-chrec.c (chrec_apply): Always call chrec_fold_plus which
makes sure to produce a result of the correct type.

* gcc.c-torture/compile/pr36817.c: New testcase.

From-SVN: r139385

15 years agoBackport from LTO branch:
Jan Hubicka [Thu, 21 Aug 2008 12:39:35 +0000 (14:39 +0200)]
Backport from LTO branch:

2008-05-05  Kenneth Zadeck <zadeck@naturalbridge.com>
    Jan Hubicka  <jh@suse.cz>

* ipa-pure-const.c
(init_state, finish_state, set_function_state, generate_summary):
New functions.
(scan_stmt): Renamed from scan_function.  Changed to keep state in
local static vars rather than cgraph aux field.
(propagate): Renamed from static_execute. Changed to keep state in
local static vars rather than cgraph aux field.
(pass_ipa_pure_const): Changed from SIMPLE_IPA_PASS to IPA_PASS.
* tree-pass.h (pass_ipa_pure_const): Turn into IPA_PASS.

2008-07-15  Kenneth Zadeck <zadeck@naturalbridge.com>

* tree-pass.h (pass_ipa_reference): Make into ipa_opt_pass.
* ipa-reference.c (init_function_info, generate_summary,
propagate): New functions.
(analyze_function):  Call init_function_info.
(static_execute): Stripped into generate_summary and propagate.
(pass_ipa_reference): Made into ipa_opt_pass.

From-SVN: r139378

15 years agoMakefile.am: Add -no-undefined
Aaron W. LaFramboise [Thu, 21 Aug 2008 11:58:40 +0000 (05:58 -0600)]
Makefile.am: Add -no-undefined

2008-08-21  Aaron W. LaFramboise  <aaronavay62@aaronwl.com>

* Makefile.am: Add -no-undefined
* Makefile.in: Regenerate.

From-SVN: r139377

15 years agossa-fre-13.c: Remove XFAIL.
Richard Guenther [Thu, 21 Aug 2008 11:31:57 +0000 (11:31 +0000)]
ssa-fre-13.c: Remove XFAIL.

2008-08-21  Richard Guenther  <rguenther@suse.de>

* gcc.dg/tree-ssa/ssa-fre-13.c: Remove XFAIL.
* gcc.dg/tree-ssa/ssa-fre-14.c: Likewise.
* gcc.dg/tree-ssa/ssa-fre-17.c: Likewise.
* gcc.dg/tree-ssa/data-dep-1.c: Likewise.
* gcc.dg/tree-ssa/ltrans-3.c: Likewise.

From-SVN: r139376

15 years agore PR tree-optimization/37181 (FAIL: Divide_1 -O3)
Richard Guenther [Thu, 21 Aug 2008 11:25:28 +0000 (11:25 +0000)]
re PR tree-optimization/37181 (FAIL: Divide_1 -O3)

2008-08-21  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/37181
* tree-vrp.c (extract_range_from_binary_expr): Check for NULL
folding result.
(extract_range_from_unary_expr): Likewise.

From-SVN: r139375

15 years agore PR testsuite/37182 (Revision 139286 caused gcc.dg/pr17506.c and gcc.dg/uninit...
Richard Guenther [Thu, 21 Aug 2008 11:22:52 +0000 (11:22 +0000)]
re PR testsuite/37182 (Revision 139286 caused gcc.dg/pr17506.c and gcc.dg/uninit-15.c)

2008-08-21  Richard Guenther  <rguenther@suse.de>

PR testsuite/37182
* gcc.dg/pr17506.c: Remove duplicate testcase.
* gcc.dg/uninit-15.c: Adjust to allow for both correct
behaviors, one xfailed.

From-SVN: r139374

15 years agodiagnostic.c (pedwarn_at): Rename as pedwarn.
Manuel López-Ibáñez [Thu, 21 Aug 2008 10:55:13 +0000 (10:55 +0000)]
diagnostic.c (pedwarn_at): Rename as pedwarn.

2008-08-21  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

* diagnostic.c (pedwarn_at): Rename as pedwarn.
(pedwarn): Delete.
* toplev.h (pedwarn_at): Likewise.
* builtins.c: Update all calls to pedwarn.
* c-lex.c: Likewise.
* toplev.c: Likewise.
* c-tree.h: Likewise.
* c-decl.c: Likewise.
* c-errors.c: Likewise.
* c-typeck.c: Likewise.
* c-common.c: Likewise.
* c-parser.c: Likewise.
cp/
* typeck.c: Update all calls to pedwarn.
* decl.c: Likewise.
* call.c: Likewise.
* error.c: Likewise.
* pt.c: Likewise.
* name-lookup.c: Likewise.
* parser.c: Likewise.
fortran/
* f95-lang.c: Update all calls to pedwarn.

From-SVN: r139373

15 years agochar_traits.h (char_traits<char16_t>:: assign(char_type*, size_t, char_type), [....
Paolo Carlini [Thu, 21 Aug 2008 01:06:45 +0000 (01:06 +0000)]
char_traits.h (char_traits<char16_t>:: assign(char_type*, size_t, char_type), [...]): For now, just open-code.

2008-08-20  Paolo Carlini  <paolo.carlini@oracle.com>

* include/bits/char_traits.h (char_traits<char16_t>::
assign(char_type*, size_t, char_type), char_traits<char32_t>::
assign(char_type*, size_t, char_type)): For now, just open-code.

From-SVN: r139367

15 years agore PR target/31070 (ICE in function_arg_slotno)
Joseph Myers [Thu, 21 Aug 2008 00:17:45 +0000 (01:17 +0100)]
re PR target/31070 (ICE in function_arg_slotno)

PR target/31070
* config/sparc/sparc.c (function_arg_slotno): Handle structure
with MODE_VECTOR_INT mode.

From-SVN: r139363