X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=blobdiff_plain;f=gcc%2Ffortran%2FChangeLog;h=cea7f13ec005a40b95d47e89cd3c1fe3b301cfe2;hp=cf147cce12c2fa122c39f7a10c596a46b5ff9fac;hb=505c23043500ce0d4f3c73f255a7eaeb16bb3fe7;hpb=b857920b88fb6d9f1be4783a149c86403e58618a diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index cf147cce12c..cea7f13ec00 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,293 @@ +2007-02-21 Bernhard Fischer + + * parse.c (next_free): Gooble spaces after OpenMP sentinel. + +2007-02-20 Thomas Koenig + + PR fortran/30869 + * match.c (gfc_match_iterator): Remove conflict between + loop variable and pointer. + +2007-02-20 Tobias Burnus + + PR fortran/30522 + * symbol.c (gfc_add_volatile): Allow to set VOLATILE + attribute for host-associated variables. + * gfortran.h (symbol_attribute): Save namespace + where VOLATILE has been set. + * trans-decl.c (gfc_finish_var_decl): Move variable + declaration to the top. + +2007-02-20 Tobias Burnus + + PR fortran/30783 + * resolve.c (resolve_symbol): Add character dummy VALUE check. + +2007-02-19 Thomas Koenig + + PR libfortran/30533 + * fortran/iresolve.c (gfc_resolve_maxloc): Remove coercion of + argument to default integer. + (gfc_resolve_minloc): Likewise. + +2007-02-18 Jerry DeLisle + + PR fortran/30681 + * options.c (gfc_init_options): Relax warning level for obsolescent. + * match.c (match_arithmetic_if): Change to obsolescent from deleted. + (gfc_match_if): Same. + +2007-02-18 Roger Sayle + + * trans-array.c (gfc_build_constant_array_constructor): When the + shape of the constructor is known, use that to construct the + gfc_array_spec. + (gfc_trans_constant_array_constructor): Initialize the "info" + information for all of the dimensions of the array constructor. + (constant_array_constructor_loop_size): New function. + (gfc_trans_array_constructor): Use it to determine whether a + loop is suitable for "constant array constructor" optimization. + + * trans-intrinsic.c (gfc_conv_intrinsic_anyall): Use fold_build2 + instead of build2, to avoid conditions like "(a != b) != 0". + +2007-02-18 Roger Sayle + Paul Thomas + + PR fortran/30400 + * match.c (match_forall_iterator): Use gfc_match_expr instead + of gfc_match_variable to match the iterator variable. Return + MATCH_NO if not a variable. Remove the reset of the symbol's + flavor in cleanup. + +2007-02-16 Tobias Burnus + + PR fortran/30793 + * trans-decl.c (gfc_generate_function_code): Do not initialize + pointers to derived components. + +2007-02-15 Sandra Loosemore + Brooks Moses + Lee Millward + + * trans-expr.c (gfc_conv_power_op): Use build_call_expr. + (gfc_conv_string_tmp): Likewise. + (gfc_conv_concat_op): Likewise. + (gfc_build_compare_string): Likewise. + (gfc_conv_function_call): Use build_call_list instead of build3. + + * trans-array.c (gfc_trans_allocate_array_storage): Use + build_call_expr. + (gfc_grow_array): Likewise. + (gfc_trans_array_ctor_element): Likewise. + (gfc_trans_array_constructor_value): Likewise. + (gfc_array_allocate): Likewise. + (gfc_array_deallocate): Likewise. + (gfc_trans_auto_array_allocation): Likewise. + (gfc_trans_dummy_array_bias): Likewise. + (gfc_conv_array_parameter): Likewise. + (gfc_trans_dealloc_allocated): Likewise. + (gfc_duplicate_allocatable): Likewise. + + * trans-openmp.c (gfc_trans_omp_barrier): Use build_call_expr. + (gfc_trans_omp_flush): Likewise. + + * trans-stmt.c (gfc_conv_elementel_dependencies): Use build_call_expr. + (gfc_trans_pause): Likewise. + (gfc_trans_stop): Likewise. + (gfc_trans_character_select): Likewise. + (gfc_do_allocate): Likewise. + (gfc_trans_assign_need_temp): Likewise. + (gfc_trans_pointer_assign_need_temp): Likewise. + (gfc_trans_forall_1): Likewise. + (gfc_trans_where_2): Likewise. + (gfc_trans_allocate): Likewise. + (gfc_trans_deallocate): Likewise. + + * trans.c (gfc_trans_runtime_check): Use build_call_expr. + + * trans-io.c (gfc_trans_open): Use build_call_expr. + (gfc_trans_close): Likewise. + (build_filepos): Likewise. + (gfc_trans_inquire): Likewise. + (NML_FIRST_ARG): Delete. + (NML_ADD_ARG): Delete. + (transfer_namelist_element): Use build_call_expr. + (build_dt): Likewise. + (gfc_trans_dt_end): Likewise. + (transfer_expr): Likewise. + (transfer_array-desc): Likewise. + + * trans-decl.c (gfc_generate_function_code): Use build_call_expr. + (gfc_generate_constructors): Likewise. + + * trans-intrinsic.c (gfc_conv_intrinsic_ctime): Use build_call_expr. + (gfc_conv_intrinsic_fdate): Likewise. + (gfc_conv_intrinsic_ttynam): Likewise. + (gfc_conv_intrinsic_array_transfer): Likewise. + (gfc_conv_associated): Likewise. + (gfc_conv_intrinsic_si_kind): Likewise. + (gfc_conv_intrinsic_trim): Likewise. + (gfc_conv_intrinsic_repeat: Likewise. + (gfc_conv_intrinsic_iargc): Likewise. + +2007-02-14 Jerry DeLisle + + PR fortran/30779 + * scanner.c (gfc_next_char_literal): Add check for end of file after + call to advance_line. + +2007-02-14 Steven G. Kargl + + PR fortran/30799 + * primary.c (match_logical_constant): Return MATCH_ERROR on invalid + kind. + +2007-02-14 Steven G. Kargl + + * misc.c (gfc_typename): Fix potential buffer overflow. + +2007-02-13 Paul Thomas + + PR fortran/30554 + * module.c (read_module): Set pointer_info to referenced if the + symbol has no namespace. + +2007-02-12 Nick Clifton + + * lang.opt: Add Warning attribute to warning options. + +2007-02-11 Daniel Franke + + * intrinsic.texi (HOSTNM): Fix typographical error in syntax. + (SLEEP): Added section and documentation. + +2007-02-11 Tobias Schlüter + + PR fortran/30478 + * decl.c (add_init_expr_to_sym): Remove ENUM specific code. + (variable_decl): Likewise. Rewrap comment. + (match_attr_spec): Remove ENUM specific code. + (gfc_match_enum): Fix typo in error message. + (enumerator_decl): New function. + (gfc_match_enumerator_def): Use enumerator_decl instead of + variable_decl. Adapt code accordingly. + +2007-02-11 Paul Thomas + + PR fortran/30554 + * module.c (find_symtree_for_symbol): New function to return + a symtree that is not a "unique symtree" given a symbol. + (read_module): Do not automatically set pointer_info to + referenced because this inhibits the generation of a unique + symtree. Recycle the existing symtree if possible by calling + find_symtree_for_symbol. + + PR fortran/30319 + * decl.c (add_init_expr_to_sym): Make new charlen for an array + constructor initializer. + +2007-02-10 Richard Henderson , Jakub Jelinek + + * f95-lang.c (gfc_init_builtin_functions): Add __emutls_get_address + and __emutls_register_common. + * openmp.c (gfc_match_omp_threadprivate): Don't error if !have_tls. + * trans-common.c (build_common_decl): Don't check have_tls. + * trans-decl.c (gfc_finish_var_decl): Likewise. + * types.def (BT_WORD, BT_FN_PTR_PTR): New. + (BT_FN_VOID_PTR_WORD_WORD_PTR): New. + +2007-02-09 Tobias Burnus + + PR fortran/30512 + * trans-intrinsic.c (gfc_conv_intrinsic_minmaxloc, + gfc_conv_intrinsic_minmaxval): Use HUGE-1 for most negative integer. + +2007-02-09 Francois-Xavier Coudert + + PR fortran/30720 + * trans-array.c (gfc_trans_create_temp_array): Remove use of the + function argument. Always generate code for negative extent. + Simplify said code. + * trans-array.h (gfc_trans_create_temp_array): Change prototype. + * trans-expr.c (gfc_conv_function_call): Remove use of last argument + of gfc_trans_create_temp_array. + * trans-intrinsic.c (gfc_conv_intrinsic_array_transfer): Likewise. + * trans-stmt.c (gfc_conv_elemental_dependencies): Likewise. + +2007-02-08 Roger Sayle + + * trans-stmt.c (gfc_trans_forall_1): Optimize the cases where the + mask expression is a compile-time constant (".true." or ".false."). + +2007-02-04 Francois-Xavier Coudert + + PR fortran/30611 + * trans-intrinsic.c (gfc_conv_intrinsic_repeat): Evaluate + arguments only once. Generate check that NCOPIES argument is not + negative. + +2007-02-04 Steven G. Kargl + + PR fortran/30605 + * fortran/invoke.texi: Update documentation. + * fortran/options.c (gfc_post_options): Deal with tabs with -std=f2003 + and -pedantic. + +2007-02-03 Kazu Hirata + + * trans-array.c: Fix a comment typo. + +2007-02-03 Paul Thomas + + PR fortran/30514 + * array.c (match_array_element_spec): If the length of an array is + negative, adjust the upper limit to make it zero length. + + PR fortran/30660 + * resolve.c (pure_function, resolve_function): Initialize name to + null to clear up build warnings. + (resolve_fl_variable): Look at components explicitly to check for + default initializer, rather than using gfc_default_initializer. + +2007-02-02 Steven G. Kargl + + PR fortran/30683 + * resolve.c (resolve_generic_f): Check for non-NULL sym. + +2007-02-02 Roger Sayle + + * trans.c (gfc_build_array_ref): Use STRIP_TYPE_NOPS to eliminate + NON_LVALUE_EXPR nodes and useless type conversions. + +2007-02-02 Paul Thomas + + PR fortran/30284 + PR fortran/30626 + * trans-expr.c (gfc_conv_aliased_arg): Remove static attribute + from function and make sure that substring lengths are + translated. + (is_aliased_array): Remove static attribute. + * trans.c : Add prototypes for gfc_conv_aliased_arg and + is_aliased_array. + * trans-io.c (set_internal_unit): Add the post block to the + arguments of the function. Use is_aliased_array to check if + temporary is needed; if so call gfc_conv_aliased_arg. + (build_dt): Pass the post block to set_internal_unit and + add to the block after all io activiy is done. + +2007-02-01 Roger Sayle + + * trans-array.c (gfc_conv_expr_descriptor): We don't need to use + a temporary array to pass a constant non-character array constructor. + Generalize the descriptor generation code to handle scalarizer + "info" without an array reference. + +2007-02-01 Roger Sayle + + * dependency.c (gfc_check_dependency) : Implement + dependency checking for array constructors. + 2007-02-01 Roger Sayle * trans-stmt.c (compute_overall_iter_number): Document function @@ -26,7 +316,7 @@ 2007-01-30 Steve Ellcey PR fortran/30432 - * trans-types.c (gfc_get_function_type): Do not add void_type_node + * trans-types.c (gfc_get_function_type): Do not add void_type_node to empty arg list. * trans-decl.c (create_function_arglist): Change assert. @@ -40,27 +330,27 @@ 2007-01-28 Thomas Koenig PR libfortran/30389 - * gfortran.h: Remove gfc_simplify_init_1. - * arith.h: Remove third argument from gfc_compare_string. - * arith.c(gfc_compare_expression): Remove third argument + * gfortran.h: Remove gfc_simplify_init_1. + * arith.h: Remove third argument from gfc_compare_string. + * arith.c (gfc_compare_expression): Remove third argument from call to gfc_compare_string. - (gfc_compare_string): Remove third argument xcoll_table. + (gfc_compare_string): Remove third argument xcoll_table. Remove use of xcoll_table. - * misc.c(gfc_init_1): Remove call to gfc_simplify_init_1. - * simplify.c(ascii_table): Remove. + * misc.c (gfc_init_1): Remove call to gfc_simplify_init_1. + * simplify.c (ascii_table): Remove. (xascii_table): Likewise. - (gfc_simplify_achar): ICE if extract_int fails. Remove use of + (gfc_simplify_achar): ICE if extract_int fails. Remove use of ascii_table. Warn if -Wsurprising and value < 0 or > 127. - (gfc_simplify_char): ICE if extract_int fails. Error if + (gfc_simplify_char): ICE if extract_int fails. Error if value < 0 or value > 255. - (gfc_simplify_iachar): Remove use of xascii_table. + (gfc_simplify_iachar): Remove use of xascii_table. Char values outside of 0..255 are an ICE. - (gfc_simplify_lge): Remove use of xascii_table. - (gfc_simplify_lgt): Likewise. - (gfc_simplify_lle): Likewise. - (gfc_simplify_llt): Likewise. - (invert_table): Remove. - (gfc_simplify_init_1): Remove. + (gfc_simplify_lge): Remove use of xascii_table. + (gfc_simplify_lgt): Likewise. + (gfc_simplify_lle): Likewise. + (gfc_simplify_llt): Likewise. + (invert_table): Remove. + (gfc_simplify_init_1): Remove. 2007-01-27 Roger Sayle @@ -137,7 +427,7 @@ 2007-01-20 Steven G. Kargl * openmp.c, matchexp.c, module.c, scanner.c, resolve.c, st.c, - parse.c, primary.c, options.c, misc.c, simplify.c: Next installment + parse.c, primary.c, options.c, misc.c, simplify.c: Next installment in the massive whitespace patch. 2007-01-20 Roger Sayle @@ -346,11 +636,11 @@ 2007-01-11 Thomas Koenig PR libfortran/30415 - * iresolve.c (gfc_resolve_maxloc): If the rank + * iresolve.c (gfc_resolve_maxloc): If the rank of the return array is nonzero and we process an integer array smaller than default kind, coerce the array to default integer. - * iresolve.c (gfc_resolve_minloc): Likewise. + * iresolve.c (gfc_resolve_minloc): Likewise. 2007-01-11 Brooks Moses @@ -403,7 +693,7 @@ 2007-01-08 Steven G. Kargl * interface.c, intrinsic.c, gfortranspec.c, io.c, f95-lang.c, - iresolve.c, match.c: Update Copyright years. Whitespace. + iresolve.c, match.c: Update Copyright years. Whitespace. 2007-01-08 Richard Guenther @@ -419,7 +709,7 @@ initialized gfortran array for a given EXPR_ARRAY. (gfc_trans_constant_array_constructor): Efficiently scalarize a constant array constructor. - (gfc_trans_array_constructor): Tidy up use of CONST_STRING. + (gfc_trans_array_constructor): Tidy up use of CONST_STRING. Special case scalarization of constant array constructors, all of whose elements are specified, using constant_array_constructor_p and gfc_trans_constant_array_constructor. @@ -433,7 +723,7 @@ 2007-01-07 Steven G. Kargl * decl.c, dump-parse-tree.c, error.c, data.c, expr.c, dependency.c, - convert.c: Update Copyright dates. Fix whitespace. + convert.c: Update Copyright dates. Fix whitespace. 2007-01-07 Bernhard Fischer @@ -456,7 +746,7 @@ 2007-01-06 Steven G. Kargl - * array.c, bbt.c, check.c: Update copyright years. Whitespace. + * array.c, bbt.c, check.c: Update copyright years. Whitespace. 2007-01-06 Steven G. Kargl @@ -482,7 +772,7 @@ 2007-01-05 Roger Sayle - * trans-array.c (gfc_conv_loop_setup): Test whether the loop + * trans-array.c (gfc_conv_loop_setup): Test whether the loop stride is one, to avoid fold_build2 introducing a useless NON_LVALUE_EXPR node.