OSDN Git Service

2010-10-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
[pf3gnuchains/gcc-fork.git] / gcc / fortran / ChangeLog
index 7d2f798..43360d8 100644 (file)
@@ -1,3 +1,164 @@
+2010-10-18  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       * 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  <tkoenig@gcc.gnu.org>
+
+       * trans-io.c (gfc_build_io_library_fndecls):
+       Array descriptor arguments to transfer_array can be
+       dereferenced recursively.
+
+2010-10-16  Thomas Koenig  <tkoenig@gcc.gnu.org>
+
+       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  <burnus@net-b.de>
+
+       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  <d@domob.eu>
+
+       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  <janus@gcc.gnu.org>
+
+       PR fortran/45961
+       * resolve.c (resolve_typebound_function): Bugfix for type-bound
+       operators.
+
+2010-10-09  Thomas Koenig  <tkoenig@gcc.gnu.org>
+
+       * 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  <joseph@codesourcery.com>
+
+       * 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  <janus@gcc.gnu.org>
+
+       PR fortran/45933
+       * resolve.c (resolve_typebound_function): Use correct declared type
+       for type-bound operators.
+
+2010-10-07  Mikael Morin  <mikael@gcc.gnu.org>
+
+       PR fortran/45916
+       Revert revision 165026:
+       2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>
+
+       * decl.c (match_procedure_in_type): Assertify if conditions.
+
+2010-10-06  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/45889
+       * resolve.c (resolve_transfer): Use expression inside parenthesis to
+       find acutal component to be transgferred.
+
+2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>
+
+       * trans-stmt.c (gfc_trans_allocate): free lhs expr.
+
+2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>
+
+       * 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  <mikael@gcc.gnu.org>
+
+       * trans-intrinsic.c (gfc_conv_intrinsic_funcall): Also free symbol's
+       subcomponents.
+
+2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>
+
+       * trans-stmt.c (gfc_trans_forall_1): Free forall struct at the end.
+
+2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>
+
+       * trans-expr.c (get_proc_ptr_comp): Restore initial expression type
+       before calling gfc_free_expr.
+
+2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>
+
+       * 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  <mikael@gcc.gnu.org>
+
+       * 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  <mikael@gcc.gnu.org>
+
+       * trans-array.c (gfc_build_constant_array_constructor): Free array
+       spec when done.
+
 2010-10-06  Mikael Morin  <mikael@gcc.gnu.org>
 
        * symbol.c (gfc_copy_formal_args_ppc): Free previous formal arg list