X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2Ffortran%2FChangeLog;h=341e15038cc163e1e23a3616dd7c774afe0f4f9c;hb=f8d7ed518f97e7d95e702bc58289b0bcb9cb4ac8;hp=b04f3c50419cb9904804910dbaae21db266e7746;hpb=75471ad0cee99daf763e3ea344196beece873be3;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index b04f3c50419..341e15038cc 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,376 @@ +2010-10-23 Tobias Burnus + + PR fortran/46122 + * expr.c (gfc_check_vardef_context): Fix PROTECTED check. + +2010-10-21 Janus Weil + + PR fortran/46060 + * match.h (gfc_matching_ptr_assignment): New global variable to indicate + we're currently matching a (non-proc-)pointer assignment. + * decl.c (match_pointer_init): Set it. + * match.c (gfc_match_pointer_assignment): Ditto. + * primary.c (matching_actual_arglist): New global variable to indicate + we're currently matching an actual argument list. + (gfc_match_actual_arglist): Set it. + (gfc_match_varspec): Reject procedure pointer component calls with + missing argument list. + +2010-10-21 Janus Weil + + PR fortran/46067 + * interface.c (gfc_compare_interfaces): Switch arguments of type + comparison (important for polymorphic variables). + +2010-10-21 Tobias Burnus + + PR fortran/46100 + * expr.c (gfc_check_vardef_context): Treat pointer functions + as variables. + +2010-10-20 Jerry DeLisle + + PR fortran/46079 + * trans_stmt.c (gfc_trans_stop): Fix whitespace. Build a call to new + F08 numeric stop function. + * trans.h: Add declaration for gfor_fndecl_stop_numeric_f08. + * trans-decl.c (gfc_build_builtin_function_decls): Build declaration + for stop_numeric_f08. + +2010-10-18 Jerry DeLisle + + * gfortran.h: Remove definition of bt enumerator. + * libgfortran.h: Add bt enumerator type alighned with defintion. + Remove the dtype enumerator, no longer used. + previously given in libgfortran/io.h + * trans-types.c: Use new bt enumerator. + * trans-io.c: Likewise. + +2010-10-16 Thomas Koenig + + * trans-io.c (gfc_build_io_library_fndecls): + Array descriptor arguments to transfer_array can be + dereferenced recursively. + +2010-10-16 Thomas Koenig + + PR fortran/20165 + PR fortran/31593 + PR fortran/43665 + * trans-io.c (enum iocall): Add IOCALL_X_INTEGER_WRITE, + IOCALL_X_LOGICAL_WRITE, IOCALL_X_CHARACTER_WRITE, + IOCALL_X_CHARACTER_WIDE_WRIE, IOCALL_X_REAL_WRITE, + IOCALL_X_COMPLEX_WRITE and IOCALL_X_ARRAY_WRITE. + (gfc_build_io_library_fndecls): Add corresponding function + decls. + (transfer_expr): If the current transfer is a READ, use + the iocall with the original version, otherwise the version + with _WRITE. + (transfer_array_desc): Likewise. + +2010-10-15 Tobias Burnus + + PR fortran/45186 + * trans.h (gfc_add_modify_loc, gfc_evaluate_now_loc): New prototypes. + (gfc_trans_runtime_error_vararg): Remove prototype. + * trans.c (gfc_add_modify_loc, gfc_evaluate_now_loc): New functions. + (gfc_add_modify, gfc_evaluate_now): Use them. + (trans_runtime_error_vararg): Renamed from + gfc_trans_runtime_error_vararg, made static and use locus. + (gfc_trans_runtime_error): Use it. + (gfc_trans_runtime_check): Ditto and make use of locus. + * trans-stmt.c (gfc_trans_if_1, gfc_trans_simple_do, + gfc_trans_do, gfc_trans_do_while): Improve line number + associated with generated expressions. + +2010-10-12 Daniel Kraft + + PR fortran/38936 + * parse.c (parse_associate): Set typespec of associate-name if that of + the target is already available. + +2010-10-10 Janus Weil + + PR fortran/45961 + * resolve.c (resolve_typebound_function): Bugfix for type-bound + operators. + +2010-10-09 Thomas Koenig + + * frontend-passes.c: Include opts.h. + (optimize_comparison): Renamed from optimize_equality. + Change second argument to operation to be compared. + Use flag_finite_math_only to avoid comparing REAL and + COMPLEX only when NANs are honored. Simplify comparing + of string concatenations where left or right operands are + equal. Simplify all comparison operations, based on the result + of gfc_dep_compare_expr. + * dependency.c: Include arith.h. + (gfc_are_identical_variables): Volatile variables should not + compare equal to themselves. + (gfc_dep_compare_expr): Handle string constants and string + concatenations. + +2010-10-08 Joseph Myers + + * f95-lang.c (LANG_HOOKS_INIT_OPTIONS_STRUCT): Define. + * gfortran.h (gfc_init_options_struct): Declare. + * options.c (gfc_init_options_struct): New. Split out from + gfc_init_options. + +2010-10-07 Janus Weil + + PR fortran/45933 + * resolve.c (resolve_typebound_function): Use correct declared type + for type-bound operators. + +2010-10-07 Mikael Morin + + PR fortran/45916 + Revert revision 165026: + 2010-10-06 Mikael Morin + + * decl.c (match_procedure_in_type): Assertify if conditions. + +2010-10-06 Jerry DeLisle + + PR fortran/45889 + * resolve.c (resolve_transfer): Use expression inside parenthesis to + find acutal component to be transgferred. + +2010-10-06 Mikael Morin + + * trans-stmt.c (gfc_trans_allocate): free lhs expr. + +2010-10-06 Mikael Morin + + * trans-array.c (gfc_free_ss_chain): Made non-static. + * trans-array.h (gfc_free_ss_chain): New prototype. + * trans-stmt.c (gfc_trans_where_2): Free ss chains. + +2010-10-06 Mikael Morin + + * trans-intrinsic.c (gfc_conv_intrinsic_funcall): Also free symbol's + subcomponents. + +2010-10-06 Mikael Morin + + * trans-stmt.c (gfc_trans_forall_1): Free forall struct at the end. + +2010-10-06 Mikael Morin + + * trans-expr.c (get_proc_ptr_comp): Restore initial expression type + before calling gfc_free_expr. + +2010-10-06 Mikael Morin + + * trans-array.c (gfc_conv_tmp_array_ref): Add factorized call to + gfc_advance_se_ss_chain. + * trans-expr.c (gfc_conv_subref_array_ref, gfc_conv_procedure_call, + gfc_conv_array_constructor_expr, gfc_trans_assignment_1): Remove + calls to gfc_advance_se_ss_chain after gfc_conv_tmp_array_ref. + * trans-intrinsic.c (gfc_conv_intrinsic_function): Ditto. + * trans-stmt.c (gfc_trans_where_assign, gfc_trans_where_3): Ditto. + +2010-10-06 Mikael Morin + + * trans.c (gfc_restore_backend_locus): New function. + (gfc_get_backend_locus): Renamed to ... + (gfc_save_backend_locus): ... this. + * trans.h (gfc_restore_backend_locus, gfc_get_backend_locus, + gfc_save_backend_locus): Same. + * trans-array.c (gfc_trans_g77_array, gfc_trans_dummy_array_bias, + gfc_trans_deferred_array): Rename gfc_get_backend_locus to + gfc_save_backend_locus. + (gfc_trans_dummy_array_bias): Call gfc_restore_backend_locus at the + end. + (gfc_trans_g77_array, gfc_trans_deferred_array): Use + gfc_restore_backend_locus instead of gfc_set_backend_locus. + (gfc_trans_deferred_array): Call gfc_restore_backend_locus on early + return. + * trans-decl.c (gfc_get_extern_function_decl, build_entry_thunks, + gfc_trans_deferred_vars): + Rename gfc_get_backend_locus to gfc_save_backend_locus. + Use gfc_restore_backend_locus insted of gfc_set_backend_locus. + +2010-10-06 Mikael Morin + + * trans-array.c (gfc_build_constant_array_constructor): Free array + spec when done. + +2010-10-06 Mikael Morin + + * symbol.c (gfc_copy_formal_args_ppc): Free previous formal arg list + before overwriting it. + +2010-10-06 Mikael Morin + + * array.c (gfc_match_array_spec): Don't re-initialize cleared struct. + * symbol.c (gen_shape_param): Ditto. + +2010-10-06 Mikael Morin + + * symbol.c (free_entry_list): New function. + (gfc_free_namespace): Free list of entries. + +2010-10-06 Mikael Morin + + * symbol.c (free_components): Free list of formal args and formal + namespace. + +2010-10-06 Mikael Morin + + * simplify.c (gfc_simplify_size): Clear temporary mpz int before + returning. + +2010-10-06 Mikael Morin + + * resolve.c (add_dt_to_dt_list): Remove unneeded if. + +2010-10-06 Mikael Morin + + * resolve.c (check_typebound_baseobject): Free local expr before + returning. + +2010-10-06 Mikael Morin + + * primary.c (gfc_match_structure_constructor): Invert the assert logic. + +2010-10-06 Mikael Morin + + * primary.c (gfc_free_structure_ctor_component): Also free the + component structure itself. + +2010-10-06 Mikael Morin + + * module.c (gfc_use_module): Free atom_string when done with it. + +2010-10-06 Mikael Morin + + * module.c (read_module): Remove useless string duplication. + +2010-10-06 Mikael Morin + + * gfortranspec.c (append_arg): Remove commented code. + +2010-10-06 Mikael Morin + + * decl.c (match_procedure_in_type): Assertify if conditions. + +2010-10-06 Mikael Morin + + * cpp.c (gfc_cpp_post_options): Don't create a cpp reader if + preprocessing is disabled. + +2010-10-06 Jakub Jelinek + + PR middle-end/45838 + * f95-lang.c (ATTR_NOTHROW_LEAF_LIST, ATTR_CONST_NOTHROW_LEAF_LIST, + ATTR_NOTHROW_LIST, ATTR_CONST_NOTHROW_LIST): Define. + (gfc_define_builtin): Change last argument to int bitmask from bool, + control addition of TREE_NOTHROW and leaf attribute as well. + (DO_DEFINE_MATH_BUILTIN): Adjust callers. + (gfc_init_builtin_functions): Likewise. Remove + ATTR_{,CONST_}NOTHROW_LIST enum. + +2010-10-04 Andi Kleen + + * Make-lang.in (gfortran, f951): Add + to build rule. + +2010-10-04 Richard Guenther + + * f95-lang.c (current_translation_unit): New global variable. + (gfc_create_decls): Build a translation-unit decl. + (pushdecl): In the global binding-level use the + translation-unit decl as DECL_CONTEXT. + * trans-decl.c (gfc_get_symbol_decl): Use DECL_FILE_SCOPE_P. + (build_function_decl): Likewise. Delay setting the assembler + name, leave setting of DECL_CONTEXT to pushdecl. + (trans_function_start): Use DECL_FILE_SCOPE_P. + (gfc_create_module_variable): Likewise. Remove questionable + asserts. + * trans.c (gfc_generate_module_code): Likewise. + +2010-10-03 Francois-Xavier Coudert + + * cpp.c (cpp_define_builtins): Call functions from cppbuiltin.c + instead of duplicating code. + * Make-lang.in: Add dependency on cppbuiltin.h. Don't define + BASEVER. + +2010-10-02 Janus Weil + + PR fortran/45748 + * resolve.c (resolve_formal_arglist): Avoid setting default type for + formal arguments of intrinsic procedures. + +2010-09-30 Janus Weil + + PR fortran/45828 + * resolve.c (resolve_allocate_expr): Do not use + 'gfc_has_default_initializer'. + +2010-09-30 Tobias Burnus + + * gfortran.tex (Fortran 2008 status): Update list of + implemented features. + +2010-09-29 Joseph Myers + + * lang.opt: Don't use VarExists. + +2010-09-29 Joseph Myers + + * cpp.c (cpp_define_builtins): Update names of gfc_option_t + members. + (gfc_cpp_post_options): Update names of cpp_options members. + (cb_cpp_error): Update names of diagnostic_context members. + * f95-lang.c (gfc_init_builtin_functions): Update names of + gfc_option_t members. + * gfortran.h (gfc_option_t): Rename warn_conversion and + flag_openmp. + * intrinsic.c (gfc_convert_type_warn): Update names of + gfc_option_t members. + * options.c (gfc_init_options, gfc_post_options, set_Wall, + gfc_handle_option): Update names of gfc_option_t members. + * parse.c (next_free, next_fixed): Update names of gfc_option_t + members. + * scanner.c (pedantic): Remove extern declaration. + (skip_free_comments, skip_fixed_comments, include_line): Update + names of gfc_option_t members. + * trans-decl.c (gfc_generate_function_code): Update names of + gfc_option_t members. + +2010-09-28 Tobias Burnus + + PR fortran/40569 + PR fortran/40568 + * intrinsic.c (add_functions): Make compiler_version and + compiler_options CLASS_INQUIRY. + * gfortran.h (gfc_get_option_string): New prototype. + * intrinsic.texi (COMPILER_VERSION, COMPILER_OPTIONS): + Add documentation. + (C_SIZEOF): Mark as inquiry function of ISO_C_BINDING. + (ISO_FORTRAN_ENV): Refer to COMPILER_VERSION and COMPILER_OPTIONS. + (ISO_C_BINDING): Refer to C_SIZEOF. + * options.c (gfc_get_option_string): New function. + * simplify.c (gfc_simplify_compiler_options): Use it. + (gfc_simplify_compiler_version): Include compiler name. + +2010-09-28 Jan Hubicka + + * f95-lang.c (gfc_define_builtin): Make leaf. + (gfc_init_builtin_functions): Handle only ATTR_CONST_NOTHROW_LEAF_LIST + and ATTR_NOTHROW_LEAF_LIST. + (DEF_SYNC_BUILTIN): Check ATTR_CONST_NOTHROW_LEAF_LIST. + (DEF_GOMP_BUILTIN): Likewise. + +2010-09-28 Tobias Burnus + + PR fortran/45756 + * trans-decl.c (gfc_get_symbol_decl): Use gsym for decl of + module parameters. + 2010-09-27 Tobias Burnus PR fortran/40569