+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
+ before overwriting it.
+
+2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
+
+ * array.c (gfc_match_array_spec): Don't re-initialize cleared struct.
+ * symbol.c (gen_shape_param): Ditto.
+
+2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
+
+ * symbol.c (free_entry_list): New function.
+ (gfc_free_namespace): Free list of entries.
+
+2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
+
+ * symbol.c (free_components): Free list of formal args and formal
+ namespace.
+
+2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
+
+ * simplify.c (gfc_simplify_size): Clear temporary mpz int before
+ returning.
+
+2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
+
+ * resolve.c (add_dt_to_dt_list): Remove unneeded if.
+
+2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
+
+ * resolve.c (check_typebound_baseobject): Free local expr before
+ returning.
+
+2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
+
+ * primary.c (gfc_match_structure_constructor): Invert the assert logic.
+
+2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
+
+ * primary.c (gfc_free_structure_ctor_component): Also free the
+ component structure itself.
+
+2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
+
+ * module.c (gfc_use_module): Free atom_string when done with it.
+
+2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
+
+ * module.c (read_module): Remove useless string duplication.
+
+2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
+
+ * gfortranspec.c (append_arg): Remove commented code.
+
+2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
+
+ * decl.c (match_procedure_in_type): Assertify if conditions.
+
+2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
+
+ * cpp.c (gfc_cpp_post_options): Don't create a cpp reader if
+ preprocessing is disabled.
+
+2010-10-06 Jakub Jelinek <jakub@redhat.com>
+
+ 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 <ak@linux.intel.com>
+
+ * Make-lang.in (gfortran, f951): Add + to build rule.
+
+2010-10-04 Richard Guenther <rguenther@suse.de>
+
+ * 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 <fxcoudert@gcc.gnu.org>
+
+ * 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 <janus@gcc.gnu.org>
+
+ PR fortran/45748
+ * resolve.c (resolve_formal_arglist): Avoid setting default type for
+ formal arguments of intrinsic procedures.
+
+2010-09-30 Janus Weil <janus@gcc.gnu.org>
+
+ PR fortran/45828
+ * resolve.c (resolve_allocate_expr): Do not use
+ 'gfc_has_default_initializer'.
+
+2010-09-30 Tobias Burnus <burnus@net-b.de>
+
+ * gfortran.tex (Fortran 2008 status): Update list of
+ implemented features.
+
+2010-09-29 Joseph Myers <joseph@codesourcery.com>
+
+ * lang.opt: Don't use VarExists.
+
+2010-09-29 Joseph Myers <joseph@codesourcery.com>
+
+ * 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 <burnus@net-b.de>
+
+ 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 <jh@suse.cz>
+
+ * 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 <burnus@net-b.de>
+
+ PR fortran/45756
+ * trans-decl.c (gfc_get_symbol_decl): Use gsym for decl of
+ module parameters.
+
+2010-09-27 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/40569
+ PR fortran/40568
+ * intrinsic.h (gfc_simplify_compiler_options,
+ gfc_simplify_compiler_version): New prototypes.
+ * intrinsic.c (gfc_intrinsic_function_by_id,
+ make_from_module): New functions.
+ (gfc_find_function, gfc_find_subroutine, gfc_generic_intrinsic,
+ gfc_specific_intrinsic): Don't return module intrinsics.
+ (add_functions): Add compiler_options, compiler_version.
+ (gfc_intrinsic_func_interface): Also lookup symbol by ISYM ID.
+ * symbol.c (std_for_isocbinding_symbol): Add version check for
+ NAMED_FUNCTIONS.
+ * iso-fortran-env.def: Add compiler_options, compiler_version.
+ * iso-c-binding.def: Add c_sizeof.
+ * gfortran.h (gfc_intrinsic_sym): Add from_module:1.
+ (iso_c_binding_symbol, iso_fortran_env_symbol): Add NAMED_FUNCTIONS.
+ (gfc_intrinsic_function_by_id): New prototype.
+ * module.c (create_intrinsic_function): New function.
+ (import_iso_c_binding_module, use_iso_fortran_env_module): Use it.
+ * trans-types.c (init_c_interop_kinds): Add NAMED_FUNCTIONS.
+ * resolve.c (resolve_intrinsic): Try also to resolve intrinsics
+ by ISYM ID.
+ * simplify.c (gfc_simplify_compiler_options,
+ gfc_simplify_compiler_version): New functions.
+
+2010-09-26 Daniel Kraft <d@domob.eu>
+
+ PR fortran/45783
+ PR fortran/45795
+ * resolve.c (resolve_select_type): Clarify code.
+ (resolve_assoc_var): Only set typespec if it is currently unknown.
+
+2010-09-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/45793
+ * module.c (create_int_parameter_array): Set the array value shape.
+
+2010-09-25 Tobias Burnus <burnus@net-b.de>
+
+ * gfortran.texi: Re-add accidently removed \input line.
+
+2010-09-25 Daniel Kraft <d@domob.eu>
+
+ PR fortran/45776
+ * gfortran.h (struct gfc_dt): New member `dt_io_kind'.
+ * io.c (resolve_tag): F2008 check for NEWUNIT and variable
+ definition checks for NEWUNIT, IOSTAT, SIZE and IOMSG.
+ (gfc_free_dt): Correctly handle freeing of `dt_io_kind' and
+ `extra_comma' with changed semantics.
+ (gfc_resolve_dt): Check variable definitions.
+ (match_io_element): Remove INTENT and PURE checks here and
+ initialize code->ext.dt member.
+ (match_io): Set dt->dt_io_kind.
+ (gfc_resolve_inquire): Check variable definition for all tags
+ except UNIT, FILE and ID.
+ * resolve.c (resolve_transfer): Variable definition check.
+
+2010-09-25 Tobias Burnus <burnus@net-b.de>
+
+ * interface.c (gfc_match_end_interface): Constify char pointer
+ to fix warning.
+
+2010-09-24 Steven G. Kargl < kargl@gcc.gnu.org>
+
+ * interface.c (gfc_match_end_interface): Deal with user defined
+ operators that overload rational operators and C1202.
+
+2010-09-24 Tobias Burnus <burnus@net-b.de>
+
+ * gfortran.texi: Add second space after end-of-sentence period;
+ change / to /@/ to allow hyphenation of URLs.
+ (Standards): Remove duplicated OpenMP, update wording given that
+ Fortran 2008 now released.
+ (Fortran 2008 status): Update and add list of implemented features.
+
+2010-09-24 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/40571
+ * iso-fortran-env.def: Add NAMED_KINDARRAY with
+ character_kinds, integer_kinds, logical_kinds and
+ real_kinds.
+ * gfortran.h: Add them to iso_fortran_env_symbol.
+ * libgfortran.h: Rename GFC_INQUIRE_INTERNAL_UNIT to
+ LIBERROR_INQUIRE_INTERNAL_UNIT and move it from
+ libgfortran_stat_codes to libgfortran_error_codes.
+ * module.c (create_int_parameter_array): New function.
+ (use_iso_fortran_env_module): Use it for
+ NAMED_KINDARRAY of iso-fortran-env.def.
+ * trans-decl.c (gfc_get_symbol_decl): Parameter
+ arrays of intrinsics modules become local static variables.
+ * intrinsic.texi (ISO_FORTRAN_ENV): Add character_kinds,
+ integer_kinds, logical_kinds and real_kinds.
+
2010-09-23 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/45744