Jason Merrill
2401726e18
re PR c++/41970 (use of a type with no linkage to declare a variable with linkage)
...
PR c++/41970
* decl.c (grokvardecl): Tweak warning message.
(grokfndecl): Likewise.
From-SVN: r158071
2010-04-07 11:54:17 -04:00
Richard Guenther
2ea9dc6459
ipa-reference.c (mark_load): Use get_base_address.
...
2010-04-07 Richard Guenther <rguenther@suse.de>
* ipa-reference.c (mark_load): Use get_base_address.
(mark_store): Likewise.
* tree-ssa-ccp.c (gimplify_and_update_call_from_tree): Avoid
inserting GIMPLE_NOPs into the IL.
* tree-ssa-structalias.c (get_constraint_for_component_ref):
Explicitly strip handled components and indirect references.
* fold-const.c (fold_unary_loc): Do not strip qualifiers when
folding address expressions.
* gimple.c (gimple_ior_addresses_taken_1): Use get_base_address.
* tree-ssa-alias.c (decl_refs_may_alias_p): Do not use
operand_equal_p to compare decls.
(ptr_deref_may_alias_decl_p): Likewise.
* tree-ssa-operands.c (get_asm_expr_operands): Simplify
* tree-ssa-forwprop.c (forward_propagate_into_gimple_cond):
Handle reversed comparison ops.
* tree-sra.c (asm_visit_addr): Use get_base_address.
* ipa-prop.c (visit_store_addr_for_mod_analysis): Use
get_base_address.
* ipa-reference.c (mark_address): Use get_base_address.
From-SVN: r158069
2010-04-07 15:31:37 +00:00
Dodji Seketeli
5fd5c97a34
re PR c++/42697 (ice-on-legal-code: template class template function local objects)
...
Fix PR c++/42697
gcc/cp/ChangeLog:
PR c++/42697
*pt.c (tsubst_decl): Get the arguments of a specialization from
the specialization template, not from the most general template.
gcc/testsuite/ChangeLog:
PR c++/42697
* g++.dg/template/crash94.C: New test.
From-SVN: r158068
2010-04-07 17:16:12 +02:00
Dodji Seketeli
7c094c1151
re PR c++/40239 (Aggregate initialization requires copy constructor)
...
Fix PR c++/40239
gcc/cp/ChangeLog:
PR c++/40239
* typeck2.c (process_init_constructor_record):
value-initialize members that are are not explicitely
initialized.
gcc/testsuite/ChangeLog:
PR c++/40239
* g++.dg/init/aggr5.C: New test.
* g++.dg/init/aggr5.C: New test.
From-SVN: r158066
2010-04-07 17:11:42 +02:00
Richard Guenther
95d938ee6f
tree-ssa-forwprop.c (forward_propagate_addr_expr): Propagate constants everywhere.
...
2010-04-07 Richard Guenther <rguenther@suse.de>
* tree-ssa-forwprop.c (forward_propagate_addr_expr):
Propagate constants everywhere.
From-SVN: r158063
2010-04-07 14:34:35 +00:00
Jakub Jelinek
1a299ae4f2
re PR debug/43516 ("-fcompare-debug failure" at -O2)
...
PR debug/43516
* tree.c (MAX_INT_CACHED_PREC): Define.
(nonstandard_integer_type_cache): New array.
(build_nonstandard_integer_type): Cache results for precision
<= MAX_INT_CACHED_PREC.
From-SVN: r158062
2010-04-07 16:23:35 +02:00
Richard Guenther
0d3c82d66e
invoke.texi (-fargument-alias, [...]): Remove.
...
2010-04-07 Richard Guenther <rguenther@suse.de>
* doc/invoke.texi (-fargument-alias, -fargument-noalias,
-fargument-noalias-global, -fargument-noalias-anything): Remove.
* common.opt: Likewise.
* tree-ssa-structalias.c (intra_create_variable_infos): Adjust
comment.
* alias.c (base_alias_check): Remove flag_argument_noalias
handling.
(nonoverlapping_memrefs_p): Likewise.
* emit-rtl.c (set_mem_attributes_minus_bitpos): Likewise.
* opts.c (common_handle_option): Handle OPT_fargument_alias,
OPT_fargument_noalias, OPT_fargument_noalias_anything and
OPT_fargument_noalias_global for backward compatibility.
fortran/
* options.c (gfc_init_options): Do not set.
From-SVN: r158060
2010-04-07 13:08:24 +00:00
Richard Guenther
12bd5a1e9f
re PR tree-optimization/43270 (array-bounds false negative)
...
2010-04-07 Richard Guenther <rguenther@suse.de>
PR tree-optimization/43270
* tree-vrp.c (check_array_ref): Fix flexible array member
detection.
* tree-ssa-sccvn.h (fully_constant_vn_reference_p): Declare.
* tree-ssa-pre.c (phi_translate_1): Adjust.
(fully_constant_expression): Split out vn_reference handling to ...
* tree-ssa-sccvn.c (fully_constant_vn_reference_p): ... here.
Fold reads from constant strings.
(vn_reference_lookup): Handle fully constant references.
(vn_reference_lookup_pieces): Likewise.
* Makefile.in (expmed.o-warn): Add -Wno-error.
* g++.dg/warn/Warray-bounds-4.C: New testcase.
* gcc.dg/Warray-bounds-7.c: Likewise.
From-SVN: r158058
2010-04-07 12:31:32 +00:00
Martin Jambor
a775239672
tree-sra.c (find_param_candidates): Allow scalar va_list types.
...
2010-04-07 Martin Jambor <mjambor@suse.cz>
* tree-sra.c (find_param_candidates): Allow scalar va_list types.
From-SVN: r158057
2010-04-07 13:43:38 +02:00
Eric Botcazou
b1fa9126ab
exp_pakd.adb (Create_Packed_Array_Type): Always use a modular type if the size is small enough.
...
* exp_pakd.adb (Create_Packed_Array_Type): Always use a modular type
if the size is small enough. Propagate the alignment if there is an
alignment clause on the original array type.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Subtype>
Deal with under-aligned packed array types. Copy the size onto the
justified modular type and don't lay it out again. Likewise for the
padding type built for other under-aligned subtypes.
* gcc-interface/utils.c (finish_record_type): Do not set a default mode
on the type.
From-SVN: r158056
2010-04-07 11:38:06 +00:00
Eric Botcazou
19c8469429
decl.c (gnat_to_gnu_entity): Set default alignment on the RETURN type built for the Copy-In Copy-Out mechanism.
...
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Procedure>: Set default
alignment on the RETURN type built for the Copy-In Copy-Out mechanism.
From-SVN: r158054
2010-04-07 10:51:30 +00:00
Eric Botcazou
55ba23c404
trans.c (call_to_gnu): In the return-by-target-ptr case do not set the result type if...
...
* gcc-interface/trans.c (call_to_gnu): In the return-by-target-ptr case
do not set the result type if there is a specified target and do not
convert the result in any cases.
(protect_multiple_eval): Make direct SAVE_EXPR for CALL_EXPR.
(maybe_stabilize_reference) <COMPOUND_EXPR>: Merge with CALL_EXPR.
From-SVN: r158053
2010-04-07 10:49:53 +00:00
Iain Sandoe
6392bea602
re PR driver/41594 (-static-libstdc++ is not recognized as valid by the gcc driver.)
...
2010-04-07 Iain Sandoe <iains@gcc.gnu.org>
PR driver/41594
* gcc.c: Add -static-libstdc++ to list of recognized options.
From-SVN: r158052
2010-04-07 10:40:06 +00:00
Rainer Orth
9d151aff95
Update comment for last commit.
...
From-SVN: r158051
2010-04-07 10:35:19 +00:00
Rainer Orth
9af272207f
config.gcc (i[34567]86-*-solaris2*): Default with_tune_32 to generic.
...
* config.gcc (i[34567]86-*-solaris2*): Default with_tune_32 to
generic.
From-SVN: r158049
2010-04-07 10:30:32 +00:00
Richard Guenther
83a416b095
re PR rtl-optimization/42617 (TARGET_MEM_REF and plain INDIRECT_REFs are not handled by the RTL oracle)
...
2010-04-07 Richard Guenther <rguenther@suse.de>
PR middle-end/42617
* expr.c (expand_expr_real_1): For TARGET_MEM_REFs with
pointer bases build simple mem attributes to retain
points-to information.
From-SVN: r158048
2010-04-07 10:15:05 +00:00
Jie Zhang
6addabbbe8
re PR c++/42556 (Unnecessary generation of a zero initializer for array with C++)
...
cp/
PR c++/42556
* typeck2.c (split_nonconstant_init_1): Drop empty CONSTRUCTOR
when all of its elements are non-constant and have been split out.
testsuite/
PR c++/42556
* g++.dg/init/pr42556.C: New test.
From-SVN: r158047
2010-04-07 10:14:45 +00:00
Richard Guenther
366f945f9b
re PR rtl-optimization/42617 (TARGET_MEM_REF and plain INDIRECT_REFs are not handled by the RTL oracle)
...
2010-04-07 Richard Guenther <rguenther@suse.de>
PR middle-end/42617
* alias.c (ao_ref_from_mem): Without MEM_OFFSET or MEM_SIZE
preserve points-to related information.
From-SVN: r158046
2010-04-07 10:14:17 +00:00
Richard Guenther
56c47f2271
re PR rtl-optimization/42617 (TARGET_MEM_REF and plain INDIRECT_REFs are not handled by the RTL oracle)
...
2010-04-07 Richard Guenther <rguenther@suse.de>
PR middle-end/42617
* emit-rtl.c (set_mem_attributes_minus_bitpos): Do not
discard plain indirect references.
* fold-const.c (operand_equal_p): Guard against NULL_TREE
type.
* tree.c (tree_nop_conversion): Likewise.
From-SVN: r158045
2010-04-07 10:13:25 +00:00
Dodji Seketeli
a42f121709
re PR debug/43628 (in-class func-ptr type parameter has unspecified DW_AT_type)
...
Fix PR debug/43628
gcc/ChangeLog:
PR debug/43628
* dwarf2out.c (modified_type_die): Ignore artificial typedefs.
gcc/testsuite/ChangeLog:
PR debug/43628
* g++.dg/debug/dwarf2/typedef2.C: New test.
From-SVN: r158044
2010-04-07 11:59:04 +02:00
Kai Tietz
b97b26342e
i386.c (ix86_handle_cconv_attribute): Ignore calling convention attributes on METHOD_TYPEs for w64 ABI, too.
...
2010-04-06 Kai Tietz <kai.tietz@onevision.com>
* config/i386/i386.c (ix86_handle_cconv_attribute): Ignore
calling convention attributes on METHOD_TYPEs for w64 ABI, too.
From-SVN: r158042
2010-04-07 10:04:59 +02:00
Sebastian Pop
62ef243189
Fix comments.
...
2010-04-07 Sebastian Pop <sebastian.pop@amd.com>
* tree-if-conv.c: Fix indentation and comments.
From-SVN: r158041
2010-04-07 06:33:55 +00:00
Sebastian Pop
baaa8e9638
Sort static functions in topological order.
...
2010-04-07 Sebastian Pop <sebastian.pop@amd.com>
* tree-if-conv.c: Sort static functions in topological order.
From-SVN: r158040
2010-04-07 06:33:45 +00:00
Sebastian Pop
b6779d815b
Fix comments in ifconvert.
...
2010-04-07 Sebastian Pop <sebastian.pop@amd.com>
* tree-if-conv.c: Fix indentation and comments.
From-SVN: r158039
2010-04-07 06:33:35 +00:00
GCC Administrator
bdd277f3a0
Daily bump.
...
From-SVN: r158038
2010-04-07 00:19:41 +00:00
Dodji Seketeli
c88199cdaf
redeclaration-1.C: Moved from c-c++-common/dwarf2/redeclaration-1.C
...
2010-04-06 Dodji Seketeli <dodji@redhat.com>
* g++.dg/debug/dwarf2/redeclaration-1.C: Moved from
c-c++-common/dwarf2/redeclaration-1.C
From-SVN: r158031
2010-04-06 23:26:35 +02:00
Jason Merrill
d4a2b48623
parser.c (cp_parser_class_specifier): Set class location to that of IDENTIFIER_NODE instead of '{' when possible.
...
* parser.c (cp_parser_class_specifier): Set class location to that
of IDENTIFIER_NODE instead of '{' when possible.
* semantics.c (begin_class_definition): Do not overide locations
with less precise ones.
From-SVN: r158030
2010-04-06 17:13:07 -04:00
Sebastian Pop
9310a3e269
Add ChangeLog entries.
...
From-SVN: r158029
2010-04-06 21:05:06 +00:00
Sebastian Pop
b8132a7dfb
Fix 473.astar miscompile.
...
2010-04-05 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/43519
* graphite-clast-to-gimple.c (max_signed_precision_type): Use
lang_hooks.types.type_for_size instead of build_nonstandard_integer_type.
When converting an unsigned type to signed, double its precision.
(gcc_type_for_interval): Use lang_hooks.types.type_for_size.
(gcc_type_for_iv_of_clast_loop): Call max_signed_precision_type.
(graphite_create_new_loop_guard): When ub + 1 wraps around, use lb <= ub.
From-SVN: r158028
2010-04-06 21:03:37 +00:00
Sebastian Pop
dbe0d65216
Use POINTER_PLUS_EXPR for pointer types.
...
2010-04-04 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/43519
* graphite-clast-to-gimple.c (graphite_create_new_loop_guard): Use
POINTER_PLUS_EXPR for pointer types.
* gcc.dg/graphite/id-19.c: New.
From-SVN: r158027
2010-04-06 21:02:25 +00:00
Sebastian Pop
bd32f344ed
Compute min and max bounds for IVs and infer types.
...
2010-04-04 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/43519
* Makefile.in (graphite-clast-to-gimple.o): Depends on langhooks.h.
* graphite-clast-to-gimple.c: Include langhooks.h.
(max_signed_precision_type): New.
(max_precision_type): Takes two types as arguments.
(precision_for_value): New.
(precision_for_interval): New.
(gcc_type_for_interval): New.
(gcc_type_for_value): New.
(gcc_type_for_clast_term): New.
(gcc_type_for_clast_red): New.
(gcc_type_for_clast_bin): New.
(gcc_type_for_clast_expr): Split up into several functions.
(gcc_type_for_clast_eq): Rewritten.
(compute_bounds_for_level): New.
(compute_type_for_level_1): New.
(compute_type_for_level): New.
(gcc_type_for_cloog_iv): Removed.
(gcc_type_for_iv_of_clast_loop): Rewritten.
(graphite_create_new_loop): Compute the lower and upper bound types
with gcc_type_for_clast_expr.
(graphite_create_new_loop_guard): Same.
(find_cloog_iv_in_expr): Removed.
(compute_cloog_iv_types_1): Removed.
(compute_cloog_iv_types): Removed.
(gloog): Do not call compute_cloog_iv_types.
* graphite-sese-to-poly.c (new_gimple_bb): Do not initialize
GBB_CLOOG_IV_TYPES.
(free_data_refs_aux): Do not free GBB_CLOOG_IV_TYPES.
* sese.h (struct gimple_bb): Removed field cloog_iv_types.
(GBB_CLOOG_IV_TYPES): Removed.
* gcc.dg/graphite/run-id-pr42644.c: Call abort.
From-SVN: r158026
2010-04-06 21:01:16 +00:00
Sebastian Pop
79d03cf81b
Add extra checks for places assuming one argument loop close SSA form.
...
2010-04-01 Sebastian Pop <sebastian.pop@amd.com>
* graphite-sese-to-poly.c (rewrite_close_phi_out_of_ssa): Assert that
gimple_phi_num_args of the loop close SSA phi node is equal to 1.
(detect_commutative_reduction): Same.
From-SVN: r158025
2010-04-06 21:00:12 +00:00
Sebastian Pop
a3b9e73ca3
Avoid calling verify_ssa twice in verify_loop_closed_ssa.
...
2010-04-06 Sebastian Pop <sebastian.pop@amd.com>
* graphite-clast-to-gimple.c (graphite_verify): Remove redundant
call to verify_ssa. Invoke verify_loop_closed_ssa with an extra
argument.
* graphite-scop-detection.c (canonicalize_loop_closed_ssa_form): Same.
* graphite-sese-to-poly.c (rewrite_reductions_out_of_ssa): Same.
(rewrite_commutative_reductions_out_of_ssa): Same.
* passes.c (execute_function_todo): Call verify_ssa for every pass
in the LNO. Invoke verify_loop_closed_ssa with an extra argument.
* tree-flow.h (verify_loop_closed_ssa): Update declaration.
* tree-parloops.c (parallelize_loops): Invoke verify_loop_closed_ssa
with an extra argument.
* tree-ssa-loop-manip.c (check_loop_closed_ssa_stmt): Same. Call
verify_ssa only when the extra argument is true.
(gimple_duplicate_loop_to_header_edge): Invoke verify_loop_closed_ssa
with an extra argument.
(tree_transform_and_unroll_loop): Same.
From-SVN: r158021
2010-04-06 19:20:47 +00:00
Sebastian Pop
98b6e9dda5
Always execute verify_loop_closed_ssa at LNO level.
...
2010-04-06 Sebastian Pop <sebastian.pop@amd.com>
* passes.c (execute_function_todo): Call verify_loop_closed_ssa
for all the passes of the LNO having LOOP_CLOSED_SSA.
* tree-if-conv.c (pass_if_conversion): Remove TODO_verify_loops.
* tree-loop-distribution.c (pass_loop_distribution): Same.
* tree-pass.h (TODO_verify_loops): Removed.
* tree-ssa-loop.c (pass_tree_loop_init): Same.
(pass_lim): Same.
(pass_tree_unswitch): Same.
(pass_predcom): Same.
(pass_vectorize): Same.
(pass_linear_transform): Same.
(pass_graphite_transforms): Same.
(pass_iv_canon): Same.
(pass_complete_unroll): Same.
(pass_complete_unrolli): Same.
(pass_parallelize_loops): Same.
(pass_loop_prefetch): Same.
(pass_iv_optimize): Same.
From-SVN: r158020
2010-04-06 19:20:29 +00:00
Changpeng Fang
c86a394778
re PR tree-optimization/32824 (Missed reduction vectorizer after store to global is LIM'd)
...
Fix PR32824.
2010-04-06 Changpeng Fang <changpeng.fang@amd.com>
PR middle-end/32824
* passes.c (init_optimization_passes): Move pass_lim before
pass_copy_prop and pass_dce_loop.
* gcc.dg/vect/pr32824: New.
From-SVN: r158018
2010-04-06 19:19:41 +00:00
Tobias Burnus
f4d1d50a5a
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
...
2010-04-06 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* array.c (gfc_match_array_spec): Add error for -fcoarray=none.
* match.c (gfc_match_critical, sync_statement): Ditto.
* gfortran.h (gfc_fcoarray): New enum.
(gfc_option_t): Use it.
* lang.opt (fcoarray): Add new flag.
* invoke.texi (fcoarray): Document it.
* options.c (gfc_init_options,gfc_handle_option): Handle
* -fcoarray=.
(gfc_handle_coarray_option): New function.
2010-04-06 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* gfortran.dg/coarray_2.f90: Add dg-options -fcoarray=single.
* gfortran.dg/coarray_3.f90: Ditto.
* gfortran.dg/coarray_4.f90: Ditto.
* gfortran.dg/coarray_5.f90: Ditto.
* gfortran.dg/coarray_6.f90: Ditto.
* gfortran.dg/coarray_7.f90: Ditto.
* gfortran.dg/coarray_8.f90: Ditto.
* gfortran.dg/coarray_9.f90: New -fcoarray=none test.
From-SVN: r158016
2010-04-06 21:03:10 +02:00
Jakub Jelinek
377949813a
re PR target/43667 (ICE with __builtin_ia32_vpermil2p* and -mavx)
...
PR target/43667
* config/i386/i386.c (bdesc_multi_arg): Use OPTION_MASK_ISA_XOP
instead of OPTION_MASK_ISA_AVX for __builtin_ia32_vpermil2p*.
(ix86_expand_args_builtin): Use V*_FTYPE_* enum codes instead of
MULTI_* defines for 4 argument vpermil2p* builtins.
From-SVN: r158015
2010-04-06 20:41:25 +02:00
Tobias Burnus
178f9aa17e
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
...
2010-04-06 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* gfortran.h (gfc_array_spec): Add cotype.
* array.c (gfc_match_array_spec,gfc_set_array_spec): Use it
and defer error diagnostic.
* resolve.c (resolve_fl_derived): Add missing check.
(resolve_symbol): Add cotype/type check.
* parse.c (parse_derived): Fix setting of coarray_comp.
2010-04-06 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* gfortran.dg/coarray_4.f90: Fix test.
* gfortran.dg/coarray_6.f90: Add more tests.
From-SVN: r158014
2010-04-06 20:23:56 +02:00
Uros Bizjak
d079b87fab
i386-protos.h (x86_maybe_negate_const_int): Declare.
...
* config/i386/i386-protos.h (x86_maybe_negate_const_int): Declare.
* config/i386/i386.c (x86_maybe_negate_const_int): New.
(x86_output_mi_thunk): Use x86_maybe_negate_const_int.
* config/i386/i386.md (*add<mode>_1, *addsi_1_zext, *addhi_1,
*addhi_1_lea, *addqi_1, *addqi_1_lea, *addqi_1_slp, *add<mode>_2,
*addsi_2_zext, *addhi_2, *addqi_2, *add<mode>_3, *addsi_3_zext,
*addhi_3, *addqi_3,*add<mode>_5, *addhi_5, *addqi_5):
Use x86_maybe_negate_const_int to output insn mnemonic.
(*adddi_4, *addsi_4, *addhi_4, *addqi_4): Ditto. Remove overflow
check from instruction predicate. Update comments.
* config/i386/sync.md (sync_add<mode>): Use
x86_maybe_negate_const_int to output insn mnemonic.
From-SVN: r158013
2010-04-06 20:18:42 +02:00
Tobias Burnus
be59db2d47
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
...
2010-04-06 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* array.c (gfc_free_array_spec,gfc_resolve_array_spec,
match_array_element_spec,gfc_copy_array_spec,
gfc_compare_array_spec): Include corank.
(match_array_element_spec,gfc_set_array_spec): Support codimension.
* decl.c (build_sym,build_struct,variable_decl,
match_attr_spec,attr_decl1,cray_pointer_decl,
gfc_match_volatile): Add codimension.
(gfc_match_codimension): New function.
* dump-parse-tree.c (show_array_spec,show_attr): Support
* codimension.
* gfortran.h (symbol_attribute,gfc_array_spec): Ditto.
(gfc_add_codimension): New function prototype.
* match.h (gfc_match_codimension): New function prototype.
(gfc_match_array_spec): Update prototype
* match.c (gfc_match_common): Update gfc_match_array_spec call.
* module.c (MOD_VERSION): Bump.
(mio_symbol_attribute): Support coarray attributes.
(mio_array_spec): Add corank support.
* parse.c (decode_specification_statement,decode_statement,
parse_derived): Add coarray support.
* resolve.c (resolve_formal_arglist, was_declared,
is_non_constant_shape_array, resolve_fl_variable,
resolve_fl_derived, resolve_symbol): Add coarray support.
* symbol.c (check_conflict, gfc_add_volatile, gfc_copy_attr,
gfc_build_class_symbol): Add coarray support.
(gfc_add_codimension): New function.
2010-04-06 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* gfortran.dg/coarray_4.f90: New test.
* gfortran.dg/coarray_5.f90: New test.
* gfortran.dg/coarray_6.f90: New test.
From-SVN: r158012
2010-04-06 20:16:13 +02:00
Tobias Burnus
385e814412
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
...
2010-04-06 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* iso-fortran-env.def: Add the integer parameters
* atomic_int_kind,
atomic_logical_kind, iostat_inquire_internal_unit, stat_locked,
stat_locked_other_image, stat_stopped_image and stat_unlocked of
Fortran 2008.
* intrinsic.texi (iso_fortran_env): Ditto.
* libgfortran.h (libgfortran_stat_codes): New enum.
* module.c (use_iso_fortran_env_module): Honour -std= when
* loading
constants from the intrinsic module.
2010-04-06 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* gfortran.dg/iso_fortran_env_5.f90: New test.
* gfortran.dg/iso_fortran_env_6.f90: New test.
From-SVN: r158011
2010-04-06 19:58:50 +02:00
Tobias Burnus
d0a4a61c3d
re PR fortran/39997 (Procedure(), pointer & implicit typing: rejects-valid / accepts-invalid?)
...
2010-04-06 Tobias Burnus <burnus@net-b.de>
PR fortran/39997
* intrinsic.c (add_functions): Add num_images.
* decl.c (gfc_match_end): Handle END CRITICAL.
* intrinsic.h (gfc_simplify_num_images): Add prototype.
* dump-parse-tree.c (show_code_node): Dump CRITICAL, ERROR STOP,
and SYNC.
* gfortran.h (gfc_statement): Add enum items for those.
(gfc_exec_op) Ditto.
(gfc_isym_id): Add num_images.
* trans-stmt.c (gfc_trans_stop): Handle ERROR STOP.
(gfc_trans_sync,gfc_trans_critical): New functions.
* trans-stmt.h (gfc_trans_stop,gfc_trans_sync,
gfc_trans_critical): Add/update prototypes.
* trans.c (gfc_trans_code): Handle CRITICAL, ERROR STOP,
and SYNC statements.
* trans.h (gfor_fndecl_error_stop_string) Add variable.
* resolve.c (resolve_sync): Add function.
(gfc_resolve_blocks): Handle CRITICAL.
(resolve_code): Handle CRITICAL, ERROR STOP,
(resolve_branch): Add CRITICAL constraint check.
and SYNC statements.
* st.c (gfc_free_statement): Add new statements.
* trans-decl.c (gfor_fndecl_error_stop_string): Global variable.
(gfc_build_builtin_function_decls): Initialize it.
* match.c (gfc_match_if): Handle ERROR STOP and SYNC.
(gfc_match_critical, gfc_match_error_stop, sync_statement,
gfc_match_sync_all, gfc_match_sync_images,
gfc_match_sync_memory):
New functions.
(match_exit_cycle): Handle CRITICAL constraint.
(gfc_match_stopcode): Handle ERROR STOP.
* match.h (gfc_match_critical, gfc_match_error_stop,
gfc_match_sync_all, gfc_match_sync_images,
gfc_match_sync_memory): Add prototype.
* parse.c (decode_statement, gfc_ascii_statement,
parse_executable): Handle new statements.
(parse_critical_block): New function.
* parse.h (gfc_compile_state): Add COMP_CRITICAL.
* intrinsic.texi (num_images): Document new function.
* simplify.c (gfc_simplify_num_images): Add function.
2010-04-06 Tobias Burnus <burnus@net-b.de>
PR fortran/39997
* gfortran.dg/coarray_1.f90: New test.
* gfortran.dg/coarray_2.f90: New test.
* gfortran.dg/coarray_3.f90: New test.
2010-04-06 Tobias Burnus <burnus@net-b.de>
PR fortran/39997
* runtime/stop.c (error_stop_string): New function.
* gfortran.map (_gfortran_error_stop_string): Add.
From-SVN: r158008
2010-04-06 18:26:02 +02:00
Jason Merrill
62daa13984
re PR c++/43648 (ICE with explicit destructor call and typedef)
...
PR c++/43648
* name-lookup.c (constructor_name_p): Allow X::~X even for typedefs.
From-SVN: r158007
2010-04-06 12:12:15 -04:00
Jason Merrill
d5eebac0bb
re PR c++/43621 (ICE: in poplevel_class, at cp/name-lookup.c:2615 with invalid qualified name)
...
PR c++/43621
* pt.c (maybe_update_decl_type): Check the return value from
push_scope.
From-SVN: r158006
2010-04-06 12:10:47 -04:00
Iain Sandoe
a82ecc7b20
MAINTAINERS (Write After Approval): Add myself.
...
2010-04-06 Iain Sandoe <iains@gcc.gnu.org>
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r158005
2010-04-06 15:25:35 +00:00
Jan Hubicka
b1a0b3b4ff
re PR tree-optimization/42906 (Empty loop not removed)
...
PR tree-optimization/42906
* tree-ssa-dce.c (mark_control_dependent_edges_necessary): Add IGNORE_SELF
argument; set visited_control_parents for fully processed BBs.
(find_obviously_necessary_stmts): Update call of
mark_control_dependent_edges_necessary.
(propagate_necessity): Likewise; handle PHI edges more curefully.
* gcc.dg/tree-ssa/dce-1.c: New testcase.
From-SVN: r158004
2010-04-06 15:18:18 +00:00
Joseph Myers
1b10fc20a2
gcc.pot: Regenerate.
...
gcc/po:
* gcc.pot: Regenerate.
libcpp/po:
* cpplib.pot: Regenerate.
From-SVN: r158003
2010-04-06 15:21:32 +01:00
Joseph Myers
02e698d776
* gennews (files): Add files for GCC 4.5.
...
From-SVN: r157998
2010-04-06 15:06:04 +01:00
Uros Bizjak
6593d12377
i386.md: Remove comment about 'e' and 'E' operand modifier.
...
* config/i386/i386.md: Remove comment about 'e' and 'E'
operand modifier.
From-SVN: r157994
2010-04-06 15:20:39 +02:00
Tobias Burnus
2b56d6a425
re PR fortran/43178 (Pointless resetting to NULL for local ALLOCATABLEs)
...
2010-04-06 Tobias Burnus <burnus@net-b.de>
PR fortran/43178
* trans-array.c (gfc_conv_expr_descriptor): Update
gfc_trans_scalar_assign call.
(has_default_initializer): New function.
(gfc_trans_deferred_array): Nullify less often.
* trans-expr.c (gfc_conv_subref_array_arg,
gfc_trans_subcomponent_assign): Update call to
gfc_trans_scalar_assign.
(gfc_trans_scalar_assign): Add parameter and pass it on.
(gfc_trans_assignment_1): Optionally, do not dealloc before
assignment.
* trans-openmp.c (gfc_trans_omp_array_reduction): Update
call to gfc_trans_scalar_assign.
* trans-decl.c (gfc_get_symbol_decl): Do not always apply
initializer to static variables.
(gfc_init_default_dt): Add dealloc parameter and pass it on.
* trans-stmt.c (forall_make_variable_temp,
generate_loop_for_temp_to_lhs, generate_loop_for_rhs_to_temp,
gfc_trans_forall_1, gfc_trans_where_assign, gfc_trans_where_3
gfc_trans_allocate): Update gfc_trans_assignment call.
* trans.h (gfc_trans_scalar_assign, gfc_init_default_dt,
gfc_init_default_dt, gfc_trans_assignment): Add bool dealloc
parameter to prototype.
2010-04-06 Tobias Burnus <burnus@net-b.de>
PR fortran/43178
* gfortran.dg/alloc_comp_basics_1.f90: Update
* scan-tree-dump-times.
* gfortran.dg/alloc_comp_constructor_1.f90: Ditto.
* gfortran.dg/auto_dealloc_1.f90: Ditto.
From-SVN: r157993
2010-04-06 14:46:19 +02:00