OSDN Git Service

Rotate Fortran ChangeLogs.
authortobi <tobi@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 2 Jan 2008 17:54:50 +0000 (17:54 +0000)
committertobi <tobi@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 2 Jan 2008 17:54:50 +0000 (17:54 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@131261 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/fortran/ChangeLog
gcc/fortran/ChangeLog-2007 [new file with mode: 0644]
libgfortran/ChangeLog
libgfortran/ChangeLog-2007 [new file with mode: 0644]

index 8b92ad1..e69de29 100644 (file)
-2007-12-31  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/34558
-       * interface.c (gfc_compare_types): Prevent linked lists from
-       putting this function into an endless recursive loop.
-
-2007-12-26  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/34532
-       * gfortran.texi: Fixed section about implicit conversion of
-       logical and integer variables.
-
-2007-12-25  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/34514
-       * decl.c (attr_decl1): Reject specifying the DIMENSION for
-       already initialized variable.
-       (do_parm): Reject PARAMETER for already initialized variable.
-
-2007-12-25  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/34533
-       * intrinsic.h (gfc_check_etime): Renamed to ...
-       (gfc_check_dtime_etime): ... this.
-       (gfc_check_etime_sub): Renamed to ...
-       (gfc_check_dtime_etime_sub): ... this.
-       (gfc_resolve_dtime_sub): New prototype.
-       * check.c (gfc_check_etime): Renamed to ...
-       (gfc_check_dtime_etime): ... this.
-       (gfc_check_etime_sub): Renamed to ...
-       (gfc_check_dtime_etime_sub): ... this.
-       * iresolve.c (gfc_resolve_dtime_sub): New implementation.
-       * intrinsic.c (add_functions): Removed alias from ETIME to DTIME,
-       added stand-alone intrinsic DTIME.
-       (add_subroutines): Adjusted check and resolve function names for
-       DTIME and ETIME.
-       * trans-intrinsic.c (gfc_conv_intrinsic_function): Added DTIME
-       to known functions in switch.
-       * intrinsic.texi (DTIME): Added paragraph about thread-safety,
-       fixed return value section.
-       (CPU_TIME): Clarified intent and added implementation notes.
-
-2007-12-23  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/34421
-       * resolve.c (resolve_entries): Add standard error for functions
-       returning characters with different length.
-
-2007-12-23  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/34536 
-       * matchexp.c (match_ext_mult_operand): Print warning for unary 
-       operators following arithmetic ones by default.
-       (match_ext_add_operand): Likewise.
-
-2007-12-22  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/34559
-       * simplify.c (gfc_simplify_repeat): Added safeguard for empty
-       string literals.
-
-2007-12-22  Thomas Koenig  <tkoenig@gcc.gnu.org>
-
-       PR fortran/34549
-       * check.c (gfc_check_cshift):  Add check that shift is
-       type INTEGER.
-
-2007-12-21  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/34540
-       * iresolve.c (gfc_resolve_cshift): Take optional dim path
-       only if the argument is an optional itself.
-       * iresolve.c (gfc_resolve_eoshift): Same.
-
-2007-12-21  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/34438
-       * trans-decl.c (gfc_finish_var_decl): Do not mark derived types
-       with default initializers as TREE_STATIC unless they are in the
-       main program scope.
-       (gfc_get_symbol_decl): Pass derived types with a default
-       initializer to gfc_defer_symbol_init.
-       (init_default_dt): Apply default initializer to a derived type.
-       (init_intent_out_dt): Call init_default_dt.
-       (gfc_trans_deferred_vars): Ditto.
-
-       * module.c (read_module): Check sym->module is there before
-       using it in a string comparison.
-
->>>>>>> .r131138
-2007-12-20  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/34482
-       * gfortran.texi (BOZ): Document behavior for complex
-       numbers.
-       * target-memory.h (gfc_convert_boz): Update prototype.
-       * target-memory.c (gfc_convert_boz): Add error check
-       and convert BOZ to smallest possible bit size.
-       * resolve.c (resolve_ordinary_assign): Check return value.
-       * expr.c (gfc_check_assign): Ditto.
-       * simplify.c (simplify_cmplx, gfc_simplify_dble,
-       gfc_simplify_float, gfc_simplify_real): Ditto.
-
-2007-12-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/34325
-       * match.h: New function declaration.
-       * match.c (gfc_match_parens): New function to look for mismatched
-       parenthesis. (gfc_match_if): Use new function to catch missing '('.
-
-2007-12-19  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/34495
-       * expr.c (check_init_expr): Check whether variables with flavor
-       FL_PARAMETER do have a value assigned. Added error messages where
-       appropriate.
-       * simplify.c (gfc_simplify_transfer): Added check if the MOLD
-       argument is a constant if working with initialization
-       expressions.
-
-2007-12-17  Tobias Burnus  <burnus@net-b.de>
-
-       * intrinsic.c (add_functions): Undo change; mark float and
-       sngl as STD_F77.
-       * intrinsic.texi (FLOAT, SNGL): Change standard to F77 and later.
-       * gfortran.texi (BOZ): Make note about FLOAT etc. clearer.
-
-2007-12-16  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/34495
-       * intrinsic.c (add_functions): Mark float and sngl as STD_GNU.
-       (gfc_intrinsic_func_interface): Reject REAL, DBLE and CMPLX
-       in initialization expressions for -std=f95.
-
-2007-12-16  Thomas Koenig  <tkoenig@gcc.gnu.org>
-
-       PR fortran/34305
-       * resolve.c (compare_bound):  If either of the types of
-       the arguments isn't INTEGER, return CMP_UNKNOWN.
-
-2007-12-16  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/34246
-       * trans-types.c (gfc_init_types): Change build_type_variant
-       to build_qualified_type.
-       (gfc_sym_type): Return gfc_character1_type_node for
-       character-returning bind(C) functions.
-       * trans-expr.c (gfc_conv_function_call): Do not set
-       se->string_length for character-returning bind(c) functions.
-       (gfc_trans_string_copy,gfc_trans_scalar_assign):
-       Support also single characters.
-
-2007-12-16  Bernhard Fischer  <aldot@gcc.gnu.org>
-
-       * errors.c (gfc_notify_std): As originally stated but improperly
-       changed, disregard warnings_are_errors for deciding which buffer
-       to use for warnings.
-
-2007-12-16  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31213
-       PR fortran/33888
-       PR fortran/33998
-       * trans-array.c (gfc_trans_array_constructor_value): If the
-       iterator variable does not have a backend_decl, use a local
-       temporary.
-       (get_elemental_fcn_charlen): New function to map the character
-       length of an elemental function onto its actual arglist.
-       (gfc_conv_expr_descriptor): Call the above so that the size of
-       the temporary can be evaluated.
-       * trans-expr.c : Include arith.h and change prototype of
-       gfc_apply_interface_mapping_to_expr to return void.  Change all
-       references to gfc_apply_interface_mapping_to_expr accordingly.
-       (gfc_free_interface_mapping): Free the 'expr' field.
-       (gfc_add_interface_mapping): Add an argument for the actual
-       argument expression. This is copied to the 'expr' field of the
-       mapping.  Only stabilize the backend_decl if the se is present.
-       Copy the character length expression and only add it's backend
-       declaration if se is present.  Return without working on the
-       backend declaration for the new symbol if se is not present.
-       (gfc_map_intrinsic_function) : To simplify intrinsics 'len',
-       'size', 'ubound' and 'lbound' and then to map the result.
-       (gfc_map_fcn_formal_to_actual): Performs the formal to actual
-       mapping for the case of a function found in a specification
-       expression in the interface being mapped.
-       (gfc_apply_interface_mapping_to_ref): Remove seen_result and
-       all its references. Remove the inline simplification of LEN
-       and call gfc_map_intrinsic_function instead.  Change the
-       order of mapping of the actual arguments and simplifying
-       intrinsic functions.  Finally, if a function maps to an
-       actual argument, call gfc_map_fcn_formal_to_actual.
-       (gfc_conv_function_call): Add 'e' to the call to
-       gfc_add_interface_mapping.
-       * dump-parse-tree.c (gfc_show_symbol_n): New function for
-       diagnostic purposes.
-       * gfortran.h : Add prototype for gfc_show_symbol_n.
-       * trans.h : Add 'expr' field to gfc_add_interface_mapping.
-       Add 'expr' to prototype for gfc_show_symbol_n.
-       * resolve.c (resolve_generic_f0): Set specific function as
-       referenced.
-
-2007-12-14  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/34438
-       * resolve.c (resolve_symbol): Do not emit public-variable-
-       of-private-derived-type error for non-module variables.
-
-2007-12-14  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/34398
-       * expr.c (gfc_check_assign): Add range checks for assignments of BOZs.
-       * resolve.c (resolve_ordinary_assign): Ditto.
-       * arith.c (gfc_range_check): Fix return value for complex numbers.
-
-2007-12-14  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/34324
-       * module.c (parse_atom): Fixed parsing of modules files whose
-       lines are terminated by CRLF.
-
-2007-12-13  Anton Korobeynikov  <asl@math.spbu.ru>
-
-       * trans-decl.c (gfc_build_builtin_function_decls): Correct decl
-       construction for select_string() and internal_unpack()
-
-2007-12-13  Duncan Sands  <baldrick@free.fr>
-           Anton Korobeynikov  <asl@math.spbu.ru>
-
-       * trans-expr.c (gfc_conv_structure): Make sure record constructors
-       for static variables are marked constant.
-
-2007-12-12  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/34254
-       * decl.c (match_char_kind): Support use-associated/imported
-       kind parameters.
-       (gfc_match_kind_spec): Support als BT_CHARACTER, when
-       re-scanning kind spec.
-
-2007-12-11  Aldy Hernandez  <aldyh@redhat.com>
-
-       * decl.c (add_global_entry): Make type unsigned.
-
-2007-12-11  Bernhard Fischer  <aldot@gcc.gnu.org>
-
-       * decl.c (match_prefix): Make seen_type a boolean.
-       (add_global_entry): Cache type distinction.
-       * trans-decl.c: Whitespace cleanup.
-
-2007-12-10  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/34425
-       * interface.c (get_expr_storage_size): Use signed integer when
-       obtaining the bounds.
-
-2007-12-09  Jakub Jelinek  <jakub@redhat.com>
-
-       PR fortran/22244
-       * trans.h (struct array_descr_info): Forward declaration.
-       (gfc_get_array_descr_info): New prototype.
-       (enum gfc_array_kind): New type.
-       (struct lang_type): Add akind field.
-       (GFC_TYPE_ARRAY_AKIND): Define.
-       * trans-types.c: Include dwarf2out.h.
-       (gfc_build_array_type): Add akind argument.  Adjust
-       gfc_get_array_type_bounds call.
-       (gfc_get_nodesc_array_type): Include proper debug info even for
-       assumed-size arrays.
-       (gfc_get_array_type_bounds): Add akind argument, set
-       GFC_TYPE_ARRAY_AKIND to it.
-       (gfc_sym_type, gfc_get_derived_type): Adjust gfc_build_array_type
-       callers.
-       (gfc_get_array_descr_info): New function.
-       * trans-array.c (gfc_trans_create_temp_array,
-       gfc_conv_expr_descriptor): Adjust gfc_get_array_type_bounds
-       callers.
-       * trans-stmt.c (gfc_trans_pointer_assign_need_temp): Likewise.
-       * trans-types.h (gfc_get_array_type_bounds): Adjust prototype.
-       * Make-lang.in (fortran/trans-types.o): Depend on dwarf2out.h.
-       * f95-lang.c (LANG_HOOKS_GET_ARRAY_DESCR_INFO): Define.
-
-2007-12-09  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/32129
-       * dump-parse-tree.c (gfc_show_expr_n): New function for
-       debugging.
-       * gfortran.h : Add prototype for gfc_show_expr_n.
-       * expr.c (simplify_constructor): Copy the constructor
-       expression and try to simplify that.  If success, replace the
-       original.  Otherwise discard the copy, keep going through
-       the structure and return success.
-
-       PR fortran/31487
-       * decl.c (build_struct): Pad out default initializers with
-       spaces to the component character length.
-
-2007-12-08  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/34342
-       PR fortran/34345
-       PR fortran/18026
-       PR fortran/29471
-       * gfortran.texi (BOZ literal constants): Improve documentation
-       and adapt for BOZ changes.
-       * Make-lang.ini (resolve.o): Add target-memory.h dependency.
-       * gfortran.h (gfc_expr): Add is_boz flag.
-       * expr.c: Include target-memory.h.
-       (gfc_check_assign): Support transferring BOZ for real/cmlx.
-       * resolve.c: Include target-memory.h
-       (resolve_ordinary_assign): Support transferring BOZ for real/cmlx.
-       * target-memory.c (gfc_convert_boz): New function.
-       * target-memory.c (gfc_convert_boz): Add prototype.
-       * primary.c (match_boz_constant): Set is_boz, enable F95 error
-       also without -pedantic, and allow for Fortran 2003 BOZ.
-       (match_real_constant): Fix comment.
-       * simplify.c (simplify_cmplx,gfc_simplify_dble,gfc_simplify_float,
-       gfc_simplify_real): Support Fortran 2003 BOZ.
-
-2007-12-08  Jakub Jelinek  <jakub@redhat.com>
-
-       PR fortran/34359
-       * gfortran.h (gfc_file): Remove sibling and down fields.
-       * scanner.c (file_changes, file_changes_cur, file_changes_count,
-       file_changes_allocated): New variables.
-       (add_file_change, report_file_change): New functions.
-       (change_file): Remove.
-       (gfc_start_source_files, gfc_end_source_files): Call
-       report_file_change instead of change_file.
-       (gfc_advance_line): Call report_file_change instead of change_file,
-       call it even if lb->file == lb->next->file.
-       (get_file): Revert last changes.
-       (preprocessor_line): Call add_file_change when entering or leaving
-       a file.
-       (load_file): Likewise.  Set file_change[...].lb for all newly added
-       file changes.
-
-2007-12-06  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/34333
-       * primary.c (match_boz_constant): Add gfc_notify_std diagnostics.
-
-2007-12-06  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/34335
-       * module.c (find_symbol): Do not return symtrees with unique
-       names, which shows that they are private.
-
-2007-12-05  Jakub Jelinek  <jakub@redhat.com>
-
-       PR debug/33739
-       * gfortran.h (gfc_file): Remove included_by field, add sibling and
-       down.
-       (gfc_start_source_files, gfc_end_source_files): New prototypes.
-       * parse.c (gfc_parse_file): Call gfc_start_source_files and
-       gfc_end_source_files instead of calling the debugging hooks directly.
-       * error.c (show_locus): Use up field instead of included_by.
-       * scanner.c (change_file, gfc_start_source_files,
-       gfc_end_source_files): New functions.
-       (gfc_advance_line): Call change_file instead of calling debug hooks
-       directly.
-       (get_file): Set up rather than included_by.  Initialize down and
-       sibling.
-       (preprocessor_line, load_file): Don't set up field here.
-
-2007-12-05  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/34333
-       * arith.h (gfc_compare_expr): Add operator argument, needed
-       for compare_real.
-       * arith.c (gfc_arith_init_1): Use mpfr_min instead of mpfr_cmp/set
-       to account for NaN.
-       (compare_real): New function, as mpfr_cmp but takes NaN into account.
-       (gfc_compare_expr): Use compare_real.
-       (compare_complex): Take NaN into account.
-       (gfc_arith_eq,gfc_arith_ne,gfc_arith_gt,gfc_arith_ge,gfc_arith_lt,
-       gfc_arith_le): Pass operator to gfc_compare_expr.
-       * resolve.c (compare_cases,resolve_select): Pass operator
-       to gfc_compare_expr.
-       * simplify.c (simplify_min_max): Take NaN into account.
-
-2007-12-04  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/34318
-       * module.c (mio_gmp_real): Properly write NaN and Infinity.
-
-2007-12-02  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/34186
-       * symbol.c (generate_isocbinding_symbol): Fix setting string length.
-
-2007-11-30  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/34133
-       * match.h: Add bool allow_binding_name to gfc_match_bind_c.
-       * decl.c (match_attr_spec,gfc_match_bind_c_stmt,gfc_match_entry):
-       Adjust accordingly.
-       (gfc_match_bind_c): Add allow_binding_name argument, reject
-       binding name for dummy arguments.
-       (gfc_match_suffix,gfc_match_subroutine): Make use of
-       allow_binding_name.
-
-2007-11-30  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/34186
-       * symbol.c (generate_isocbinding_symbol): Set string length.
-       * dump-parse-tree.c (gfc_show_attr): Show BIND(C) attribute.
-       * misc.c (gfc_basic_typename): Handle BT_VOID.
-
-2007-11-29  Steven G. Kargl  <kargls@comcast.net>
-
-       PR fortran/34230
-       * fortran/arith.c (gfc_check_real_range): Set intermediate values
-       to +-Inf and 0 when -fno-range-check is in effect.
-       * fortran/invoke.texi: Improve -fno-range-check description.
-
-       PR fortran/34203
-       * fortran/invoke.texi: Document the C escaped characters activated
-       by -fbackslash.
-
-2007-11-29  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/34248
-       * trans-decl.c (generate_dependency_declarations): Check
-       for NULL pointers before accessing the string length.
-
-2007-11-29  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/34262
-       * intrinsic.c (gfc_get_intrinsic_sub_symbol): Add comment.
-       (gfc_intrinsic_sub_interface): Copy elemental state if needed.
-       * iresolve.c (gfc_resolve_mvbits): Mark procedure as elemental.
-
-2007-11-28  Jakub Jelinek  <jakub@redhat.com>
-
-       * trans-expr.c (gfc_trans_string_copy): Convert both dest and
-       src to void *.
-
-       PR fortran/34247
-       * trans-openmp.c (gfc_omp_privatize_by_reference): For REFERENCE_TYPE
-       pass by reference only PARM_DECLs or non-artificial decls.
-
-2007-11-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/32928
-       * decl.c (match_data_constant): Use gfc_match_init_expr to match the
-       array spec and set the initializer expression.
-
-2007-11-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/34227
-       * match.c (gfc_match_common): Add additional check for BLOCK DATA.
-
-2007-11-27  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/29389
-       *resolve.c (resolve_ordinary_assign): Use find_sym_in_expr to
-       test if a temporary should be written for a vector subscript
-       on the lhs.
-
-       PR fortran/33850
-       * restore.c (pure_stmt_function): Add prototype and new
-       function. Calls impure_stmt_fcn.
-       (pure_function): Call it.
-       (impure_stmt_fcn): New function.
-
-       * expr.c (gfc_traverse_expr): Call *func for all expression
-       types, not just variables. Add traversal of character lengths,
-       iterators and component character lengths and arrayspecs.
-       (expr_set_symbols_referenced): Return false if not a variable.
-       * trans-stmt.c (forall_replace, forall_restore): Ditto.
-       * resolve.c (forall_index): Ditto.
-       (sym_in_expr): New function.
-       (find_sym_in_expr): Rewrite to traverse expression calling
-       sym_in_expr.
-       *trans-decl.c (expr_decls): New function.
-       (generate_expr_decls): Rewrite to traverse expression calling
-       expr_decls.
-       *match.c (check_stmt_fcn): New function.
-       (recursive_stmt_fcn): Rewrite to traverse expression calling
-       check_stmt_fcn.
-
-2007-11-27  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/33541
-       *interface.c (compare_actual_formal): Exclude assumed size
-       arrays from the possibility of scalar to array mapping.
-       * decl.c (get_proc_name): Fix whitespace problem.
-
-       PR fortran/34231
-       * gfortran.h : Add 'use_rename' bit to symbol_attribute.
-       * module.c : Add 'renamed' field to pointer_info.u.rsym.
-       (load_generic_interfaces): Add 'renamed' that is set after the
-       number_use_names is called.  This is used to set the attribute
-       use_rename, which, in its turn identifies those symbols that
-       have not been renamed.
-       (load_needed): If pointer_info.u.rsym->renamed is set, then
-       set the use_rename attribute of the symbol.
-       (read_module): Correct an erroneous use of use_flag. Use the
-       renamed flag and the use_rename attribute to determine which
-       symbols are not renamed.
-
-2007-11-26  Steven G. Kargl  <kargls@comcast.net>
-
-       PR fortran/34203
-       * options.c:  Change default behavior of backslash processing.
-       * invoke.texi: Update documentation.
-
-2007-11-25  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/33152
-       * decl.c (add_init_expr_to_sym): Remove error message.
-       * resolve.c (check_data_variable): Add new check for a data variable
-       that has an array spec, but no ref and issue an error.
-       * match.c (gfc_match_common): Remove error message.
-
-2007-11-25  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/34079
-       * trans-types.c (gfc_return_by_reference,
-       gfc_get_function_type): Do not return result of
-       character-returning bind(C) functions as argument.
-       * trans-expr.c (gfc_conv_function_call): Ditto.
-
-2007-11-25  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/34175
-       * gfortran.texi: Document default forms assumed for various file
-       extensions.
-
-2007-11-25  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/33499
-       * decl.c (get_proc_name): If ENTRY statement occurs before type
-       specification, set the symbol untyped and ensure that it is in
-       the procedure namespace.
-
-2007-11-24  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/33541
-       * module.c (find_symtree_for_symbol): Move to new location.
-       (find_symbol): New function.
-       (load_generic_interfaces): Rework completely so that symtrees
-       have the local name and symbols have the use name.  Renamed
-       generic interfaces exclude the use of the interface without an
-       ONLY clause (11.3.2).
-       (read_module): Implement 11.3.2 in the same way as for generic
-       interfaces.
-
-2007-11-23 Christopher D. Rickett <crickett@lanl.gov>
-
-       * trans-common.c (build_common_decl): Fix the alignment for
-       BIND(C) common blocks.
-
-2007-11-23  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/34209
-       * iresolve.c (gfc_resolve_nearest): If sign variable kind does not match
-       kind of input variable, convert it to match.
-
-       PR fortran/33317
-       * trans.h: Modify prototype for gfc_conv_missing_dummy.
-       * trans-expr.c (gfc_conv_missing_dummy): Modify to pass an integer kind
-       parameter in.  Set the type of the dummy to the kind given.
-       (gfc_conv_function_call): Pass representation.length to
-       gfc_conv_missing_dummy.
-       * iresolve.c (gfc_resolve_cshift): Determine the correct kind to use and
-       if appropriate set representation.length to this kind value.
-       (gfc_resolve_eoshift): Likewise.
-       * check.c (gfc_check_cshift): Enable dim_check to allow DIM as an
-       optional argument. (gfc_check_eoshift): Likewise.
-       * trans_intrinsic.c (gfc_conv_intrinsic_function_args): Update call to
-       gfc_conv_missing_dummy.
-
-2007-11-23  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/34187
-       * module.c (load_needed): Ensure binding_label is not lost.
-
-       * decl.c (set_binding_label,gfc_match_bind_c): Replace
-       strncpy by strcpy.
-
-2007-11-23  Tobias Burnus  <burnus@net-b.de>
-           Steven G. Kargl  <kargl@gcc.gnu.org>
-
-       PR fortran/34192
-       * simplify.c (gfc_simplify_nearest): Fix NEAREST for
-       subnormal numbers.
-
-2007-11-23  Aldy Hernandez  <aldyh@redhat.com>
-
-       * trans-expr.c (gfc_trans_string_copy): Use "void *" when building a
-       memset.
-               
-2007-11-22  Tobias Burnus  <burnus@net-b.de>
-
-       * primary.c (gfc_match_structure_constructor): Allow
-       constructor for types without components.
-
-2007-11-22  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/34079
-       * trans-expr.c (gfc_conv_function_call): Do not append
-       string length arguments when calling bind(c) procedures.
-       * trans-decl.c (create_function_arglist): Do not append
-       string length arguments when declaring bind(c) procedures.
-
-2007-11-21  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/34083
-       * resolve.c (resolve_structure_cons): Also check for zero rank.
-
-2007-11-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/33317
-       * trans-expr.c (gfc_conv_missing_dummy): Revert.
-       * iresolve.c (gfc_resolve_cshift): Revert.
-       (gfc_resolve_eoshift): Likewise.
-       * check.c (gfc_check_cshift): Revert.
-       (gfc_check_eoshift): Likewise.
-
-2007-11-19  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/34079
-       * decl.c (gfc_match_entry): Support BIND(C).
-       (gfc_match_subroutine): Fix comment typo.
-
-2007-11-18  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/33317
-       * trans-expr.c (gfc_conv_missing_dummy): Set the type of the dummy
-       argument to default integer if flagged to do so. Fix typo in comment.
-       * resolve.c (gfc_resolve_dim_arg): Whitespace cleanup.
-       * iresolve.c (gfc_resolve_cshift): Do not convert type, mark attribute
-       for converting the DIM type appropriately in trans-expr.c.
-       (gfc_resolve_eoshift): Likewise.
-       * check.c (dim_check): Remove pre-existing dead code.
-       (gfc_check_cshift): Enable dim_check to allow DIM as an optional.
-       (gfc_check_eoshift): Likewise.
-       * trans_intrinsic.c (gfc_conv_intrinsic_function_args): Fix whitespace.
-
-2007-11-18  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31608
-       * trans-array.c (gfc_conv_expr_descriptor): Remove exception
-       for indirect references in the call to gfc_trans_scalar_assign.
-       * trans-expr.c (gfc_conv_string_parameter): Instead of asserting
-       that the expression is not an indirect reference, cast it to a
-       pointer type of the length given by se->string_length.
-
-2007-11-18  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/34137
-       * primary.c (match_variable): Reject non-result entry symbols.
-       * resolve.c (resolve_contained_fntype): Do not check entry master
-       functions.
-
-2007-11-17  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       * trans-types.c (gfc_init_types): Use wider buffer.
-
-2007-11-17  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       * trans-types.c (gfc_init_types): Use Fortran-90-style type
-       names, with kinds.
-
-2007-11-17  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/34133
-       * decl.c (gfc_match_suffix,gfc_match_subroutine): Disallow
-       bind(c) attribute for internal procedures.
-
-2007-11-17  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/25252
-       * interface.c (gfc_current_interface_head,
-       gfc_set_current_interface_head): New functions.
-       * decl.c (gfc_match_modproc): Move check for syntax error earlier.
-       On syntax error, restore previous state of the interface.
-       * gfortran.h (gfc_current_interface_head,
-       gfc_set_current_interface_head): New prototypes.
-
-2007-11-17  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/30285
-       * module.c (struct written_common, written_commons): New structure.
-       (compare_written_commons, free_written_common, write_common_0):
-       New functions.
-       (write_common): Call recursive function write_common_0.
-
-2007-11-17  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/34108
-       * io.c (check_format_string): Only check character expressions.
-       (match_dt_format): Return MATCH_ERROR if that is what
-       gfc_match_st_label said.
-
-2007-11-16  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/33957
-       * expr.c (check_inquiry): Don't call gfc_error now.
-
-2007-11-16  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/33739
-       PR fortran/34084
-       * scanner.c (start_source_file, end_source_file,
-       exit_remaining_files, gfc_advance_line): Revert rev. 130016.
-
-2007-11-16  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/34008
-       * trans-stmt.c (gfc_conv_elemental_dependencies): Add check for
-       INTENT_INOUT as well as INTENT_OUT.
-       (gfc_trans_call): Remove redundant gcc_asserts in dependency
-       check.
-
-2007-11-16  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/33986
-       * trans-array.c (gfc_conv_array_parameter ): Allow allocatable
-       function results.
-
-2007-11-15  Tobias Burnus  <burnus@net-b.de>
-       PR fortran/33917
-       * decl.c (match_procedure_decl): Pre-resolve interface.
-       * resolve.c (resolve_symbol): Reject interfaces later
-       declared in procedure statements.
-
-2007-11-13  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/33162
-       * decl.c (match_procedure_decl): Remove TODO and allow intrinsics in
-       PROCEDURE declarations.  Set attr.untyped to allow the interface to be
-       resolved later where the symbol type will be set.
-       * interface.c (compare_intr_interfaces): Remove static from pointer
-       declarations.  Add type and kind checks for dummy function arguments.
-       (compare_actual_formal_intr): New function to compare an actual
-       argument with an intrinsic function. (gfc_procedures_use): Add check for
-       interface that points to an intrinsic function, use the new function.
-       * resolve.c (resolve_specific_f0): Resolve the intrinsic interface.
-       (resolve_specific_s0): Ditto.
-
-2007-11-13  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/34080
-       * iresolve.c (gfc_resolve_transfer): Do not try to convert
-       to a constant MOLD expression, if it is an assumed size
-       dummy.
-
-2007-11-10  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       * trans-common.c: Remove prototype for gfc_get_common.
-
-2007-11-10  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/33592
-       * trans.c (gfc_call_realloc): Fix the logic and rename variables.
-
-2007-11-08  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/33739
-       * scanner.c (start_source_file, end_source_file,
-       exit_remaining_files): New functions.
-       (gfc_advance_line): Use the new functions.
-
-2007-11-08  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/34028
-       * trans-intrinsic.c (gfc_conv_intrinsic_ishft): Use correct type.
-
-2007-11-08  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/33917
-       * interface.c (check_sym_interfaces): Disallow PROCEDURE-declared
-       procedures for MODULE PROCEDURE.
-       * decl.c (match_procedure_in_interface): Do not mark as procedure.
-
-2007-11-03  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/33881
-       * trans-array.c (gfc_conv_array_parameter): Evaluate
-       se->string_length instead of the expr->ts.cl->backend_decl.
-
-2007-11-03  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       * gfortran.h: Shorten comment.
-       * trans-types.c (gfc_get_function_type): Allow argument to have
-       flavor FL_PROGRAM.
-       * trans-decl.c (gfc_sym_mangled_function_id): Mangle main program
-       name into MAIN__.
-       (build_function_decl): Fix comment.
-       * parse.c (main_program_symbol): Give the main program its proper
-       name, if any. Set its flavor to FL_PROGRAM.
-       (gfc_parse_file): Likewise.
-
-2007-11-02  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       * intrinsic.texi (ALLOCATED): Fix typo.
-
-2007-10-31  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/33941
-       * modules.c (intrinsics): Use only alphabetic names for
-       intrinsic operators.
-
-2007-10-31  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/33162
-       * interface.c (compare_intr_interfaces): New function to check intrinsic
-       function arguments against formal arguments. (compare_interfaces): Fix
-       logic in comparison of function and subroutine attributes.
-       (compare_parameter): Use new function for intrinsic as argument.
-       * resolve.c (resolve_actual_arglist): Allow an intrinsic without
-       function attribute to be checked further.  Set function attribute if
-       intrinsic symbol is found, return FAILURE if not.
-
-2007-10-31  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/33897
-       * decl.c (gfc_match_entry): Do not make ENTRY name
-       global for contained procedures.
-       * parse.c (gfc_fixup_sibling_symbols): Fix code for
-       determining whether a procedure is external.
-
-2007-10-30  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/33596
-       * trans-intrinsic.c (gfc_conv_intrinsic_isnan): Strip NOP_EXPR
-       from the result of build_call_expr.
-
-2007-10-29  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31217
-       PR fortran/33811
-       PR fortran/33686
-
-       * trans-array.c (gfc_conv_loop_setup): Send a complete type to
-       gfc_trans_create_temp_array if the temporary is character.
-       * trans-stmt.c (gfc_trans_assign_need_temp): Do likewise for
-       allocate_temp_for_forall_nest.
-       (forall_replace): New function.
-       (forall_replace_symtree): New function.
-       (forall_restore): New function.
-       (forall_restore_symtree): New function.
-       (forall_make_variable_temp): New function.
-       (check_forall_dependencies): New function.
-       (cleanup_forall_symtrees): New function.
-       gfc_trans_forall_1): Add and initialize pre and post blocks.
-       Call check_forall_dependencies to check for all dependencies
-       and either trigger second forall block to copy temporary or
-       copy lval, outside the forall construct and replace all
-       dependent references. After assignment clean-up and coalesce
-       the blocks at the end of the function.
-       * gfortran.h : Add prototypes for gfc_traverse_expr and
-       find_forall_index.
-       expr.c (gfc_traverse_expr): New function to traverse expression
-       and visit all subexpressions, under control of a logical flag,
-       a symbol and an integer pointer. The slave function is caller
-       defined and is only called on EXPR_VARIABLE.
-       (expr_set_symbols_referenced): Called by above to set symbols
-       referenced.
-       (gfc_expr_set_symbols_referenced): Rework of this function to
-       use two new functions above.
-       * resolve.c (find_forall_index): Rework with gfc_traverse_expr,
-       using forall_index.
-       (forall_index): New function used by previous.
-       * dependency.c (gfc_check_dependency): Use gfc_dep_resolver for
-       all references, not just REF_ARRAY.
-       (gfc_dep_resolver): Correct the logic for substrings so that
-       overlapping arrays are handled correctly.
-
-2007-10-28  Tobias Schlüter  <tobi@gcc.gnu.org>
-
-       PR fortran/32147
-       * module.c (write_symbol): Fix whitespace.
-       (write_symbol0): Walk symtree from left-to-right instead
-       breadth-first.
-       (write_symbol1): Similarly change walk of pointer info tree.
-       (write_module): Insert linebreak.
-       * symbol.c (gfc_traverse_symtree): Change to left-to-right order.
-       (traverse_ns): Likewise.
-
-2007-10-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
-       PR fortran/31306
-       * decl.c (char_len_param_value): Add check for conflicting attributes of
-       function argument.
-
-2007-10-27  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/33862
-       * lang-specs.h: Support .ftn and .FTN extension, use CPP for .FOR.
-       * options.c (form_from_filename): Support .ftn extension.
-       * gfortran.texi: Document support of .for and .ftn file extension.
-
-2007-10-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/33162
-       * intrinsic.h: Add prototypes for four new functions, gfc_check_datan2,
-       gfc_check_dprod, gfc_check_fn_d, and gfc_check_x_yd.
-       * intrinsic.c (add_functions): Add double precision checks for dabs,
-       dacos, dacosh, dasin, dasinh, datan, datanh, datan2, dbesj0, dbesj1,
-       dbesy0, dbesy1, dcos, dcosh, ddim, derf, derfc, dexp, dgamma,
-       dlgama, dlog, dlog10, dmod, dsign, dsin, dsinh, dsqrt, dtan, and dtanh.
-       Add real check dprod.
-       * check.c (gfc_check_datan2): New function to check for double precision
-       argumants. (gfc_check_dprod, gfc_check_fn_d, and gfc_check_x_yd): Ditto.
-
-2007-10-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       * invoke.texi: Fix typo in -fmax-errors=.
-
-2007-10-26  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/29784
-       * gfortran.texi: Document that there is no logical/integer
-       conversion performed during I/O operations.
-
-2007-10-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/33849
-       * resolve.c (resolve_actual_arglist): Fix error message text.
-
-2007-10-22  Steven G. Kargl  <kargl@gcc.gnu.org>
-
-       PR fortran/31244
-       * gfortran.h (gfc_data_value): Change repeat from unsigned int
-       to mpz_t.
-       * decl.c(top_val_list): Remove msg variable.  Use mpz_t for
-       repeat count.
-       * resolve.c (values):  Change left from unsigned int to mpz_t.
-       (next_data_value): Change for mpz_t.
-       (check_data_variable): Change ??? to FIXME in a comment.  Use
-       "mpz_t left".
-       (resolve_data ): Use "mpz_t left".
-
-2007-10-21  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/33749
-       * resolve.c (resolve_ordinary_assign): New function that takes
-       the code to resolve an assignment from resolve_code. In
-       addition, it makes a temporary of any vector index, on the
-       lhs, using gfc_get_parentheses.
-       (resolve_code): On EXEC_ASSIGN call the new function.
-
-2007-10-20  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/33818
-       * resolve.c (resolve_variable): Check that symbol is in the same
-       namespace as the entry function.
-
-2007-10-20  Paul Thomas  <pault@gcc.gnu.org>
-           FX Coudert <fxcoudert@gcc.gnu.org>
-
-       PR fortran/31608
-       * trans-array.c (gfc_conv_expr_descriptor): For all except
-       indirect references, use gfc_trans_scalar_assign instead of
-       gfc_add_modify_expr.
-       * iresolve.c (check_charlen_present): Separate creation of cl
-       if necessary and add code to treat an EXPR_ARRAY.
-       (gfc_resolve_char_achar): New function.
-       (gfc_resolve_achar, gfc_resolve_char): Call it.
-       (gfc_resolve_transfer): If the MOLD expression does not have a
-       character length expression, get it from a constant length.
-
-2007-10-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/33544
-       * simplify.c (gfc_simplify_transfer): Only warn for short transfer when
-       -Wsurprising is given.
-       * invoke.texi: Document revised behavior.
-
-2007-10-18  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/33795
-       * gfortran.texi: Document GFORTRAN_UNBUFFERED_PRECONNECTED
-       environment variable.  Delete mention of environment variable
-       GFORTRAN_UNBUFFERED_n.
-
-2007-10-18  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/33233
-       * resolve.c (check_host_association): Check singly contained
-       namespaces and start search for symbol in current namespace.
-
-2007-10-18  Paul Thomas  <pault@gcc.gnu.org>
-           Dominique d'Humieres  <dominiq@lps.ens.fr>
-
-       PR fortran/33733
-       * simplify.c (gfc_simplify_transfer): Return null if the source
-       expression is EXPR_FUNCTION.
-
-2007-10-17 Christopher D. Rickett <crickett@lanl.gov>
-
-       PR fortran/33760
-       * symbol.c (gen_special_c_interop_ptr): Remove code to create
-       constructor for c_null_ptr and c_null_funptr with value of 0.
-       * expr.c (check_init_expr): Prevent check on constructors for
-       iso_c_binding derived types.
-       * resolve.c (resolve_structure_cons): Verify that the user isn't
-       trying to invoke a structure constructor for one of the
-       iso_c_binding derived types.
-
-2007-10-15 Christopher D. Rickett <crickett@lanl.gov>
-
-       PR fortran/32600
-       * trans-expr.c (gfc_conv_function_call): Generate code to inline
-       c_associated.
-       * symbol.c (get_iso_c_sym): Preserve from_intmod and intmod_sym_id
-       attributes in the resolved symbol.
-       * resolve.c (gfc_iso_c_sub_interface): Remove dead code.
-
-2007-10-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/33055
-       * trans-io.c (create_dummy_iostat): New function to create a unique
-       dummy variable expression to use with IOSTAT.
-       (gfc_trans_inquire): Use the new function to pass unit number error info
-       to run-time library if a regular IOSTAT variable was not given.
-
-2007-10-14  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/33745
-       * trans-array.c (gfc_conv_ss_startstride): Fix dimension check.
-       (gfc_trans_array_bound_check, gfc_conv_array_ref,
-       gfc_conv_ss_startstride): Simplify error message.
-       * resolve.c (check_dimension): Fix dimension-type switch;
-       improve error message.
-
-2007-10-13  Tobias Schlüter  <tobi@gcc.gnu.org>
-           Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/33254
-       PR fortran/33727
-       * trans-array.c (get_array_ctor_var_strlen): Check upper bound for
-       constness instead of lower bound.
-       (get_array_ctor_strlen): Add bounds-checking code.
-
-2007-10-12  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/33542
-       * resolve.c (resolve_actual_arglist): If the actual argument is
-       ambiguous, then there is an error.
-
-2007-10-12  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/33664
-       * expr.c (gfc_specification_expr): If a function is not
-       external, intrinsic or pure is an error.  Set the symbol pure
-       to prevent repeat errors.
-
-2007-10-10  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/33636
-       * expr.c (find_array_section): Check for constructor constantness.
-
-2007-10-08  Tobias Schlüter  <tobi@gcc.gnu.org>
-
-       PR fortran/33689
-       * resolve.c (gfc_resolve_expr): Fix indentation.
-       (resolve_fl_variable_derived): Rename argument.
-       (resolve_fl_variable): Fix case in message.  Clarify logic.
-       Correctly simplify array bounds.
-
-2007-10-07  Thomas Koenig  <tkoenig@gcc.gnu.org>
-
-       PR libfortran/33683
-       * mathbuiltins.def (GAMMA):  Change function name to
-       "tgamma" instad of "gamma".
-
-2007-10-07  Tobias Schlüter  <tobi@gcc.gnu.org>
-
-       PR fortran/20851
-       * expr.c (check_inquiry): Typo fix in error message.
-       (check_init_expr): Same * 3.
-       (check_restricted): Verify that no dummy arguments appear in
-       restricted expressions in ELEMENTAL procedures.
-       * resolve.c (resolve_fl_variable): Exchange order of checks to
-       avoid side-effect.
-
-2007-10-06  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/33609
-       * simplify.c (range_check): Return gfc_bad_expr if incoming expression 
-       is NULL.
-
-2007-10-06  Tobias Schlüter  <tobi@gcc.gnu.org>
-
-       * simplify.c (gfc_simplify_size): Fix typo.
-
-2007-10-06  Tobias Schlüter  <tobi@gcc.gnu.org>
-
-       PR fortran/25076
-       * resolve.c (gfc_find_forall_index): Move towards top,
-       renaming to ...
-       (find_forall_index): ... this.  Add check for NULL expr.
-       (resolve_forall_iterators): Verify additional constraint.
-       (resolve_forall): Remove checks obsoleted by new code in
-       resolve_forall_iterators.
-
-2007-10-05  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       * gfortran.h (gfc_get_data_variable, gfc_get_data_value,
-       gfc_get_data): Move to decl.c.
-       (global_used): Rename into gfc_global_used.
-       (gfc_formalize_init_value, gfc_get_section_index,
-       gfc_assign_data_value, gfc_assign_data_value_range,
-       gfc_advance_section): Move to data.h.
-       (gfc_set_in_match_data): Remove.
-       * decl.c (gfc_get_data_variable, gfc_get_data_value,
-       gfc_get_data): Move here.
-       (gfc_set_in_match_data): Rename into set_in_match_data.
-       (gfc_match_data): Likewise.
-       (add_global_entry): Rename global_used into gfc_global_used.
-       * data.c: Include data.h.
-       * trans.h (gfc_todo_error): Remove.
-       * trans-array.c (gfc_trans_array_constructor,
-       gfc_conv_ss_startstride, gfc_conv_loop_setup): Change
-       gfc_todo_error into assertions.
-       * resolve.c (resolve_global_procedure): Rename global_used into
-       gfc_global_used.
-       * parse.c (gfc_global_used, parse_module, add_global_procedure,
-       add_global_program): Likewise.
-       * trans-intrinsic.c (gfc_walk_intrinsic_function): Rename
-       global_used into gfc_global_used.
-       * Make-lang.in: Add dependencies on fortran/data.h.
-       * data.h: New file.
-
-2007-10-04  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/33529
-       * decl.c (match_char_kind): New function.
-       (match_char_spec): Use match_char_kind.
-
-2007-10-04  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/33502
-       * scanner.c (gfc_advance_line): Call debug_hooks->end_source_file
-       and debug_hooks->start_source_file when appropriate, and set
-       dbg_emitted.
-       (gfc_define_undef_line): New function.
-       (load_file): Don't error out on #define and #undef lines.
-       * parse.c (next_statement): Call gfc_define_undef_line.
-       (gfc_parse_file): Call debug_hooks->start_source_file and
-       debug_hooks->end_source_file for the main source file if
-       required.
-       * gfortran.h (gfc_linebuf): Add dbg_emitted field.
-       (gfc_define_undef_line): New prototype.
-
-2007-10-04  Tobias Schlüter  <tobi@gcc.gnu.org>
-
-       PR fortran/33626
-       * resolve.c (resolve_operator): Always copy the type for
-       expressions in parentheses.
-
-2007-10-04  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/33646
-       PR fortran/33542
-       * interface.c (check_interface1): Revert patch of 10-02.
-
-2007-10-03  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/26682
-       * trans-decl.c (build_function_decl): Set "externally_visible"
-       attribute on the MAIN program decl.
-
-2007-10-03  Tobias Schlüter  <tobi@gcc.gnu.org>
-
-       PR fortran/33198
-       * resolve.c (has_default_initializer): Move to top.  Make bool.
-       (resolve_common_blocks): Simplify logic.  Add case for derived
-       type initialization.
-       (resolve_fl_variable_derived): Split out from ...
-       (resolve_fl_variable): ... here, while adapting to new h_d_i
-       interface.
-
-2007-10-03  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/26682
-       * options.c (gfc_post_options): Issue an error when
-       -fwhole-program is used.
-
-2007-10-02  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/33542
-       * interface.c (check_interface1): Specific procedures are
-       always ambiguous if they have the same name.
-
-2007-10-02  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/33566
-       * primary.c (gfc_match_rvalue): Make all expressions with array
-       references to structure parameters into variable expressions.
-
-2007-10-02  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/33554
-       * trans-decl.c (init_intent_out_dt): New function.
-       (gfc_trans_deferred_vars): Remove the code for default
-       initialization of INTENT(OUT) derived types and put it
-       in the new function.  Call it earlier than before, so
-       that array offsets and lower bounds are available.
-
-2007-10-02  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/33550
-       * decl.c (get_proc_name): Return rc if rc is non-zero; ie. if
-       the name is a reference to an ambiguous symbol.
-
-2007-10-02  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31154
-       PR fortran/31229
-       PR fortran/33334
-       * decl.c : Declare gfc_function_kind_locs and
-       gfc_function_type_locus.
-       (gfc_match_kind_spec): Add second argument kind_expr_only.
-       Store locus before trying to match the expression. If the
-       current state corresponds to a function declaration and there
-       is no match to the expression, read to the parenthesis, return
-       kind = -1, dump the expression and return.
-       (gfc_match_type_spec): Renamed from match_type_spec and all
-       references changed.  If an interface or an external function,
-       store the locus, set kind = -1 and return.  Otherwise, if kind
-       is already = -1, use gfc_find_symbol to try to find a use
-       associated or imported type.
-       match.h : Prototype for gfc_match_type_spec.
-       * parse.c (match_deferred_characteristics): New function.
-       (parse_spec): If in a function, statement is USE or IMPORT
-       or DERIVED_DECL and the function kind=-1, call
-       match_deferred_characteristics.  If kind=-1 at the end of the
-       specification expressions, this is an error.
-       * parse.h : Declare external gfc_function_kind_locs and
-       gfc_function_type_locus.
-
-2007-09-27  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
-
-       * module.c (mio_expr): Avoid -Wcast-qual warning.
-
-2007-09-27  Tobias Schlüter  <tobi@gcc.gnu.org>
-
-       * arith.c (reduce_binary_aa): Fix capitalization.
-       * check.c (gfc_check_dot_product): Likewise.
-       (gfc_check_matmul): Likewise.
-       * expr.c (gfc_check_conformance): Likewise.
-       (gfc_check_assign): Likewise.
-       (gfc_default_initializer): Simplify logic.
-       * trans.c (gfc_msg_bounds): Make const.
-       (gfc_msg_fault): Likewise.
-       (gfc_msg_wrong_return): Likewise.
-       * trans.h: Add const to corresponding extern declarations.
-
-2007-09-27  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/33568
-       * trans-intrinsic.c (gfc_conv_intrinsic_aint): Allow for the 
-       possibility of the optional KIND argument by making arg
-       an array, counting the number of arguments and using arg[0].
-
-2007-09-26  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/30780
-       * invoke.texi: Add note to -ffpe-trap option. Fix typos.
-
-2007-09-23  Tobias Schlüter  <tobi@gcc.gnu.org>
-
-       PR fortran/33269
-       * io.c (check_format_string): Move NULL and constant checks into
-       this function.
-       (check_io_constraints): Call gfc_simplify_expr() before calling
-       check_format_string().  Remove NULL and constant checks.
-
-2007-09-24  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/33538
-       * scanner.c, parse.c, gfortran.h: Revert revision 128671.
-
-2007-09-23  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/33528
-       * scanner.c (preprocessor_line): Call linemap_add when exiting
-       a file.
-       (gfc_new_file): Adjust debug code for USE_MAPPED_LOCATION.
-
-2007-09-22  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/33522
-       * trans-types.c (gfc_get_desc_dim_type): Mark artificial
-       variables with TREE_NO_WARNING.
-       (gfc_get_array_descriptor_base): Likewise.
-
-2007-09-22  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/33337
-       PR fortran/33376
-       * trans-decl.c (gfc_create_module_variable): Output
-       derived type parameters.
-       * arith.c (gfc_parentheses): Return the argument if
-       it is a constant expression.
-       * primary.c (gfc_match_rvalue): Remove the clearing of
-       the module name and the use_assoc attribute for derived
-       type parameter expressions.
-
-2007-09-22  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/33502
-       * scanner.c (gfc_advance_line): Call debug_hooks->start_source_file
-       and debug_hooks->end_source_file when entering and exiting
-       included files.
-       (gfc_define_undef_line): New function.
-       (load_file): Ignore #define and #undef preprocessor lines
-       while reading source files.
-       * parse.c (next_statement): Handle #define and #undef
-       preprocessor lines.
-       (gfc_parse_file): Call debug_hooks->start_source_file and
-       debug_hooks->end_source_file for the main source file if
-       requested by the debug format.
-       * gfortran.h (gfc_define_undef_line): Add prototype.
-
-2007-09-22  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/33445
-       * scanner.c (skip_free_comments): Warn if !$OMP& is used
-       if no OpenMP directive is to be continued.
-
-2007-09-21  Paul Thomas  <pault@gcc.gnu.org>
-
-       *trans-expr.c (gfc_trans_pointer_assignment): Convert array
-       descriptor for subref pointer assignements, rather than using
-       the loop info version.
-
-2007-09-21  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/33037
-       * simplify.c (gfc_simplify_transfer): Warn if source size
-       is smaller than result size.
-
-2007-09-20  Asher Langton  <langton2@llnl.gov>
-
-       PR fortran/20441
-       * gfortran.h : Add init_local_* enums and init_flag_* flags to
-       gfc_option_t.
-       * lang.opt: Add -finit-local-zero, -finit-real, -finit-integer,
-       -finit-character, and -finit-logical flags.
-       * invoke.texi: Document new options.
-       * resolve.c (build_init_assign): New function.
-       (apply_init_assign): Move part of function into build_init_assign.
-       (build_default_init_expr): Build local initializer (-finit-*).
-       (apply_default_init_local): Apply local initializer (-finit-*).
-       (resolve_fl_variable): Try to add local initializer (-finit-*).
-       * options.c (gfc_init_options, gfc_handle_option,
-       gfc_post_options): Handle -finit-local-zero, -finit-real,
-       -finit-integer, -finit-character, and -finit-logical flags.
-
-2007-09-20  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/33221
-       * gfortran.h (symbol_attribute): Add zero_comp field.
-       * symbol.c (gfc_use_derived): Handle case of emtpy derived types.
-       * decl.c (gfc_match_data_decl): Likewise.
-       (gfc_match_derived_decl): Likewise.
-       * module.c (ab_attribute, attr_bits): Add AB_ZERO_COMP member.
-       (mio_symbol_attribute): Write and read AB_ZERO_COMP.
-       * resolve.c (resolve_symbol): Handle case of emtpy derived types.
-       * parse.c (parse_derived): Likewise.
-
-2007-09-20  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/33288
-       * arith.c (reduce_unary, reduce_binary_ac, reduce_binary_ca,
-       reduce_binary_aa): Call ourselves recursively if an element of
-       the constructor is itself a constant array.
-
-2007-09-20  Tobias Schlüter  <tobi@gcc.gnu.org>
-
-       * io.c (resolve_tag_format): New function using code split out
-       and simplified from ...
-       (resolve_tag): ... this function.  Simplify logic.  Unify
-       IOSTAT, IOLENGTH and SIZE handling.
-
-2007-09-20  Christopher D. Rickett  <crickett@lanl.gov>
-
-       PR fortran/33497
-       * resolve.c (gfc_iso_c_func_interface): Use information from
-       subcomponent if applicable.
-
-2007-09-20  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/33325
-       * intrinsic.text: Add documentation of the intrinsic modules.
-       * gfortran.texi: Link to intrinsic-modules section and to
-       the GOMP manual.
-
-2007-09-18  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/31119
-       * trans-array.c (gfc_conv_ss_startstride): Only perform bounds
-       checking for optional args when they are present.
-
-2007-09-18  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/33231
-       * resolve.c (resolve_elemental_actual): Check for conformance
-       of intent out/inout dummies.
-
-2007-09-17  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/33106
-       * resolve.c (resolve_symbol): Reject public variable of
-       private derived-types for Fortran 95.
-
-2007-09-17  Tobias Burnus  <burnus@net-b.de>
-
-       * resolve.c (resolve_fl_procedure): Allow private dummies
-       for Fortran 2003.
-
-2007-09-17  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       * trans-types.c (gfc_get_desc_dim_type): Do not to try
-       emit debug info.
-       (gfc_get_array_descriptor_base): Likewise.
-       (gfc_get_mixed_entry_union): Likewise
-       (gfc_get_derived_type): Set decl location for fields and
-       derived type itself.
-
-2007-09-16  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/29396
-       PR fortran/29606
-       PR fortran/30625
-       PR fortran/30871
-       * trans.h : Add extra argument to gfc_build_array_ref. Rename
-       gfc_conv_aliased_arg to gfc_conv_subref_array_arg.  Move
-       prototype of is_aliased_array to gfortran.h and rename it
-       gfc_is_subref_array.  Add field span to lang_decl, add a new
-       decl lang specific flag accessed by GFC_DECL_SUBREF_ARRAY_P
-       and a new type flag GFC_DECL_SUBREF_ARRAY_P.
-       * trans.c (gfc_build_array_ref): Add the new argument, decl.
-       If this is a subreference array pointer, use the lang_decl
-       field 'span' to calculate the offset in bytes and use pointer
-       arithmetic to address the element.
-       * trans-array.c (gfc_conv_scalarized_array_ref,
-       gfc_conv_array_ref): Add the backend declaration as the third
-       field, if it is likely to be a subreference array pointer.
-       (gfc_conv_descriptor_dimension, gfc_trans_array_ctor_element,
-       gfc_trans_array_constructor_element, structure_alloc_comps,
-       gfc_conv_array_index_offset): For all other references to
-       gfc_build_array_ref, set the third argument to NULL.
-       (gfc_get_dataptr_offset): New function.
-       (gfc_conv_expr_descriptor): If the rhs of a pointer assignment
-       is a subreference array, then calculate the offset to the
-       subreference of the first element and set the descriptor data
-       pointer to this, using gfc_get_dataptr_offset.
-       trans-expr.c (gfc_get_expr_charlen): Use the expression for the
-       character length for a character subreference.
-       (gfc_conv_substring, gfc_conv_subref_array_arg): Add NULL for
-       third argument in call to gfc_build_array_ref.
-       (gfc_conv_aliased_arg): Rename to gfc_conv_subref_array_arg.
-       (is_aliased_array): Remove.
-       (gfc_conv_function_call): Change reference to is_aliased_array
-       to gfc_is_subref_array and reference to gfc_conv_aliased_arg to
-       gfc_conv_subref_array_arg.
-       (gfc_trans_pointer_assignment): Add the array element length to
-       the lang_decl 'span' field.
-       * gfortran.h : Add subref_array_pointer to symbol_attribute and
-       add the prototype for gfc_is_subref_array.
-       * trans-stmt.c : Add NULL for third argument in all references
-       to gfc_build_array_ref.
-       * expr.c (gfc_is_subref_array): Renamed is_aliased_array.
-       If this is a subreference array pointer, return true.
-       (gfc_check_pointer_assign): If the rhs is a subreference array,
-       set the lhs subreference_array_pointer attribute.
-       * trans-decl.c (gfc_get_symbol_decl): Allocate the lang_decl
-       field if the symbol is a subreference array pointer and set an
-       initial value of zero for the 'span' field.
-       * trans-io.c (set_internal_unit): Refer to is_subref_array and
-       gfc_conv_subref_array_arg.
-       (nml_get_addr_expr): Add NULL third argument to
-       gfc_build_array_ref. 
-       (gfc_trans_transfer): Use the scalarizer for a subreference
-       array.
-
-2007-09-13  Thomas Koenig  <tkoenig@gcc.gnu.org>
-
-       * iresolve.c (resolve_mask_arg): If a mask is an array
-       expression, convert it to kind=1.
-
-2007-09-13  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/33343
-       * expr.c (gfc_check_conformance): Print ranks in the error message.
-       * resolve.c (resolve_elemental_actual): Check also conformance of
-       the actual arguments for elemental functions.
-
-2007-09-13  Tobias Burnus  <burnus@net-b.de>
-
-       * symbol.c (gfc_add_elemental,gfc_add_pure,gfc_add_recursive):
-       Allow prefixes only to be specified once.
-
-2007-09-13  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/33412
-       * symbol.c (check_conflict): Add conflict of ELEMENTAL with Bind(C).
-
-2007-09-12  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/33297
-       * check.c (scalar_check): Move up in the file.
-       (kind_check): Call scalar_check.
-       (dim_check): If optional, do not call nonoptional_check; use
-       bool for optional.
-       (gfc_check_all_any,gfc_check_count,gfc_check_cshift,gfc_check_eoshift,
-       gfc_check_lbound,gfc_check_minloc_maxloc,check_reduction,
-       gfc_check_spread,gfc_check_ubound): Use true/false instead of 0/1
-       for dim_check; honor changed meaning of optional.
-       (gfc_check_int): Replace checks by kind_check.
-       (gfc_check_size): Replace checks by dim_check.
-
-2007-09-12  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/33284
-       PR fortran/33310
-       * symbol.c (check_conflict): Add conflict between INTRINSIC and ENTRY
-       and between BIND(C) and PARAMETER.
-
-2007-09-12  Tobias Burnus  <burnus@net-b.de>
-
-       * trans-expr.c (gfc_conv_initializer): Fix expr == NULL check.
-
-2007-09-12  Jan Hubicka  <jh@suse.cz>
-
-       * f95-lang.c (LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Kill.
-
-2007-09-12  Christopher D. Rickett  <crickett@lanl.gov>
-
-       PR fortran/33395
-       * trans-expr.c (gfc_conv_initializer): Remove unnecessary test for
-       intmod_sym_id and use derived symbol to set new kind of C_NULL_PTR
-       and C_NULL_FUNPTR expressions.
-
-2007-09-11  Christopher D. Rickett  <crickett@lanl.gov>
-
-       PR fortran/33040
-       * trans-expr.c (gfc_trans_structure_assign): Convert component
-       C_NULL_PTR and C_NULL_FUNPTR component initializers to (void *).
-       * trans-types.c (gfc_get_derived_type): Create a backend_decl for
-       the c_address field of C_PTR and C_FUNPTR and ensure initializer
-       is of proper type/kind for (void *).
-
-2007-09-11  Jan Hubicka <jh@suse.cz>
-
-       * f95-lang.c (gfc_expand_function): Kill.
-       (LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Kill.
-
-2007-09-08  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/31547
-       * gfortran.texi: Document when CPP is called.
-
-       * intrinsic.texi (IOR): Fix typos.
-
-2007-09-10  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/33370
-       * trans-expr.c (copyable_array_p):  Add tests that expression
-       is a variable, that it has no subreferences and that it is a
-       full array.
-       (gfc_trans_assignment): Change conditions to suit modifications
-       to copyable_array_p.
-
-2007-09-06  Tom Tromey  <tromey@redhat.com>
-
-       * scanner.c (get_file): Update.
-       (load_file): Update.
-       (gfc_next_char_literal): Use gfc_linebuf_linenum.
-       * f95-lang.c (gfc_init): Update.
-       * gfortran.h (gfc_linebuf_linenum): New macro.
-
-2007-09-05  Sandra Loosemore  <sandra@codesourcery.com>
-
-       * trans-decl.c (build_entry_thunks): Use set_cfun.
-       (gfc_generate_function_code): Likewise.
-
-2007-09-05  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31564
-       * primary.c (gfc_match_rvalue): Make expressions that refer
-       to derived type parameters that have array references into
-       variable expressions.  Remove references to use association
-       from the symbol.
-
-       PR fortran/33241
-       * decl.c (add_init_expr_to_sym): Provide assumed character
-       length parameters with the length of the initialization
-       expression, if a constant, or that of the first element of
-       an array.
-
-2007-09-04  Janus Weil  <jaydub66@gmail.com>
-           Paul Thomas  <pault@gcc.gnu.org>
-
-       * decl.c (match_procedure_decl,match_procedure_in_interface,
-       gfc_match_procedure): Handle PROCEDURE statements.
-       * gfortran.h (struct gfc_symbol): New member "gfc_symbol *interface".
-       (enum gfc_statement): New element "ST_PROCEDURE".
-       (strcut symbol_attribute): New member "unsigned procedure".
-       * interface.c (check_interface0): Extended error checking.
-       * match.h: Add gfc_match_procedure prototype.
-       * parse.c (decode_statement,next_statement,gfc_ascii_statement,
-       parse_derived,parse_interface): Implement PROCEDURE statements.
-       * resolve.c (resolve_symbol): Ditto.
-       * symbol.c (check_conflict): Ditto.
-       (gfc_add_proc): New function for setting the procedure attribute.
-       (copy_formal_args): New function for copying formal argument lists.
-
-2007-09-03  Daniel Jacobowitz  <dan@codesourcery.com>
-
-       * Make-lang.in (gfortranspec.o): Remove SHLIB_MULTILIB.
-
-2007-09-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
-
-       * gfortranspec.c (lang_specific_driver): Use CONST_CAST2.
-       * options.c (gfc_post_options): Supply a TYPE for CONST_CAST.
-       * parse.c (parse_omp_structured_block): Likewise,
-       * st.c (gfc_free_statement): Likewise,
-
-2007-09-03  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/31675
-       * libgfortran.h: New file.
-       * iso-fortran-env.def: Use macros in the new header instead of
-       hardcoded integer constants.
-       * Make-lang.in (F95_PARSER_OBJS, GFORTRAN_TRANS_DEPS): Add
-       fortran/libgfortran.h.
-       * gfortran.h (GFC_STD_*, GFC_FPE_*, options_convert,
-       ioerror_codes): Remove.
-       * trans.c (ERROR_ALLOCATION): Remove.
-       (gfc_call_malloc, gfc_allocate_with_status,
-       gfc_allocate_array_with_status): Use LIBERROR_ALLOCATION.
-       * trans-types.h (GFC_DTYPE_*): Remove.
-       * trans-decl.c (gfc_generate_function_code): Use
-       GFC_CONVERT_NATIVE instead of CONVERT_NATIVE.
-       * trans-io.c (set_parameter_value, set_parameter_ref): Use
-       LIBERROR_* macros instead of IOERROR_ macros.
-       * trans-intrinsic.c (gfc_conv_intrinsic_function): Use
-       LIBERROR_END and LIBERROR_EOR instead of hardcoded constants.
-       * options.c (gfc_init_options): Use GFC_CONVERT_NATIVE instead of
-       CONVERT_NATIVE.
-       (gfc_handle_option): Use GFC_CONVERT_* macros instead of CONVERT_*.
-
-2007-09-02  Steven G. Kargl  <kargl@gcc.gnu.org>
-
-       * invoke.texi: Fix the -frange-checking option entry.
-
-2007-09-02  Roger Sayle  <roger@eyesopen.com>
-
-       * decl.c (match_string_p): New helper function to explicitly match
-       a string of characters.
-       (match_attr_spec): Remove no longer needed DECL_COLON from decl_types.
-       Delete decls array and peek_char.  Rewrite decl attribute parser to
-       avoid calling gfc_match_strings.
-       * match.c (gfc_match_strings): Delete unused function.
-       * match.h (gfc_match_strings): Delete prototype.
-
-2007-09-02  Tobias Schlüuter  <tobi@gcc.gnu.org>
-
-       * dump-parse-tree.c (show_char_const): New function.
-       (gfc_show_expr): Use it.
-       * expr.c (find_substring_ref): Rework to not keep characters
-       dangling beyond end of string.
-
-2007-09-02  H.J. Lu  <hongjiu.lu@intel.com>
-
-       PR fortran/33276
-       * array.c (expand_iterator): Initialize frame.prev.
-
-2007-08-31  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/33232
-       * io.c (match_io): Also diagnose extra comma for READ.
-
-2007-08-31  Joseph Myers  <joseph@codesourcery.com>
-
-       * intrinsic.texi (LGAMMA): Remove empty @cindex line.
-
-2007-08-31  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31879
-       PR fortran/31197
-       PR fortran/31258
-       PR fortran/32703
-       * gfortran.h : Add prototype for gfc_resolve_substring_charlen.
-       * resolve.c (gfc_resolve_substring_charlen): New function.
-       (resolve_ref): Call gfc_resolve_substring_charlen.
-       (gfc_resolve_character_operator): New function.
-       (gfc_resolve_expr): Call the new functions in cases where the
-       character length is missing.
-       * iresolve.c (cshift, eoshift, merge, pack, reshape, spread,
-       transpose, unpack): Call gfc_resolve_substring_charlen for
-       source expressions that are character and have a reference.
-       * trans.h (gfc_trans_init_string_length) Change name to
-       gfc_conv_string_length; modify references in trans-expr.c,
-       trans-array.c and trans-decl.c.
-       * trans-expr.c (gfc_trans_string_length): Handle case of no
-       backend_decl.
-       (gfc_conv_aliased_arg): Remove code for treating substrings
-       and replace with call to gfc_trans_string_length.
-       * trans-array.c (gfc_conv_expr_descriptor): Remove code for
-       treating strings and call gfc_trans_string_length instead.
-
-2007-08-30  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/33228
-       * interface.c (check_interface0): Improve error for external procs.
-       (check_sym_interfaces): Fix checking of module procedures.
-
-2007-08-29  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/32989
-       * iresolve.c (gfc_resolve_getarg): Handle non-default integer
-       kinds.
-       * check.c (gfc_check_getarg): New function
-       * intrinsic.h: Add prototype for gfc_check_getarg.
-       * intrinsic.c (add_subroutines): Add reference to gfc_check_getarg.
-       * intrinsic.texi (GETARG): Adjust documentation.
-
-2007-08-29  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-           Tobias Burnus  <burnus@gcc.gnu.org>
-
-       PR fortran/33105
-       * intrinsic.c (add_functions): Add IS_IOSTAT_END and
-       IS_IOSTAT_EOR intrinsics.
-       * gfortran.h (gfc_isym_id): Add GFC_ISYM_IS_IOSTAT_END and
-       GFC_ISYM_IS_IOSTAT_EOR.
-       * trans-intrinsic.c (gfc_conv_has_intvalue): New function.
-       (gfc_conv_intrinsic_function): Call gfc_conv_has_intvalue for
-       GFC_ISYM_IS_IOSTAT_END and GFC_ISYM_IS_IOSTAT_EOR.
-       * intrinsic.texi: Add IS_IOSTAT_END and IS_IOSTAT_EOR.
-
-2007-08-28  Christopher D. Rickett  <crickett@lanl.gov>
-
-       PR fortran/33215
-       * decl.c (build_sym): Pass number of identifiers on line to
-       set_binding_label.
-       (set_binding_label): Verify that only one identifier given if
-       NAME= specified, even if the given binding label has zero length.
-       (gfc_match_bind_c): Remove declaration for has_name_equals because
-       it hides the static global one that is needed.
-
-2007-08-29  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       * trans-array.c (gfc_grow_array): Use gfc_call_realloc.
-       (gfc_array_allocate): Use gfc_allocate_with_status and
-       gfc_allocate_array_with_status.
-       (gfc_array_deallocate): Use gfc_deallocate_with_status.
-       (gfc_trans_dealloc_allocated): Use gfc_deallocate_with_status.
-       * trans-stmt.c (gfc_trans_allocate): Use gfc_allocate_with_status.
-       (gfc_trans_deallocate): Use gfc_deallocate_with_status.
-       * trans.c (gfc_allocate_with_status, gfc_allocate_array_with_status,
-       gfc_deallocate_with_status, gfc_call_realloc): New functions.
-       * trans.h (gfc_allocate_with_status, gfc_allocate_array_with_status,
-       gfc_deallocate_with_status, gfc_call_realloc): New prototypes.
-       (gfor_fndecl_internal_realloc, gfor_fndecl_allocate,
-       gfor_fndecl_allocate_array, gfor_fndecl_deallocate): Remove.
-       * f95-lang.c (gfc_init_builtin_functions): Create decl for
-       BUILT_IN_REALLOC.
-       * trans-decl.c (gfor_fndecl_internal_realloc,
-       gfor_fndecl_allocate, gfor_fndecl_allocate_array,
-       gfor_fndecl_deallocate): Remove function decls.
-       (gfc_build_builtin_function_decls): Likewise.
-
-2007-08-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/33055
-       Revert previous patch.
-
-2007-08-28  Jakub Jelinek  <jakub@redhat.com>
-
-       PR fortran/22244
-       * Make-lang.in (fortran/trans-types.o): Depend on $(FLAGS_H).
-       * trans-types.c: Include flags.h.
-       (gfc_get_nodesc_array_type): Add TYPE_DECL TYPE_NAME with
-       correct bounds and dimensions for packed arrays.
-
-2007-08-27  Tobias Burnus  <burnus@net-b.de>
-
-       * simplify.c (gfc_simplify_lgamma): Fix mpfr_lgamma call.
-
-2007-08-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/33055
-       * trans-io.c (create_dummy_iostat): New function to create a unique
-       dummy variable expression to use with IOSTAT.
-       (gfc_trans_inquire): Use the new function to pass unit number error info
-       to run-time library if a regular IOSTAT variable was not given.
-
-2007-08-26  H.J. Lu  <hongjiu.lu@intel.com>
-
-       * gfortran.h (gfc_isym_id): Add GFC_ISYM_GAMMA and
-       GFC_ISYM_LGAMMA.
-
-2007-08-26  Asher Langton  <langton2@llnl.gov>
-           Tobias Burnus  <burnus@net-b.de>
-
-       * gfortran.h (gfc_option_t): Add flag_recursive.
-       * lang.opt: Add -frecursive option and update -fopenmp.
-       * invoke.texi (-frecursive): Document new option.
-       (-fopenmp,-fno-automatic,-fmax-stack-var-size): Update.
-       * options.c (gfc_init_options, gfc_post_options,
-       gfc_handle_option): Add -frecursive and modify -fopenmp.
-       (gfc_post_options): Add warning for conflicting flags.
-
-2007-08-26  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/31298
-       * module.c (mio_symbol_ref,mio_interface_rest):  Return pointer_info.
-       (load_operator_interfaces): Support multible loading of an operator.
-
-2007-08-26  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/32985
-       * match.c (gfc_match_common): Remove SEQUENCE diagnostics.
-       * resolve.c (resolve_common_blocks): Add SEQUENCE diagnostics;
-       fix walking through the tree.
-
-2007-08-26  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/32980
-       * intrinsic.h (gfc_simplify_gamma,gfc_simplify_lgamma,
-       gfc_resolve_gamma,gfc_resolve_lgamma): New function declations.
-       * mathbuiltins.def: Define GAMMA and LGAMMA.
-       * intrinsic.c (add_functions): Add GAMMA, DGAMMA, LGAMMA, ALGAMA
-       and DLGAMA.
-       * simplify.c (gfc_simplify_gamma,gfc_simplify_lgamma): New functions.
-       * iresolve.c (gfc_resolve_gamma,gfc_resolve_lgamma): New functions.
-       * intrinsic.texi: Add documentation for GAMMA and LGAMMA.
-
-2007-08-26  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/33188
-       * parse.c (parse_derived): Support empty derived type
-       definitions for Fortran 2003.
-
-2007-08-25  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
-
-       * trans-openmp.c (gfc_omp_privatize_by_reference): Constify.
-       * trans.h (gfc_omp_privatize_by_reference): Likewise.
-
-2007-08-24  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/33178
-       * intrinsic.c (gfc_intrinsic_func_interface): Fix initialization
-       expression check.
-
-2007-08-24  Thomas Koenig  <tkoenig@gcc.gnu.org>
-
-       PR fortran/32972
-       * iresolve.c:  Don't convert array masks.
-
-2007-08-24  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/33139
-       * trans-array.c (gfc_conv_expr_descriptor): Copy bounds for
-       whole-array pointer assignments.
-
-2007-08-23  Jakub Jelinek  <jakub@redhat.com>
-
-       * decl.c (variable_decl): Don't share charlen structs if
-       length == NULL.
-       * trans-decl.c (create_function_arglist): Assert
-       f->sym->ts.cl->backend_decl is NULL instead of unsharing
-       charlen struct here.
-
-2007-08-23  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/33095
-       * trans-intrinsic.c (gfc_conv_intrinsic_minmax): Remove
-       runtime error checking.
-
-2007-08-22  Roger Sayle  <roger@eyesopen.com>
-           Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
-
-       * match.c (intrinsic_operators): Delete.
-       (gfc_match_intrinsic_op): Rewrite matcher to avoid calling
-       gfc_match_strings.
-
-2007-08-22  Christopher D. Rickett  <crickett@lanl.gov>
-
-       PR fortran/33020
-       * resolve.c (gfc_iso_c_sub_interface): Remove setting of type and
-       kind for optional SHAPE parameter of C_F_POINTER.
-
-2007-08-22  Janus Weil  <jaydub66@gmail.com>
-
-       * decl.c (match_attr_spec): Pass on errors from gfc_match_bind_c.
-       (gfc_match_bind_c): Bugfix in check for NAME= with abstract interfaces.
-       (gfc_match_mopdproc): Bugfix to reject module procedures in
-       abstract interfaces.
-
-2007-08-22  Kai Tietz  <kai.tietz@onevision.com>
-
-       * f95-lang.c: (gfc_init_decl_processing): Choose sizetype by using
-       Pmode.
-
-2007-08-21  Paul Brook  <paul@codesourcery.com>
-           Nathan Sidwell  <nathan@codesourcery.com>
-           Mark Mitchell  <mark@codesourcery.com>
-           Joseph Myers  <joseph@codesourcery.com>
-
-       * gfortranspec.c (lang_specific_driver): Use pkgversion_string.
-       * Make-lang.in (gfortran.pod): Define BUGURL.
-       * invoke.texi: Use BUGURL for bug-reporting instructions.
-
-2007-08-19  Roger Sayle  <roger@eyesopen.com>
-
-       * match.c (intrinsic_operators): Make static.
-       (gfc_op2string): New function for converting a gfc_intrinsic_op to
-       to a "const char*", replacing the macro of the same name.
-       * gfortran.h (intrinsic_operators): Delete prototype.
-       (gfc_op2string): Replace macro with function prototype.
-
-2007-08-18  Tobias Burnus  <burnus@net-b.de>
-
-       * gfortran.h (gfc_is_intrinsic_typename): Add declaration.
-       * symbol.c (gfc_is_intrinsic_typename): New function.
-       * parse.c (decode_statement): Check for space in ABSTRACT INTERFACE.
-       (parse_interface): Use gfc_is_intrinsic_typename.
-       * decl.c (gfc_match_derived_decl): Ditto.
-       * module.c (gfc_match_use): Use gcc_unreachable() for
-       INTERFACE_ABSTRACT in switch().
-
-2007-08-18  Roger Sayle  <roger@eyesopen.com>
-
-       * primary.c (match_logical_constant_string): New function to match
-       a ".true." or a ".false.".
-       (match_logical_constant): Use it instead of gfc_match_strings.
-
-2007-08-18  Paul Thomas  <pault@gcc.gnu.org>
-           Janus Weil  <jaydub66@gmail.com>
-
-       * interface.c (gfc_match_interface,gfc_match_abstract_interface,
-       gfc_match_end_interface,gfc_add_interface): Add abstract interface.
-       * dump-parse-tree.c (gfc_show_attr): Ditto.
-       * gfortran.h (interface_type,symbol_attribute): Ditto.
-       * module.c (gfc_match_use,ab_attribute,attr_bits,
-       mio_symbol_attribute): Ditto.
-       * resolve.c (resolve_function): Ditto.
-       * match.h: Ditto.
-       * parse.c (decode_statement): Ditto.
-       (parse_interface): Ditto, check for C1203 (name of abstract interface
-       cannot be the same as an intrinsic type).
-       * decl.c (gfc_match_bind_c): Check for NAME= with abstract interfaces.
-       (access_attr_decl): Handle Abstract interfaces.
-
-2007-08-18  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/32881
-       * expr.c (gfc_check_pointer_assign): If the rhs is the
-       initialization expression for the rhs, there is no error.
-
-2007-08-18  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/32875
-       * trans-array.c (get_array_ctor_strlen): Set the character
-       length of a zero length array to zero.
-
-2007-08-16  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/33072
-       * module.c (gfc_match_use): Mark user operators as such.
-       (find_use_name_n): Distinguish between operators and other symbols.
-       (find_use_name,number_use_names,mio_namelist,
-        load_operator_interfaces,load_generic_interfaces,read_module,
-        write_generic): Update find_use_name_n calls.
-
-2007-08-15  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/29459
-       * trans.c (gfc_create_var_np): Do not emit warnings for
-       anonymous variables.
-
-2007-08-15  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/33066
-       * decl.c (gfc_get_type_attr_spec): Fix whitespace.
-       (gfc_match_derived_decl): Fix logic.
-
-2007-08-14  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/33073
-       * trans-intrinsic.c (build_fixbound_expr): Convert to result type
-       in all cases.
-
-2007-08-14  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/32594
-       * trans-expr.c (gfc_conv_substring_expr): Only call
-       gfc_conv_substring if expr->ref is not NULL.
-       * expr.c (gfc_is_constant_expr): If e->ref is NULL, the substring
-       expression might be a constant.
-       (gfc_simplify_expr): Handle missing start and end, as well as
-       missing ref.
-
-2007-08-13  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/32926
-       * match.c (gfc_match_call): Do not create a new symtree in the
-       case where the existing symbol is external and not referenced.
-
-2007-08-13  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/32827
-       * decl.c (variable_decl): Check for an imported symbol
-       by looking for its symtree and testing for the imported
-       attribute.
-       (gfc_match_import): Remove change of symbol's namespace
-       and set the attribute imported instead.
-       * symbol.c (gfc_get_sym_tree): It is not an error if a
-       symbol is imported.
-       * gfortran.h : Add the 'imported' to symbol_attribute.
-
-2007-08-13  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/32962
-       * trans-array.c (gfc_conv_array_transpose): Set the offset
-       of the destination to zero if the loop is zero based.
-
-2007-08-12  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/29600
-       * intrinsic.c (add_functions): Add optional KIND argument to ACHAR.
-       * iresolve.c (gfc_resolve_achar): Handle the KIND argument.
-       * check.c (gfc_check_achar): Check for the optional KIND argument.
-       * simplify.c (gfc_simplify_achar): Use KIND argument.
-       * intrinsic.h (gfc_check_achar, gfc_simplify_achar,
-       gfc_resolve_achar): Adjust prototypes.
-
-2007-08-12  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/30964
-       PR fortran/33054
-       * trans-expr.c (gfc_conv_function_call): When no formal argument
-       list is available, we still substitute missing optional arguments.
-       * check.c (gfc_check_random_seed): Correct the check on the
-       number of arguments to RANDOM_SEED.
-       * intrinsic.c (add_subroutines): Add a resolution function to
-       RANDOM_SEED.
-       * iresolve.c (gfc_resolve_random_seed): New function.
-       * intrinsic.h (gfc_resolve_random_seed): New prototype.
-
-2007-08-12  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/32860
-       * error.c (error_uinteger): New function.
-       (error_integer): Call error_uinteger.
-       (error_print): Handle %u, %lu, %li and %ld format specifiers.
-       * interface.c (compare_actual_formal): Use the new %lu specifier.
-
-2007-08-12  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/31629
-       * lang.opt (-fmodule-private): New option.
-       * gfortran.h (gfc_option_t): Add flag_module_private member.
-       * invoke.texi (-fmodule-private): Document the new option.
-       * module.c (gfc_check_access): Allow the -fmodule-private option
-       to modify the default behaviour.
-       * options.c (gfc_init_options): Initialize flag_module_private.
-       (gfc_handle_option): Handle -fmodule-private.
-
-2007-08-12  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/29600
-       * intrinsic.c (add_functions): Add KIND arguments to COUNT,
-       IACHAR, ICHAR, INDEX, LBOUND, LEN, LEN_TRIM, SCAN, SIZE, UBOUND
-       and VERIFY.
-       * iresolve.c (gfc_resolve_count): Add kind argument.
-       (gfc_resolve_iachar): New function.
-       (gfc_resolve_ichar): Add kind argument.
-       (gfc_resolve_index_func): Likewise.
-       (gfc_resolve_lbound): Likewise.
-       (gfc_resolve_len): Likewise.
-       (gfc_resolve_len_trim): Likewise.
-       (gfc_resolve_scan): Likewise.
-       (gfc_resolve_size): New function.
-       (gfc_resolve_ubound): Add kind argument.
-       (gfc_resolve_verify): Likewise.
-       * trans-decl.c (gfc_get_extern_function_decl): Allow specific
-       intrinsics to have 4 arguments.
-       * check.c (gfc_check_count): Add kind argument.
-       (gfc_check_ichar_iachar): Likewise.
-       (gfc_check_index): Likewise.
-       (gfc_check_lbound): Likewise.
-       (gfc_check_len_lentrim): New function.
-       (gfc_check_scan): Add kind argument.
-       (gfc_check_size): Likewise.
-       (gfc_check_ubound): Likewise.
-       (gfc_check_verify): Likewise.
-       * intrinsic.texi: Update documentation for COUNT, IACHAR, ICHAR,
-       INDEX, LBOUND, LEN, LEN_TRIM, SCAN, SIZE, UBOUND and VERIFY.
-       * simplify.c (get_kind): Whitespace fix.
-       (int_expr_with_kind): New function.
-       (gfc_simplify_iachar): Add kind argument.
-       (gfc_simplify_iachar): Likewise.
-       (gfc_simplify_ichar): Likewise.
-       (gfc_simplify_index): Likewise.
-       (simplify_bound_dim): Likewise.
-       (simplify_bound): Likewise.
-       (gfc_simplify_lbound): Likewise.
-       (gfc_simplify_len): Likewise.
-       (gfc_simplify_len_trim): Likewise.
-       (gfc_simplify_scan): Likewise.
-       (gfc_simplify_shape): Pass NULL as kind argument to gfc_simplify_size.
-       (gfc_simplify_size): Add kind argument.
-       (gfc_simplify_ubound): Likewise.
-       (gfc_simplify_verify): Likewise.
-       * intrinsic.h: Update prototypes and add new ones.
-       * trans-intrinsic.c (gfc_conv_intrinsic_index): Rename into
-       gfc_conv_intrinsic_index_scan_verify.
-       (gfc_conv_intrinsic_scan, gfc_conv_intrinsic_verify): Remove.
-       (gfc_conv_intrinsic_function): Call
-       gfc_conv_intrinsic_index_scan_verify to translate the INDEX,
-       SCAN and VERIFY intrinsics.
-
-2007-08-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/31189
-       * invoke.texi (-fbacktrace): Document the new behaviour.
-
-2007-08-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/32937
-       * trans-array.c (gfc_conv_expr_descriptor): Use
-       gfc_conv_const_charlen to generate backend_decl of right type.
-       * trans-expr.c (gfc_conv_expr_op): Use correct return type.
-       (gfc_build_compare_string): Use int type instead of default
-       integer kind for single character comparison.
-       (gfc_conv_aliased_arg): Give backend_decl the right type.
-       * trans-decl.c (gfc_build_intrinsic_function_decls): Make
-       compare_string return an int.
-
-2007-08-11  Ian Lance Taylor  <iant@google.com>
-
-       * f95-lang.c (gfc_get_alias_set): Change return type to
-       alias_set_type.
-
-2007-08-10  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/31270
-       * trans.c (gfc_trans_runtime_check): Reorder arguments and
-       add extra variable arguments. Hand them to the library function.
-       * trans.h (gfc_trans_runtime_check): Update prototype.
-       * trans-array.c (gfc_trans_array_bound_check): Issue more
-       detailled error messages.
-       (gfc_conv_array_ref): Likewise.
-       (gfc_conv_ss_startstride): Likewise.
-       (gfc_trans_dummy_array_bias): Reorder arguments to
-       gfc_trans_runtime_check.
-       * trans-expr.c (gfc_conv_substring): Issue more detailled
-       error messages.
-       (gfc_conv_function_call): Reorder arguments to gfc_trans_runtime_check.
-       * trans-stmt.c (gfc_trans_goto): Likewise.
-       * trans-io.c (set_string): Reorder arguments to
-       gfc_trans_runtime_check and issue a more detailled error message.
-       * trans-decl.c (gfc_build_builtin_function_decls): Make
-       runtime_error and runtime_error_at handle a variable number of
-       arguments.
-       * trans-intrinsic.c (gfc_conv_intrinsic_bound): Reorder arguments
-       to gfc_trans_runtime_check.
-       (gfc_conv_intrinsic_minmax): Likewise.
-       (gfc_conv_intrinsic_repeat): Issue more detailled error messages.
-
-2007-08-10  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
-
-       * gfortranspec.c (lang_specific_driver): Use CONST_CAST.
-       * options.c (gfc_post_options): Likewise.
-       * parse.c (parse_omp_structured_block): Likewise.
-       * st.c (gfc_free_statement): Likewise.
-
-2007-08-10  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/32933
-       * trans-decl.c (gfc_build_builtin_function_decls): Change
-       prototype for associated.
-       * trans-intrinsic.c (gfc_conv_intrinsic_minmax): Convert the
-       result of __builtin_isnan into a boolean.
-       (gfc_conv_intrinsic_strcmp): Cleanup.
-       (gfc_conv_associated): Convert the result of the associated
-       function into a boolean.
-
-2007-08-09  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/32987
-       * io.c (format_token): Add FMT_ERROR.
-       (next_char_not_space): Print error/warning when
-       '\t' are used in format specifications.
-       (format_lex): Propagate error.
-       (check_format): Ditto.
-
-2007-08-09  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/33001
-       * arith.c (arith_error): Point in the error message
-       to -fno-range-check.
-
-2007-08-09  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/32902
-       * intrinsic.texi (SIZEOF): Add mention to C_SIZE_T.
-
-2007-08-06  Christopher D. Rickett  <crickett@lanl.gov>
-
-       PR fortran/32732
-       * trans-expr.c (gfc_conv_scalar_char_value): Convert the tree and
-       actual arg expressions for scalar characters passed by-value to
-       bind(c) routines.
-       (gfc_conv_function_call): Call gfc_conv_scalar_char_value.
-       * trans.h: Add prototype for gfc_conv_scalar_char_value.
-       * trans-decl.c (generate_local_decl): Convert by-value character
-       dummy args of bind(c) procedures using
-       gfc_conv_scalar_char_value.
-
-2007-08-06  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/30947
-       * iresolve.c (gfc_resolve_alarm_sub): Suffix the subroutine name
-       with the kind of the STATUS argument.
-
-2007-08-06  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/30948
-       * intrinsic.c (add_functions): Fix name of argument to CHDIR.
-
-2007-08-06  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/30933
-       * iresolve.c (gfc_resolve_exit): Convert argument to default
-       integer kind.
-
-2007-08-06  Daniel Franke  <franke.daniel@gmail.com>
-
-       * resolve.c (derived_pointer): Removed, replaced callers by access 
-       to appropiate attribute bit.
-       (derived_inaccessable): Shortcut recursion depth.
-       (resolve_fl_namelist): Fixed checks for private components in namelists.
-
-2007-08-06  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/29828
-       * trans.h (gfor_fndecl_string_minmax): New prototype.
-       * trans-decl.c (gfor_fndecl_string_minmax): New variable.
-       (gfc_build_intrinsic_function_decls): Create gfor_fndecl_string_minmax.
-       * check.c (gfc_check_min_max): Allow for character arguments.
-       * trans-intrinsic.c (gfc_conv_intrinsic_minmax_char): New function.
-       (gfc_conv_intrinsic_function): Add special case for MIN and MAX
-       intrinsics with character arguments.
-       * simplify.c (simplify_min_max): Add simplification for character
-       arguments.
-
-2007-08-06  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/31612
-       * invoke.texi: Adjust documentation for option -fsyntax-only.
-
-2007-08-05  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-           Tobias Burnus  <burnus@gcc.gnu.org>
-
-       PR fortran/32979
-       * intrinsic.h (gfc_check_isnan): Add prototype.
-       * gfortran.h (gfc_isym_id): Add GFC_ISYM_ISNAN.
-       * intrinsic.c (add_functions): Add ISNAN intrinsic.
-       * check.c (gfc_check_isnan): New function.
-       * trans-intrinsic.c (gfc_conv_intrinsic_isnan): New function.
-       (gfc_conv_intrinsic_function): Call gfc_conv_intrinsic_isnan
-       to translate ISNAN.
-       * intrinsic.texi: Document ISNAN.
-
-2007-08-04  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31214
-       * symbol.c (get_unique_symtree): Moved from module.c.
-       * module.c (get_unique_symtree): Moved to symbol.c.
-       * decl.c (get_proc_name): Transfer the typespec from the local
-       symbol to the module symbol, in the case that an entry is also
-       a module procedure.  Ensure the local symbol is cleaned up by
-       pointing to it with a unique symtree.
-
-       * dump_parse_tree (gfc_show_code_node): Add EXEC_ASSIGN_CALL.
-
-2008-08-04  Steven G. Kargl  <kargl@gcc.gnu.org>
-
-       PR fortran/32969
-       * iresolve.c (gfc_resolve_rrspacing): Convert argument(s) to
-       expected KIND.
-       (gfc_resolve_scale): Ditto.
-       (gfc_resolve_set_exponent): Ditto.
-       (gfc_resolve_spacing): Ditto.
-       PR fortran/32968
-       * trans-intrinsic.c (gfc_conv_intrinsic_si_kind,
-       gfc_conv_intrinsic_sr_kind): Convert the argument(s) to the
-       expected KIND, and fold the result to the expected KIND.
-
-2007-08-03  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/31202
-       * f95-lang.c (gfc_init_builtin_functions): Defin builtins for 
-       lround{f,,l} and llround{f,,l}.
-       * trans-intrinsic.c (build_fix_expr): Generate calls to the
-       {l,}round{f,,l} functions.
-
-2007-08-01  Thomas Koenig  <tkoenig@gcc.gnu.org>
-
-       PR libfortran/32954
-       * intrinsic.c (resolve_mask_arg):  New function.
-       (gfc_resolve_maxloc):  Use resolve_mask_arg for mask resolution.
-       (gfc_resolve_maxval):  Likewise.
-       (gfc_resolve_minloc):  Likewise.
-       (gfc_resolve_minval):  Likewise.
-       (gfc_resolve_pack):  Likewise.
-       (gfc_resolve_product):  Likewise.
-       (gfc_resolve_sum):  Likewise.
-       (gfc_resolve_unpack):  Likewise.
-
-2007-08-01  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/32936
-       * match.c (gfc_match_allocate): Better check that STAT is
-       a variable.
-
-       * check.c (gfc_check_allocated): Reorder checks to improve
-       error message.
-
-2007-08-01  Nick Clifton  <nickc@redhat.com>
-
-       * arith.c: Change copyright header to refer to version 3 of the
-       GNU General Public License and to point readers at the COPYING3
-       file and the FSF's license web page.
-       * openmp.c, interface.c, intrinsic.c, trans-array.c, trans-expr.c,
-       symbol.c, iso-fortran-env.def, intrinsic.h, decl.c, trans-array.h,
-       matchexp.c, dump-parse-tree.c, trans-common.c, array.c,
-       Make-lang.in, trans-openmp.c, gfortran.h, error.c,
-       iso-c-binding.def, lang.opt, data.c, trans-const.c, trans-stmt.c,
-       expr.c, trans-const.h, trans-stmt.h, module.c, trans.c, scanner.c,
-       trans-types.c, trans.h, gfortranspec.c, trans-types.h,
-       lang-specs.h, io.c, bbt.c, resolve.c, f95-lang.c, st.c,
-       iresolve.c, match.c, trans-decl.c, trans-io.c, target-memory.c,
-       match.h, target-memory.h, parse.c, arith.h, check.c, dependency.c,
-       parse.h, types.def, convert.c, dependency.h, primary.c,
-       trans-intrinsic.c, options.c, misc.c, simplify.c: Likewise.
-
-2007-08-01  Daniel Franke  <franke.daniel@gmail.com>
-
-       * trans-decl.c (generate_local_decl): Emit warning on unused parameter
-       on "-Wall -Wextra" or "-Wunused-parameter" but not on "-Wall", changed
-       messages that start with lower case to upper case.
-       * invoke.texi (-Wparameter-unused): Document differences between gcc
-       and gfortran regarding this option.
-
-2007-08-01  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/32945
-       * expr.c (check_specification_function): Skip check if no symtree 
-       is available.
-
-2007-08-01  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31609
-       * resolve.c (resolve_entries): Entries declared to be module
-       procedures must point to the function namespace.
-
-2007-07-31  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/32938
-       * trans-stmt.c (gfc_trans_return): Convert to correct type.
-
-2007-07-31  Steven G. Kargl  <kargl@gcc.gnu.org>
-
-       PR fortran/32942
-       * trans-intrinsic.c (gfc_conv_intrinsic_exponent): Convert to correct
-       type.
-
-2007-07-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       * invoke.texi: Document -fsign-zero flag.
-
-2007-07-29  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31211
-       * trans-expr.c (gfc_conv_expr_reference): Add block for case of
-       scalar pointer functions so that NULL result is correctly
-       handled.
-
-       PR fortran/32682
-       * trans-array.c (gfc_trans_array_constructor): On detecting a
-       multi-dimensional parameter array, set the loop limits.
-
-2007-07-29  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/32906
-       * resolve.c (resolve_fl_parameter): Check for constant shape arrays,
-       adjusted error message.
-
-2007-07-29  Daniel Franke  <franke.daniel@gmail.com>
-
-       * invoke.texi: Removed -w from option summary.
-
-2007-07-29  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/32879
-       * intrinsic.texi (IRAND, RAND, RANDOM_NUMBER): Document algorithm
-       used for random number generator.
-
-2007-07-28  Kazu Hirata  <kazu@codesourcery.com>
-
-       * gfortran.h, interface.c, resolve.c, symbol.c: Fix comment
-       typos.
-       * intrinsic.texi, invoke.texi: Fix typos.
-
-2007-07-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/31609
-       * resolve.c (generic_sym): Check for a same symbol and if so, return to
-       avoid infinite recursion.
-
-2007-07-28  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/31818
-       PR fortran/32876
-       PR fortran/32905
-       * gfortran.h (symbol_attribute): Added bits for pointer_comp, 
-       private_comp.
-       * parse.c (parse_derived): Set pointer_comp/private_comp bits if 
-       the derived type ultimately contains pointer components or private 
-       components.
-       * module.c (ab_attribute): New values AB_POINTER_COMP, AB_PRIVATE_COMP.
-       (attr_bits): Added names for new ab_attributes.
-       (mio_symbol_attribute): Save/restore new attribute bits in modules.
-       * match.c (gfc_match_namelist): Removed check for namelist objects
-       of assumed shape.
-       * resolve.c (resolve_fl_namelist): Added check for pointer or
-       private components in nested types. Added check for namelist objects
-       of assumed shape.
-
-2007-07-28  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/32880
-       * trans-expr.c (gfc_trans_scalar_assign): Revert to fixed order
-       for lse and rse pre expressions, for derived types with
-       allocatable components.  Instead, assign the lhs to a temporary
-       and deallocate after the assignment.
-
-2007-07-28  Janne Blomqvist  <jb@gcc.gnu.org>
-
-       PR fortran/32909
-       * trans-stmt.c (gfc_trans_character_select): Replace occurrences
-       of gfc_c_int_type_node with integer_type_node.
-       * trans-decl.c (gfc_build_intrinsic_function_decls): Likewise.
-       (gfc_build_builtin_function_decls): Likewise.
-       (gfc_generate_function_code): Likewise.
-       * trans-io.c (gfc_build_io_library_fndecls): Likewise.
-
-2007-07-27  Janne Blomqvist  <jb@gcc.gnu.org>
-
-       * trans-decl.c (gfc_build_builtin_function_decls): Use existing
-       gfc_array_index_type rather than creating another typenode for
-       gfc_index_integer_kind.
-
-2007-07-27  Janne Blomqvist  <jb@gcc.gnu.org>
-
-       * trans-io.c (gfc_build_io_library_fndecls): Change to use
-       gfc_array_index_type for array descriptor triplets instead of
-       gfc_int4_type_node.
-
-2007-07-26  Steven G. Kargl  <kargl@gcc.gnu.org>
-
-       PR fortran/32899
-       * resolve.c (resolve_operator): Add INTRINSIC_EQ_OS comparison.
-
-2007-07-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-           Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/32760
-       * primary.c (match_variable): Do not call gfc_add_flavor if symbol has
-       attribute of ACCESS_PUBLIC or ACCESS_PRIVATE already marked.
-
-2007-07-27  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/32035
-       * trans-stmt.c (gfc_trans_character_select): Replace the
-       mechanism with labels by a SWITCH_EXPR.
-       * trans-decl.c (gfc_build_builtin_function_decls): Change
-       return type for select_string.
-
-2007-07-27  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/32903
-       * trans-decl.c (gfc_trans_deferred_vars): Set intent(out)
-       derived types as referenced, if they have the the default
-       initializer set.
-
-2007-07-25  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
-
-       * gfortran.h (generate_isocbinding_symbol): Constify.
-       * symbol.c (gen_special_c_interop_ptr, gen_cptr_param,
-       generate_isocbinding_symbol): Likewise.
-
-2007-07-24  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31205
-       PR fortran/32842
-       * trans-expr.c (gfc_conv_function_call): Remove the default
-       initialization of intent(out) derived types.
-       * symbol.c (gfc_lval_expr_from_sym): New function.
-       * matchexp.c (gfc_get_parentheses): Return argument, if it is
-       character and posseses a ref.
-       * gfortran.h : Add prototype for gfc_lval_expr_from_sym.
-       * resolve.c (has_default_initializer): Move higher up in file.
-       (resolve_code): On detecting an interface assignment, check
-       if the rhs and the lhs are the same symbol.  If this is so,
-       enclose the rhs in parenetheses to generate a temporary and
-       prevent any possible aliasing.
-       (apply_default_init): Remove code making the lval and call
-       gfc_lval_expr_from_sym instead.
-       (resolve_operator): Give a parentheses expression a type-
-       spec if it has no type.
-       * trans-decl.c (gfc_trans_deferred_vars): Apply the a default
-       initializer, if any, to an intent(out) derived type, using
-       gfc_lval_expr_from_sym and gfc_trans_assignment.  Check if
-       the dummy is present.
-
-2007-07-24  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/32867
-       * expr.c (check_init_expr): Simplify matched functions.
-
-2007-07-24  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/32778
-       * intrinsic.c (add_sym): Do not exclude any symbols, even if not part
-       of the selected standard.
-       (make generic): Likewise.
-       (make alias): Likewise, set standard the alias belongs to.
-       (add_subroutines): Call make_noreturn unconditionally.
-       (check_intrinsic_standard): Change return value to try.
-       (gfc_intrinsic_func_interface): Check return value of above function.
-       (gfc_intrinsic_sub_interface): Likewise.
-
-2007-07-24  Thomas Koenig  <tkoenig@gcc.gnu.org>
-
-       PR fortran/30814
-       * trans-decl.c (generate_function_code):  Add argument
-       for flag_bounds_check to the array for set_options.
-       * invoke.texi (-fbounds-check): Document new libarary run-time
-       behaviour.
-
-2007-07-23  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/25104
-       PR fortran/31639
-       * expr.c (check_transformational): Reject valid transformational
-       intrinsics to avoid ICE.
-       (check_inquiry): Report error for assumed character lengths for
-       all supported standards.
-       (check_init_expr): Whitespace fix.
-
-2007-07-23  Christopher D. Rickett  <crickett@lanl.gov>
-
-       PR fortran/32797
-       PR fortran/32800
-       * decl.c (verify_bind_c_sym): Use the result symbol for functions
-       with a result clause.  Warn if implicitly typed.  Verify the type
-       and rank of the SHAPE argument, if given.
-       * resolve.c (gfc_iso_c_sub_interface): Use gfc_procedure_use to
-       check the actual args against the formal, sorting them if
-       necessary.
-       * symbol.c (gen_shape_param): Initialize type of SHAPE param to
-       BT_VOID.
-
-2007-07-23  Christopher D. Rickett  <crickett@lanl.gov>
-
-       PR fortran/32732
-       * trans-decl.c (generate_local_decl): Convert the TREE_TYPE for by
-       value character dummy args of BIND(C) procedures.
-       * trans-expr.c (gfc_conv_variable): Do not build address
-       expression for BT_CHARACTER dummy args.
-
-2007-07-23  Christopher D. Rickett  <crickett@lanl.gov>
-           Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/32600
-       * trans-expr.c (gfc_conv_function_call): Handle c_funloc.
-       * trans-types.c: Add pfunc_type_node.
-       (gfc_init_types,gfc_typenode_for_spec): Use it.
-       * resolve.c (gfc_iso_c_func_interface): Fix whitespace and
-       improve error message.
-
-2007-07-22  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/32710
-       * parse.c (gfc_fixup_sibling_symbols): No replacement of symbols if
-       the current is a namelist.
-
-2007-07-22  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/29962
-       PR fortran/31253
-       PR fortran/31265
-       PR fortran/31639
-       * gfortran.h (gfc_intrinsic_sym): Changed members elemental, pure,
-       generic, specific, actual_ok, noreturn into bits of a bitfield, 
-       added bits for inquiry, transformational, conversion.
-       * check.c (non_init_transformational): Removed, removed all callers.
-       * intrinsic.c (enum class): New.
-       (add_sym*): Replaced argument elemetal by enum class. Changed all
-       callers.
-       (add_functions): Assign appropriate classes to intrinsic functions.
-       (add_subroutines): Assign appropriate classes to intrinsic subroutines.
-       (add_conv): Set conversion attribute.
-       (gfc_init_expr_extensions): Removed, removed all callers.
-       (gfc_intrinsic_func_interface): Reimplemented check for non-standard
-       initializatione expressions.
-       * expr.c (check_specification_function): New.
-       (gfc_is_constant_expr): Added check for specification functions.
-       (check_init_expr_arguments): New.
-       (check_inquiry): Changed return value to MATCH, added checks for
-       inquiry functions defined by F2003.
-       (check_transformational): New.
-       (check_null): New.
-       (check_elemental): New.
-       (check_conversion): New.
-       (check_init_expr): Call new check functions, add more specific error
-       messages.
-
-2007-07-21  Christopher D. Rickett  <crickett@lanl.gov>
-
-       PR fortran/32627
-       * resolve.c (set_name_and_label): Set kind number for character
-       version of c_f_pointer.
-       (gfc_iso_c_sub_interface): Set the kind of the SHAPE formal arg to
-       that of the actual SHAPE arg.
-       * symbol.c (gen_shape_param): Initialize kind for SHAPE arg.
-
-2007-07-21  Christopher D. Rickett  <crickett@lanl.gov>
-
-       PR fortran/32801
-       * symbol.c (generate_isocbinding_symbol): Remove unnecessary
-       conditional.
-
-       PR fortran/32804
-       * resolve.c (gfc_iso_c_func_interface): Reject assumed-shape and
-       deferred-shape arrays as args to C_LOC.  Fix bug in testing
-       character args to C_LOC.
-
-2007-07-21  Lee Millward  <lee.millward@gmail.com>
-
-       PR fortran/32823
-       * trans-intrinsic.c (gfc_conv_intrinsic_int): Evaluate all
-       arguments passed, not just the first one. Adjust code to 
-       refer to "args[0]" instead of "arg" as a result.
-       
-2007-07-19  Christopher D. Rickett  <crickett@lanl.gov>
-
-       PR fortran/32600
-       * trans-expr.c (gfc_conv_function_call): Inline C_LOC.
-
-2007-07-18  Christopher D. Rickett  <crickett@lanl.gov>
-
-       PR fortran/32801
-       * symbol.c (generate_isocbinding_symbol): Fix bug where
-       ISOCBINDING_FUNPTR was generated for C_LOC instead of the needed
-       ISOCBINDING_PTR.
-
-2007-07-17  Janus Weil  <jaydub66@gmail.com> 
-
-       PR fortran/32535
-       * resolve.c (resolve_fl_namelist): Check for namelist private 
-       components in contained subprograms.
-
-2007-07-17  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31320
-       PR fortran/32665
-       * trans-expr.c (gfc_trans_subcomponent_assign): Ensure that
-       renormalization unity base is done independently of existing
-       lbound value.
-       (gfc_trans_scalar_assign): If rhs is not a variable, put
-       lse->pre after rse->pre to ensure that de-allocation of lhs
-       occurs after evaluation of rhs.
-
-2007-07-16  Lee Millward  <lee.millward@gmail.com>
-
-       PR fortran/32222
-       PR fortran/32238
-       PR fortran/32242        
-       * trans-intrinsic.c (gfc_conv_intrinsic_function_args): Adjust
-       to operate on a stack allocated array for the intrinsic arguments
-       instead of creating a TREE_LIST. Add two new parameters for the
-       array and the number of elements. Update all callers to allocate
-       an array of the correct length to pass in. Update comment.
-       (gfc_intrinsic_argument_list_length): New function.
-       (gfc_conv_intrinsic_conversion): Call it.
-       (gfc_conv_intrinsic_mnimax): Likewise.
-       (gfc_conv_intrinsic_merge): Likewise.
-       (gfc_conv_intrinsic_lib_function): Call it. Use new CALL_EXPR
-       constructors.
-       (gfc_conv_intrinsic_cmplx): Likewise.
-       (gfc_conv_intrinsic_ctime): Likewise.
-       (gfc_covn_intrinsic_fdate): Likewise.
-       (gfc_conv_intrinsic_ttynam): Likewise.
-       (gfc_conv_intrinsic_ishftc): Likewise.
-       (gfc_conv_intrinsic_index): Likewise.
-       (gfc_conv_intrinsic_scan): Likewise.
-       (gfc_conv_intrinsic_verify): Likewise.
-       (gfc_conv_intrinsic_trim): Likewise.
-       (gfc_conv_intrinsic_aint): Use new CALL_EXPR constructors.
-       (gfc_conv_intrinsic_exponent): Likewise.
-       (gfc_conv_intrinsic_bound): Likewise.
-       (gfc_conv_intrinsic_abs): Likewise.
-       (gfc_conv_intrinsic_mod): Likewise.
-       (gfc_conv_intrinsic_sign): Likewise.
-       (gfc_conv_intrinsic_len): Likewise.
-       (gfc_conv_intrinsic_adjust): Likewise.
-       (gfc_conv_intrinsic_si_kind): Likewise. 
-       
-2007-07-16  Janne Blomqvist  <jb@gcc.gnu.org>
-
-       PR fortran/32748
-       * trans-decl.c (gfc_build_builtin_function_decls): Remove
-       DECL_IS_MALLOC attribute from internal_realloc, thus reverting
-       part of my 2007-07-03 patch.
-
-2007-07-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-           Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/32611
-       * gfortran.h (gfc_option_t): Add flag_sign_zero field.
-       * lang.opt (-fsign-zero): New option.
-       * trans.h: Rename gfor_fndecl_set_std into gfor_fndecl_set_options.
-       * trans-decl.c (gfc_build_builtin_function_decls): Build the function
-       declaration to pass an array containing the options to be used by the
-       runtime library. (gfc_generate_function_code): Build an array that
-       contains option values to be passed to the runtime library and the call
-       to the function. 
-       * options.c (gfc_init_options): Initialize the flag_sign_zero field.
-       (gfc_handle_option): Handle the -fsign-zero option.
-
-2007-07-15  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/32036
-       * trans-array.c (gfc_conv_array_ref): Only evaluate index once.
-
-2007-07-15  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/32357
-       * iresolve.c (gfc_resolve_mvbits): Convert FROMPOS, LEN and TOPOS
-       to C int.
-
-2007-07-14  Thomas Koenig  <tkoenig@gcc.gnu.org>
-
-       PR libfortran/32731
-       * iresolve.c(gfc_resolve_pack):  A scalar mask has
-       to be kind=4, an array mask with kind<4 is converted
-       to gfc_default_logical_kind automatically.
-       (gfc_resolve_unpack):  Convert mask to gfc_default_lotical_kind
-       if it has a kind<4.
-
-2007-07-14  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/32724
-       * parse.c (parse_spec): Emit error on unexpected statement
-       function.
-
-2007-07-13  Daniel Franke  <franke.daniel@gmail.com>
-
-       * invoke.texi: Unified upper- and lower-case in menus.
-       (-w, -W): Removed, documented by gcc.
-       * intrinsic.texi: Unified Class-section entries, added
-       subroutine/function warning where appropiate.
-
-2007-07-12  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/31639
-       * decl.c (gfc_match_suffix): Removed surplus general error that hides
-       a more specific message.
-       * resolve.c (resolve_fl_variable): Reject illegal initializiers only
-       if not already done.
-       (resolve_fl_procedure): Added check for initializers of functions.
-
-2007-07-12  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/32704
-       * invoke.texi (-static-libgfortran): Document new option.
-
-2007-07-12  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/32634
-       PR fortran/32727
-       * module.c (write_generic): Restore patch of 2007-07-10 and use
-       symbol name if there are no use names. 
-
-2007-07-12  Christopher D. Rickett  <crickett@lanl.gov>
-
-       PR fortran/32599
-       * decl.c (verify_c_interop_param): Require character string dummy
-       args to BIND(C) procedures to have length 1.
-       * resolve.c (resolve_fl_procedure): Modify parameter checking for
-       BIND(C) procedures.
-
-       PR fortran/32601
-       * resolve.c (gfc_iso_c_func_interface): Verify that a valid
-       expression is given as an argument to C_LOC and C_ASSOCIATED.
-       * trans-io.c (transfer_expr): Add argument for code block.  Add
-       standards check to determine if an error message should be
-       reported for printing C_PTR or C_FUNPTR.
-       (transfer_array_component): Update arguments to transfer_expr.
-       (gfc_trans_transfer): Ditto.
-
-       * symbol.c (gen_cptr_param): Fix whitespace.
-
-2007-07-12  Jakub Jelinek  <jakub@redhat.com>
-
-       PR fortran/32550
-       * trans.h (GFC_POINTER_TYPE_P): Define.
-       * trans-types.c (gfc_sym_type): Set it for types on attr->sym.pointer.
-       * trans-openmp.c (gfc_omp_privatize_by_reference): Return false
-       if GFC_POINTER_TYPE_P is set on the type.
-
-2007-07-12  Richard Guenther  <rguenther@suse.de>
-
-       * trans-intrinsic.c (gfc_conv_intrinsic_repeat): Convert
-       arguments to gfc_charlen_type_node.
-       * trans-io.c (gfc_convert_array_to_string): Convert type
-       size to gfc_array_index_type.
-
-2007-07-12  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/32634
-       PR fortran/32727
-       * module.c: Reverted Paul's patch from 2007-07-10.
-
-2007-07-11  Richard Guenther  <rguenther@suse.de>
-
-       * trans-array.c (gfc_conv_array_parameter): Use correct
-       types for comparison.
-       * trans-intrinsic.c (gfc_conv_intrinsic_repeat): Use
-       correct types for POINTER_PLUS_EXPR.
-       * trans-stmt.c (gfc_trans_forall_loop): Use correct type
-       for integer one constant.
-
-2007-07-10  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/32157
-       * resolve.c (is_external_proc): New function.  Adds test that
-       the symbol is not an intrinsic procedure.
-       * (resolve_function, resolve_call): Replace logical statements
-       with call to is_external_proc.
-
-       PR fortran/32689
-       * simplify.c (gfc_simplify_transfer): If mold has rank, the
-       result is an array.
-
-       PR fortran/32634
-       * module.c (write_generic): Write the local name of the
-       interface. 
-
-2007-07-09  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/29459
-       * trans-array.c (gfc_trans_array_constructor): Mark offset field
-       with TREE_NO_WARNING.
-       * trans-decl.c (gfc_build_qualified_array): Mark lbound, ubound,
-       stride and size variables with TREE_NO_WARNING.
-
-2007-07-09  Steven G. Kargl  <kargl@gcc.gnu.org>
-
-       * trans-decl.c (set_tree_decl_type_code): Remove function.
-       (generate_local_decl): Remove reference to set_tree_decl_type_code.
-
-2007-07-09  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/31129
-       * trans-decl.c (generate_local_decl) Emit a warning if an unused
-       parameter is found.
-
-2007-07-08  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/29876
-       * module.c (gfc_match_use): Do not set an non-existant 
-       intrinsic operator if a user-defined operator is found.
-
-2007-07-08  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/24784
-       PR fortran/28004
-       * trans-decl.c (generate_local_decl): Adjusted warning on unused 
-       dummy arguments, tell middle-end not to emit additional warnings.
-
-2007-07-08  Daniel Franke  <franke.daniel@gmail.com>
-           Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/17711
-       * gfortran.h (gfc_intrinsic_op): Added INTRINSIC_EQ_OS,
-       INTRINSIC_NE_OS, INTRINSIC_GT_OS, INTRINSIC_GE_OS, 
-       INTRINSIC_LT_OS and INTRINSIC_LE_OS.
-       * arith.c (eval_intrinsic, eval_type_intrinsic0): Likewise.
-       * arith.h (gfc_eq, gfc_ne, gfc_gt, gfc_ge, gfc_lt, gfc_le):
-       Added gfc_intrinsic_op as third argument type.
-       * dump-parse-tree.c (gfc_show_expr): Account for new enum values.
-       * expr.c (simplify_intrinsic_op, check_intrinsic_op): Likewise.
-       * interface.c (check_operator_interface): Likewise.
-       (gfc_check_interfaces): Added cross-checks for FORTRAN 77 and 
-       Fortran 90 style operators using new enum values.
-       (gfc_extend_expr): Likewise.
-       (gfc_add_interface): Likewise.
-       * match.c (intrinsic_operators): Distinguish FORTRAN 77 style
-       operators from Fortran 90 style operators using new enum values.
-       * matchexp.c (match_level_4): Account for new enum values.
-       * module.c (mio_expr): Likewise.
-       * resolve.c (resolve_operator): Deal with new enum values, fix
-       inconsistent error messages.
-       * trans-expr.c (gfc_conv_expr_op): Account for new enum values.
-
-2007-07-08  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/32669
-       * interface.c (get_expr_storage_size): Properly obtain lower bound.
-       (compare_actual_formal): Add space before parenthesis.
-
-2007-07-08  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/25094
-       * resolve.c (resolve_fl_procedure): Added check for PRIVATE types 
-       in PUBLIC interfaces.
-
-2007-07-07  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/32644
-       * decl.c (match_attr_spec): Don't return MATCH_ERROR if comma found and
-       gfc_match_bind_c does not return MATCH_YES.
-
-2007-07-07  Kazu Hirata  <kazu@codesourcery.com>
-
-       * decl.c, gfortran.h, interface.c, module.c, resolve.c,
-       trans-array.c, trans-decl.c: Fix comment typos.  Follow
-       spelling conventions.
-       * intrinsic.texi: Fix typos.  Follow spelling conventions.
-
-2007-05-06  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/32633
-       * symbol.c (save_status): New.
-       * gfortran.h (save_status): Added external declaration.
-       (check_conflict): Check for conflicting explicite SAVE statements
-       only.
-       (gen_special_c_interop_ptr): Use SAVE_EXPLICIT constant.
-       * module.c (ab_attribute, attr_bits): Removed enumerator value 
-       AB_SAVE for save attribute.
-       (mio_symbol_attribute): Import/export the full SAVE status, 
-       removed usage of AB_SAVE.
-       * dump-parse-tree.c (gfc_show_attr): Dump full SAVE status.
-       * decl.c (add_init_expr_to_sym): Set SAVE_IMPLICIT only if not
-       already explicit.
-
-2007-07-05  Daniel Franke  <franke.daniel@gmail.com>
-           Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/32359
-       * gfortran.h (symbol_attribute): Change save attribute into an enum.
-       * decl.c (add_init_expr_to_sym): Set it to SAVE_IMPLICIT.
-       * symbol.c (gfc_add_save): Check for SAVE_EXPLICIT.
-       * resolve.c (resolve_fl_variable): Check for SAVE_EXPLICIT.
-       (resolve_symbol): Allow OMP threadprivate with
-       initialization SAVEd and save_all variable.
-       * trans-decl.c (gfc_finish_var_decl): Remove obsolete sym->value check.
-
-2007-07-05  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/32526
-       * match.c (gfc_match_call): Check, in all cases, that a symbol
-       is neither generic nor a subroutine before trying to add it as
-       a subroutine.
-
-       PR fortran/32613
-       * match.c (gfc_match_do): Reset the implied_index attribute.
-
-2007-07-04  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/31198
-       * trans-intrinsic.c (trans-intrinsic.c): Handle optional
-       arguments correctly for MIN and MAX intrinsics.
-
-2007-07-03  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/32545
-       * io.c (check_format): Always call gfc_error for errors.
-       (check_format_string): Change type of this function to try and
-       return the result of check_format.
-       (check_io_constraints): Return MATCH_ERROR if check_format_string
-       returns FAILURE.
-
-2007-07-03  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/32612
-       * decl.c (get_proc_name): Include attr->mod_proc in check for error.
-
-2007-07-03  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/32432
-       * gfortran.h: Change type of gfc_assign_data_value from void to try.
-       * data.c (gfc_assign_data_value): Return FAILURE if error found.
-       * resolve.c (check_data_variable): If gfc_assign_data_value returns
-       failure, break out of loop and return failure.
-
-2007-07-03  Christopher D. Rickett  <crickett@lanl.gov>
-
-       PR fortran/32579
-       * symbol.c (gen_cptr_param): Generate C_PTR and C_FUNPTR if necessary.
-       (build_formal_args): Pass intrinsic module symbol id to
-       gen_cptr_param.
-
-2007-07-03  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/25062
-       * resolve.c (resolve_common_blocks): New check function.
-       (resolve_types): Use it.
-
-2007-07-03  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/30940
-       * interface.c (get_sym_storage_size): New function.
-       (get_sym_storage_size): New function.
-       (compare_actual_formal): Enhance sequence association
-       support and improve checking.
-
-2007-07-03  Janne Blomqvist  <jb@gcc.gnu.org>
-
-       * trans-decl.c (gfc_build_builtin_function_decls): Mark
-       internal_realloc as a malloc function.
-
-2007-07-03  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/20888
-       * resolve.c (resolve_operator): Check for NULL as operand.
-
-2007-07-02  Tobias Burnus  <burnus@net-b.de>
-
-       * gfortran.texi (Fortran 2003): Add ISO Bind C.
-       * intrinsic.texi (C_ASSOCIATED,C_F_POINTER,C_F_PROCPOINTER,
-       C_FUNLOC,C_LOC): Document new ISO Bind C intrinsics.
-
-2007-07-01  Christopher D. Rickett  <crickett@lanl.gov>
-
-       * interface.c (gfc_compare_derived_types): Special case for comparing
-       derived types across namespaces.
-       (gfc_compare_types): Deal with BT_VOID.
-       (compare_parameter): Use BT_VOID to accept ISO C Binding pointers.
-       * trans-expr.c (gfc_conv_function_call): Remove setting parm_kind
-       to SCALAR
-       (gfc_conv_initializer): Deal with ISO C Binding NULL_PTR and 
-       NULL_FUNPTR.
-       (gfc_conv_expr): Convert expressions for ISO C Binding derived types.
-       * symbol.c (gfc_set_default_type): BIND(C) variables should not be
-       Implicitly declared.
-       (check_conflict): Add BIND(C) and check for conflicts.
-       (gfc_add_explicit_interface): Whitespace.       
-       (gfc_add_is_bind_c): New function.  
-       (gfc_copy_attr): Use it.
-       (gfc_new_symbol): Initialize ISO C Binding objects.
-       (get_iso_c_binding_dt):  New function.
-       (verify_bind_c_derived_type): Ditto.
-       (gen_special_c_interop_ptr): Ditto.
-       (add_formal_arg): Ditto.
-       (gen_cptr_param): Ditto.
-       (gen_fptr_param): Ditto.
-       (gen_shape_param): Ditto.
-       (add_proc_interface): Ditto.
-       (build_formal_args): Ditto.
-       (generate_isocbinding_symbol):  Ditto.
-       (get_iso_c_sym):  Ditto.
-       * decl.c (num_idents_on_line, has_name_equals): New variables.
-       (verify_c_interop_param): New function.
-       (build_sym): Finish binding labels and deal with COMMON blocks.
-       (add_init_expr_to_sym): Check if the initialized expression is
-       an iso_c_binding named constants
-       (variable_decl): Set ISO C Binding type_spec components.
-       (gfc_match_kind_spec): Check match for C interoperable kind.
-       (match_char_spec): Fix comment. Chnage gfc_match_small_int
-       to gfc_match_small_int_expr.  Check for C interoperable kind.
-       (match_type_spec): Clear the current binding label.
-       (match_attr_spec): Add DECL_IS_BIND_C.  If BIND(C) is found, use it
-       to set attributes.
-       (set_binding_label): New function.
-       (set_com_block_bind_c): Ditto.
-       (verify_c_interop): Ditto.
-       (verify_com_block_vars_c_interop): Ditto.
-       (verify_bind_c_sym): Ditto.
-       (set_verify_bind_c_sym): Ditto.
-       (set_verify_bind_c_com_block): Ditto.
-       (get_bind_c_idents): Ditto.
-       (gfc_match_bind_c_stmt): Ditto.
-       (gfc_match_data_decl): Use num_idents_on_line.
-       (match_result): Deal with right paren in BIND(C).
-       (gfc_match_suffix): New function.
-       (gfc_match_function_decl): Use it.  Code is re-arranged to deal with
-       ISO C Binding result clauses.
-       (gfc_match_subroutine):  Deal with BIND(C).
-       (gfc_match_bind_c): New function.
-       (gfc_get_type_attr_spec): New function.  Code is re-arranged in and
-       taken from gfc_match_derived_decl.
-       (gfc_match_derived_decl): Add check for BIND(C).
-       * trans-common.c: Forward declare gfc_get_common.
-       (gfc_sym_mangled_common_id): Change arg from 'const char *name' to
-       'gfc_common_head *com'.  Check for ISO C Binding of the common block.
-       (build_common_decl): 'com->name' to 'com in SET_DECL_ASSEMBLER_NAME.
-       * gfortran.h: Add GFC_MAX_BINDING_LABEL_LEN
-       (bt): Add BT_VOID
-       (sym_flavor): Add FL_VOID.
-       (iso_fortran_env_symbol, iso_c_binding_symbol, intmod_id): New enum
-       (CInteropKind_t): New struct.
-       (c_interop_kinds_table): Use it.  Declare an array of structs.
-       (symbol_attribute): Add is_bind_c, is_c_interop, and is_iso_c
-       bitfields.
-       (gfc_typespec): Add is_c_interop; is_iso_c, and f90_type members.
-       (gfc_symbol): Add from_intmod, intmod_sym_id, binding_label, and
-       common_block members.
-       (gfc_common_head): Add binding_label and is_bind_c members.
-       (gfc_gsymbol): Add sym_name, mod_name, and binding_label members.
-       Add prototypes for get_c_kind, gfc_validate_c_kind, 
-       gfc_check_any_c_kind, gfc_add_is_bind_c, gfc_add_value,
-       verify_c_interop, verify_c_interop_param, verify_bind_c_sym,
-       verify_bind_c_derived_type, verify_com_block_vars_c_interop,
-       generate_isocbinding_symbol, get_iso_c_sym, gfc_iso_c_sub_interface
-       * iso-c-binding.def: New file. This file contains the definitions
-       of the types provided by the Fortran 2003 ISO_C_BINDING intrinsic
-       module.
-       * trans-const.c (gfc_conv_constant_to_tree): Deal with C_NULL_PTR
-        or C_NULL_FUNPTR expressions.
-       * expr.c (gfc_copy_expr): Add BT_VOID case.  For BT_CHARACTER, the
-       ISO C Binding requires a minimum string length of 1 for '\0'.  
-       * module.c (intmod_sym): New struct.
-       (pointer_info): Add binding_label member.
-       (write_atom): Set len to 0 for NULL pointers. Check for NULL p and *p.
-       (ab_attribute): Add AB_IS_BIND_C, AB_IS_C_INTEROP and AB_IS_ISO_C.
-       (attr_bits): Add "IS_BIND_C", "IS_C_INTEROP", and "IS_ISO_C".
-       (mio_symbol_attribute): Deal with ISO C Binding attributes.
-       (bt_types): Add "VOID".
-       (mio_typespec): Deal with ISO C Binding components.
-       (mio_namespace_ref): Add intmod variable. 
-       (mio_symbol): Check for symbols from an intrinsic module.
-       (load_commons): Check for BIND(C) common block.
-       (read_module): Read binding_label and use it.
-       (write_common): Add label.  Write BIND(C) info.
-       (write_blank_common): Blank commons are not BIND(C).  Explicitly
-       set is_bind_c=0.
-       (write_symbol): Deal with binding_label.
-       (sort_iso_c_rename_list): New function.
-       (import_iso_c_binding_module): Ditto.
-       (create_int_parameter): Add to args.
-       (use_iso_fortran_env_module): Adjust to deal with iso_c_binding
-       intrinsic module.
-       * trans-types.c (c_interop_kinds_table): new array of structs. 
-       (gfc_validate_c_kind): New function.
-       (gfc_check_any_c_kind): Ditto.
-       (get_real_kind_from_node): Ditto.
-       (get_int_kind_from_node): Ditto.
-       (get_int_kind_from_width): Ditto.
-       (get_int_kind_from_minimal_width): Ditto.
-       (init_c_interop_kinds): Ditto.
-       (gfc_init_kinds): call init_c_interop_kinds.
-       (gfc_typenode_for_spec): Adjust for BT_VOID and ISO C Binding pointers.
-       Adjust handling of BT_DERIVED.
-       (gfc_sym_type): Whitespace.
-       (gfc_get_derived_type):  Account for iso_c_binding derived types
-       * resolve.c (is_scalar_expr_ptr): New function.
-       (gfc_iso_c_func_interface): Ditto.
-       (resolve_function): Use gfc_iso_c_func_interface. 
-       (set_name_and_label): New function.
-       (gfc_iso_c_sub_interface): Ditto.
-       (resolve_specific_s0): Use gfc_iso_c_sub_interface.
-       (resolve_bind_c_comms): New function.
-       (resolve_bind_c_derived_types): Ditto.
-       (gfc_verify_binding_labels): Ditto.
-       (resolve_fl_procedure): Check for ISO C interoperability.
-       (resolve_symbol): Check C interoperability.
-       (resolve_types): Walk the namespace.  Check COMMON blocks.
-       * trans-decl.c (gfc_sym_mangled_identifier):  Prevent the mangling
-       of identifiers that have an assigned binding label.
-       (gfc_sym_mangled_function_id): Use the binding label rather than
-       the mangled name.
-       (gfc_finish_var_decl): Put variables that are BIND(C) into a common
-       segment of the object file, because this is what C would do.
-       (gfc_create_module_variable): Conver to proper types
-       (set_tree_decl_type_code): New function.
-       (generate_local_decl): Check dummy variables and derived types for
-       ISO C Binding attributes.
-       * match.c (gfc_match_small_int_expr): New function.
-       (gfc_match_name_C): Ditto.
-       (match_common_name): Deal with ISO C Binding in COMMON blocks
-       * trans-io.c (transfer_expr):  Deal with C_NULL_PTR or C_NULL_FUNPTR
-       expressions
-       * match.h: Add prototypes for gfc_match_small_int_expr,
-       gfc_match_name_C, match_common_name, set_com_block_bind_c,
-       set_binding_label, set_verify_bind_c_sym,
-       set_verify_bind_c_com_block, get_bind_c_idents,
-       gfc_match_bind_c_stmt, gfc_match_suffix, gfc_match_bind_c,
-       gfc_get_type_attr_spec
-       * parse.c (decode_statement): Use gfc_match_bind_c_stmt
-       (parse_derived): Init *derived_sym = NULL, and gfc_current_block
-       later for valiadation.
-       * primary.c (got_delim): Set ISO C Binding components of ts.
-       (match_logical_constant): Ditto.
-       (match_complex_constant): Ditto.
-       (match_complex_constant): Ditto.
-       (gfc_match_rvalue): Check for existence of at least one arg for
-       C_LOC, C_FUNLOC, and C_ASSOCIATED.
-       * misc.c (gfc_clear_ts): Clear ISO C Bindoing components in ts.
-       (get_c_kind): New function.
-
-2007-07-01  Janne Blomqvist  <jb@gcc.gnu.org>
-
-       PR fortran/32239
-       * trans-expr.c (gfc_conv_power_op): Use builtin_powi for
-       real**int4 powers.
-       * f95-lang.c (gfc_init_builtin_functions): Add builtin_powi to the
-       builtins table.
-
-2007-07-01  Janne Blomqvist  <jb@gcc.gnu.org>
-
-       * trans.h: Remove decls for 64-bit allocation functions.
-       * trans-array.c (gfc_grow_array): Always pick the standard realloc
-       function decl.
-       (gfc_array_allocate): Likewise.
-       * trans-decl.c: Remove trees for 64-bit allocation functions.
-       (gfc_build_builtin_function_decls): Don't build fndecls for 64-bit
-       allocations functions, use index_int_type for normal allocation
-       functions.
-
-2007-06-30  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/20373
-       * intrinsic.c (add_functions): Additional function types.
-       (gfc_convert_type_warn): Remove intrinsic-flag from
-       conversion functions.
-       * resolve.c (resolve_symbol): Added type checks to 
-       explicitly defined intrinsics.
-
-2007-06-30  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/32555
-       * io.c (check_format): Allow zero to precede the
-       P edit descriptor.
-
-2007-06-30  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/32472
-       * simplify.c (gfc_simplify_repeat): Add handling of character
-       literal for first argument.
-
-2007-06-29  Daniel Franke  <franke.daniel@gmail.com>
-
-       * resolve.c (resolve_operator): Added check whether a user
-       defined operator is available.
-
-2007-06-29  Daniel Franke <franke.daniel@gmail.com>
-
-       * openmp.c (resolve_omp_clauses): Adjust error message to
-       better reflect the actual requirement.
-
-2007-06-29  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/32483
-       * io.c (format_lex): Fix FMT_ZERO.
-       (check_format,check_format_string,gfc_match_format,
-       check_io_constraints) Additional checking for READ.
-
-2007-06-28 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
-       PR other/31400
-       * lang.opt (static-libgfortran): New option.
-       * gfortranspec.c (ADD_ARG_LIBGFORTRAN): New macro.
-       (Option): Add OPTION_static and OPTION_static_libgfortran.
-       (lookup_option): Handle the new -static-libgfortran option.
-       (lang_specific_driver): Check whether -static is passed.
-       Handle the new -static-libgfortran option.
-       * options.c (gfc_handle_option): If -static-libgfortran is
-       passed and isn't supported on this configuration, error out.
-
-2007-06-27  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/32467
-       * openmp.c (resolve_omp_clauses): Emit error on allocatable
-       components in COPYIN, COPYPRIVATE, FIRSTPRIVATE and LASTPRIVATE
-       clauses.
-
-2007-06-25  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/32464
-       * resolve.c (check_host_association): Return if the old symbol
-       is use associated.  Introduce retval to reduce the number of
-       evaluations of the first-order return value.
-
-       PR fortran/31494
-       * match.c (gfc_match_call): If a host associated symbol is not
-       a subroutine, build a new symtree/symbol in the current name
-       space.
-
-2007-06-24  Tobias Burnus  <burnus@net-de>
-
-       PR fortran/32460
-       * interface.c (gfc_compare_derived_types): Add access check.
-       * symbol.c (gfc_find_component): Ditto.
-       (gfc_set_component_attr,gfc_get_component_attr) Copy access state.
-       * dump-parse-tree.c (gfc_show_components): Dump access state.
-       * gfortran.h (struct gfc_component): Add gfc_access.
-       * module.c (mio_component): Add access state.
-       * (gfc_match_structure_constructor): Check for private access state.
-
-2007-06-24  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/32298
-       PR fortran/31726
-       * trans-intrinsic.c (gfc_conv_intrinsic_minmaxloc): Calculate
-       the offset between the loop counter and the position as
-       defined. Add the offset within the loop so that the mask acts
-       correctly.  Do not advance the location on the basis that it
-       is zero.
-
-2007-06-22  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/31473
-       * symbol.c (gfc_copy_attr): Emit errors for duplicate 
-       EXTERNAL/INTRINSIC statements.
-
-2007-06-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/32360
-       * expr.c (gfc_check_assign): If the rvalue expression type is NULL_EXPR,
-       check to see if the lvalue has attribute pointer and data.  
-
-2007-06-21  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/31162
-       * resolve.c (gfc_resolve_iterator_expr): Add check for REAL using
-       gfc_notify_standard. (gfc_resolve_iterator): Remove check.
-       (resolve_branch): Change "Obsolete" to "Deleted feature".
-       * io.c (resolve_tag): Ditto.
-       * match.c (gfc_match_pause, gfc_match_assign, gfc_match_goto): Ditto.
-
-2007-06-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/32361
-       * match.c (gfc_match_common): If the symbol value expression type is
-       NULL_EXPR, don't error if previously initialized.
-
-2007-06-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/25061
-       * decl.c (get_proc_name) Check symbol for generic interface
-       and issue an error.
-
-2007-06-20  Andrew Pinski  <andrew_pinski@playstation.sony.com>
-       Richard Guenther  <rguenther@suse.de>
-
-       PR fortran/32140
-       * trans.c (gfc_build_addr_expr): Use the correct types.
-
-2007-06-19  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/20863
-       PR fortran/20882
-       * resolve.c (resolve_code): Use gfc_impure_variable as a
-       condition for rejecting derived types with pointers, in pure
-       procedures.
-       (gfc_impure_variable): Add test for dummy arguments of pure
-       procedures; any for functions and INTENT_IN for subroutines.
-
-       PR fortran/32236
-       * data.c (gfc_assign_data_value): Change the ICE on an array
-       reference initializer not being an array into an error and
-       clear init to prevent a repetition of the error.
-
-2007-06-17  Janne Blomqvist  <jb@gcc.gnu.org>
-
-       * gfortran.texi: Add documentation for GFORTRAN_UNBUFFERED_n
-       environment variables. Fix documentation for
-       GFORTRAN_UNBUFFERED_ALL environment variable.
-
-2007-06-15  Andrew Pinski  <andrew_pinski@playstation.sony.com>
-
-       * trans-intrinsic.c (gfc_conv_intrinsic_repeat): Use
-       POINTER_PLUS_EXPR instead of PLUS_EXPR for pointer addition.
-       * trans-expr.c (gfc_trans_string_copy): Create
-       POINTER_PLUS_EXPR instead of a PLUS_EXPR
-       for pointer types.
-
-2007-06-14  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/32302
-       * trans-common.c (build_common_decl): If resizing of common
-       decl is needed, update the TREE_TYPE.
-
-2007-06-13  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/32323
-       * interface.c (has_vector_section): New.
-       (compare_actual_formal): Check for array sections with vector subscript.
-
-2007-06-12  Dirk Mueller  <dmueller@suse.de>
-
-       * trans-stmt.c (gfc_trans_call): fix gcc_assert to
-       a comparison, not an assignment.
-
-2007-06-12  Paul Thomas  <pault@gcc.gnu.org>
-
-       * trans-common.c (create_common): Initialize 'field_init'.
-
-2007-06-12  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/29786
-       PR fortran/30875
-       * trans-common.c (get_init_field): New function.
-       (create_common): Call get_init_field for overlapping
-       initializers in equivalence blocks.
-       * resolve.c (resolve_equivalence_derived, resolve_equivalence):
-       Remove constraints on initializers in equivalence blocks.
-       * target-memory.c (expr_to_char, gfc_merge_initializers):
-       New functions.
-       (encode_derived): Add the bit offset to the byte offset to get
-       the total offset to the field.
-       * target-memory.h : Add prototype for gfc_merge_initializers.
-
-2007-06-11  Rafael Avila de Espindola  <espindola@google.com>
-
-       * trans-types.c (gfc_signed_type): Remove.
-       * trans-types.h (gfc_signed_type): Remove.
-       * f95-lang.c (LANG_HOOKS_SIGNED_TYPE): Remove.
-
-2007-06-08 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
-       * trans-intrinsic.c: Revert Lee's 2007-06-04 patch.
-
-2007-06-07  Steven G. Kargl  <kargl@gcc.gnu.org>
-           Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/32223
-       * match.c (gfc_match_special_char): New function.  Match special char.
-       Add handling '\0'.
-       * match.h: Add prototype.
-       * io.c (next_char): Use it.
-       * primary.c (next_string_char): Ditto.
-
-2007-06-06  Steven G. Kargl  <kargl@gcc.gnu.org>
-
-       * decl.c: Miscellaneous whitespace fixes.
-       * expr.c: Likewise.
-       * gfortran.h: Likewise.
-       * interface.c : Likewise.
-       * io.c: Likewise.
-       * match.c: Likewise.
-       * match.h: Likewise.
-       * module.c: Likewise.
-       * parse.c: Likewise.
-       * resolve.c: Likewise.
-       * symbol.c: Likewise.
-       * trans-array.c: Likewise.
-       * trans-common.c: Likewise.
-       * trans-decl.c: Likewise.
-       * trans-intrinsic.c: Likewise.
-       * trans-io.c: Likewise.
-       * trans-stmt.c: Likewise.
-       * trans-types.c: Likewise.
-
-2007-06-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/18923
-       * parse.c (decode_statement): Don't call gfc_undo_symbols on MATCH_ERROR
-       for ST_FUNCTION since it is called in reject_statement.
-       (parse_contained): If error, loop back after reject_statement and try
-       again.  Free the namespace if an error occured.
-
-2007-06-04 Lee Millward <lee.millward@codesourcery.com>
-
-       * trans-intrinsic.c (gfc_conv_intrinsic_function_args): Adjust
-       to operate on a stack allocated array for the intrinsic arguments
-       instead of creating a TREE_LIST. Add two new parameters for the
-       array and the number of elements. Update all callers to allocate
-       an array of the correct length to pass in. Update comment.
-       (gfc_intrinsic_argument_list_length): New function.
-       (gfc_conv_intrinsic_mnimax): Call it.
-       (gfc_conv_intrinsic_merge): Likewise.
-       (gfc_conv_intrinsic_lib_function): Call it. Use new CALL_EXPR
-       constructors.
-       (gfc_conv_intrinsic_cmplx): Likewise.
-       (gfc_conv_intrinsic_ctime): Likewise.
-       (gfc_covn_intrinsic_fdate): Likewise.
-       (gfc_conv_intrinsic_ttynam): Likewise.
-       (gfc_conv_intrinsic_ishftc): Likewise.
-       (gfc_conv_intrinsic_index): Likewise.
-       (gfc_conv_intrinsic_scan): Likewise.
-       (gfc_conv_intrinsic_verify): Likewise.
-       (gfc_conv_intrinsic_trim): Likewise.
-       (gfc_conv_intrinsic_aint): Use new CALL_EXPR constructors.
-       (gfc_conv_intrinsic_exponent): Likewise.
-       (gfc_conv_intrinsic_bound): Likewise.
-       (gfc_conv_intrinsic_abs): Likewise.
-       (gfc_conv_intrinsic_mod): Likewise.
-       (gfc_conv_intrinsic_sign): Likewise.
-       (gfc_conv_intrinsic_len): Likewise.
-       (gfc_conv_intrinsic_adjust): Likewise.
-       (gfc_conv_intrinsic_si_kind): Likewise.
-
-2007-06-04  Steve Ellcey  <sje@cup.hp.com>
-
-       * trans-array.c (gfc_conv_array_parameter): Initialize tmp.
-
-2007-05-31  Richard Guenther  <rguenther@suse.de>
-
-       * trans-expr.c (gfc_conv_expr_op): Use zero constant
-       that matches the lse type.
-       (gfc_trans_string_copy): Use sizetype zero constant.
-       * intrinsic.c (add_functions): The sizeof intrinsic has
-       index type result.
-       * trans-types.c (gfc_get_dtype): Convert size to index
-       type before shifting.
-       * trans-array.c (gfc_trans_array_constructor_value): Use
-       index type for offset computation.
-       * trans-intrinsic.c (gfc_conv_associated): Use correct type
-       for zero constant.
-
-2007-05-31  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/32156
-       * trans-array.c (gfc_trans_array_constructor): Treat the case
-       where the ss expression charlen is missing.
-
-22007-05-31  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/32103
-       * module.c (mio_symtree_ref): If an equivalence group member
-       is not used, give it a hidden symbol and set the pointer_info.
-       (load_equiv): Only free the equivalence if none of the members
-       are used.
-
-2007-05-29  Daniel Franke  <franke.daniel@gmail.com>
-
-       * gfortran.h: Renamed 'enum gfc_generic_isym_id' to 'enum gfc_isym_id',
-       added missing GFC_ISYM_* enumerators, ordered alphabetically.
-       (struct gfc_intrinsic_sym): Renamed 'generic_id' to 'id'.
-       (gfc_find_subroutine): New prototype.
-       * intrinsic.c (add_sym, add_sym_*): Added argument 'id' and changed all callers.
-       (find_subroutine): Renamed to 'gfc_find_subroutine', removed static.  
-       * dependency.c: Changed usage of isym->generic_id to isym->id.  
-       * openmp.c: Likewise.  
-       * resolve.c: Likewise.  
-       * trans-array.c: Likewise.  
-       * trans-expr.c: Likewise.  
-       * trans-intrinsic.c: Likewise.  
-       * trans-openmp.c: Likewise.
-
-2007-05-28  Tobias Schlüter  <tobi@gcc.gnu.org>
-
-       * gfortran.h (gfc_generic_isym_id): Add GFC_ISYM_SIZEOF.
-       * intrinsic.c (add_functions): Add stuff for SIZEOF intrinsic.
-       * intrinsic.h (gfc_check_sizeof): Add prototype of ...
-       * check.c (gfc_check_sizeof): .. new function.
-       * trans-intrinsic.c (gfc_conv_intrinsic_sizeof): New function.
-       (gfc_conv_intrinsic_strcmp): Whitespace fix.
-       (gfc_conv_intrinsic_array_transfer): Remove double initialization,
-       use fold_build. where appropriate.
-       (gfc_conv_intrinsic_function): Add case for SIZEOF.
-       * intrinsic.texi: Add documentation for SIZEOF.
-
-2007-05-28  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * trans-array.c (gfc_conv_expr_descriptor): Edit comment.
-
-2007-05-28  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       PR fortran/31972
-       * target-memory.c (gfc_target_expr_size): Add handling
-       for size of BT_HOLLERITH variables.
-       * check.c (gfc_check_transfer): Reject BT_HOLLERITH
-       variables in MOLD argument of TRANSFER.
-
-2007-05-28  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * gfortran.h (gfc_expr): Remove from_H, add "representation"
-       struct.
-       * primary.c (match_hollerith_constant): Store the representation
-       of the Hollerith in representation, not in value.character.
-       * arith.c: Add dependency on target-memory.h.
-       (eval_intrinsic): Remove check for from_H.
-       (hollerith2representation): New function.
-       (gfc_hollerith2int): Determine value of the new constant.
-       (gfc_hollerith2real): Likewise.
-       (gfc_hollerith2complex): Likewise.
-       (gfc_hollerith2logical): Likewise.
-       (gfc_hollerith2character): Point both representation.string and
-       value.character.string at the value string.
-       * data.c (create_character_initializer): For BT_HOLLERITH
-       rvalues, get the value from the representation rather than
-       value.character.
-       * expr.c (free_expr0): Update handling of BT_HOLLERITH values
-       and values with representation.string.
-       (gfc_copy_expr): Likewise.
-       * intrinsic.c (do_simplify): Remove special treatement of
-       variables resulting from Hollerith constants.
-       * dump-parse-trees.c (gfc_show_expr): Update handling of
-       Holleriths.
-       * trans-const.c (gfc_conv_constant_to_tree): Replace from_H
-       check with check for representation.string; get Hollerith
-       representation from representation.string, not value.character.
-       * trans-expr.c (is_zero_initializer_p): Replace from_H check
-       with check for representation.string.
-       * trans-stmt.c (gfc_trans_integer_select): Use
-       gfc_conv_mpz_to_tree for case values, so as to avoid picking up
-       the memory representation if the case is given by a transfer
-       expression.
-       * target-memory.c (gfc_target_encode_expr): Use the known memory
-       representation rather than the value, if it exists.
-       (gfc_target_interpret_expr): Store the memory representation of
-       the interpreted expression as well as its value.
-       (interpret_integer): Move to gfc_interpret_integer, make
-       non-static.
-       (interpret_float): Move to gfc_interpret_float, make non-static.
-       (interpret_complex): Move to gfc_interpret_complex, make
-       non-static.
-       (interpret_logical): Move to gfc_interpret_logical, make
-       non-static.
-       (interpret_character): Move to gfc_interpret_character, make
-       non-static.
-       (interpret_derived): Move to gfc_interpret_derived, make
-       non-static.
-       * target-memory.h: Add prototypes for newly-exported
-       gfc_interpret_* functions.
-
-2007-05-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/31812
-       * parse.c (next_statement): Warn for truncated lines if source is free
-       form.
-
-2007-05-27 Paul Thomas  <pault@gcc.gnu.org>
-          Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/32088
-       * symbol.c (gfc_check_function_type): Copy dimensions of
-         result variable.
-       * resolve.c (resolve_contained_fntype): Improve symbol output in
-         the error message.
-
-2007-05-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/31813
-       * io.c (check_format): Add warning for H specifier in format.
-       
-2007-05-26  Tobias Burnus  <burnus@net-b.de>
-
-       * gfortran.texi: Document the GFORTRAN_ERROR_DUMPCORE and
-       GFORTRAN_ERROR_BACKTRACE environment variables.
-
-2007-05-26  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31219
-       * trans.h : Add no_function_call bitfield to gfc_se structure.
-       Add stmtblock_t argument to prototype of get_array_ctor_strlen.
-       * trans-array.c (get_array_ctor_all_strlen): New function.
-       (get_array_ctor_strlen): Add new stmtblock_t argument and call
-       new function for character elements that are not constants,
-       arrays or variables.
-       (gfc_conv_array_parameter): Call get_array_ctor_strlen to get
-       good string length.
-       * trans-intrinsic (gfc_conv_intrinsic_len): Add new argument
-       to call of get_array_ctor_strlen.
-
-2007-05-25  Kazu Hirata  <kazu@codesourcery.com>
-
-       * intrinsic.texi: Fix typos.
-
-2007-05-25  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/32047
-       * trans-expr.c (gfc_apply_interface_mapping_to_expr): Change
-       order in logic under EXPR_FUNCTION to handle functions with
-       no arguments.
-
-2007-05-23  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/31716
-       * array.c (spec_dimen_size): Test for correct BT_INTEGER type. 
-
-2007-05-23  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/32046
-       * trans-expr.c (gfc_trans_zero_assign): Convert the result of
-       TYPE_SIZE_UNIT into a signed type.
-       (gfc_trans_array_copy):  Likewise.
-       (gfc_trans_array_constructor_copy): Likewise.
-       * trans-array.c (gfc_trans_create_temp_array): Likewise.
-       (gfc_grow_array): Likewise.
-       (gfc_array_init_size): Likewise.
-       (gfc_duplicate_allocatable): Likewise.
-       * trans-stmt.c (allocate_temp_for_forall_nest_1): Likewise.
-
-2007-05-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/18923
-       * resolve.c (resolve_function): Don't call resolve_global_procedure if
-       there is no name. Delete duplicated statement in ELSE clause.
-
-2007-05-22 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
-       PR fortran/31627
-       * trans-array.c (gfc_trans_array_bound_check): Take extra argument to
-       indicate whether we should check the upper bound in that dimension.
-       (gfc_conv_array_index_offset): Check only the lower bound of the
-       last dimension for assumed-size arrays.
-       (gfc_conv_array_ref): Likewise.
-       (gfc_conv_ss_startstride): Likewise.
-
-2007-05-21  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-           Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/32002
-       * resolve.c (resolve_actual_arglist): Resolve actual argument after
-       being identified as variable.
-
-2007-05-21  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/32027
-       * trans-stmt.c (gfc_trans_do): Fix the value of loop variable
-       when the loop ends.
-
-2007-05-21  H.J. Lu  <hongjiu.lu@intel.com>
-
-       * trans-stmt.c (gfc_trans_do): Fix a typo in comment.
-
-2007-05-21  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31867
-       PR fortran/31994
-       * trans-array.c (gfc_conv_expr_descriptor): Obtain the stored
-       offset for non-descriptor, source arrays and correct for stride
-       not equal to one before writing to field of output descriptor.
-
-2007-05-20  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/32001
-       * check.c (check_rest): Improved argument conformance check and 
-       fixed error message generation.
-
-2007-05-19  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/30820
-       * Make-lang.in: Remove use of -Wno-error for expr.o, resolve.o,
-       simplify.o and trans-common.o.
-
-2007-05-19  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/31974
-       * trans-array.c (gfc_trans_auto_array_allocation): Avoid
-       multiplication of mismatched types.
-
-2007-05-18  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/24633
-       * symbol.c (gfc_add_flavor): Add the NAME to error message if
-       available.
-
-2007-05-15  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/31919
-       PR fortran/31929
-       PR fortran/31930
-       * intrinsic.c (check_specific): Check elemental intrinsics for
-       rank and shape.
-       (add_functions): Fixed dummy argument names of BESJN and BESYN.
-       Fixed elemental status of MCLOCK and MCLOCK8.
-       * check.c (check_rest): Added check for array conformance.
-       (gfc_check_merge): Removed check for array conformance.
-       (gfc_check_besn): Removed check for scalarity.
-       * intrinsic.texi (CSHIFT, EOSHIFT): Fixed typos.
-       (BESJN, BESYN): Clarified documentation.
-
-2007-05-17  Tobias Burnus  <burnus@net-b.de>
-
-       * gfortran.texi (GFORTRAN_CONVERT_UNIT): Improve documentation.
-
-2007-05-16  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       PR fortran/18769
-       PR fortran/30881
-       PR fortran/31194
-       PR fortran/31216
-       PR fortran/31427
-       * target-memory.c: New file.
-       * target-memory.h: New file.
-       * simplify.c: Add #include "target-memory.h".
-       (gfc_simplify_transfer): Implement constant-
-       folding for TRANSFER intrinsic.
-       * Make-lang.in: Add dependencies on new target-memory.* files.
-
-2007-05-15  Paul Brook  <paul@codesourcery.com>
-
-       * trans-types.c (gfc_type_for_size): Handle signed TImode.
-
-2007-05-14  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/30723
-       * trans.h (gfor_fndecl_internal_malloc, gfor_fndecl_internal_malloc64,
-       gfor_fndecl_internal_free): Remove prototypes.
-       (gfor_fndecl_os_error, gfc_call_free, gfc_call_malloc): Add prototypes.
-       * trans.c (gfc_call_malloc, gfc_call_free): New functions.
-       * f95-lang.c (gfc_init_builtin_functions): Add __builtin_free
-       and __builtin_malloc builtins.
-       * trans-decl.c (gfor_fndecl_internal_malloc,
-       gfor_fndecl_internal_malloc64, gfor_fndecl_internal_free): Remove.
-       (gfor_fndecl_os_error): Add.
-       (gfc_build_builtin_function_decls): Don't create internal_malloc,
-       internal_malloc64 and internal_free library function declaration.
-       Create os_error library call function declaration.
-       * trans-array.c (gfc_trans_allocate_array_storage,
-       gfc_trans_auto_array_allocation, gfc_trans_dummy_array_bias,
-       gfc_conv_array_parameter, gfc_duplicate_allocatable): Use
-       gfc_call_malloc and gfc_call_free instead of building calls to
-       internal_malloc and internal_free.
-       * trans-expr.c (gfc_conv_string_tmp): Likewise.
-       * trans-stmt.c (gfc_do_allocate, gfc_trans_assign_need_temp,
-       gfc_trans_pointer_assign_need_temp, gfc_trans_forall_1,
-       gfc_trans_where_2: Likewise.
-       * trans-intrinsic.c (gfc_conv_intrinsic_ctime,
-       gfc_conv_intrinsic_fdate, gfc_conv_intrinsic_ttynam,
-       gfc_conv_intrinsic_array_transfer, gfc_conv_intrinsic_trim): Likewise.
-
-2007-05-14  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/31725
-       * trans-expr.c (gfc_conv_substring): Evaluate substring bounds
-       only once.
-
-2007-05-14  Rafael Avila de Espindola  <espindola@google.com>
-
-       * f95-lang.c (LANG_HOOKS_UNSIGNED_TYPE): Remove.
-       * trans-intrinsic.c (gfc_conv_intrinsic_ishft): Use unsigned_type_for
-       instead of gfc_unsigned_type.
-       * trans-stmt.c (gfc_trans_do): Use unsigned_type_for instead of
-       gfc_unsigned_type.
-       * trans-types.c (gfc_unsigned_type): Remove.
-       * trans-types.h (gfc_unsigned_type): Remove.
-
-2007-05-12  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/30746
-       * resolve.c (check_host_association): New function that detects
-       incorrect host association and corrects it.
-       (gfc_resolve_expr): Call the new function for variables and
-       functions.
-       * match.h : Remove prototype for gfc_match_rvalue.
-       * gfortran.h : Add prototype for gfc_match_rvalue.
-
-2007-05-11 Paul Thomas <pault@gcc.gnu.org>
-
-       PR fortran/30876
-       * trans-expr.c (gfc_conv_function_call): Reduce indirection for
-       direct assignments of recursive array valued functions.
-       * primary.c (gfc_match_rvalue): Correct error for recursive
-       function calls such that directly recursive calls of scalar
-       function without an explicit result are disallowed.
-
-2007-05-11 Paul Thomas <pault@gcc.gnu.org>
-
-       PR fortran/30878
-       * resolve.c (resolve_fl_namelist): It is not an error if the
-       namelist element is the result variable of the enclosing
-       function.  Search for the symbol in current and all parent
-       namespaces for a potential conflict.
-       * symbol.c (check_conflict): Remove the conflict between
-       'in_namelist' and 'FL_PROCEDURE' because the symbol info
-       is not available to exclude function result variables.
-       * trans-io.c (nml_get_addr_expr): Use the fake result decl
-       if the symbol is an implicit result variable.
-
-2007-05-11  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31474
-       * decl.c (get_proc_name): If an entry has already been declared
-       as a module procedure, pick up the symbol and the symtree and
-       use them for the entry.
-
-2007-05-08  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31630
-       * resolve.c (resolve_symbol): Remove the flagging mechanism from the
-       formal namespace resolution and instead check that the formal
-       namespace is not the current namespace.
-
-2007-05-08  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31692
-       * trans-array.c (gfc_conv_array_parameter): Convert full array
-       references to the result of the procedure enclusing the call.
-
-2007-05-08  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/29397
-       PR fortran/29400
-       * decl.c (add_init_expr_to_sym): Expand a scalar initializer
-       for a parameter array into an array expression with the right
-       shape.
-       * array.c (spec_dimen_size): Remove static attribute.
-       * gfortran.h : Prototype for spec_dimen_size.
-
-2007-05-07  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/31399
-       * trans-stmt.c (gfc_trans_do): Handle large loop counts.
-
-2007-05-07  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/31764
-       * simplify.c (gfc_simplify_new_line): NEW_LINE can be simplified
-       even for non constant arguments.
-
-2007-05-06  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-           Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/31201
-       * gfortran.h: Add runtime error codes from libgfortran.h. Define
-       MAX_UNIT_NUMBER.
-       * trans.c (gfc_trans_runtime_check): Update the format of runtime error
-       messages to match library runtime errors.  Use call to new library
-       function runtime_error_at().
-       * trans.h: Add prototype for new function gfc_trans_io_runtime_check.
-       Add declaration for library functions runtime_error_at and
-       generate_error.
-       * trans_io.c (gfc_trans_io_runtime_check): New function.
-       (set_parameter_value): Add error checking for UNIT numbers.
-       (set_parameter_ref): Initialize the users variable to zero. 
-       (gfc_trans_open): Move setting of unit number to after setting of common
-       flags so that runtime error trapping can be detected.
-       (gfc_trans_close): Likewise. (build_filepos): Likewise.
-       (gfc_trans_inquire): Likewise. (build_dt): Likewise.
-       * trans-decl.c: Add declarations for runtime_error_at and
-       generate_error. (gfc_build_builtin_function_decls): Build function
-       declarations for runtime_error_at and generate_error.
-
-2007-05-06  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31540
-       * resolve.c (resolve_fl_procedure): Resolve constant character
-       lengths.
-
-2007-05-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/31251
-       * decl.c (match_char_spec): Add check for invalid character lengths.
-
-2007-05-04  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * intrinsic.texi (CMPLX): Document result kind.
-       (COMPLEX): Add documentation.
-
-2007-05-04  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/31760
-       * intrinsic.c (add_functions): Replaced calls to gfc_check_g77_math1
-       by gfc_check_fn_r to avoid checks for scalarity.
-       * check.c (gfc_check_besn): Removed check for scalarity.
-       (gfc_check_g77_math1): Removed.
-       * intrinsic.h (gfc_check_g77_math1): Removed.
-
-2007-05-04  Daniel Franke  <franke.daniel@gmail.com>
-
-       * check.c (gfc_check_fseek_sub): Fixed typo.
-
-2007-05-04  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/22359
-       * intrinsic.c (add_subroutines): Added FSEEK.
-       * intrinsic.h (gfc_resolve_fseek_sub, gfc_check_fseek_sub): New.
-       * iresolve.c (gfc_resolve_fseek_sub): New.
-       * check.c (gfc_check_fseek_sub): New.
-       * intrinsic.texi (FSEEK): Updated.
-
-2007-05-04  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/31803
-       * expr.c (gfc_check_pointer_assign): Check for NULL pointer.
-
-2007-05-04  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/31251
-       * simplify.c (gfc_simplify_len): Only simplify integer lengths.
-
-2007-05-04  Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
-       PR fortran/31781
-       * simplify.c (gfc_simplify_repeat): Don't put function call with
-       side effect in a gcc_assert().
-
-2007-05-04  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/25071
-       * interface.c (compare_actual_formal): Check character length.
-
-2007-05-01  Thomas Koenig  <tkoenig@gcc.gnu.org>
-
-       PR fortran/31732
-       * dependency.c (gfc_full_array_ref_p):  If the reference is
-       to a single element, check that the array has a single
-       element and that the correct element is referenced.
-
-2007-05-01  Daniel Franke  <franke.daniel@gmail.com>
-
-       * intrinsic.c (add_functions): Fixed ELEMENTAL specifications.
-       (add_subroutines): Replaced magic numbers in function calls by
-       ELEMENTAL and NOT_ELEMENTAL respectively.
-       * intrinsic.texi (MVBITS): Changed class to elemental subroutine.
-       (RANDOM_NUMBER): Changed class to subroutine.
-       (HUGE, TINY): Changed class to inquiry function.
-
-2007-04-30  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * trans-const.c (gfc_conv_mpz_to_tree): Use mpz_get_double_int.
-       (gfc_conv_tree_to_mpz): New function.
-       (gfc_conv_mpfr_to_tree): Use real_from_mpfr.
-       (gfc_conv_tree_to_mpfr): New function.
-       * trans-const.h: (gfc_conv_tree_to_mpz): New prototype.
-       (gfc_conv_tree_to_mpfr): New prototype.
-
-2007-04-30  Daniel Franke  <franke.daniel@gmail.com>
-
-       * intrinsic.texi (IERRNO): Changed class to non-elemental function.
-       (LOG10): Removed COMPLEX as accepted argument type.
-       (NEW_LINE): Changed class from elemental to inquiry function.
-       (SIGN): Removed requirement of scalar arguments.
-       (SNGL): Changed class to elemental function.
-
-2007-04-29  Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
-       PR fortran/31591
-       * simplify.c (simplify_bound_dim): New function.
-       (simplify_bound): Use the above. Perform simplification of LBOUND
-       and UBOUND when DIM argument is not present.
-
-2007-04-29  Daniel Franke  <franke.daniel@gmail.com>
-
-       * gfortran.texi: Cleaned up keyword index.
-       * invoke.texi: Likewise.
-       * intrinsic.texi: Likewise.
-                       
-2007-04-29  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/31645
-       * scanner.c (load_file): Discard the byte order mark if one is
-       found on the first non-preprocessor line of a file.
-
-2007-04-29  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31711
-       * trans-array.c (gfc_conv_resolve_dependencies): Create a temp
-       whenever a dependency is found.
-
-2007-04-28  Tobias Schlüter  <tobi@gcc.gnu.org>
-
-       * options.c (gfc_handle_option): Ensure requested free form line
-       length is not too small.
-
-2007-04-27  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * intrinsic.texi (Transfer): Improve documentation.
-
-2007-04-27  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * gfortran.texi (Option Index): Add @samp as needed.
-
-2007-04-27  Daniel Franke  <franke.daniel@gmail.com>
-
-       * gfortran.texi: Added node and menu entry for an option index.
-       * invoke.texi: Moved command line option related entries of the concept 
-       index to the option index.
-
-2007-04-27  Daniel Franke  <franke.daniel@gmail.com>
-
-       * intrinsic.texi (AND, FPUT, FPUTC, MODULO, OR, SET_EXPONENT,
-       XOR): Fixed examples.
-
-2007-04-27  Daniel Franke  <franke.daniel@gmail.com>
-
-       * intrinsic.texi (PRODUCT, RESHAPE, SPACING, SPREAD, SUM, 
-       SYSTEM_CLOCK, TRANSFER, UNPACK): New.
-       (DATE_AND_TIME, CPU_TIME, RRSPACING): Added cross references.
-
-2007-04-26  Daniel Franke  <franke.daniel@gmail.com>
-
-       * intrinsic.texi (NULL, PACK, PRESENT, REPEAT, SCAN, SHAPE, 
-       SIZE, TRANSPOSE, TRIM, VERIFY): New.
-       (ADJUSTL, ADJUSTR, INDEX): Added cross references.
-       (INT, INT2, INT8, LONG): Enabled section header.
-
-2007-04-25  Janne Blomqvist  <jb@gcc.gnu.org>
-
-       * module.c (module_char): Replace fgetc() with
-       getc(). 
-       (write_char): Replace fputc() with putc().
-       * scanner.c (load_line): Replace fgetc() with getc().
-       (gfc_read_orig_filename): Likewise.
-
-2007-04-25  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/31668
-       * error.c (error_print): Fix %% support.
-       * intrinsic.c (sort_actual): Improve error message.
-       * resolve.c (resolve_actual_arglist): Allow %VAL for
-       interfaces defined in the module declaration part.
-
-2007-04-25  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR libfortran/31299
-       * intrinsic.texi (GETLOG): Update documentation to reflect
-       library changes.
-
-2007-04-24  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/31587
-       * module.c (write_char): Add character to the MD5 buffer.
-       (read_md5_from_module_file): New function.
-       (gfc_dump_module): Compute MD5 for new module file. Call
-       read_md5_from_module_file. Only overwrite old module file
-       if the new MD5 is different.
-
-2007-04-23  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31630
-       * resolve.c (resolve_symbol): Allow resolution of formal
-       namespaces nested within formal namespaces coming from modules.
-
-       PR fortran/31620
-       * trans-expr.c (gfc_trans_assignment): Make the call to
-       gfc_trans_zero_assign conditional on the lhs array ref being
-       the only reference.
-
-2007-04-23  Tobias Burnus  <burnus@net-b.de>
-
-       * primary.c (match_integer_constant): Mention -fno-range-check
-       in the error message.
-
-2007-04-21  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/31495
-       * scanner.c (load_line):  Remove check for comment after ampersand and
-       adjust tracking of ampersand.
-
-2007-04-21  Andrew Pinski  <andrew_pinski@playstation.sony.com>
-
-       * f95-lang.c (lang_tree_node): Use GENERIC_NEXT
-       instead of checking GIMPLE_STMT_P in chain_next.
-
-2007-04-17  Tobias Schlüter  <tobi@gcc.gnu.org>
-
-       * trans-types.h (gfc_packed): New enum.
-       (gfc_get_nodesc_array_type): Change prototype to use new enum.
-       * trans-types.c (gfc_get_nodesc_array): Use gfc_packed for
-       argument packed.  Adapt all references to values accordingly.
-       (gfc_sym_type): Use enum values in call to gfc_get_nodesc_array.
-       (gfc_get_derived_type): Likewise.
-       * trans-array.c (gfc_build_constant_array_constructor): Likewise.
-       * trans-expr.c (gfc_get_interface_mapping_charlen): Changed packed
-       argument to type gfc_packed.
-       (gfc_add_interface_mapping): Use enum values in call to
-       gfc_get_interface_mapping.
-       * trans-decl.c (gfc_build_dummy_array_decl): Adapt to use enum
-       values when determining packing.
-
-       * trans-decl.c (gfc_finish_decl): Remove unused second argument
-       'init'.  Simplify code accordingly.  Remove calls to
-       gfc_fatal_error in favor of gcc_assert.
-       (create_function_arglist): Remove second argument from calls to
-       gfc_finish-decl.
-       (gfc_trans_dummy_character): Likewise.
-
-       * arith.h: Update copyright years.
-       * dependency.h: Likewise.
-       * gfortran.h: Likewise.
-       * lang-specs.h: Likewise.
-       * parse.h: Likewise.
-       * symbol.c: Likewise.
-       * trans.h: Likewise.
-       * trans.c: Likewise.
-       * trans-array.c: Likewise.
-       * trans-common.c: Likewise.
-       * trans-const.h: Likewise.
-       * trans-const.c: Likewise.
-       * trans-decl.c: Likewise.
-       * trans-expr.c: Likewise.
-       * trans-io.c: Likewise.
-       * trans-openmp.c: Likewise.
-       * trans-types.h: Likewise.
-       * types.def: Likewise.
-
-2007-04-17  Tobias Schlüter  <tobi@gcc.gnu.org>
-
-       PR fortran/31144
-       * decl.c (gfc_sym_mangled_identifier): Use capital letters in name
-       mangling.
-       (gfc_sym_mangled_function_id): Likewise.
-
-2007-04-15  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31204
-       * primary.c (check_for_implicit_index): New function to check
-       that a host associated variable is not an undeclared implied
-       do loop index.
-       (gfc_match_rvalue, match_variable): Use it and reset the
-       implied_index attribute.
-       * gfortran.h : Add the implied_index field to symbol_attribute.
-       * match.c (gfc_match_iterator): Mark the iterator variable
-       with the new attribute.
-       * decl.c (build_sym): Reset the new attribute.
-
-2007-04-15  Kazu Hirata  <kazu@codesourcery.com>
-
-       * gfc-internals.texi: Fix typos.
-       * simplify.c: Fix a comment typo.
-
-2007-04-14  Bernhard Fischer  <aldot@gcc.gnu.org>
-
-       * primary.c: Commentary typo fix; Add question about redundant (?)
-       set.
-
-2007-04-14  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/29507
-       PR fortran/31404
-       * expr.c (scalarize_intrinsic_call): New function to
-       scalarize elemental intrinsic functions in initialization
-       expressions.
-       (check_init_expr): Detect elemental intrinsic functions
-       in initalization expressions and call previous.
-
-2007-04-13  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/31559
-       * primary.c (match_variable): External functions
-       are no variables.
-
-2007-04-13  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31550
-       * trans-types.c (copy_dt_decls_ifequal): Do not get pointer
-       derived type components.
-
-2007-04-13  Tobias Schlüter  <tobi@gcc.gnu.org>
-
-       PR fortran/18937
-       * resolve.c: Include obstack.h and bitmap.h.  New variable
-       labels_obstack.
-       (code_stack): Add tail and reachable_labels fields.
-       (reachable_labels): New function.
-       (resolve_branch): Rework to use new fields in code_stack.
-       (resolve_code): Call reachable_labels.
-       (resolve_codes): Allocate and free labels_obstack.
-
-2007-04-12  Tobias Schlüter  <tobi@gcc.gnu.org>
-
-       PR fortran/31250
-       * decl.c (match_char_spec): Move check for negative CHARACTER
-       length ...
-       * resolve.c (resolve_charlen): ... here.
-       (resolve_types): Resolve CHARACTER lengths earlier.
-
-2007-04-12  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/31234
-       * intrinsic.texi (RANDOM_SEED, RANDOM_NUMBER): New.
-
-2007-04-12  Tobias Schlüter  <tobi@gcc.gnu.org>
-
-       PR fortran/31266
-       * primary.c (gfc_variable_attr): Don't copy string length if it
-       doesn't make sense.
-       * resolve.c (resolve_code): Clarify error message.
-
-       PR fortran/31471
-       * decl.c (gfc_match_end): Also check for construct name in END
-       FORALL and END WERE statements.
-       * match.c (match_case_eos): Use uppercase for statement name in
-       error message.
-       (match_elsewhere): Construct name may appear iff construct has a
-       name.
-
-       * trans-types.c: Update copyright years.  Reformat long comment
-       explaining array descriptor format.  Remove obsolete mention of
-       TYPE_SET.
-
-       * arith.c (gfc_arith_uplus): Rename to ...
-       (gfc_arith_identity): ... this.
-       (gfc_parentheses): New function.
-       (gfc_uplus): Adapt to renamed function.
-       * arith.h (gfc_parentheses): Add prototype.
-       * expr.c (gfc_copy_expr): Deal with INTRINSIC_PARENTHESES.
-       (simplifiy_intrinsic_op): Treat INTRINSIC_UPLUS separately from
-       INTRINSIC_PARENTHESES.
-
-2007-04-12  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/31472
-       * decl.c (match_attr_spec): Allow PRIVATE/PUBLIC
-       attribute in type definitions.
-       (gfc_match_private): Allow PRIVATE statement only
-       in specification part of modules.
-       (gfc_match_public): Ditto for PUBLIC.
-       (gfc_match_derived_decl): Allow PRIVATE/PUBLIC attribute only in
-       specificification part of modules.
-
-2007-04-07  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31257
-       * intrinsic.c (add_functions): Add ref. to gfc_resolve_achar.
-       * intrinsic.h : Add prototype for gfc_resolve_achar.
-       * iresolve.c (gfc_resolve_achar): New function.
-
-2007-04-07  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/30880
-       * resolve.c (resolve_fl_variable): Set flag to 2 for automatic
-       arrays.  Make condition for automatic array error explicit.
-       If a dummy, no error on an INTENT(OUT) derived type.
-
-2007-04-07  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/30872
-       * expr.c (find_array_element): Correct arithmetic for rank > 1.
-
-2007-04-07  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31222
-       * check.c (numeric_check): If an expresson has not got a type,
-       see if it is a symbol for which a default type applies.
-
-2007-04-07  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31214
-       * trans-decl.c (gfc_get_symbol_decl): Allow unreferenced use
-       associated symbols.
-
-2007-04-07  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31293
-       * symbol.c (gfc_check_function_type): New function.
-       * gfortran.h : Add prototype for previous.
-       * parse.c (parse_progunit): Call it after parsing specification
-       statements.
-
-2007-04-05  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31483
-       * trans-expr.c (gfc_conv_function_call): Give a dummy
-       procedure the correct type if it has alternate returns.
-
-2007-04-05  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31292
-       * decl.c (gfc_match_modproc): Go up to the top of the namespace
-       tree to find the module namespace for gfc_get_symbol.
-
-2007-04-03  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/31304
-       * fortran/gfortran.h (gfc_charlen_int_kind): New prototype.
-       * fortran/trans-types.c (gfc_charlen_int_kind): New variable.
-       (gfc_init_types): Define gfc_charlen_int_kind. 
-       * fortran/trans.h (gfor_fndecl_string_repeat): Remove prototype.
-       * fortran/trans-decl.c (gfor_fndecl_string_repeat): Delete.
-       (gfc_build_intrinsic_function_decls): Don't set
-       gfor_fndecl_string_repeat.
-       * fortran/trans-intrinsic.c (gfc_conv_intrinsic_repeat): Rewrite
-       so that we don't have to call a library function.
-       * fortran/simplify.c (gfc_simplify_repeat): Perform the necessary
-       checks on the NCOPIES argument, and work with arbitrary size
-       arguments.
-
-2007-03-31  Tobias Burnus  <burnus@net-b.de>
-
-       * intrinsic.c (add_functions): Fix name of dummy argument
-         for new_line and exit intrinsic.
-
-2007-03-31  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31160
-       * gfortran.texi: Add a section for the %VAL, %REF and %LOC
-       extensions.
-
-2007-03-30  Rafael Avila de Espindola  <espindola@google.com>
-
-       * trans-types.c (gfc_signed_or_unsigned_type): Remove.
-       (gfc_unsigned_type): Use get_signed_or_unsigned_type instead of
-       gfc_signed_or_unsigned_type.
-       (gfc_signed_type): Ditto.
-       * trans-types.h (gfc_signed_or_unsigned_type): Remove.
-       * f95-lang.c (LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): Remove.
-
-2007-03-30  Tobias Schlüter  <tobi@gcc.gnu.org>
-
-       * symbol.c (gfc_find_gsymbol): Simplify, don't unconditionally
-       descend into all branches.
-
-2007-03-29  Tobias Schlüter  <tobi@gcc.gnu.org>
-
-       * intrinsic.c (conv_name): Let gfc_get_string handle the format.
-       (find_conv): Compare pointers instead of calling strcmp.
-       (find_sym): Likewise, but ensure that the compared pointer is in
-       the global string table.
-
-2007-03-28  Tobias Schlüter  <tobi@gcc.gnu.org>
-
-       * gfc-internals.texi: Fix output filename.  Merge type index into
-       concept index.  Start documentation of gfc_code structure.
-
-2007-03-26  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * gfc-internals.texi: New file,
-       * Make-lang.in: Add rules to convert it to dvi, pdf, and info.
-
-2007-03-26  Brooks Moses  <brooks.moses@codesourcery.com>
-       * error.c (show_locus): Remove always-false test.
-
-2007-03-26  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * lang.opt: Minor edits to descriptions.
-
-2007-03-25  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/30877
-       * fortran/interface.c (check_operator_interface): Implement
-       the standard checks on user operators extending intrinsic operators.
-       * fortran/resolve.c (resolve_operator): If the ranks of operators
-       don't match, don't error out but try the user-defined ones first.
-
-2007-03-24  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/30655
-       * expr.c (check_dimension): Fix logic of comparisons.
-
-2007-03-24  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31215
-       * trans-expr.c (gfc_apply_interface_mapping_to_expr): Return
-       int result that is non-zero if the expression is the function
-       result.  Only the characteristics of the result expression
-       can be used in a procedure interface, so simplify LEN in situ
-       using its character length.
-
-       PR fortran/31209
-       PR fortran/31200
-       * trans-expr.c (gfc_conv_function_call): Do not use
-       gfc_conv_expr_reference for actual pointer function with formal
-       target because a temporary is created that does not transfer
-       the reference correctly.  Do not indirect formal pointer
-       functions since it is the function reference that is needed.
-
-2007-03-24  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * gfortran.h: Edit comments on GFC_STD_*.
-
-2007-03-23  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * invoke.texi: Misc. small typo fixes.
-       (-Wcharacter-truncation): Add.
-       (-Wnonstd-intrinsics): Correct spelling.
-       (-std=): Edit.
-       (-fintrinsic-modules-path): Add.
-
-2007-03-23  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
-
-       PR fortran/30834
-       * arith.c (complex_pow): Rewrite to handle large power.
-       (gfc_arith_power): Handle large power in the real and integer
-       cases.
-
-2007-03-22  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       PR fortran/31262
-       * trans-const.c (gfc_conv_mpz_to_tree): Allow integer constants
-       larger than twice the width of a HOST_WIDE_INT.
-
-2006-03-22  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31193
-       * trans-intrinsic.c (gfc_size_in_bytes): Remove function.
-       (gfc_conv_intrinsic_array_transfer): Remove calls to previous.
-       Explicitly extract TREE_TYPEs for source and mold.  Use these
-       to calculate length of source and mold, except for characters,
-       where the se string_length is used.  For mold, the TREE_TYPE is
-       recalculated using gfc_get_character_type_len so that the
-       result is correctly cast for character literals and substrings.
-       Do not use gfc_typenode_for_spec for the final cast.
-
-2007-03-22  Tobias Schlüter  <tobi@gcc.gnu.org>
-
-       PR fortran/20897
-       * decl.c (gfc_match_derived_decl): Reliably reject
-       'doubleprecision' and 'doublecomplex' as type names.
-
-2007-03-19  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       PR fortran/31203
-       * trans-expr.c (gfc_trans_init_string_length): Length should
-       never be negative.
-       (gfc_conv_function_call): Likewise.
-
-2007-03-18  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/30531
-       PR fortran/31086
-       * symbo.c : Add gfc_derived_types.
-       (gfc_free_dt_list): Free derived type list gfc_derived_types.
-       (gfc_free_namespace): Remove call to gfc_free_dt_list.
-       (gfc_symbol_done_2): Call  gfc_free_dt_list.
-       * gfortran.h : Declare gfc_derived_types to be external. Remove
-       derived types field from gfc_namespace.
-       * resolve.c (resolve_fl_derived): Refer to gfc_derived types
-       rather than namespace derived_types.
-       (resolve_fntype): Remove special treatment for module
-       derived type functions.
-       * trans-types.c (gfc_get_derived_type): Remove search for like
-       derived types.  Finish by copying back end declaration to like
-       derived types in the derived type list gfc_derived_types.
-
-       2007-03-17  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       PR fortran/31120
-       * trans-expr.c (gfc_conv_powi): Make n argument unsigned hwi.
-       (gfc_conv_cst_int_power): Handle integer exponent with care,
-       since it might be too large for us.
-
-2007-03-17  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       PR fortran/31184
-       * invoke.texi: Fix typo.
-
-2007-03-16  Tobias Burnus  <burnus@net-b.de>
-
-       * trans-decl.c (gfc_generate_function_code): Use all arguments of
-         set_std.
-
-2007-03-15  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       * gfortran.h (gfc_option_t): Add flag_backtrace field.
-       * lang.opt: Add -fbacktrace option.
-       * invoke.texi: Document the new option.
-       * trans-decl.c (gfc_build_builtin_function_decls): Add new
-       option to the call to set_std.
-       * options.c (gfc_init_options, gfc_handle_option): Handle the
-       new option.
-
-2007-03-15  Tobias Burnus  <burnus@gcc.gnu.org>
-           Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/30922
-       * decl.c (gfc_match_import): If the parent of the current name-
-       space is null, try looking for an imported symbol in the parent
-       of the proc_name interface.
-       * resolve.c (resolve_fl_variable): Do not check for blocking of
-       host association by a same symbol, if the symbol is in an
-       interface body.
-
-2007-03-15  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/30879
-       * decl.c (match_data_constant): Before going on to try to match
-       a name, try to match a structure component.
-
-
-       PR fortran/30870
-       * resolve.c (resolve_actual_arglist): Do not reject a generic
-       actual argument if it has a same name specific interface.
-
-       PR fortran/31163
-       * trans-array.c (parse_interface): Do not nullify allocatable
-       components if the symbol has the saved attribute.
-
-2007-03-14  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       * trans-array.c (gfc_trans_auto_array_allocation): Replace
-       fold(convert()) by fold_convert().
-       (gfc_duplicate_allocatable): Likewise.
-       * trans-intrinsic.c (gfc_conv_intrinsic_dot_product): Use
-       build_int_cst instead of converting an integer_zero_node
-       to the final type.
-
-2007-03-14  Jakub Jelinek  <jakub@redhat.com>
-
-       * module.c (mio_typespec): Don't look at ts->cl if not BT_CHARACTER.
-
-2007-03-13  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       PR fortran/30933
-       PR fortran/30948
-       PR fortran/30953
-       * intrinsics.texi (CHDIR): Fix argument names, note
-       that STATUS must be a default integer.
-       (CTIME): Fix argument names, note that RESULT must
-       be a default integer.
-       (EXIT): Note that STATUS must be a default integer.
-
-2007-03-13  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       PR fortran/28068
-       * intrinsic.texi: General whitespace cleanup, remove
-       comment about missing intrinsics.
-       (menu): Add lines for new entries listed below.
-       (ACOSH): Mention specific function DACOSH, correct
-       description phrasing.
-       (ASINH): Mention specific function DASINH, correct
-       description phrasing.
-       (ATANH): Mention specific function DATANH, correct
-       description phrasing.
-       (COS): Add index entry for CCOS.
-       (CPU_TIME): Correct "REAL" to "REAL(*)".
-       (EXP): Add index entry for CEXP.
-       (INT): Correct argument name to "A".
-       (INT2): New entry.
-       (INT8): New entry.
-       (LONG): New entry.
-       (MAX): Add index entries for specific variants.
-       (MCLOCK): New entry.
-       (MCLOCK8): New entry.
-       (SECNDS): Adjust to a more standard form.
-       (SECOND): New entry.
-       (TIME): Add cross-reference to MCLOCK.
-       (TIME8): Add cross-reference to MCLOCK8.
-
-2007-03-11  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/30883
-       * parse.c (parse_interface): Use the default types from the
-       formal namespace if a function or its result do not have a type
-       after parsing the specification statements.
-
-2007-03-08  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * intrinsic.texi: (ICHAR) Improve internal I/O note.
-       (ACHAR): Reference it.
-       (CHAR): Reference it.
-       (IACHAR): Reference it.
-
-2007-03-08  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * intrinsic.texi: (LINK) Document function form.
-       (RENAME): Likewise.
-       (SYMLNK): Likewise.
-       (SYSTEM): Likewise.
-       (UNLINK): Likewise.
-
-2007-03-08  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * intrinsic.texi: minor typo fixes, removed prologue.
-       (FSEEK): moved to correct place in alphabetical order.
-
-2007-03-08  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR fortran/30947
-       * check.c (gfc_check_alarm_sub): Added check for default integer 
-       kind of status argument.
-       * iresolve.c (gfc_resolve_alarm_sub): Removed conversion of 
-       status argument.
-       * intrinsic.texi (ALARM): Extended documentation.
-
-2007-03-08  Daniel Franke  <franke.daniel@gmail.com>
-
-       * intrinsic.texi (GERROR, ISATTY, TTYNAM): New.
-       (ABORT, FLUSH, FNUM, IRAND, MALLOC, SIGNAL, SRAND): Fixed typo.
-       * intrinsic.c (add_subroutines): Adjusted dummy argument names 
-       of GERROR and TTYNAM.
-
-2007-07-08  Tobias Burnus  <burnus@net-b.de>
-
-       * module.c (gfc_match_use): Support renaming of operators
-       in USE statements.
-       * gfortran.texi (Fortran 2003 Status): Document support of
-       renaming of operators.
-
-2007-07-08  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/30973
-       * module.c (read_module): Always import module name as symbol.
-       (gfc_match_use): Disallow module name in the only clause of
-       a use statement.
-
-2007-03-08  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/31011
-       * expr.c (find_array_section): Correct arithmetic for section
-       size.
-
-2007-03-07  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * iresolve.c (gfc_resolve_ishftc): Correct s_kind value.
-
-2007-03-06  Daniel Franke  <franke.daniel@gmail.com>
-
-       PR documentation/30950
-       * intrinsic.texi (AND, CPU_TIME): Fix dummy argument names.
-       (FREE): Fix call syntax.
-
-2007-03-06  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * intrinsic.texi: Limit column widths to a total of .85.
-
-2007-03-05  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * gfortran.texi (GFortran and G77): Rewrite completely.
-
-2007-03-05  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * match.c (gfc_match_name): Expanded comment.
-
-2007-03-05  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * gfortran.texi (Old-style kind specifications): Document
-       special handling of old-style kind specifiers for COMPLEX.
-       * decl.c (gfc_match_old_kind_spec): Document kind/bytesize
-       assumptions for COMPLEX in comment.
-
-2007-03-05  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       PR 31050
-       * gfortranspec.c (lang_specific_driver): Update program
-       name and copyright date.
-
-2007-03-03  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/30882
-       * check.c (dim_rank_check): The shape of subsections of
-       assumed-size arrays is known.
-
-2007-03-02  Paul Thomas  <pault@gcc.gnu.org>
-           Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/30873
-       * decl.c (gfc_match_entry): Remove erroneous entry result check.
-
-2007-03-01  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * Make-lang.in: Add install-pdf target as copied from
-       automake v1.10 rules.
-
-2007-03-01  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/30865
-       * trans-intrinsic.c (gfc_conv_intrinsic_size): Compare pointers.
-
-2007-02-28  Tobias Burnus  <burnus@net-b.de>
-           Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/30888
-       PR fortran/30887
-       * resolve.c (resolve_actual_arglist): Allow by-value
-       arguments and non-default-kind for %VAL().
-       * trans-expr.c (conv_arglist_function): Allow
-       non-default-kind for %VAL().
-
-2007-02-28  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/30968
-       * primary.c (next_string_char): Correct reading a character
-       after the delimiter.
-       (match_string_constant): Print warning message only once.
-
-2007-02-27  Richard Guenther  <rguenther@suse.de>
-
-       * trans-array.c (structure_alloc_comps): Use correct type
-       for null pointer constant.
-
-2007-02-26  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * gfortran.texi: Standardize title page, remove version number
-       from copyright page.
-
-2007-02-26  Thomas Koenig  <Thomas.Koenig@online.de>
-           Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/30865
-       * trans-intrinsic.c (gfc_conv_intrinsic_size):
-       If dim is an optional argument, check for its
-       presence and call size0 or size1, respectively.
-
-2007-02-23  Paul Thomas <pault@gcc.gnu.org>
-
-       PR fortran/30660
-       * resolve.c (has_default_initializer): New function.
-       (resolve_fl_variable): Call has_default_initializer to determine if
-       the derived type has a default initializer to its ultimate
-       components.
-
-
-2007-02-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       * options.c (set_default_std_flags): New function to consolidate
-       setting the flags.
-       (gfc_init_options): Use new function.
-       (gfc_handle_option): Use new function.
-
-2007-02-22  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * gfortran.texi (Old-style kind specifications): Document
-       special handling of old-style kind specifiers for COMPLEX.
-       * decl.c (gfc_match_old_kind_spec): Documented kind/bytesize
-       assumptions in comment.
-
-2007-02-21  Bernhard Fischer  <aldot@gcc.gnu.org>
-
-       * parse.c (next_free): Gooble spaces after OpenMP sentinel.
-
-2007-02-20  Thomas Koenig  <Thomas.Koenig@online.de>
-
-       PR fortran/30869
-       * match.c (gfc_match_iterator): Remove conflict between
-       loop variable and pointer.
-
-2007-02-20  Tobias Burnus  <burnus@net-b.de>
-
-       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  <burnus@net-b.de>
-
-       PR fortran/30783
-       * resolve.c (resolve_symbol): Add character dummy VALUE check.
-
-2007-02-19  Thomas Koenig  <Thomas.Koenig@online.de>
-
-       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  <jvdelisle@gcc.gnu.org>
-
-       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  <roger@eyesopen.com>
-
-       * 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  <roger@eyesopen.com>
-           Paul Thomas <pault@gcc.gnu.org>
-
-       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  <burnus@net-b.de>
-
-       PR fortran/30793
-       * trans-decl.c (gfc_generate_function_code): Do not initialize
-       pointers to derived components.
-
-2007-02-15  Sandra Loosemore  <sandra@codesourcery.com>
-           Brooks Moses  <brooks.moses@codesourcery.com>
-           Lee Millward  <lee.millward@codesourcery.com>
-
-       * 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  <jvdelisle@gcc.gnu.org>
-
-       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  <kargl@gcc.gnu.org>
-
-       PR fortran/30799
-       * primary.c (match_logical_constant): Return MATCH_ERROR on invalid
-       kind.
-
-2007-02-14  Steven G. Kargl  <kargl@gcc.gnu.org>
-
-       * misc.c (gfc_typename): Fix potential buffer overflow.
-
-2007-02-13  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/30554
-       * module.c (read_module): Set pointer_info to referenced if the
-       symbol has no namespace.
-
-2007-02-12  Nick Clifton  <nickc@redhat.com>
-
-       * lang.opt: Add Warning attribute to warning options.
-
-2007-02-11  Daniel Franke  <franke.daniel@gmail.com>
-
-       * intrinsic.texi (HOSTNM): Fix typographical error in syntax.
-       (SLEEP): Added section and documentation.
-
-2007-02-11  Tobias Schlüter  <tobi@gcc.gnu.org>
-
-       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  <pault@gcc.gnu.org>
-
-       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  <rth@redhat.com>, Jakub Jelinek  <jakub@redhat.com>
-
-       * 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  <burnus@net-b.de>
-
-       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  <coudert@clipper.ens.fr>
-
-       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  <roger@eyesopen.com>
-
-       * 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  <coudert@clipper.ens.fr>
-
-       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 <kargl@gcc.gnu.org>
-
-       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  <kazu@codesourcery.com>
-
-       * trans-array.c: Fix a comment typo.
-
-2007-02-03  Paul Thomas  <pault@gcc.gnu.org>
-
-       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 <kargl@gcc.gnu.org>
-
-       PR fortran/30683
-       * resolve.c (resolve_generic_f): Check for non-NULL sym.
-
-2007-02-02  Roger Sayle  <roger@eyesopen.com>
-
-       * 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  <pault@gcc.gnu.org>
-
-       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  <roger@eyesopen.com>
-
-       * 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  <roger@eyesopen.com>
-
-       * dependency.c (gfc_check_dependency) <EXPR_ARRAY>: Implement
-       dependency checking for array constructors.
-
-2007-02-01  Roger Sayle  <roger@eyesopen.com>
-
-       * trans-stmt.c (compute_overall_iter_number): Document function
-       arguments.  Generalize "unconditional forall nest with constant
-       bounds" optimization to eliminate unconditional inner loops with
-       constant bounds.
-
-2007-01-31  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/30520
-       * interface.c (compare_actual_formal): Check conformance between
-         actual and VOLATILE dummy arguments.
-       * symbol.c (gfc_add_volatile): Allow setting of VOLATILE
-         multiple times in different scopes.
-       * decl.c (gfc_match_volatile): Search symbol in host association.
-
-2007-01-31  Kazu Hirata  <kazu@codesourcery.com>
-
-       * simplify.c, trans-array.c: Fix comment typos.
-
-2007-01-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
-
-       * invoke.texi (Code Gen Options): Fix abbreviation typo.
-       * intrinsic.texi (ACCESS, LSHIFT, RSHIFT): Fix typos.
-
-2007-01-30  Steve Ellcey  <sje@cup.hp.com>
-
-       PR fortran/30432
-       * 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.
-
-2007-01-29  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/30554
-       * module.c (read_module): If a symbol is excluded by an ONLY
-       clause, check to see if there is a symtree already loaded. If
-       so, attach the symtree to the pointer_info.
-
-2007-01-28  Thomas Koenig  <Thomas.Koenig@online.de>
-
-       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
-       from call to gfc_compare_string.
-       (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.
-       (xascii_table): Likewise.
-       (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
-       value < 0 or value > 255.
-       (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.
-
-2007-01-27  Roger Sayle  <roger@eyesopen.com>
-
-       * trans-stmt.c (forall_info): Replace the next_nest and outer
-       fields that previously implemented a doubly-linked list with a
-       single prev_nest field (singly-linked list).
-       (gfc_trans_nested_forall_loop): The nested_forall_info argument
-       now denotes the innermost FORALL in the loop nest.
-       (compute_overall_iter_number): Use prev_nest instead of next_nest.
-       (gfc_trans_forall_1): Link/cons the new "info" to the head of the
-       nested_forall_info linked list.  Free the current "info" when done.
-
-2007-01-27  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/30407
-       * trans-expr.c (gfc_conv_operator_assign): New function.
-       * trans.h : Add prototype for gfc_conv_operator_assign.
-       * trans-stmt.c (gfc_trans_where_assign): Add a gfc_symbol for
-       a potential operator assignment subroutine.  If it is non-NULL
-       call gfc_conv_operator_assign instead of the first assignment.
-       ( gfc_trans_where_2): In the case of an operator assignment,
-       extract the argument expressions from the code for the
-       subroutine call and pass the symbol to gfc_trans_where_assign.
-       resolve.c (resolve_where, gfc_resolve_where_code_in_forall,
-       gfc_resolve_forall_body): Resolve the subroutine call for
-       operator assignments.
-
-2007-01-26  Steven Bosscher  <stevenb.gcc@gmail.com>
-           Steven G. Kargl <kargl@gcc.gnu.org>
-
-       PR fortran/30278
-       * fortran/io.c (next_char): Deal with backslash escaped characters.
-       Issue warnings in non -std=gnu cases.
-       * fortran/primary.c (next_string_char): Issue warnings in non
-
-2007-01-26  Tobias Burnus  <burnus@net-b.de>
-
-       * lang-specs.h: Add support for .f03 and .F03 extensions.
-       * gfortran.texi: Document .f03 extension.
-       * options.c (form_from_filename): Recognize .f03.
-
-2007-01-25  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
-
-       PR fortran/30437
-       * lang.opt (Wall): Remove RejectNegative.
-       * options.c (gfc_handle_option): Wall can be disabled.
-       (set_Wall): Add a parameter for disabling Wall.
-       
-2007-01-23  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/30532
-       * scanner.c (load_line): Remove check fot ctrl-z and don't gobble.
-       
-2007-01-23  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/30481
-       * match.c (gfc_match_namelist): Add check for assumed size character
-       in namelist and provide error if found.
-
-2007-01-21  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * intrinsic.texi (ACHAR): Added cross-references.
-       (CHAR): Put cross-references in alphabetical order.
-       (IACHAR): Added cross-references.
-       (ICHAR): Added cross-references.
-
-2007-01-20  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * intrinsic.texi: Edited all "Syntax" examples to a consistent form.
-       (MAXVAL): Corrected description of result characteristics.
-       (MINVAL): Same.
-       (UMASK): Added documentation.
-
-2007-01-20  Steven G. Kargl  <kargl@gcc.gnu.org>
-
-       * openmp.c, matchexp.c, module.c, scanner.c, resolve.c, st.c,
-       parse.c, primary.c, options.c, misc.c, simplify.c: Next installment
-       in the massive whitespace patch.
-
-2007-01-20  Roger Sayle  <roger@eyesopen.com>
-
-       * module.c (mio_array_ref): The dimen_type fields of an array ref
-       are an enumerated type and can't be read/written directly with a
-       call to mio_integer.  Instead loop over and cast each element.
-
-2007-01-20  Roger Sayle  <roger@eyesopen.com>
-
-       * dependency.c (gfc_full_array_ref_p): Check that ref->next is NULL,
-       i.e. that the ARRAY_REF doesn't mention components.
-       * trans-array.c (gfc_constant_array_constructor_p): Export external
-       function renamed from constant_array_constructor_p.
-       (gfc_build_constant_array_constructor): Export.
-       (gfc_trans_array_constructor): Update call to the renamed function
-       constant_array_constructor_p.
-       * trans-array.h (gfc_constant_array_constructor_p): Prototype here.
-       (gfc_build_constant_array_constructor): Likewise.
-       * trans-expr.c (gfc_build_memcpy_call): New helper function split
-       out from gfc_trans_array_copy.
-       (gfc_trans_array_copy): Use gfc_build_memcpy_call.
-       (gfc_trans_array_constructor_copy): New function to optimize
-       assigning an entire array from a constant array constructor.
-       (gfc_trans_assignment): Call gfc_trans_array_constructor_copy
-       when appropriate.
-
-2007-01-20  Roger Sayle  <roger@eyesopen.com>
-
-       * trans-intrinsic.c (gfc_conv_intrinsic_sign): New branchless
-       implementation for the SIGN intrinsic with integral operands.
-       (gfc_conv_intrinsic_minmax): Fix whitespace.
-
-2007-01-20  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       * gfortran.h (gfc_options_t): Add flag_allow_leading_underscore.
-       * lang.opt: Add -fallow-leading-underscore.
-       * match.c (gfc_match_name): Allow leading underscore in symbol
-       name if -fallow-leading-underscore is used.
-       * symbol.c (gfc_get_default_type): Add special case for symbol
-       names beginning with an underscore.
-       * trans-decl.c (gfc_get_extern_function_decl,
-       gfc_build_intrinsic_function_decls): Add _gfortran prefix to
-       library symbols selected_int_kind, selected_real_kind and 
-       all specifics.
-       * options.c (gfc_init_options, gfc_handle_option): Handle the
-       new -fallow-leading-underscore option.
-
-2007-01-20  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       PR fortran/30446
-       * options.c (gfc_handle_module_path_options): Path used in -J
-       option is now added to the module search path.
-
-2007-01-20  Richard Guenther  <rguenther@suse.de>
-
-       PR fortran/30223
-       * f95-lang.c (gfc_init_builtin_functions): Provide cbrt and
-       cexpi builtins if we have TARGET_C99_FUNCTIONS.  Provide
-       sincos builtins if the target has sincos.
-
-2007-01-19  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * intrinsic.texi (MATMUL): Corrected a typo.
-       (MAX): Separated @var arguments.
-       (MIN): Separated @var arguments.
-
-2007-01-19  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * intrinsic.texi: general whitespace cleanup.
-       (menu): Added TIME8, removed UNMASK.
-       (AINT): Clarified argument requirement.
-       (ANINT): Clarified argument requirement.
-       (CEILING): Clarified argument requirement.
-       (CHAR): Clarified argument requirement.
-       (CMPLX): Clarified argument requirement.
-       (DCMPLX): Clarified argument requirement.
-       (FGET): Line rewrapping.
-       (FLOOR): Clarified argument requirement.
-       (GMTIME): Added documentation.
-       (IAND): Added cross-reference.
-       (IBCLR): Added cross-reference.
-       (IBSET): Added cross-reference.
-       (IEOR): Added cross-reference.
-       (INT): Collapsed examples, clarified argument requirement.
-       (IOR): Added cross-references.
-       (LEN_TRIM): Corrected result kind.
-       (LINK): Added cross-reference.
-       (LLT): Removed "documentation pending".
-       (LOGICAL): Added documentation.
-       (LSHIFT): Added documentation.
-       (LTIME): Added documentation.
-       (MATMUL): Added documentation.
-       (MAX): Added documentation.
-       (MAXLOC): Added documentation.
-       (MAXVAL): Added documentation.
-       (MERGE): Added documentation.
-       (MIN): Added documentation.
-       (MINLOC): Added documentation.
-       (MINVAL): Added documentation.
-       (MVBITS): Moved to correct place, added documentation.
-       (NOT): Added documentation.
-       (PERROR): Added documentation.
-       (RAN): Moved to correct place, added documentation.
-       (REAL): Clarified argument requirement.
-       (RENAME): Added documentation.
-       (RSHIFT): Clarified argument requirement.
-       (SIGN): Corrected table specification.
-       (SYMLNK): Added documentation.
-       (SYSTEM): Added documentation.
-       (TIME): Added documentation.
-       (TIME8): Added section and documentation.
-       (UNMASK): Removed erroneous section.
-
-2007-01-18  H.J. Lu  <hongjiu.lu@intel.com>
-
-       * trans-stmt.c (compute_overall_iter_number): Fix a typo.
-
-2007-01-18  Roger Sayle  <roger@eyesopen.com>
-
-       * trans-expr.c (copyable_array_p): Consider user derived types without
-       allocatable components to be copyable.
-
-2007-01-18  Roger Sayle  <roger@eyesopen.com>
-
-       * trans-stmt.c (compute_overall_iter_number): Enhance to precompute
-       the number of interations in unconditional FORALL nests with constant
-       bounds.
-
-2007-01-18  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-           Tobias Burnus  <burnus@net-b.de>
-
-       PR libfortran/29649
-       * gfortran.h (gfc_option_t): Add flag_dump_core.
-       * lang.opt: Add -fdump-core option.
-       * invoke.texi: Document the new options.
-       * trans-decl.c (gfc_build_builtin_function_decls): Add new
-         options to the call to set_std.
-       * options.c (gfc_init_options, gfc_handle_option): Set the
-         new options.
-
-2007-01-17  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/30476
-       * module.c (load_generic_interfaces): Make the marking of the
-       symbol as ambiguous conditional on the module names being
-       different.
-       (write_generic): Ensure that the generic interface has a
-       non-NULL module field.
-
-2007-01-16  Roger Sayle  <roger@eyesopen.com>
-
-       PR fortran/30404
-       * trans-stmt.c (forall_info): Remove pmask field.
-       (gfc_trans_forall_loop): Remove NVAR argument, instead assume that
-       NVAR covers all the interation variables in the current forall_info.
-       Add an extra OUTER parameter, which specified the loop header in
-       which to place mask index initializations.
-       (gfc_trans_nested_forall_loop): Remove NEST_FLAG argument.
-       Change the semantics of MASK_FLAG to only control the mask in the
-       innermost loop.
-       (compute_overall_iter_number): Optimize the trivial case of a
-       top-level loop having a constant number of iterations.  Update
-       call to gfc_trans_nested_forall_loop.  Calculate the number of
-       times the inner loop will be executed, not to size of the 
-       iteration space.
-       (allocate_temp_for_forall_nest_1): Reuse SIZE as BYTESIZE when
-       sizeof(type) == 1.  Tidy up.
-       (gfc_trans_assign_need_temp): Remove NEST_FLAG argument from calls
-       to gfc_trans_nested_forall_loop.
-       (gfc_trans_pointer_assign_need_temp): Likewise.
-       (gfc_trans_forall_1): Remove unused BYTESIZE, TMPVAR, SIZEVAR and
-       LENVAR local variables.  Split mask allocation into a separate
-       hunk/pass from mask population.  Use allocate_temp_for_forall_nest
-       to allocate the FORALL mask with the correct size.  Update calls
-       to gfc_trans_nested_forall_loop.
-       (gfc_evaluate_where_mask): Update call to
-       gfc_trans_nested_forall_loop.
-       (gfc_trans_where_2): Likewise.
-
-2007-01-15  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/28172
-       * trans-stmt.c (gfc_trans_call): If it does not have one, get
-       a backend_decl for an alternate return.
-
-       PR fortran/29389
-       * resolve.c (pure_function): Statement functions are pure. Note
-       that this will have to recurse to comply fully with F95.
-
-       PR fortran/29712
-       * resolve.c (resolve_function): Only a reference to the final
-       dimension of an assumed size array is an error in an inquiry
-       function.
-
-       PR fortran/30283
-       * resolve.c (resolve_function): Make sure that the function
-       expression has a type.
-
-2007-01-14  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/30410
-       * trans-decl.c (gfc_sym_mangled_function_id): Module, external
-       symbols must not have the module name prepended.
-
-2007-01-11  Thomas Koenig  <Thomas.Koenig@online.de>
-
-       PR libfortran/30415
-       * 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.
-
-2007-01-11  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * simplify.c: Update copyright to 2007.
-       * scanner.c: Same.
-
-2007-01-11  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       PR fortran/30430
-       * scanner.c (gfc_release_include_path): Free gfc_option.module_dir
-       only once!
-
-2007-01-09  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * simplify.c (gfc_simplify_ibclr): Fix POS comparison.
-       (gfc_simplify_ibset): Same.
-
-2007-01-09  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       PR 30381
-       PR 30420
-       * simplify.c (convert_mpz_to_unsigned): New function.
-       (convert_mpz_to_signed): New function, largely based on
-       twos_complement().
-       (twos_complement): Removed.
-       (gfc_simplify_ibclr): Add conversions to and from an
-       unsigned representation before bit-twiddling.
-       (gfc_simplify_ibset): Same.
-       (gfc_simplify_ishftc): Add checks for overly large
-       constant arguments, only check the third argument if
-       it's present, carry over high bits into the result as
-       appropriate, and perform the final conversion back to
-       a signed representation using the correct sign bit.
-       (gfc_simplify_not): Removed unnecessary masking.
-
-2007-01-09  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/30408
-       * resolve.c (resolve_code): Use the code->expr character length
-       directly to set length of llen.
-
-2007-01-09  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/30408
-       * lang.opt: Add Wcharacter_truncation option.
-       * options.c (gfc_init_options): Initialize
-       gfc_option.warn_character_truncation to zero.
-       (gfc_handle_option): Add case for OPT_Wcharacter_truncation.
-
-2007-01-08  Steven G. Kargl  <kargl@gcc.gnu.org>
-
-       * interface.c, intrinsic.c, gfortranspec.c, io.c, f95-lang.c,
-       iresolve.c, match.c: Update Copyright years.  Whitespace.
-
-2007-01-08  Richard Guenther  <rguenther@suse.de>
-
-       * trans-io.c (transfer_array_desc): Use build_int_cst instead
-       of build_int_cstu.
-
-2007-01-08  Roger Sayle  <roger@eyesopen.com>
-
-       * trans-array.c (constant_array_constructor_p): New function to
-       determine whether an array constructor consists only of constant
-       elements, and if so return it's size.
-       (gfc_build_constant_array_constructor): Construct a statically
-       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.
-       Special case scalarization of constant array constructors, all of
-       whose elements are specified, using constant_array_constructor_p 
-       and gfc_trans_constant_array_constructor.
-       (gfc_conv_scalarized_array_ref): Check whetger info->offset is zero
-       before adding it to index, to avoid creating a NON_LVALUE_EXPR.
-
-2007-01-08  Kazu Hirata  <kazu@codesourcery.com>
-
-       gfortran.texi: Fix typos.
-
-2007-01-07  Steven G. Kargl  <kargl@gcc.gnu.org>
-
-       * decl.c, dump-parse-tree.c, error.c, data.c, expr.c, dependency.c,
-       convert.c: Update Copyright dates.  Fix whitespace.
-
-2007-01-07  Bernhard Fischer  <aldot@gcc.gnu.org>
-
-       * data.c (gfc_assign_data_value): Fix whitespace.
-
-2007-01-07  Bernhard Fischer  <aldot@gcc.gnu.org>
-
-       * trans-array.c (gfc_trans_create_temp_array, gfc_array_init_size):
-       Commentary typo fix.
-
-2007-01-07  Bernhard Fischer  <aldot@gcc.gnu.org>
-
-       PR fortran/27698
-       * match.c (gfc_match_name): Print diagnostics for invalid
-       character in names.
-
-2007-01-06  Steven G. Kargl  <kargl@gcc.gnu.org>
-
-       * array.c: Fix whitespace in comment table.
-
-2007-01-06  Steven G. Kargl  <kargl@gcc.gnu.org>
-
-       * array.c, bbt.c, check.c: Update copyright years.  Whitespace.
-
-2007-01-06  Steven G. Kargl  <kargl@gcc.gnu.org>
-
-       * arith.c: Update copyright years.  Whitespace.
-
-2007-01-05  Roger Sayle  <roger@eyesopen.com>
-
-       * trans-expr.c (gfc_trans_assignment_1): New subroutine to scalarize
-       array assignments split out from gfc_trans_assignment.
-       (gfc_trans_array_copy): New function to implement array to array
-       copies via calls to __builtin_memcpy.
-       (copyable_array_p): New helper function to identify an array of
-       simple/POD types, that may be copied/assigned using memcpy.
-       (gfc_trans_assignment): Use gfc_trans_array_copy to handle simple
-       whole array assignments considered suitable by copyable_array_p.
-       Invoke gfc_trans_assignment_1 to perform the fallback scalarization.
-
-2007-01-05  Roger Sayle  <roger@eyesopen.com>
-
-       * trans-array.c (gfc_trans_array_constructor_value): Make the
-       static const "data" array as TREE_READONLY.
-       * trans-stmt.c (gfc_trans_character_select): Likewise.
-
-2007-01-05  Roger Sayle  <roger@eyesopen.com>
-
-       * 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.
-
-2007-01-05  Tobias Burnus  <burnus@net-b.de>
-
-       * symbol.c (check_conflict): Fix error message.
-
-2007-01-05  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/23232
-       * decl.c (gfc_in_match_data, gfc_set_in_match_data): New
-       functions to signal that a DATA statement is being matched.
-       (gfc_match_data): Call gfc_set_in_match_data on entry and on
-       exit.
-       * gfortran.h : Add prototypes for above.
-       * expr.c (check_init_expr): Avoid check on parameter or
-       variable if gfc_in_match_data is true.
-       (gfc_match_init_expr): Do not call error on non-reduction of
-       expression if gfc_in_match_data is true.
-
-       PR fortran/27996
-       PR fortran/27998
-       * decl.c (gfc_set_constant_character_len): Add boolean arg to
-       flag array constructor resolution.  Warn if string is being
-       truncated.  Standard dependent error if string is padded. Set
-       new arg to false for all three calls to
-       gfc_set_constant_character_len.
-       * match.h : Add boolean arg to prototype for
-       gfc_set_constant_character_len.
-       * gfortran.h : Add warn_character_truncation to gfc_options.
-       * options.c (set_Wall): Set warn_character_truncation if -Wall
-       is set.
-       * resolve.c (resolve_code): Warn if rhs string in character
-       assignment has to be truncated.
-       * array.c (gfc_resolve_character_array_constructor): Set new
-       argument to true for call to gfc_set_constant_character_len.
-
-2007-01-05  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/29624
-       * interface.c (compare_parameter_intent): New function.
-         (check_intents): Support pointer intents.
-       * symbol.c (check_conflict): Support pointer intents,
-         better conflict_std message.
-       * expr.c (gfc_check_assign,gfc_check_pointer_assign):
-         Support pointer intents.
-       * resolve.c (resolve_deallocate_expr,resolve_allocate_expr):
-         Support pointer intents.
-
-2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       PR 30371
-       * check.c (gfc_check_kill_sub): Add checks for non-scalar
-       arguments.
-
-2007-01-04  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * intrinsic.texi: Minor cleanup, reflowing overlong
-       paragraphs, and correcting whitespace.
-
-2007-01-04  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * intrinsic.texi (LBOUND): Add documentation.
-       (LGE): Add documentation.
-       (LGT): Add documentation.
-       (LINK): Add documentation.
-       (LLE): Add documentation.
-       (LLT): Add documentation.
-       (LNBLNK): Add documentation.
-       (UBOUND): Add documentation.
-       (UNLINK): Add documentation.
-
-2007-01-04  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * intrinsic.texi (IAND): Clarify argument specifications.
-       (IBCLR): Add documentation.
-       (IBITS): Add documentation.
-       (IBSET): Add documentation.
-       (IEOR): Add documentation.
-       (IERRNO): Add documentation.
-       (INDEX): Add documentation.
-       (IOR): Add documentation.
-       (ISHFT): Add documentation.
-       (ISHFTC): Add documentation.
-       (KILL): Add documentation.
-       (LEN_TRIM): Add documentation.
-
-2007-01-04  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       PR 30235
-       * interface.c (compare_actual_formal): check for
-       alternate returns when iterating over non-present
-       arguments.
-
-2007-01-04  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * invoke.texi: Update manpage copyright to include 2007.
-
-2007-01-04  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * gfortran.texi: Update copyright to include 2007.
-       * intrinsic.texi: Update copyright to include 2007.
-       * invoke.texi: Update copyright to include 2007.
-
-2007-01-02  Tobias Burnus  <burnus@net-b.de>
-           Jakub Jelinek  <jakub@redhat.com>
-
-       PR fortran/30276
-       * scanner.c (open_included_file): Revert patch.
-         (gfc_open_included_file): Support absolute pathnames.
-         (gfc_open_intrinsic_module): Support absolute pathnames.
-
-2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * gfortran.texi (GNU Fortran and GCC): Rewrite
-
-2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * gfortran.texi (Introduction): Lower "Part I:
-       Introduction" to a chapter, renumber Parts II and III to
-       Parts I and II.
-       * intrinsic.texi (Introduction): Rename to "Introduction
-       to Intrinsics" to avoid conflict with the new chapter.
-
-2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * intrinsic.texi (Introduction): Rewrite first paragraph.
-
-2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * invoke.texi (OpenMP): Added index entry.
-       * gfortran.texi (title page): Removed erroneous '*'.
-
-2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * gfortran.texi (GFORTRAN_DEFAULT_RECL): Added units
-       to description.
-       (Extensions): Miscellaneous minor rewriting and copyediting.
-       (BOZ-literal constants): Renamed from Hexadecimal constants.
-       (Hollerith constants support): Added explanation and 
-       suggestions for standard-conforming modern equivalents.
-
-2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * intrinsic.texi: Improvements to index entries; change
-       @findex entries to @cindex entries.
-       * invoke.texi: Standardize and improve index entries.
-       * gfortran.texi: Fix @code in one index entry.
-
-2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * invoke.texi: Change @code-type macros to appropriate
-       variants (@command, @option, etc.)
-       * gfortran.texi: Same.
-
-2007-01-03  Brooks Moses  <brooks.moses@codesourcery.com>
-
-       * intrinsic.texi: Various minor cleanups.
-
-2007-01-02  Steven G. Kargl  <kargls@comcast.net>
-
-       * trans-intrinsic.c (gfc_conv_intrinsic_ibits): Fix call to
-       build_int_cst.
-
-2007-01-02  Tobias Burnus  <burnus@net-b.de>
-
-       PR fortran/30276
-       * scanner.c (open_included_file): Support full-path filenames.
-
-2007-01-02  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/20896
-       * interface.c (check_sym_interfaces): Remove call to
-       resolve_global_procedure.
-       gfortran.h : Remove prototype for resolve_global_procedure.
-       resolve.c (resolve_global_procedure): Add static attribute
-       to function declaration.
-
-2007-01-01  Steven G. Kargl  <kargls@comcast.net>
-
-       * ChangeLog: Copy to ...
-       * ChangeLog-2006: here.
diff --git a/gcc/fortran/ChangeLog-2007 b/gcc/fortran/ChangeLog-2007
new file mode 100644 (file)
index 0000000..8b92ad1
--- /dev/null
@@ -0,0 +1,5770 @@
+2007-12-31  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/34558
+       * interface.c (gfc_compare_types): Prevent linked lists from
+       putting this function into an endless recursive loop.
+
+2007-12-26  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/34532
+       * gfortran.texi: Fixed section about implicit conversion of
+       logical and integer variables.
+
+2007-12-25  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/34514
+       * decl.c (attr_decl1): Reject specifying the DIMENSION for
+       already initialized variable.
+       (do_parm): Reject PARAMETER for already initialized variable.
+
+2007-12-25  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/34533
+       * intrinsic.h (gfc_check_etime): Renamed to ...
+       (gfc_check_dtime_etime): ... this.
+       (gfc_check_etime_sub): Renamed to ...
+       (gfc_check_dtime_etime_sub): ... this.
+       (gfc_resolve_dtime_sub): New prototype.
+       * check.c (gfc_check_etime): Renamed to ...
+       (gfc_check_dtime_etime): ... this.
+       (gfc_check_etime_sub): Renamed to ...
+       (gfc_check_dtime_etime_sub): ... this.
+       * iresolve.c (gfc_resolve_dtime_sub): New implementation.
+       * intrinsic.c (add_functions): Removed alias from ETIME to DTIME,
+       added stand-alone intrinsic DTIME.
+       (add_subroutines): Adjusted check and resolve function names for
+       DTIME and ETIME.
+       * trans-intrinsic.c (gfc_conv_intrinsic_function): Added DTIME
+       to known functions in switch.
+       * intrinsic.texi (DTIME): Added paragraph about thread-safety,
+       fixed return value section.
+       (CPU_TIME): Clarified intent and added implementation notes.
+
+2007-12-23  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/34421
+       * resolve.c (resolve_entries): Add standard error for functions
+       returning characters with different length.
+
+2007-12-23  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/34536 
+       * matchexp.c (match_ext_mult_operand): Print warning for unary 
+       operators following arithmetic ones by default.
+       (match_ext_add_operand): Likewise.
+
+2007-12-22  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/34559
+       * simplify.c (gfc_simplify_repeat): Added safeguard for empty
+       string literals.
+
+2007-12-22  Thomas Koenig  <tkoenig@gcc.gnu.org>
+
+       PR fortran/34549
+       * check.c (gfc_check_cshift):  Add check that shift is
+       type INTEGER.
+
+2007-12-21  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/34540
+       * iresolve.c (gfc_resolve_cshift): Take optional dim path
+       only if the argument is an optional itself.
+       * iresolve.c (gfc_resolve_eoshift): Same.
+
+2007-12-21  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/34438
+       * trans-decl.c (gfc_finish_var_decl): Do not mark derived types
+       with default initializers as TREE_STATIC unless they are in the
+       main program scope.
+       (gfc_get_symbol_decl): Pass derived types with a default
+       initializer to gfc_defer_symbol_init.
+       (init_default_dt): Apply default initializer to a derived type.
+       (init_intent_out_dt): Call init_default_dt.
+       (gfc_trans_deferred_vars): Ditto.
+
+       * module.c (read_module): Check sym->module is there before
+       using it in a string comparison.
+
+>>>>>>> .r131138
+2007-12-20  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/34482
+       * gfortran.texi (BOZ): Document behavior for complex
+       numbers.
+       * target-memory.h (gfc_convert_boz): Update prototype.
+       * target-memory.c (gfc_convert_boz): Add error check
+       and convert BOZ to smallest possible bit size.
+       * resolve.c (resolve_ordinary_assign): Check return value.
+       * expr.c (gfc_check_assign): Ditto.
+       * simplify.c (simplify_cmplx, gfc_simplify_dble,
+       gfc_simplify_float, gfc_simplify_real): Ditto.
+
+2007-12-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/34325
+       * match.h: New function declaration.
+       * match.c (gfc_match_parens): New function to look for mismatched
+       parenthesis. (gfc_match_if): Use new function to catch missing '('.
+
+2007-12-19  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/34495
+       * expr.c (check_init_expr): Check whether variables with flavor
+       FL_PARAMETER do have a value assigned. Added error messages where
+       appropriate.
+       * simplify.c (gfc_simplify_transfer): Added check if the MOLD
+       argument is a constant if working with initialization
+       expressions.
+
+2007-12-17  Tobias Burnus  <burnus@net-b.de>
+
+       * intrinsic.c (add_functions): Undo change; mark float and
+       sngl as STD_F77.
+       * intrinsic.texi (FLOAT, SNGL): Change standard to F77 and later.
+       * gfortran.texi (BOZ): Make note about FLOAT etc. clearer.
+
+2007-12-16  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/34495
+       * intrinsic.c (add_functions): Mark float and sngl as STD_GNU.
+       (gfc_intrinsic_func_interface): Reject REAL, DBLE and CMPLX
+       in initialization expressions for -std=f95.
+
+2007-12-16  Thomas Koenig  <tkoenig@gcc.gnu.org>
+
+       PR fortran/34305
+       * resolve.c (compare_bound):  If either of the types of
+       the arguments isn't INTEGER, return CMP_UNKNOWN.
+
+2007-12-16  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/34246
+       * trans-types.c (gfc_init_types): Change build_type_variant
+       to build_qualified_type.
+       (gfc_sym_type): Return gfc_character1_type_node for
+       character-returning bind(C) functions.
+       * trans-expr.c (gfc_conv_function_call): Do not set
+       se->string_length for character-returning bind(c) functions.
+       (gfc_trans_string_copy,gfc_trans_scalar_assign):
+       Support also single characters.
+
+2007-12-16  Bernhard Fischer  <aldot@gcc.gnu.org>
+
+       * errors.c (gfc_notify_std): As originally stated but improperly
+       changed, disregard warnings_are_errors for deciding which buffer
+       to use for warnings.
+
+2007-12-16  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/31213
+       PR fortran/33888
+       PR fortran/33998
+       * trans-array.c (gfc_trans_array_constructor_value): If the
+       iterator variable does not have a backend_decl, use a local
+       temporary.
+       (get_elemental_fcn_charlen): New function to map the character
+       length of an elemental function onto its actual arglist.
+       (gfc_conv_expr_descriptor): Call the above so that the size of
+       the temporary can be evaluated.
+       * trans-expr.c : Include arith.h and change prototype of
+       gfc_apply_interface_mapping_to_expr to return void.  Change all
+       references to gfc_apply_interface_mapping_to_expr accordingly.
+       (gfc_free_interface_mapping): Free the 'expr' field.
+       (gfc_add_interface_mapping): Add an argument for the actual
+       argument expression. This is copied to the 'expr' field of the
+       mapping.  Only stabilize the backend_decl if the se is present.
+       Copy the character length expression and only add it's backend
+       declaration if se is present.  Return without working on the
+       backend declaration for the new symbol if se is not present.
+       (gfc_map_intrinsic_function) : To simplify intrinsics 'len',
+       'size', 'ubound' and 'lbound' and then to map the result.
+       (gfc_map_fcn_formal_to_actual): Performs the formal to actual
+       mapping for the case of a function found in a specification
+       expression in the interface being mapped.
+       (gfc_apply_interface_mapping_to_ref): Remove seen_result and
+       all its references. Remove the inline simplification of LEN
+       and call gfc_map_intrinsic_function instead.  Change the
+       order of mapping of the actual arguments and simplifying
+       intrinsic functions.  Finally, if a function maps to an
+       actual argument, call gfc_map_fcn_formal_to_actual.
+       (gfc_conv_function_call): Add 'e' to the call to
+       gfc_add_interface_mapping.
+       * dump-parse-tree.c (gfc_show_symbol_n): New function for
+       diagnostic purposes.
+       * gfortran.h : Add prototype for gfc_show_symbol_n.
+       * trans.h : Add 'expr' field to gfc_add_interface_mapping.
+       Add 'expr' to prototype for gfc_show_symbol_n.
+       * resolve.c (resolve_generic_f0): Set specific function as
+       referenced.
+
+2007-12-14  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/34438
+       * resolve.c (resolve_symbol): Do not emit public-variable-
+       of-private-derived-type error for non-module variables.
+
+2007-12-14  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/34398
+       * expr.c (gfc_check_assign): Add range checks for assignments of BOZs.
+       * resolve.c (resolve_ordinary_assign): Ditto.
+       * arith.c (gfc_range_check): Fix return value for complex numbers.
+
+2007-12-14  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/34324
+       * module.c (parse_atom): Fixed parsing of modules files whose
+       lines are terminated by CRLF.
+
+2007-12-13  Anton Korobeynikov  <asl@math.spbu.ru>
+
+       * trans-decl.c (gfc_build_builtin_function_decls): Correct decl
+       construction for select_string() and internal_unpack()
+
+2007-12-13  Duncan Sands  <baldrick@free.fr>
+           Anton Korobeynikov  <asl@math.spbu.ru>
+
+       * trans-expr.c (gfc_conv_structure): Make sure record constructors
+       for static variables are marked constant.
+
+2007-12-12  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/34254
+       * decl.c (match_char_kind): Support use-associated/imported
+       kind parameters.
+       (gfc_match_kind_spec): Support als BT_CHARACTER, when
+       re-scanning kind spec.
+
+2007-12-11  Aldy Hernandez  <aldyh@redhat.com>
+
+       * decl.c (add_global_entry): Make type unsigned.
+
+2007-12-11  Bernhard Fischer  <aldot@gcc.gnu.org>
+
+       * decl.c (match_prefix): Make seen_type a boolean.
+       (add_global_entry): Cache type distinction.
+       * trans-decl.c: Whitespace cleanup.
+
+2007-12-10  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/34425
+       * interface.c (get_expr_storage_size): Use signed integer when
+       obtaining the bounds.
+
+2007-12-09  Jakub Jelinek  <jakub@redhat.com>
+
+       PR fortran/22244
+       * trans.h (struct array_descr_info): Forward declaration.
+       (gfc_get_array_descr_info): New prototype.
+       (enum gfc_array_kind): New type.
+       (struct lang_type): Add akind field.
+       (GFC_TYPE_ARRAY_AKIND): Define.
+       * trans-types.c: Include dwarf2out.h.
+       (gfc_build_array_type): Add akind argument.  Adjust
+       gfc_get_array_type_bounds call.
+       (gfc_get_nodesc_array_type): Include proper debug info even for
+       assumed-size arrays.
+       (gfc_get_array_type_bounds): Add akind argument, set
+       GFC_TYPE_ARRAY_AKIND to it.
+       (gfc_sym_type, gfc_get_derived_type): Adjust gfc_build_array_type
+       callers.
+       (gfc_get_array_descr_info): New function.
+       * trans-array.c (gfc_trans_create_temp_array,
+       gfc_conv_expr_descriptor): Adjust gfc_get_array_type_bounds
+       callers.
+       * trans-stmt.c (gfc_trans_pointer_assign_need_temp): Likewise.
+       * trans-types.h (gfc_get_array_type_bounds): Adjust prototype.
+       * Make-lang.in (fortran/trans-types.o): Depend on dwarf2out.h.
+       * f95-lang.c (LANG_HOOKS_GET_ARRAY_DESCR_INFO): Define.
+
+2007-12-09  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/32129
+       * dump-parse-tree.c (gfc_show_expr_n): New function for
+       debugging.
+       * gfortran.h : Add prototype for gfc_show_expr_n.
+       * expr.c (simplify_constructor): Copy the constructor
+       expression and try to simplify that.  If success, replace the
+       original.  Otherwise discard the copy, keep going through
+       the structure and return success.
+
+       PR fortran/31487
+       * decl.c (build_struct): Pad out default initializers with
+       spaces to the component character length.
+
+2007-12-08  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/34342
+       PR fortran/34345
+       PR fortran/18026
+       PR fortran/29471
+       * gfortran.texi (BOZ literal constants): Improve documentation
+       and adapt for BOZ changes.
+       * Make-lang.ini (resolve.o): Add target-memory.h dependency.
+       * gfortran.h (gfc_expr): Add is_boz flag.
+       * expr.c: Include target-memory.h.
+       (gfc_check_assign): Support transferring BOZ for real/cmlx.
+       * resolve.c: Include target-memory.h
+       (resolve_ordinary_assign): Support transferring BOZ for real/cmlx.
+       * target-memory.c (gfc_convert_boz): New function.
+       * target-memory.c (gfc_convert_boz): Add prototype.
+       * primary.c (match_boz_constant): Set is_boz, enable F95 error
+       also without -pedantic, and allow for Fortran 2003 BOZ.
+       (match_real_constant): Fix comment.
+       * simplify.c (simplify_cmplx,gfc_simplify_dble,gfc_simplify_float,
+       gfc_simplify_real): Support Fortran 2003 BOZ.
+
+2007-12-08  Jakub Jelinek  <jakub@redhat.com>
+
+       PR fortran/34359
+       * gfortran.h (gfc_file): Remove sibling and down fields.
+       * scanner.c (file_changes, file_changes_cur, file_changes_count,
+       file_changes_allocated): New variables.
+       (add_file_change, report_file_change): New functions.
+       (change_file): Remove.
+       (gfc_start_source_files, gfc_end_source_files): Call
+       report_file_change instead of change_file.
+       (gfc_advance_line): Call report_file_change instead of change_file,
+       call it even if lb->file == lb->next->file.
+       (get_file): Revert last changes.
+       (preprocessor_line): Call add_file_change when entering or leaving
+       a file.
+       (load_file): Likewise.  Set file_change[...].lb for all newly added
+       file changes.
+
+2007-12-06  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/34333
+       * primary.c (match_boz_constant): Add gfc_notify_std diagnostics.
+
+2007-12-06  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/34335
+       * module.c (find_symbol): Do not return symtrees with unique
+       names, which shows that they are private.
+
+2007-12-05  Jakub Jelinek  <jakub@redhat.com>
+
+       PR debug/33739
+       * gfortran.h (gfc_file): Remove included_by field, add sibling and
+       down.
+       (gfc_start_source_files, gfc_end_source_files): New prototypes.
+       * parse.c (gfc_parse_file): Call gfc_start_source_files and
+       gfc_end_source_files instead of calling the debugging hooks directly.
+       * error.c (show_locus): Use up field instead of included_by.
+       * scanner.c (change_file, gfc_start_source_files,
+       gfc_end_source_files): New functions.
+       (gfc_advance_line): Call change_file instead of calling debug hooks
+       directly.
+       (get_file): Set up rather than included_by.  Initialize down and
+       sibling.
+       (preprocessor_line, load_file): Don't set up field here.
+
+2007-12-05  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/34333
+       * arith.h (gfc_compare_expr): Add operator argument, needed
+       for compare_real.
+       * arith.c (gfc_arith_init_1): Use mpfr_min instead of mpfr_cmp/set
+       to account for NaN.
+       (compare_real): New function, as mpfr_cmp but takes NaN into account.
+       (gfc_compare_expr): Use compare_real.
+       (compare_complex): Take NaN into account.
+       (gfc_arith_eq,gfc_arith_ne,gfc_arith_gt,gfc_arith_ge,gfc_arith_lt,
+       gfc_arith_le): Pass operator to gfc_compare_expr.
+       * resolve.c (compare_cases,resolve_select): Pass operator
+       to gfc_compare_expr.
+       * simplify.c (simplify_min_max): Take NaN into account.
+
+2007-12-04  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/34318
+       * module.c (mio_gmp_real): Properly write NaN and Infinity.
+
+2007-12-02  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/34186
+       * symbol.c (generate_isocbinding_symbol): Fix setting string length.
+
+2007-11-30  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/34133
+       * match.h: Add bool allow_binding_name to gfc_match_bind_c.
+       * decl.c (match_attr_spec,gfc_match_bind_c_stmt,gfc_match_entry):
+       Adjust accordingly.
+       (gfc_match_bind_c): Add allow_binding_name argument, reject
+       binding name for dummy arguments.
+       (gfc_match_suffix,gfc_match_subroutine): Make use of
+       allow_binding_name.
+
+2007-11-30  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/34186
+       * symbol.c (generate_isocbinding_symbol): Set string length.
+       * dump-parse-tree.c (gfc_show_attr): Show BIND(C) attribute.
+       * misc.c (gfc_basic_typename): Handle BT_VOID.
+
+2007-11-29  Steven G. Kargl  <kargls@comcast.net>
+
+       PR fortran/34230
+       * fortran/arith.c (gfc_check_real_range): Set intermediate values
+       to +-Inf and 0 when -fno-range-check is in effect.
+       * fortran/invoke.texi: Improve -fno-range-check description.
+
+       PR fortran/34203
+       * fortran/invoke.texi: Document the C escaped characters activated
+       by -fbackslash.
+
+2007-11-29  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/34248
+       * trans-decl.c (generate_dependency_declarations): Check
+       for NULL pointers before accessing the string length.
+
+2007-11-29  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/34262
+       * intrinsic.c (gfc_get_intrinsic_sub_symbol): Add comment.
+       (gfc_intrinsic_sub_interface): Copy elemental state if needed.
+       * iresolve.c (gfc_resolve_mvbits): Mark procedure as elemental.
+
+2007-11-28  Jakub Jelinek  <jakub@redhat.com>
+
+       * trans-expr.c (gfc_trans_string_copy): Convert both dest and
+       src to void *.
+
+       PR fortran/34247
+       * trans-openmp.c (gfc_omp_privatize_by_reference): For REFERENCE_TYPE
+       pass by reference only PARM_DECLs or non-artificial decls.
+
+2007-11-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/32928
+       * decl.c (match_data_constant): Use gfc_match_init_expr to match the
+       array spec and set the initializer expression.
+
+2007-11-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/34227
+       * match.c (gfc_match_common): Add additional check for BLOCK DATA.
+
+2007-11-27  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/29389
+       *resolve.c (resolve_ordinary_assign): Use find_sym_in_expr to
+       test if a temporary should be written for a vector subscript
+       on the lhs.
+
+       PR fortran/33850
+       * restore.c (pure_stmt_function): Add prototype and new
+       function. Calls impure_stmt_fcn.
+       (pure_function): Call it.
+       (impure_stmt_fcn): New function.
+
+       * expr.c (gfc_traverse_expr): Call *func for all expression
+       types, not just variables. Add traversal of character lengths,
+       iterators and component character lengths and arrayspecs.
+       (expr_set_symbols_referenced): Return false if not a variable.
+       * trans-stmt.c (forall_replace, forall_restore): Ditto.
+       * resolve.c (forall_index): Ditto.
+       (sym_in_expr): New function.
+       (find_sym_in_expr): Rewrite to traverse expression calling
+       sym_in_expr.
+       *trans-decl.c (expr_decls): New function.
+       (generate_expr_decls): Rewrite to traverse expression calling
+       expr_decls.
+       *match.c (check_stmt_fcn): New function.
+       (recursive_stmt_fcn): Rewrite to traverse expression calling
+       check_stmt_fcn.
+
+2007-11-27  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/33541
+       *interface.c (compare_actual_formal): Exclude assumed size
+       arrays from the possibility of scalar to array mapping.
+       * decl.c (get_proc_name): Fix whitespace problem.
+
+       PR fortran/34231
+       * gfortran.h : Add 'use_rename' bit to symbol_attribute.
+       * module.c : Add 'renamed' field to pointer_info.u.rsym.
+       (load_generic_interfaces): Add 'renamed' that is set after the
+       number_use_names is called.  This is used to set the attribute
+       use_rename, which, in its turn identifies those symbols that
+       have not been renamed.
+       (load_needed): If pointer_info.u.rsym->renamed is set, then
+       set the use_rename attribute of the symbol.
+       (read_module): Correct an erroneous use of use_flag. Use the
+       renamed flag and the use_rename attribute to determine which
+       symbols are not renamed.
+
+2007-11-26  Steven G. Kargl  <kargls@comcast.net>
+
+       PR fortran/34203
+       * options.c:  Change default behavior of backslash processing.
+       * invoke.texi: Update documentation.
+
+2007-11-25  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/33152
+       * decl.c (add_init_expr_to_sym): Remove error message.
+       * resolve.c (check_data_variable): Add new check for a data variable
+       that has an array spec, but no ref and issue an error.
+       * match.c (gfc_match_common): Remove error message.
+
+2007-11-25  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/34079
+       * trans-types.c (gfc_return_by_reference,
+       gfc_get_function_type): Do not return result of
+       character-returning bind(C) functions as argument.
+       * trans-expr.c (gfc_conv_function_call): Ditto.
+
+2007-11-25  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/34175
+       * gfortran.texi: Document default forms assumed for various file
+       extensions.
+
+2007-11-25  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/33499
+       * decl.c (get_proc_name): If ENTRY statement occurs before type
+       specification, set the symbol untyped and ensure that it is in
+       the procedure namespace.
+
+2007-11-24  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/33541
+       * module.c (find_symtree_for_symbol): Move to new location.
+       (find_symbol): New function.
+       (load_generic_interfaces): Rework completely so that symtrees
+       have the local name and symbols have the use name.  Renamed
+       generic interfaces exclude the use of the interface without an
+       ONLY clause (11.3.2).
+       (read_module): Implement 11.3.2 in the same way as for generic
+       interfaces.
+
+2007-11-23 Christopher D. Rickett <crickett@lanl.gov>
+
+       * trans-common.c (build_common_decl): Fix the alignment for
+       BIND(C) common blocks.
+
+2007-11-23  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/34209
+       * iresolve.c (gfc_resolve_nearest): If sign variable kind does not match
+       kind of input variable, convert it to match.
+
+       PR fortran/33317
+       * trans.h: Modify prototype for gfc_conv_missing_dummy.
+       * trans-expr.c (gfc_conv_missing_dummy): Modify to pass an integer kind
+       parameter in.  Set the type of the dummy to the kind given.
+       (gfc_conv_function_call): Pass representation.length to
+       gfc_conv_missing_dummy.
+       * iresolve.c (gfc_resolve_cshift): Determine the correct kind to use and
+       if appropriate set representation.length to this kind value.
+       (gfc_resolve_eoshift): Likewise.
+       * check.c (gfc_check_cshift): Enable dim_check to allow DIM as an
+       optional argument. (gfc_check_eoshift): Likewise.
+       * trans_intrinsic.c (gfc_conv_intrinsic_function_args): Update call to
+       gfc_conv_missing_dummy.
+
+2007-11-23  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/34187
+       * module.c (load_needed): Ensure binding_label is not lost.
+
+       * decl.c (set_binding_label,gfc_match_bind_c): Replace
+       strncpy by strcpy.
+
+2007-11-23  Tobias Burnus  <burnus@net-b.de>
+           Steven G. Kargl  <kargl@gcc.gnu.org>
+
+       PR fortran/34192
+       * simplify.c (gfc_simplify_nearest): Fix NEAREST for
+       subnormal numbers.
+
+2007-11-23  Aldy Hernandez  <aldyh@redhat.com>
+
+       * trans-expr.c (gfc_trans_string_copy): Use "void *" when building a
+       memset.
+               
+2007-11-22  Tobias Burnus  <burnus@net-b.de>
+
+       * primary.c (gfc_match_structure_constructor): Allow
+       constructor for types without components.
+
+2007-11-22  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/34079
+       * trans-expr.c (gfc_conv_function_call): Do not append
+       string length arguments when calling bind(c) procedures.
+       * trans-decl.c (create_function_arglist): Do not append
+       string length arguments when declaring bind(c) procedures.
+
+2007-11-21  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/34083
+       * resolve.c (resolve_structure_cons): Also check for zero rank.
+
+2007-11-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/33317
+       * trans-expr.c (gfc_conv_missing_dummy): Revert.
+       * iresolve.c (gfc_resolve_cshift): Revert.
+       (gfc_resolve_eoshift): Likewise.
+       * check.c (gfc_check_cshift): Revert.
+       (gfc_check_eoshift): Likewise.
+
+2007-11-19  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/34079
+       * decl.c (gfc_match_entry): Support BIND(C).
+       (gfc_match_subroutine): Fix comment typo.
+
+2007-11-18  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/33317
+       * trans-expr.c (gfc_conv_missing_dummy): Set the type of the dummy
+       argument to default integer if flagged to do so. Fix typo in comment.
+       * resolve.c (gfc_resolve_dim_arg): Whitespace cleanup.
+       * iresolve.c (gfc_resolve_cshift): Do not convert type, mark attribute
+       for converting the DIM type appropriately in trans-expr.c.
+       (gfc_resolve_eoshift): Likewise.
+       * check.c (dim_check): Remove pre-existing dead code.
+       (gfc_check_cshift): Enable dim_check to allow DIM as an optional.
+       (gfc_check_eoshift): Likewise.
+       * trans_intrinsic.c (gfc_conv_intrinsic_function_args): Fix whitespace.
+
+2007-11-18  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/31608
+       * trans-array.c (gfc_conv_expr_descriptor): Remove exception
+       for indirect references in the call to gfc_trans_scalar_assign.
+       * trans-expr.c (gfc_conv_string_parameter): Instead of asserting
+       that the expression is not an indirect reference, cast it to a
+       pointer type of the length given by se->string_length.
+
+2007-11-18  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/34137
+       * primary.c (match_variable): Reject non-result entry symbols.
+       * resolve.c (resolve_contained_fntype): Do not check entry master
+       functions.
+
+2007-11-17  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       * trans-types.c (gfc_init_types): Use wider buffer.
+
+2007-11-17  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       * trans-types.c (gfc_init_types): Use Fortran-90-style type
+       names, with kinds.
+
+2007-11-17  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/34133
+       * decl.c (gfc_match_suffix,gfc_match_subroutine): Disallow
+       bind(c) attribute for internal procedures.
+
+2007-11-17  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/25252
+       * interface.c (gfc_current_interface_head,
+       gfc_set_current_interface_head): New functions.
+       * decl.c (gfc_match_modproc): Move check for syntax error earlier.
+       On syntax error, restore previous state of the interface.
+       * gfortran.h (gfc_current_interface_head,
+       gfc_set_current_interface_head): New prototypes.
+
+2007-11-17  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/30285
+       * module.c (struct written_common, written_commons): New structure.
+       (compare_written_commons, free_written_common, write_common_0):
+       New functions.
+       (write_common): Call recursive function write_common_0.
+
+2007-11-17  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/34108
+       * io.c (check_format_string): Only check character expressions.
+       (match_dt_format): Return MATCH_ERROR if that is what
+       gfc_match_st_label said.
+
+2007-11-16  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/33957
+       * expr.c (check_inquiry): Don't call gfc_error now.
+
+2007-11-16  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/33739
+       PR fortran/34084
+       * scanner.c (start_source_file, end_source_file,
+       exit_remaining_files, gfc_advance_line): Revert rev. 130016.
+
+2007-11-16  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/34008
+       * trans-stmt.c (gfc_conv_elemental_dependencies): Add check for
+       INTENT_INOUT as well as INTENT_OUT.
+       (gfc_trans_call): Remove redundant gcc_asserts in dependency
+       check.
+
+2007-11-16  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/33986
+       * trans-array.c (gfc_conv_array_parameter ): Allow allocatable
+       function results.
+
+2007-11-15  Tobias Burnus  <burnus@net-b.de>
+       PR fortran/33917
+       * decl.c (match_procedure_decl): Pre-resolve interface.
+       * resolve.c (resolve_symbol): Reject interfaces later
+       declared in procedure statements.
+
+2007-11-13  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/33162
+       * decl.c (match_procedure_decl): Remove TODO and allow intrinsics in
+       PROCEDURE declarations.  Set attr.untyped to allow the interface to be
+       resolved later where the symbol type will be set.
+       * interface.c (compare_intr_interfaces): Remove static from pointer
+       declarations.  Add type and kind checks for dummy function arguments.
+       (compare_actual_formal_intr): New function to compare an actual
+       argument with an intrinsic function. (gfc_procedures_use): Add check for
+       interface that points to an intrinsic function, use the new function.
+       * resolve.c (resolve_specific_f0): Resolve the intrinsic interface.
+       (resolve_specific_s0): Ditto.
+
+2007-11-13  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/34080
+       * iresolve.c (gfc_resolve_transfer): Do not try to convert
+       to a constant MOLD expression, if it is an assumed size
+       dummy.
+
+2007-11-10  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       * trans-common.c: Remove prototype for gfc_get_common.
+
+2007-11-10  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/33592
+       * trans.c (gfc_call_realloc): Fix the logic and rename variables.
+
+2007-11-08  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/33739
+       * scanner.c (start_source_file, end_source_file,
+       exit_remaining_files): New functions.
+       (gfc_advance_line): Use the new functions.
+
+2007-11-08  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/34028
+       * trans-intrinsic.c (gfc_conv_intrinsic_ishft): Use correct type.
+
+2007-11-08  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/33917
+       * interface.c (check_sym_interfaces): Disallow PROCEDURE-declared
+       procedures for MODULE PROCEDURE.
+       * decl.c (match_procedure_in_interface): Do not mark as procedure.
+
+2007-11-03  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/33881
+       * trans-array.c (gfc_conv_array_parameter): Evaluate
+       se->string_length instead of the expr->ts.cl->backend_decl.
+
+2007-11-03  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       * gfortran.h: Shorten comment.
+       * trans-types.c (gfc_get_function_type): Allow argument to have
+       flavor FL_PROGRAM.
+       * trans-decl.c (gfc_sym_mangled_function_id): Mangle main program
+       name into MAIN__.
+       (build_function_decl): Fix comment.
+       * parse.c (main_program_symbol): Give the main program its proper
+       name, if any. Set its flavor to FL_PROGRAM.
+       (gfc_parse_file): Likewise.
+
+2007-11-02  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       * intrinsic.texi (ALLOCATED): Fix typo.
+
+2007-10-31  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/33941
+       * modules.c (intrinsics): Use only alphabetic names for
+       intrinsic operators.
+
+2007-10-31  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/33162
+       * interface.c (compare_intr_interfaces): New function to check intrinsic
+       function arguments against formal arguments. (compare_interfaces): Fix
+       logic in comparison of function and subroutine attributes.
+       (compare_parameter): Use new function for intrinsic as argument.
+       * resolve.c (resolve_actual_arglist): Allow an intrinsic without
+       function attribute to be checked further.  Set function attribute if
+       intrinsic symbol is found, return FAILURE if not.
+
+2007-10-31  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/33897
+       * decl.c (gfc_match_entry): Do not make ENTRY name
+       global for contained procedures.
+       * parse.c (gfc_fixup_sibling_symbols): Fix code for
+       determining whether a procedure is external.
+
+2007-10-30  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/33596
+       * trans-intrinsic.c (gfc_conv_intrinsic_isnan): Strip NOP_EXPR
+       from the result of build_call_expr.
+
+2007-10-29  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/31217
+       PR fortran/33811
+       PR fortran/33686
+
+       * trans-array.c (gfc_conv_loop_setup): Send a complete type to
+       gfc_trans_create_temp_array if the temporary is character.
+       * trans-stmt.c (gfc_trans_assign_need_temp): Do likewise for
+       allocate_temp_for_forall_nest.
+       (forall_replace): New function.
+       (forall_replace_symtree): New function.
+       (forall_restore): New function.
+       (forall_restore_symtree): New function.
+       (forall_make_variable_temp): New function.
+       (check_forall_dependencies): New function.
+       (cleanup_forall_symtrees): New function.
+       gfc_trans_forall_1): Add and initialize pre and post blocks.
+       Call check_forall_dependencies to check for all dependencies
+       and either trigger second forall block to copy temporary or
+       copy lval, outside the forall construct and replace all
+       dependent references. After assignment clean-up and coalesce
+       the blocks at the end of the function.
+       * gfortran.h : Add prototypes for gfc_traverse_expr and
+       find_forall_index.
+       expr.c (gfc_traverse_expr): New function to traverse expression
+       and visit all subexpressions, under control of a logical flag,
+       a symbol and an integer pointer. The slave function is caller
+       defined and is only called on EXPR_VARIABLE.
+       (expr_set_symbols_referenced): Called by above to set symbols
+       referenced.
+       (gfc_expr_set_symbols_referenced): Rework of this function to
+       use two new functions above.
+       * resolve.c (find_forall_index): Rework with gfc_traverse_expr,
+       using forall_index.
+       (forall_index): New function used by previous.
+       * dependency.c (gfc_check_dependency): Use gfc_dep_resolver for
+       all references, not just REF_ARRAY.
+       (gfc_dep_resolver): Correct the logic for substrings so that
+       overlapping arrays are handled correctly.
+
+2007-10-28  Tobias Schlüter  <tobi@gcc.gnu.org>
+
+       PR fortran/32147
+       * module.c (write_symbol): Fix whitespace.
+       (write_symbol0): Walk symtree from left-to-right instead
+       breadth-first.
+       (write_symbol1): Similarly change walk of pointer info tree.
+       (write_module): Insert linebreak.
+       * symbol.c (gfc_traverse_symtree): Change to left-to-right order.
+       (traverse_ns): Likewise.
+
+2007-10-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+       PR fortran/31306
+       * decl.c (char_len_param_value): Add check for conflicting attributes of
+       function argument.
+
+2007-10-27  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/33862
+       * lang-specs.h: Support .ftn and .FTN extension, use CPP for .FOR.
+       * options.c (form_from_filename): Support .ftn extension.
+       * gfortran.texi: Document support of .for and .ftn file extension.
+
+2007-10-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/33162
+       * intrinsic.h: Add prototypes for four new functions, gfc_check_datan2,
+       gfc_check_dprod, gfc_check_fn_d, and gfc_check_x_yd.
+       * intrinsic.c (add_functions): Add double precision checks for dabs,
+       dacos, dacosh, dasin, dasinh, datan, datanh, datan2, dbesj0, dbesj1,
+       dbesy0, dbesy1, dcos, dcosh, ddim, derf, derfc, dexp, dgamma,
+       dlgama, dlog, dlog10, dmod, dsign, dsin, dsinh, dsqrt, dtan, and dtanh.
+       Add real check dprod.
+       * check.c (gfc_check_datan2): New function to check for double precision
+       argumants. (gfc_check_dprod, gfc_check_fn_d, and gfc_check_x_yd): Ditto.
+
+2007-10-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       * invoke.texi: Fix typo in -fmax-errors=.
+
+2007-10-26  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/29784
+       * gfortran.texi: Document that there is no logical/integer
+       conversion performed during I/O operations.
+
+2007-10-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/33849
+       * resolve.c (resolve_actual_arglist): Fix error message text.
+
+2007-10-22  Steven G. Kargl  <kargl@gcc.gnu.org>
+
+       PR fortran/31244
+       * gfortran.h (gfc_data_value): Change repeat from unsigned int
+       to mpz_t.
+       * decl.c(top_val_list): Remove msg variable.  Use mpz_t for
+       repeat count.
+       * resolve.c (values):  Change left from unsigned int to mpz_t.
+       (next_data_value): Change for mpz_t.
+       (check_data_variable): Change ??? to FIXME in a comment.  Use
+       "mpz_t left".
+       (resolve_data ): Use "mpz_t left".
+
+2007-10-21  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/33749
+       * resolve.c (resolve_ordinary_assign): New function that takes
+       the code to resolve an assignment from resolve_code. In
+       addition, it makes a temporary of any vector index, on the
+       lhs, using gfc_get_parentheses.
+       (resolve_code): On EXEC_ASSIGN call the new function.
+
+2007-10-20  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/33818
+       * resolve.c (resolve_variable): Check that symbol is in the same
+       namespace as the entry function.
+
+2007-10-20  Paul Thomas  <pault@gcc.gnu.org>
+           FX Coudert <fxcoudert@gcc.gnu.org>
+
+       PR fortran/31608
+       * trans-array.c (gfc_conv_expr_descriptor): For all except
+       indirect references, use gfc_trans_scalar_assign instead of
+       gfc_add_modify_expr.
+       * iresolve.c (check_charlen_present): Separate creation of cl
+       if necessary and add code to treat an EXPR_ARRAY.
+       (gfc_resolve_char_achar): New function.
+       (gfc_resolve_achar, gfc_resolve_char): Call it.
+       (gfc_resolve_transfer): If the MOLD expression does not have a
+       character length expression, get it from a constant length.
+
+2007-10-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/33544
+       * simplify.c (gfc_simplify_transfer): Only warn for short transfer when
+       -Wsurprising is given.
+       * invoke.texi: Document revised behavior.
+
+2007-10-18  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/33795
+       * gfortran.texi: Document GFORTRAN_UNBUFFERED_PRECONNECTED
+       environment variable.  Delete mention of environment variable
+       GFORTRAN_UNBUFFERED_n.
+
+2007-10-18  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/33233
+       * resolve.c (check_host_association): Check singly contained
+       namespaces and start search for symbol in current namespace.
+
+2007-10-18  Paul Thomas  <pault@gcc.gnu.org>
+           Dominique d'Humieres  <dominiq@lps.ens.fr>
+
+       PR fortran/33733
+       * simplify.c (gfc_simplify_transfer): Return null if the source
+       expression is EXPR_FUNCTION.
+
+2007-10-17 Christopher D. Rickett <crickett@lanl.gov>
+
+       PR fortran/33760
+       * symbol.c (gen_special_c_interop_ptr): Remove code to create
+       constructor for c_null_ptr and c_null_funptr with value of 0.
+       * expr.c (check_init_expr): Prevent check on constructors for
+       iso_c_binding derived types.
+       * resolve.c (resolve_structure_cons): Verify that the user isn't
+       trying to invoke a structure constructor for one of the
+       iso_c_binding derived types.
+
+2007-10-15 Christopher D. Rickett <crickett@lanl.gov>
+
+       PR fortran/32600
+       * trans-expr.c (gfc_conv_function_call): Generate code to inline
+       c_associated.
+       * symbol.c (get_iso_c_sym): Preserve from_intmod and intmod_sym_id
+       attributes in the resolved symbol.
+       * resolve.c (gfc_iso_c_sub_interface): Remove dead code.
+
+2007-10-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/33055
+       * trans-io.c (create_dummy_iostat): New function to create a unique
+       dummy variable expression to use with IOSTAT.
+       (gfc_trans_inquire): Use the new function to pass unit number error info
+       to run-time library if a regular IOSTAT variable was not given.
+
+2007-10-14  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/33745
+       * trans-array.c (gfc_conv_ss_startstride): Fix dimension check.
+       (gfc_trans_array_bound_check, gfc_conv_array_ref,
+       gfc_conv_ss_startstride): Simplify error message.
+       * resolve.c (check_dimension): Fix dimension-type switch;
+       improve error message.
+
+2007-10-13  Tobias Schlüter  <tobi@gcc.gnu.org>
+           Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/33254
+       PR fortran/33727
+       * trans-array.c (get_array_ctor_var_strlen): Check upper bound for
+       constness instead of lower bound.
+       (get_array_ctor_strlen): Add bounds-checking code.
+
+2007-10-12  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/33542
+       * resolve.c (resolve_actual_arglist): If the actual argument is
+       ambiguous, then there is an error.
+
+2007-10-12  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/33664
+       * expr.c (gfc_specification_expr): If a function is not
+       external, intrinsic or pure is an error.  Set the symbol pure
+       to prevent repeat errors.
+
+2007-10-10  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/33636
+       * expr.c (find_array_section): Check for constructor constantness.
+
+2007-10-08  Tobias Schlüter  <tobi@gcc.gnu.org>
+
+       PR fortran/33689
+       * resolve.c (gfc_resolve_expr): Fix indentation.
+       (resolve_fl_variable_derived): Rename argument.
+       (resolve_fl_variable): Fix case in message.  Clarify logic.
+       Correctly simplify array bounds.
+
+2007-10-07  Thomas Koenig  <tkoenig@gcc.gnu.org>
+
+       PR libfortran/33683
+       * mathbuiltins.def (GAMMA):  Change function name to
+       "tgamma" instad of "gamma".
+
+2007-10-07  Tobias Schlüter  <tobi@gcc.gnu.org>
+
+       PR fortran/20851
+       * expr.c (check_inquiry): Typo fix in error message.
+       (check_init_expr): Same * 3.
+       (check_restricted): Verify that no dummy arguments appear in
+       restricted expressions in ELEMENTAL procedures.
+       * resolve.c (resolve_fl_variable): Exchange order of checks to
+       avoid side-effect.
+
+2007-10-06  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/33609
+       * simplify.c (range_check): Return gfc_bad_expr if incoming expression 
+       is NULL.
+
+2007-10-06  Tobias Schlüter  <tobi@gcc.gnu.org>
+
+       * simplify.c (gfc_simplify_size): Fix typo.
+
+2007-10-06  Tobias Schlüter  <tobi@gcc.gnu.org>
+
+       PR fortran/25076
+       * resolve.c (gfc_find_forall_index): Move towards top,
+       renaming to ...
+       (find_forall_index): ... this.  Add check for NULL expr.
+       (resolve_forall_iterators): Verify additional constraint.
+       (resolve_forall): Remove checks obsoleted by new code in
+       resolve_forall_iterators.
+
+2007-10-05  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       * gfortran.h (gfc_get_data_variable, gfc_get_data_value,
+       gfc_get_data): Move to decl.c.
+       (global_used): Rename into gfc_global_used.
+       (gfc_formalize_init_value, gfc_get_section_index,
+       gfc_assign_data_value, gfc_assign_data_value_range,
+       gfc_advance_section): Move to data.h.
+       (gfc_set_in_match_data): Remove.
+       * decl.c (gfc_get_data_variable, gfc_get_data_value,
+       gfc_get_data): Move here.
+       (gfc_set_in_match_data): Rename into set_in_match_data.
+       (gfc_match_data): Likewise.
+       (add_global_entry): Rename global_used into gfc_global_used.
+       * data.c: Include data.h.
+       * trans.h (gfc_todo_error): Remove.
+       * trans-array.c (gfc_trans_array_constructor,
+       gfc_conv_ss_startstride, gfc_conv_loop_setup): Change
+       gfc_todo_error into assertions.
+       * resolve.c (resolve_global_procedure): Rename global_used into
+       gfc_global_used.
+       * parse.c (gfc_global_used, parse_module, add_global_procedure,
+       add_global_program): Likewise.
+       * trans-intrinsic.c (gfc_walk_intrinsic_function): Rename
+       global_used into gfc_global_used.
+       * Make-lang.in: Add dependencies on fortran/data.h.
+       * data.h: New file.
+
+2007-10-04  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/33529
+       * decl.c (match_char_kind): New function.
+       (match_char_spec): Use match_char_kind.
+
+2007-10-04  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/33502
+       * scanner.c (gfc_advance_line): Call debug_hooks->end_source_file
+       and debug_hooks->start_source_file when appropriate, and set
+       dbg_emitted.
+       (gfc_define_undef_line): New function.
+       (load_file): Don't error out on #define and #undef lines.
+       * parse.c (next_statement): Call gfc_define_undef_line.
+       (gfc_parse_file): Call debug_hooks->start_source_file and
+       debug_hooks->end_source_file for the main source file if
+       required.
+       * gfortran.h (gfc_linebuf): Add dbg_emitted field.
+       (gfc_define_undef_line): New prototype.
+
+2007-10-04  Tobias Schlüter  <tobi@gcc.gnu.org>
+
+       PR fortran/33626
+       * resolve.c (resolve_operator): Always copy the type for
+       expressions in parentheses.
+
+2007-10-04  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/33646
+       PR fortran/33542
+       * interface.c (check_interface1): Revert patch of 10-02.
+
+2007-10-03  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/26682
+       * trans-decl.c (build_function_decl): Set "externally_visible"
+       attribute on the MAIN program decl.
+
+2007-10-03  Tobias Schlüter  <tobi@gcc.gnu.org>
+
+       PR fortran/33198
+       * resolve.c (has_default_initializer): Move to top.  Make bool.
+       (resolve_common_blocks): Simplify logic.  Add case for derived
+       type initialization.
+       (resolve_fl_variable_derived): Split out from ...
+       (resolve_fl_variable): ... here, while adapting to new h_d_i
+       interface.
+
+2007-10-03  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/26682
+       * options.c (gfc_post_options): Issue an error when
+       -fwhole-program is used.
+
+2007-10-02  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/33542
+       * interface.c (check_interface1): Specific procedures are
+       always ambiguous if they have the same name.
+
+2007-10-02  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/33566
+       * primary.c (gfc_match_rvalue): Make all expressions with array
+       references to structure parameters into variable expressions.
+
+2007-10-02  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/33554
+       * trans-decl.c (init_intent_out_dt): New function.
+       (gfc_trans_deferred_vars): Remove the code for default
+       initialization of INTENT(OUT) derived types and put it
+       in the new function.  Call it earlier than before, so
+       that array offsets and lower bounds are available.
+
+2007-10-02  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/33550
+       * decl.c (get_proc_name): Return rc if rc is non-zero; ie. if
+       the name is a reference to an ambiguous symbol.
+
+2007-10-02  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/31154
+       PR fortran/31229
+       PR fortran/33334
+       * decl.c : Declare gfc_function_kind_locs and
+       gfc_function_type_locus.
+       (gfc_match_kind_spec): Add second argument kind_expr_only.
+       Store locus before trying to match the expression. If the
+       current state corresponds to a function declaration and there
+       is no match to the expression, read to the parenthesis, return
+       kind = -1, dump the expression and return.
+       (gfc_match_type_spec): Renamed from match_type_spec and all
+       references changed.  If an interface or an external function,
+       store the locus, set kind = -1 and return.  Otherwise, if kind
+       is already = -1, use gfc_find_symbol to try to find a use
+       associated or imported type.
+       match.h : Prototype for gfc_match_type_spec.
+       * parse.c (match_deferred_characteristics): New function.
+       (parse_spec): If in a function, statement is USE or IMPORT
+       or DERIVED_DECL and the function kind=-1, call
+       match_deferred_characteristics.  If kind=-1 at the end of the
+       specification expressions, this is an error.
+       * parse.h : Declare external gfc_function_kind_locs and
+       gfc_function_type_locus.
+
+2007-09-27  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * module.c (mio_expr): Avoid -Wcast-qual warning.
+
+2007-09-27  Tobias Schlüter  <tobi@gcc.gnu.org>
+
+       * arith.c (reduce_binary_aa): Fix capitalization.
+       * check.c (gfc_check_dot_product): Likewise.
+       (gfc_check_matmul): Likewise.
+       * expr.c (gfc_check_conformance): Likewise.
+       (gfc_check_assign): Likewise.
+       (gfc_default_initializer): Simplify logic.
+       * trans.c (gfc_msg_bounds): Make const.
+       (gfc_msg_fault): Likewise.
+       (gfc_msg_wrong_return): Likewise.
+       * trans.h: Add const to corresponding extern declarations.
+
+2007-09-27  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/33568
+       * trans-intrinsic.c (gfc_conv_intrinsic_aint): Allow for the 
+       possibility of the optional KIND argument by making arg
+       an array, counting the number of arguments and using arg[0].
+
+2007-09-26  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/30780
+       * invoke.texi: Add note to -ffpe-trap option. Fix typos.
+
+2007-09-23  Tobias Schlüter  <tobi@gcc.gnu.org>
+
+       PR fortran/33269
+       * io.c (check_format_string): Move NULL and constant checks into
+       this function.
+       (check_io_constraints): Call gfc_simplify_expr() before calling
+       check_format_string().  Remove NULL and constant checks.
+
+2007-09-24  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/33538
+       * scanner.c, parse.c, gfortran.h: Revert revision 128671.
+
+2007-09-23  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/33528
+       * scanner.c (preprocessor_line): Call linemap_add when exiting
+       a file.
+       (gfc_new_file): Adjust debug code for USE_MAPPED_LOCATION.
+
+2007-09-22  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/33522
+       * trans-types.c (gfc_get_desc_dim_type): Mark artificial
+       variables with TREE_NO_WARNING.
+       (gfc_get_array_descriptor_base): Likewise.
+
+2007-09-22  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/33337
+       PR fortran/33376
+       * trans-decl.c (gfc_create_module_variable): Output
+       derived type parameters.
+       * arith.c (gfc_parentheses): Return the argument if
+       it is a constant expression.
+       * primary.c (gfc_match_rvalue): Remove the clearing of
+       the module name and the use_assoc attribute for derived
+       type parameter expressions.
+
+2007-09-22  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/33502
+       * scanner.c (gfc_advance_line): Call debug_hooks->start_source_file
+       and debug_hooks->end_source_file when entering and exiting
+       included files.
+       (gfc_define_undef_line): New function.
+       (load_file): Ignore #define and #undef preprocessor lines
+       while reading source files.
+       * parse.c (next_statement): Handle #define and #undef
+       preprocessor lines.
+       (gfc_parse_file): Call debug_hooks->start_source_file and
+       debug_hooks->end_source_file for the main source file if
+       requested by the debug format.
+       * gfortran.h (gfc_define_undef_line): Add prototype.
+
+2007-09-22  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/33445
+       * scanner.c (skip_free_comments): Warn if !$OMP& is used
+       if no OpenMP directive is to be continued.
+
+2007-09-21  Paul Thomas  <pault@gcc.gnu.org>
+
+       *trans-expr.c (gfc_trans_pointer_assignment): Convert array
+       descriptor for subref pointer assignements, rather than using
+       the loop info version.
+
+2007-09-21  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/33037
+       * simplify.c (gfc_simplify_transfer): Warn if source size
+       is smaller than result size.
+
+2007-09-20  Asher Langton  <langton2@llnl.gov>
+
+       PR fortran/20441
+       * gfortran.h : Add init_local_* enums and init_flag_* flags to
+       gfc_option_t.
+       * lang.opt: Add -finit-local-zero, -finit-real, -finit-integer,
+       -finit-character, and -finit-logical flags.
+       * invoke.texi: Document new options.
+       * resolve.c (build_init_assign): New function.
+       (apply_init_assign): Move part of function into build_init_assign.
+       (build_default_init_expr): Build local initializer (-finit-*).
+       (apply_default_init_local): Apply local initializer (-finit-*).
+       (resolve_fl_variable): Try to add local initializer (-finit-*).
+       * options.c (gfc_init_options, gfc_handle_option,
+       gfc_post_options): Handle -finit-local-zero, -finit-real,
+       -finit-integer, -finit-character, and -finit-logical flags.
+
+2007-09-20  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/33221
+       * gfortran.h (symbol_attribute): Add zero_comp field.
+       * symbol.c (gfc_use_derived): Handle case of emtpy derived types.
+       * decl.c (gfc_match_data_decl): Likewise.
+       (gfc_match_derived_decl): Likewise.
+       * module.c (ab_attribute, attr_bits): Add AB_ZERO_COMP member.
+       (mio_symbol_attribute): Write and read AB_ZERO_COMP.
+       * resolve.c (resolve_symbol): Handle case of emtpy derived types.
+       * parse.c (parse_derived): Likewise.
+
+2007-09-20  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/33288
+       * arith.c (reduce_unary, reduce_binary_ac, reduce_binary_ca,
+       reduce_binary_aa): Call ourselves recursively if an element of
+       the constructor is itself a constant array.
+
+2007-09-20  Tobias Schlüter  <tobi@gcc.gnu.org>
+
+       * io.c (resolve_tag_format): New function using code split out
+       and simplified from ...
+       (resolve_tag): ... this function.  Simplify logic.  Unify
+       IOSTAT, IOLENGTH and SIZE handling.
+
+2007-09-20  Christopher D. Rickett  <crickett@lanl.gov>
+
+       PR fortran/33497
+       * resolve.c (gfc_iso_c_func_interface): Use information from
+       subcomponent if applicable.
+
+2007-09-20  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/33325
+       * intrinsic.text: Add documentation of the intrinsic modules.
+       * gfortran.texi: Link to intrinsic-modules section and to
+       the GOMP manual.
+
+2007-09-18  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/31119
+       * trans-array.c (gfc_conv_ss_startstride): Only perform bounds
+       checking for optional args when they are present.
+
+2007-09-18  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/33231
+       * resolve.c (resolve_elemental_actual): Check for conformance
+       of intent out/inout dummies.
+
+2007-09-17  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/33106
+       * resolve.c (resolve_symbol): Reject public variable of
+       private derived-types for Fortran 95.
+
+2007-09-17  Tobias Burnus  <burnus@net-b.de>
+
+       * resolve.c (resolve_fl_procedure): Allow private dummies
+       for Fortran 2003.
+
+2007-09-17  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       * trans-types.c (gfc_get_desc_dim_type): Do not to try
+       emit debug info.
+       (gfc_get_array_descriptor_base): Likewise.
+       (gfc_get_mixed_entry_union): Likewise
+       (gfc_get_derived_type): Set decl location for fields and
+       derived type itself.
+
+2007-09-16  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/29396
+       PR fortran/29606
+       PR fortran/30625
+       PR fortran/30871
+       * trans.h : Add extra argument to gfc_build_array_ref. Rename
+       gfc_conv_aliased_arg to gfc_conv_subref_array_arg.  Move
+       prototype of is_aliased_array to gfortran.h and rename it
+       gfc_is_subref_array.  Add field span to lang_decl, add a new
+       decl lang specific flag accessed by GFC_DECL_SUBREF_ARRAY_P
+       and a new type flag GFC_DECL_SUBREF_ARRAY_P.
+       * trans.c (gfc_build_array_ref): Add the new argument, decl.
+       If this is a subreference array pointer, use the lang_decl
+       field 'span' to calculate the offset in bytes and use pointer
+       arithmetic to address the element.
+       * trans-array.c (gfc_conv_scalarized_array_ref,
+       gfc_conv_array_ref): Add the backend declaration as the third
+       field, if it is likely to be a subreference array pointer.
+       (gfc_conv_descriptor_dimension, gfc_trans_array_ctor_element,
+       gfc_trans_array_constructor_element, structure_alloc_comps,
+       gfc_conv_array_index_offset): For all other references to
+       gfc_build_array_ref, set the third argument to NULL.
+       (gfc_get_dataptr_offset): New function.
+       (gfc_conv_expr_descriptor): If the rhs of a pointer assignment
+       is a subreference array, then calculate the offset to the
+       subreference of the first element and set the descriptor data
+       pointer to this, using gfc_get_dataptr_offset.
+       trans-expr.c (gfc_get_expr_charlen): Use the expression for the
+       character length for a character subreference.
+       (gfc_conv_substring, gfc_conv_subref_array_arg): Add NULL for
+       third argument in call to gfc_build_array_ref.
+       (gfc_conv_aliased_arg): Rename to gfc_conv_subref_array_arg.
+       (is_aliased_array): Remove.
+       (gfc_conv_function_call): Change reference to is_aliased_array
+       to gfc_is_subref_array and reference to gfc_conv_aliased_arg to
+       gfc_conv_subref_array_arg.
+       (gfc_trans_pointer_assignment): Add the array element length to
+       the lang_decl 'span' field.
+       * gfortran.h : Add subref_array_pointer to symbol_attribute and
+       add the prototype for gfc_is_subref_array.
+       * trans-stmt.c : Add NULL for third argument in all references
+       to gfc_build_array_ref.
+       * expr.c (gfc_is_subref_array): Renamed is_aliased_array.
+       If this is a subreference array pointer, return true.
+       (gfc_check_pointer_assign): If the rhs is a subreference array,
+       set the lhs subreference_array_pointer attribute.
+       * trans-decl.c (gfc_get_symbol_decl): Allocate the lang_decl
+       field if the symbol is a subreference array pointer and set an
+       initial value of zero for the 'span' field.
+       * trans-io.c (set_internal_unit): Refer to is_subref_array and
+       gfc_conv_subref_array_arg.
+       (nml_get_addr_expr): Add NULL third argument to
+       gfc_build_array_ref. 
+       (gfc_trans_transfer): Use the scalarizer for a subreference
+       array.
+
+2007-09-13  Thomas Koenig  <tkoenig@gcc.gnu.org>
+
+       * iresolve.c (resolve_mask_arg): If a mask is an array
+       expression, convert it to kind=1.
+
+2007-09-13  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/33343
+       * expr.c (gfc_check_conformance): Print ranks in the error message.
+       * resolve.c (resolve_elemental_actual): Check also conformance of
+       the actual arguments for elemental functions.
+
+2007-09-13  Tobias Burnus  <burnus@net-b.de>
+
+       * symbol.c (gfc_add_elemental,gfc_add_pure,gfc_add_recursive):
+       Allow prefixes only to be specified once.
+
+2007-09-13  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/33412
+       * symbol.c (check_conflict): Add conflict of ELEMENTAL with Bind(C).
+
+2007-09-12  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/33297
+       * check.c (scalar_check): Move up in the file.
+       (kind_check): Call scalar_check.
+       (dim_check): If optional, do not call nonoptional_check; use
+       bool for optional.
+       (gfc_check_all_any,gfc_check_count,gfc_check_cshift,gfc_check_eoshift,
+       gfc_check_lbound,gfc_check_minloc_maxloc,check_reduction,
+       gfc_check_spread,gfc_check_ubound): Use true/false instead of 0/1
+       for dim_check; honor changed meaning of optional.
+       (gfc_check_int): Replace checks by kind_check.
+       (gfc_check_size): Replace checks by dim_check.
+
+2007-09-12  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/33284
+       PR fortran/33310
+       * symbol.c (check_conflict): Add conflict between INTRINSIC and ENTRY
+       and between BIND(C) and PARAMETER.
+
+2007-09-12  Tobias Burnus  <burnus@net-b.de>
+
+       * trans-expr.c (gfc_conv_initializer): Fix expr == NULL check.
+
+2007-09-12  Jan Hubicka  <jh@suse.cz>
+
+       * f95-lang.c (LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Kill.
+
+2007-09-12  Christopher D. Rickett  <crickett@lanl.gov>
+
+       PR fortran/33395
+       * trans-expr.c (gfc_conv_initializer): Remove unnecessary test for
+       intmod_sym_id and use derived symbol to set new kind of C_NULL_PTR
+       and C_NULL_FUNPTR expressions.
+
+2007-09-11  Christopher D. Rickett  <crickett@lanl.gov>
+
+       PR fortran/33040
+       * trans-expr.c (gfc_trans_structure_assign): Convert component
+       C_NULL_PTR and C_NULL_FUNPTR component initializers to (void *).
+       * trans-types.c (gfc_get_derived_type): Create a backend_decl for
+       the c_address field of C_PTR and C_FUNPTR and ensure initializer
+       is of proper type/kind for (void *).
+
+2007-09-11  Jan Hubicka <jh@suse.cz>
+
+       * f95-lang.c (gfc_expand_function): Kill.
+       (LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Kill.
+
+2007-09-08  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/31547
+       * gfortran.texi: Document when CPP is called.
+
+       * intrinsic.texi (IOR): Fix typos.
+
+2007-09-10  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/33370
+       * trans-expr.c (copyable_array_p):  Add tests that expression
+       is a variable, that it has no subreferences and that it is a
+       full array.
+       (gfc_trans_assignment): Change conditions to suit modifications
+       to copyable_array_p.
+
+2007-09-06  Tom Tromey  <tromey@redhat.com>
+
+       * scanner.c (get_file): Update.
+       (load_file): Update.
+       (gfc_next_char_literal): Use gfc_linebuf_linenum.
+       * f95-lang.c (gfc_init): Update.
+       * gfortran.h (gfc_linebuf_linenum): New macro.
+
+2007-09-05  Sandra Loosemore  <sandra@codesourcery.com>
+
+       * trans-decl.c (build_entry_thunks): Use set_cfun.
+       (gfc_generate_function_code): Likewise.
+
+2007-09-05  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/31564
+       * primary.c (gfc_match_rvalue): Make expressions that refer
+       to derived type parameters that have array references into
+       variable expressions.  Remove references to use association
+       from the symbol.
+
+       PR fortran/33241
+       * decl.c (add_init_expr_to_sym): Provide assumed character
+       length parameters with the length of the initialization
+       expression, if a constant, or that of the first element of
+       an array.
+
+2007-09-04  Janus Weil  <jaydub66@gmail.com>
+           Paul Thomas  <pault@gcc.gnu.org>
+
+       * decl.c (match_procedure_decl,match_procedure_in_interface,
+       gfc_match_procedure): Handle PROCEDURE statements.
+       * gfortran.h (struct gfc_symbol): New member "gfc_symbol *interface".
+       (enum gfc_statement): New element "ST_PROCEDURE".
+       (strcut symbol_attribute): New member "unsigned procedure".
+       * interface.c (check_interface0): Extended error checking.
+       * match.h: Add gfc_match_procedure prototype.
+       * parse.c (decode_statement,next_statement,gfc_ascii_statement,
+       parse_derived,parse_interface): Implement PROCEDURE statements.
+       * resolve.c (resolve_symbol): Ditto.
+       * symbol.c (check_conflict): Ditto.
+       (gfc_add_proc): New function for setting the procedure attribute.
+       (copy_formal_args): New function for copying formal argument lists.
+
+2007-09-03  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * Make-lang.in (gfortranspec.o): Remove SHLIB_MULTILIB.
+
+2007-09-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * gfortranspec.c (lang_specific_driver): Use CONST_CAST2.
+       * options.c (gfc_post_options): Supply a TYPE for CONST_CAST.
+       * parse.c (parse_omp_structured_block): Likewise,
+       * st.c (gfc_free_statement): Likewise,
+
+2007-09-03  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/31675
+       * libgfortran.h: New file.
+       * iso-fortran-env.def: Use macros in the new header instead of
+       hardcoded integer constants.
+       * Make-lang.in (F95_PARSER_OBJS, GFORTRAN_TRANS_DEPS): Add
+       fortran/libgfortran.h.
+       * gfortran.h (GFC_STD_*, GFC_FPE_*, options_convert,
+       ioerror_codes): Remove.
+       * trans.c (ERROR_ALLOCATION): Remove.
+       (gfc_call_malloc, gfc_allocate_with_status,
+       gfc_allocate_array_with_status): Use LIBERROR_ALLOCATION.
+       * trans-types.h (GFC_DTYPE_*): Remove.
+       * trans-decl.c (gfc_generate_function_code): Use
+       GFC_CONVERT_NATIVE instead of CONVERT_NATIVE.
+       * trans-io.c (set_parameter_value, set_parameter_ref): Use
+       LIBERROR_* macros instead of IOERROR_ macros.
+       * trans-intrinsic.c (gfc_conv_intrinsic_function): Use
+       LIBERROR_END and LIBERROR_EOR instead of hardcoded constants.
+       * options.c (gfc_init_options): Use GFC_CONVERT_NATIVE instead of
+       CONVERT_NATIVE.
+       (gfc_handle_option): Use GFC_CONVERT_* macros instead of CONVERT_*.
+
+2007-09-02  Steven G. Kargl  <kargl@gcc.gnu.org>
+
+       * invoke.texi: Fix the -frange-checking option entry.
+
+2007-09-02  Roger Sayle  <roger@eyesopen.com>
+
+       * decl.c (match_string_p): New helper function to explicitly match
+       a string of characters.
+       (match_attr_spec): Remove no longer needed DECL_COLON from decl_types.
+       Delete decls array and peek_char.  Rewrite decl attribute parser to
+       avoid calling gfc_match_strings.
+       * match.c (gfc_match_strings): Delete unused function.
+       * match.h (gfc_match_strings): Delete prototype.
+
+2007-09-02  Tobias Schlüuter  <tobi@gcc.gnu.org>
+
+       * dump-parse-tree.c (show_char_const): New function.
+       (gfc_show_expr): Use it.
+       * expr.c (find_substring_ref): Rework to not keep characters
+       dangling beyond end of string.
+
+2007-09-02  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR fortran/33276
+       * array.c (expand_iterator): Initialize frame.prev.
+
+2007-08-31  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/33232
+       * io.c (match_io): Also diagnose extra comma for READ.
+
+2007-08-31  Joseph Myers  <joseph@codesourcery.com>
+
+       * intrinsic.texi (LGAMMA): Remove empty @cindex line.
+
+2007-08-31  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/31879
+       PR fortran/31197
+       PR fortran/31258
+       PR fortran/32703
+       * gfortran.h : Add prototype for gfc_resolve_substring_charlen.
+       * resolve.c (gfc_resolve_substring_charlen): New function.
+       (resolve_ref): Call gfc_resolve_substring_charlen.
+       (gfc_resolve_character_operator): New function.
+       (gfc_resolve_expr): Call the new functions in cases where the
+       character length is missing.
+       * iresolve.c (cshift, eoshift, merge, pack, reshape, spread,
+       transpose, unpack): Call gfc_resolve_substring_charlen for
+       source expressions that are character and have a reference.
+       * trans.h (gfc_trans_init_string_length) Change name to
+       gfc_conv_string_length; modify references in trans-expr.c,
+       trans-array.c and trans-decl.c.
+       * trans-expr.c (gfc_trans_string_length): Handle case of no
+       backend_decl.
+       (gfc_conv_aliased_arg): Remove code for treating substrings
+       and replace with call to gfc_trans_string_length.
+       * trans-array.c (gfc_conv_expr_descriptor): Remove code for
+       treating strings and call gfc_trans_string_length instead.
+
+2007-08-30  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/33228
+       * interface.c (check_interface0): Improve error for external procs.
+       (check_sym_interfaces): Fix checking of module procedures.
+
+2007-08-29  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/32989
+       * iresolve.c (gfc_resolve_getarg): Handle non-default integer
+       kinds.
+       * check.c (gfc_check_getarg): New function
+       * intrinsic.h: Add prototype for gfc_check_getarg.
+       * intrinsic.c (add_subroutines): Add reference to gfc_check_getarg.
+       * intrinsic.texi (GETARG): Adjust documentation.
+
+2007-08-29  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+           Tobias Burnus  <burnus@gcc.gnu.org>
+
+       PR fortran/33105
+       * intrinsic.c (add_functions): Add IS_IOSTAT_END and
+       IS_IOSTAT_EOR intrinsics.
+       * gfortran.h (gfc_isym_id): Add GFC_ISYM_IS_IOSTAT_END and
+       GFC_ISYM_IS_IOSTAT_EOR.
+       * trans-intrinsic.c (gfc_conv_has_intvalue): New function.
+       (gfc_conv_intrinsic_function): Call gfc_conv_has_intvalue for
+       GFC_ISYM_IS_IOSTAT_END and GFC_ISYM_IS_IOSTAT_EOR.
+       * intrinsic.texi: Add IS_IOSTAT_END and IS_IOSTAT_EOR.
+
+2007-08-28  Christopher D. Rickett  <crickett@lanl.gov>
+
+       PR fortran/33215
+       * decl.c (build_sym): Pass number of identifiers on line to
+       set_binding_label.
+       (set_binding_label): Verify that only one identifier given if
+       NAME= specified, even if the given binding label has zero length.
+       (gfc_match_bind_c): Remove declaration for has_name_equals because
+       it hides the static global one that is needed.
+
+2007-08-29  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       * trans-array.c (gfc_grow_array): Use gfc_call_realloc.
+       (gfc_array_allocate): Use gfc_allocate_with_status and
+       gfc_allocate_array_with_status.
+       (gfc_array_deallocate): Use gfc_deallocate_with_status.
+       (gfc_trans_dealloc_allocated): Use gfc_deallocate_with_status.
+       * trans-stmt.c (gfc_trans_allocate): Use gfc_allocate_with_status.
+       (gfc_trans_deallocate): Use gfc_deallocate_with_status.
+       * trans.c (gfc_allocate_with_status, gfc_allocate_array_with_status,
+       gfc_deallocate_with_status, gfc_call_realloc): New functions.
+       * trans.h (gfc_allocate_with_status, gfc_allocate_array_with_status,
+       gfc_deallocate_with_status, gfc_call_realloc): New prototypes.
+       (gfor_fndecl_internal_realloc, gfor_fndecl_allocate,
+       gfor_fndecl_allocate_array, gfor_fndecl_deallocate): Remove.
+       * f95-lang.c (gfc_init_builtin_functions): Create decl for
+       BUILT_IN_REALLOC.
+       * trans-decl.c (gfor_fndecl_internal_realloc,
+       gfor_fndecl_allocate, gfor_fndecl_allocate_array,
+       gfor_fndecl_deallocate): Remove function decls.
+       (gfc_build_builtin_function_decls): Likewise.
+
+2007-08-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/33055
+       Revert previous patch.
+
+2007-08-28  Jakub Jelinek  <jakub@redhat.com>
+
+       PR fortran/22244
+       * Make-lang.in (fortran/trans-types.o): Depend on $(FLAGS_H).
+       * trans-types.c: Include flags.h.
+       (gfc_get_nodesc_array_type): Add TYPE_DECL TYPE_NAME with
+       correct bounds and dimensions for packed arrays.
+
+2007-08-27  Tobias Burnus  <burnus@net-b.de>
+
+       * simplify.c (gfc_simplify_lgamma): Fix mpfr_lgamma call.
+
+2007-08-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/33055
+       * trans-io.c (create_dummy_iostat): New function to create a unique
+       dummy variable expression to use with IOSTAT.
+       (gfc_trans_inquire): Use the new function to pass unit number error info
+       to run-time library if a regular IOSTAT variable was not given.
+
+2007-08-26  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * gfortran.h (gfc_isym_id): Add GFC_ISYM_GAMMA and
+       GFC_ISYM_LGAMMA.
+
+2007-08-26  Asher Langton  <langton2@llnl.gov>
+           Tobias Burnus  <burnus@net-b.de>
+
+       * gfortran.h (gfc_option_t): Add flag_recursive.
+       * lang.opt: Add -frecursive option and update -fopenmp.
+       * invoke.texi (-frecursive): Document new option.
+       (-fopenmp,-fno-automatic,-fmax-stack-var-size): Update.
+       * options.c (gfc_init_options, gfc_post_options,
+       gfc_handle_option): Add -frecursive and modify -fopenmp.
+       (gfc_post_options): Add warning for conflicting flags.
+
+2007-08-26  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/31298
+       * module.c (mio_symbol_ref,mio_interface_rest):  Return pointer_info.
+       (load_operator_interfaces): Support multible loading of an operator.
+
+2007-08-26  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/32985
+       * match.c (gfc_match_common): Remove SEQUENCE diagnostics.
+       * resolve.c (resolve_common_blocks): Add SEQUENCE diagnostics;
+       fix walking through the tree.
+
+2007-08-26  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/32980
+       * intrinsic.h (gfc_simplify_gamma,gfc_simplify_lgamma,
+       gfc_resolve_gamma,gfc_resolve_lgamma): New function declations.
+       * mathbuiltins.def: Define GAMMA and LGAMMA.
+       * intrinsic.c (add_functions): Add GAMMA, DGAMMA, LGAMMA, ALGAMA
+       and DLGAMA.
+       * simplify.c (gfc_simplify_gamma,gfc_simplify_lgamma): New functions.
+       * iresolve.c (gfc_resolve_gamma,gfc_resolve_lgamma): New functions.
+       * intrinsic.texi: Add documentation for GAMMA and LGAMMA.
+
+2007-08-26  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/33188
+       * parse.c (parse_derived): Support empty derived type
+       definitions for Fortran 2003.
+
+2007-08-25  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * trans-openmp.c (gfc_omp_privatize_by_reference): Constify.
+       * trans.h (gfc_omp_privatize_by_reference): Likewise.
+
+2007-08-24  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/33178
+       * intrinsic.c (gfc_intrinsic_func_interface): Fix initialization
+       expression check.
+
+2007-08-24  Thomas Koenig  <tkoenig@gcc.gnu.org>
+
+       PR fortran/32972
+       * iresolve.c:  Don't convert array masks.
+
+2007-08-24  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/33139
+       * trans-array.c (gfc_conv_expr_descriptor): Copy bounds for
+       whole-array pointer assignments.
+
+2007-08-23  Jakub Jelinek  <jakub@redhat.com>
+
+       * decl.c (variable_decl): Don't share charlen structs if
+       length == NULL.
+       * trans-decl.c (create_function_arglist): Assert
+       f->sym->ts.cl->backend_decl is NULL instead of unsharing
+       charlen struct here.
+
+2007-08-23  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/33095
+       * trans-intrinsic.c (gfc_conv_intrinsic_minmax): Remove
+       runtime error checking.
+
+2007-08-22  Roger Sayle  <roger@eyesopen.com>
+           Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
+
+       * match.c (intrinsic_operators): Delete.
+       (gfc_match_intrinsic_op): Rewrite matcher to avoid calling
+       gfc_match_strings.
+
+2007-08-22  Christopher D. Rickett  <crickett@lanl.gov>
+
+       PR fortran/33020
+       * resolve.c (gfc_iso_c_sub_interface): Remove setting of type and
+       kind for optional SHAPE parameter of C_F_POINTER.
+
+2007-08-22  Janus Weil  <jaydub66@gmail.com>
+
+       * decl.c (match_attr_spec): Pass on errors from gfc_match_bind_c.
+       (gfc_match_bind_c): Bugfix in check for NAME= with abstract interfaces.
+       (gfc_match_mopdproc): Bugfix to reject module procedures in
+       abstract interfaces.
+
+2007-08-22  Kai Tietz  <kai.tietz@onevision.com>
+
+       * f95-lang.c: (gfc_init_decl_processing): Choose sizetype by using
+       Pmode.
+
+2007-08-21  Paul Brook  <paul@codesourcery.com>
+           Nathan Sidwell  <nathan@codesourcery.com>
+           Mark Mitchell  <mark@codesourcery.com>
+           Joseph Myers  <joseph@codesourcery.com>
+
+       * gfortranspec.c (lang_specific_driver): Use pkgversion_string.
+       * Make-lang.in (gfortran.pod): Define BUGURL.
+       * invoke.texi: Use BUGURL for bug-reporting instructions.
+
+2007-08-19  Roger Sayle  <roger@eyesopen.com>
+
+       * match.c (intrinsic_operators): Make static.
+       (gfc_op2string): New function for converting a gfc_intrinsic_op to
+       to a "const char*", replacing the macro of the same name.
+       * gfortran.h (intrinsic_operators): Delete prototype.
+       (gfc_op2string): Replace macro with function prototype.
+
+2007-08-18  Tobias Burnus  <burnus@net-b.de>
+
+       * gfortran.h (gfc_is_intrinsic_typename): Add declaration.
+       * symbol.c (gfc_is_intrinsic_typename): New function.
+       * parse.c (decode_statement): Check for space in ABSTRACT INTERFACE.
+       (parse_interface): Use gfc_is_intrinsic_typename.
+       * decl.c (gfc_match_derived_decl): Ditto.
+       * module.c (gfc_match_use): Use gcc_unreachable() for
+       INTERFACE_ABSTRACT in switch().
+
+2007-08-18  Roger Sayle  <roger@eyesopen.com>
+
+       * primary.c (match_logical_constant_string): New function to match
+       a ".true." or a ".false.".
+       (match_logical_constant): Use it instead of gfc_match_strings.
+
+2007-08-18  Paul Thomas  <pault@gcc.gnu.org>
+           Janus Weil  <jaydub66@gmail.com>
+
+       * interface.c (gfc_match_interface,gfc_match_abstract_interface,
+       gfc_match_end_interface,gfc_add_interface): Add abstract interface.
+       * dump-parse-tree.c (gfc_show_attr): Ditto.
+       * gfortran.h (interface_type,symbol_attribute): Ditto.
+       * module.c (gfc_match_use,ab_attribute,attr_bits,
+       mio_symbol_attribute): Ditto.
+       * resolve.c (resolve_function): Ditto.
+       * match.h: Ditto.
+       * parse.c (decode_statement): Ditto.
+       (parse_interface): Ditto, check for C1203 (name of abstract interface
+       cannot be the same as an intrinsic type).
+       * decl.c (gfc_match_bind_c): Check for NAME= with abstract interfaces.
+       (access_attr_decl): Handle Abstract interfaces.
+
+2007-08-18  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/32881
+       * expr.c (gfc_check_pointer_assign): If the rhs is the
+       initialization expression for the rhs, there is no error.
+
+2007-08-18  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/32875
+       * trans-array.c (get_array_ctor_strlen): Set the character
+       length of a zero length array to zero.
+
+2007-08-16  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/33072
+       * module.c (gfc_match_use): Mark user operators as such.
+       (find_use_name_n): Distinguish between operators and other symbols.
+       (find_use_name,number_use_names,mio_namelist,
+        load_operator_interfaces,load_generic_interfaces,read_module,
+        write_generic): Update find_use_name_n calls.
+
+2007-08-15  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/29459
+       * trans.c (gfc_create_var_np): Do not emit warnings for
+       anonymous variables.
+
+2007-08-15  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/33066
+       * decl.c (gfc_get_type_attr_spec): Fix whitespace.
+       (gfc_match_derived_decl): Fix logic.
+
+2007-08-14  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/33073
+       * trans-intrinsic.c (build_fixbound_expr): Convert to result type
+       in all cases.
+
+2007-08-14  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/32594
+       * trans-expr.c (gfc_conv_substring_expr): Only call
+       gfc_conv_substring if expr->ref is not NULL.
+       * expr.c (gfc_is_constant_expr): If e->ref is NULL, the substring
+       expression might be a constant.
+       (gfc_simplify_expr): Handle missing start and end, as well as
+       missing ref.
+
+2007-08-13  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/32926
+       * match.c (gfc_match_call): Do not create a new symtree in the
+       case where the existing symbol is external and not referenced.
+
+2007-08-13  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/32827
+       * decl.c (variable_decl): Check for an imported symbol
+       by looking for its symtree and testing for the imported
+       attribute.
+       (gfc_match_import): Remove change of symbol's namespace
+       and set the attribute imported instead.
+       * symbol.c (gfc_get_sym_tree): It is not an error if a
+       symbol is imported.
+       * gfortran.h : Add the 'imported' to symbol_attribute.
+
+2007-08-13  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/32962
+       * trans-array.c (gfc_conv_array_transpose): Set the offset
+       of the destination to zero if the loop is zero based.
+
+2007-08-12  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/29600
+       * intrinsic.c (add_functions): Add optional KIND argument to ACHAR.
+       * iresolve.c (gfc_resolve_achar): Handle the KIND argument.
+       * check.c (gfc_check_achar): Check for the optional KIND argument.
+       * simplify.c (gfc_simplify_achar): Use KIND argument.
+       * intrinsic.h (gfc_check_achar, gfc_simplify_achar,
+       gfc_resolve_achar): Adjust prototypes.
+
+2007-08-12  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/30964
+       PR fortran/33054
+       * trans-expr.c (gfc_conv_function_call): When no formal argument
+       list is available, we still substitute missing optional arguments.
+       * check.c (gfc_check_random_seed): Correct the check on the
+       number of arguments to RANDOM_SEED.
+       * intrinsic.c (add_subroutines): Add a resolution function to
+       RANDOM_SEED.
+       * iresolve.c (gfc_resolve_random_seed): New function.
+       * intrinsic.h (gfc_resolve_random_seed): New prototype.
+
+2007-08-12  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/32860
+       * error.c (error_uinteger): New function.
+       (error_integer): Call error_uinteger.
+       (error_print): Handle %u, %lu, %li and %ld format specifiers.
+       * interface.c (compare_actual_formal): Use the new %lu specifier.
+
+2007-08-12  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/31629
+       * lang.opt (-fmodule-private): New option.
+       * gfortran.h (gfc_option_t): Add flag_module_private member.
+       * invoke.texi (-fmodule-private): Document the new option.
+       * module.c (gfc_check_access): Allow the -fmodule-private option
+       to modify the default behaviour.
+       * options.c (gfc_init_options): Initialize flag_module_private.
+       (gfc_handle_option): Handle -fmodule-private.
+
+2007-08-12  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/29600
+       * intrinsic.c (add_functions): Add KIND arguments to COUNT,
+       IACHAR, ICHAR, INDEX, LBOUND, LEN, LEN_TRIM, SCAN, SIZE, UBOUND
+       and VERIFY.
+       * iresolve.c (gfc_resolve_count): Add kind argument.
+       (gfc_resolve_iachar): New function.
+       (gfc_resolve_ichar): Add kind argument.
+       (gfc_resolve_index_func): Likewise.
+       (gfc_resolve_lbound): Likewise.
+       (gfc_resolve_len): Likewise.
+       (gfc_resolve_len_trim): Likewise.
+       (gfc_resolve_scan): Likewise.
+       (gfc_resolve_size): New function.
+       (gfc_resolve_ubound): Add kind argument.
+       (gfc_resolve_verify): Likewise.
+       * trans-decl.c (gfc_get_extern_function_decl): Allow specific
+       intrinsics to have 4 arguments.
+       * check.c (gfc_check_count): Add kind argument.
+       (gfc_check_ichar_iachar): Likewise.
+       (gfc_check_index): Likewise.
+       (gfc_check_lbound): Likewise.
+       (gfc_check_len_lentrim): New function.
+       (gfc_check_scan): Add kind argument.
+       (gfc_check_size): Likewise.
+       (gfc_check_ubound): Likewise.
+       (gfc_check_verify): Likewise.
+       * intrinsic.texi: Update documentation for COUNT, IACHAR, ICHAR,
+       INDEX, LBOUND, LEN, LEN_TRIM, SCAN, SIZE, UBOUND and VERIFY.
+       * simplify.c (get_kind): Whitespace fix.
+       (int_expr_with_kind): New function.
+       (gfc_simplify_iachar): Add kind argument.
+       (gfc_simplify_iachar): Likewise.
+       (gfc_simplify_ichar): Likewise.
+       (gfc_simplify_index): Likewise.
+       (simplify_bound_dim): Likewise.
+       (simplify_bound): Likewise.
+       (gfc_simplify_lbound): Likewise.
+       (gfc_simplify_len): Likewise.
+       (gfc_simplify_len_trim): Likewise.
+       (gfc_simplify_scan): Likewise.
+       (gfc_simplify_shape): Pass NULL as kind argument to gfc_simplify_size.
+       (gfc_simplify_size): Add kind argument.
+       (gfc_simplify_ubound): Likewise.
+       (gfc_simplify_verify): Likewise.
+       * intrinsic.h: Update prototypes and add new ones.
+       * trans-intrinsic.c (gfc_conv_intrinsic_index): Rename into
+       gfc_conv_intrinsic_index_scan_verify.
+       (gfc_conv_intrinsic_scan, gfc_conv_intrinsic_verify): Remove.
+       (gfc_conv_intrinsic_function): Call
+       gfc_conv_intrinsic_index_scan_verify to translate the INDEX,
+       SCAN and VERIFY intrinsics.
+
+2007-08-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/31189
+       * invoke.texi (-fbacktrace): Document the new behaviour.
+
+2007-08-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/32937
+       * trans-array.c (gfc_conv_expr_descriptor): Use
+       gfc_conv_const_charlen to generate backend_decl of right type.
+       * trans-expr.c (gfc_conv_expr_op): Use correct return type.
+       (gfc_build_compare_string): Use int type instead of default
+       integer kind for single character comparison.
+       (gfc_conv_aliased_arg): Give backend_decl the right type.
+       * trans-decl.c (gfc_build_intrinsic_function_decls): Make
+       compare_string return an int.
+
+2007-08-11  Ian Lance Taylor  <iant@google.com>
+
+       * f95-lang.c (gfc_get_alias_set): Change return type to
+       alias_set_type.
+
+2007-08-10  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/31270
+       * trans.c (gfc_trans_runtime_check): Reorder arguments and
+       add extra variable arguments. Hand them to the library function.
+       * trans.h (gfc_trans_runtime_check): Update prototype.
+       * trans-array.c (gfc_trans_array_bound_check): Issue more
+       detailled error messages.
+       (gfc_conv_array_ref): Likewise.
+       (gfc_conv_ss_startstride): Likewise.
+       (gfc_trans_dummy_array_bias): Reorder arguments to
+       gfc_trans_runtime_check.
+       * trans-expr.c (gfc_conv_substring): Issue more detailled
+       error messages.
+       (gfc_conv_function_call): Reorder arguments to gfc_trans_runtime_check.
+       * trans-stmt.c (gfc_trans_goto): Likewise.
+       * trans-io.c (set_string): Reorder arguments to
+       gfc_trans_runtime_check and issue a more detailled error message.
+       * trans-decl.c (gfc_build_builtin_function_decls): Make
+       runtime_error and runtime_error_at handle a variable number of
+       arguments.
+       * trans-intrinsic.c (gfc_conv_intrinsic_bound): Reorder arguments
+       to gfc_trans_runtime_check.
+       (gfc_conv_intrinsic_minmax): Likewise.
+       (gfc_conv_intrinsic_repeat): Issue more detailled error messages.
+
+2007-08-10  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * gfortranspec.c (lang_specific_driver): Use CONST_CAST.
+       * options.c (gfc_post_options): Likewise.
+       * parse.c (parse_omp_structured_block): Likewise.
+       * st.c (gfc_free_statement): Likewise.
+
+2007-08-10  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/32933
+       * trans-decl.c (gfc_build_builtin_function_decls): Change
+       prototype for associated.
+       * trans-intrinsic.c (gfc_conv_intrinsic_minmax): Convert the
+       result of __builtin_isnan into a boolean.
+       (gfc_conv_intrinsic_strcmp): Cleanup.
+       (gfc_conv_associated): Convert the result of the associated
+       function into a boolean.
+
+2007-08-09  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/32987
+       * io.c (format_token): Add FMT_ERROR.
+       (next_char_not_space): Print error/warning when
+       '\t' are used in format specifications.
+       (format_lex): Propagate error.
+       (check_format): Ditto.
+
+2007-08-09  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/33001
+       * arith.c (arith_error): Point in the error message
+       to -fno-range-check.
+
+2007-08-09  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/32902
+       * intrinsic.texi (SIZEOF): Add mention to C_SIZE_T.
+
+2007-08-06  Christopher D. Rickett  <crickett@lanl.gov>
+
+       PR fortran/32732
+       * trans-expr.c (gfc_conv_scalar_char_value): Convert the tree and
+       actual arg expressions for scalar characters passed by-value to
+       bind(c) routines.
+       (gfc_conv_function_call): Call gfc_conv_scalar_char_value.
+       * trans.h: Add prototype for gfc_conv_scalar_char_value.
+       * trans-decl.c (generate_local_decl): Convert by-value character
+       dummy args of bind(c) procedures using
+       gfc_conv_scalar_char_value.
+
+2007-08-06  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/30947
+       * iresolve.c (gfc_resolve_alarm_sub): Suffix the subroutine name
+       with the kind of the STATUS argument.
+
+2007-08-06  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/30948
+       * intrinsic.c (add_functions): Fix name of argument to CHDIR.
+
+2007-08-06  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/30933
+       * iresolve.c (gfc_resolve_exit): Convert argument to default
+       integer kind.
+
+2007-08-06  Daniel Franke  <franke.daniel@gmail.com>
+
+       * resolve.c (derived_pointer): Removed, replaced callers by access 
+       to appropiate attribute bit.
+       (derived_inaccessable): Shortcut recursion depth.
+       (resolve_fl_namelist): Fixed checks for private components in namelists.
+
+2007-08-06  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/29828
+       * trans.h (gfor_fndecl_string_minmax): New prototype.
+       * trans-decl.c (gfor_fndecl_string_minmax): New variable.
+       (gfc_build_intrinsic_function_decls): Create gfor_fndecl_string_minmax.
+       * check.c (gfc_check_min_max): Allow for character arguments.
+       * trans-intrinsic.c (gfc_conv_intrinsic_minmax_char): New function.
+       (gfc_conv_intrinsic_function): Add special case for MIN and MAX
+       intrinsics with character arguments.
+       * simplify.c (simplify_min_max): Add simplification for character
+       arguments.
+
+2007-08-06  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/31612
+       * invoke.texi: Adjust documentation for option -fsyntax-only.
+
+2007-08-05  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+           Tobias Burnus  <burnus@gcc.gnu.org>
+
+       PR fortran/32979
+       * intrinsic.h (gfc_check_isnan): Add prototype.
+       * gfortran.h (gfc_isym_id): Add GFC_ISYM_ISNAN.
+       * intrinsic.c (add_functions): Add ISNAN intrinsic.
+       * check.c (gfc_check_isnan): New function.
+       * trans-intrinsic.c (gfc_conv_intrinsic_isnan): New function.
+       (gfc_conv_intrinsic_function): Call gfc_conv_intrinsic_isnan
+       to translate ISNAN.
+       * intrinsic.texi: Document ISNAN.
+
+2007-08-04  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/31214
+       * symbol.c (get_unique_symtree): Moved from module.c.
+       * module.c (get_unique_symtree): Moved to symbol.c.
+       * decl.c (get_proc_name): Transfer the typespec from the local
+       symbol to the module symbol, in the case that an entry is also
+       a module procedure.  Ensure the local symbol is cleaned up by
+       pointing to it with a unique symtree.
+
+       * dump_parse_tree (gfc_show_code_node): Add EXEC_ASSIGN_CALL.
+
+2008-08-04  Steven G. Kargl  <kargl@gcc.gnu.org>
+
+       PR fortran/32969
+       * iresolve.c (gfc_resolve_rrspacing): Convert argument(s) to
+       expected KIND.
+       (gfc_resolve_scale): Ditto.
+       (gfc_resolve_set_exponent): Ditto.
+       (gfc_resolve_spacing): Ditto.
+       PR fortran/32968
+       * trans-intrinsic.c (gfc_conv_intrinsic_si_kind,
+       gfc_conv_intrinsic_sr_kind): Convert the argument(s) to the
+       expected KIND, and fold the result to the expected KIND.
+
+2007-08-03  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/31202
+       * f95-lang.c (gfc_init_builtin_functions): Defin builtins for 
+       lround{f,,l} and llround{f,,l}.
+       * trans-intrinsic.c (build_fix_expr): Generate calls to the
+       {l,}round{f,,l} functions.
+
+2007-08-01  Thomas Koenig  <tkoenig@gcc.gnu.org>
+
+       PR libfortran/32954
+       * intrinsic.c (resolve_mask_arg):  New function.
+       (gfc_resolve_maxloc):  Use resolve_mask_arg for mask resolution.
+       (gfc_resolve_maxval):  Likewise.
+       (gfc_resolve_minloc):  Likewise.
+       (gfc_resolve_minval):  Likewise.
+       (gfc_resolve_pack):  Likewise.
+       (gfc_resolve_product):  Likewise.
+       (gfc_resolve_sum):  Likewise.
+       (gfc_resolve_unpack):  Likewise.
+
+2007-08-01  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/32936
+       * match.c (gfc_match_allocate): Better check that STAT is
+       a variable.
+
+       * check.c (gfc_check_allocated): Reorder checks to improve
+       error message.
+
+2007-08-01  Nick Clifton  <nickc@redhat.com>
+
+       * arith.c: Change copyright header to refer to version 3 of the
+       GNU General Public License and to point readers at the COPYING3
+       file and the FSF's license web page.
+       * openmp.c, interface.c, intrinsic.c, trans-array.c, trans-expr.c,
+       symbol.c, iso-fortran-env.def, intrinsic.h, decl.c, trans-array.h,
+       matchexp.c, dump-parse-tree.c, trans-common.c, array.c,
+       Make-lang.in, trans-openmp.c, gfortran.h, error.c,
+       iso-c-binding.def, lang.opt, data.c, trans-const.c, trans-stmt.c,
+       expr.c, trans-const.h, trans-stmt.h, module.c, trans.c, scanner.c,
+       trans-types.c, trans.h, gfortranspec.c, trans-types.h,
+       lang-specs.h, io.c, bbt.c, resolve.c, f95-lang.c, st.c,
+       iresolve.c, match.c, trans-decl.c, trans-io.c, target-memory.c,
+       match.h, target-memory.h, parse.c, arith.h, check.c, dependency.c,
+       parse.h, types.def, convert.c, dependency.h, primary.c,
+       trans-intrinsic.c, options.c, misc.c, simplify.c: Likewise.
+
+2007-08-01  Daniel Franke  <franke.daniel@gmail.com>
+
+       * trans-decl.c (generate_local_decl): Emit warning on unused parameter
+       on "-Wall -Wextra" or "-Wunused-parameter" but not on "-Wall", changed
+       messages that start with lower case to upper case.
+       * invoke.texi (-Wparameter-unused): Document differences between gcc
+       and gfortran regarding this option.
+
+2007-08-01  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/32945
+       * expr.c (check_specification_function): Skip check if no symtree 
+       is available.
+
+2007-08-01  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/31609
+       * resolve.c (resolve_entries): Entries declared to be module
+       procedures must point to the function namespace.
+
+2007-07-31  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/32938
+       * trans-stmt.c (gfc_trans_return): Convert to correct type.
+
+2007-07-31  Steven G. Kargl  <kargl@gcc.gnu.org>
+
+       PR fortran/32942
+       * trans-intrinsic.c (gfc_conv_intrinsic_exponent): Convert to correct
+       type.
+
+2007-07-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       * invoke.texi: Document -fsign-zero flag.
+
+2007-07-29  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/31211
+       * trans-expr.c (gfc_conv_expr_reference): Add block for case of
+       scalar pointer functions so that NULL result is correctly
+       handled.
+
+       PR fortran/32682
+       * trans-array.c (gfc_trans_array_constructor): On detecting a
+       multi-dimensional parameter array, set the loop limits.
+
+2007-07-29  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/32906
+       * resolve.c (resolve_fl_parameter): Check for constant shape arrays,
+       adjusted error message.
+
+2007-07-29  Daniel Franke  <franke.daniel@gmail.com>
+
+       * invoke.texi: Removed -w from option summary.
+
+2007-07-29  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/32879
+       * intrinsic.texi (IRAND, RAND, RANDOM_NUMBER): Document algorithm
+       used for random number generator.
+
+2007-07-28  Kazu Hirata  <kazu@codesourcery.com>
+
+       * gfortran.h, interface.c, resolve.c, symbol.c: Fix comment
+       typos.
+       * intrinsic.texi, invoke.texi: Fix typos.
+
+2007-07-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/31609
+       * resolve.c (generic_sym): Check for a same symbol and if so, return to
+       avoid infinite recursion.
+
+2007-07-28  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/31818
+       PR fortran/32876
+       PR fortran/32905
+       * gfortran.h (symbol_attribute): Added bits for pointer_comp, 
+       private_comp.
+       * parse.c (parse_derived): Set pointer_comp/private_comp bits if 
+       the derived type ultimately contains pointer components or private 
+       components.
+       * module.c (ab_attribute): New values AB_POINTER_COMP, AB_PRIVATE_COMP.
+       (attr_bits): Added names for new ab_attributes.
+       (mio_symbol_attribute): Save/restore new attribute bits in modules.
+       * match.c (gfc_match_namelist): Removed check for namelist objects
+       of assumed shape.
+       * resolve.c (resolve_fl_namelist): Added check for pointer or
+       private components in nested types. Added check for namelist objects
+       of assumed shape.
+
+2007-07-28  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/32880
+       * trans-expr.c (gfc_trans_scalar_assign): Revert to fixed order
+       for lse and rse pre expressions, for derived types with
+       allocatable components.  Instead, assign the lhs to a temporary
+       and deallocate after the assignment.
+
+2007-07-28  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       PR fortran/32909
+       * trans-stmt.c (gfc_trans_character_select): Replace occurrences
+       of gfc_c_int_type_node with integer_type_node.
+       * trans-decl.c (gfc_build_intrinsic_function_decls): Likewise.
+       (gfc_build_builtin_function_decls): Likewise.
+       (gfc_generate_function_code): Likewise.
+       * trans-io.c (gfc_build_io_library_fndecls): Likewise.
+
+2007-07-27  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       * trans-decl.c (gfc_build_builtin_function_decls): Use existing
+       gfc_array_index_type rather than creating another typenode for
+       gfc_index_integer_kind.
+
+2007-07-27  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       * trans-io.c (gfc_build_io_library_fndecls): Change to use
+       gfc_array_index_type for array descriptor triplets instead of
+       gfc_int4_type_node.
+
+2007-07-26  Steven G. Kargl  <kargl@gcc.gnu.org>
+
+       PR fortran/32899
+       * resolve.c (resolve_operator): Add INTRINSIC_EQ_OS comparison.
+
+2007-07-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+           Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/32760
+       * primary.c (match_variable): Do not call gfc_add_flavor if symbol has
+       attribute of ACCESS_PUBLIC or ACCESS_PRIVATE already marked.
+
+2007-07-27  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/32035
+       * trans-stmt.c (gfc_trans_character_select): Replace the
+       mechanism with labels by a SWITCH_EXPR.
+       * trans-decl.c (gfc_build_builtin_function_decls): Change
+       return type for select_string.
+
+2007-07-27  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/32903
+       * trans-decl.c (gfc_trans_deferred_vars): Set intent(out)
+       derived types as referenced, if they have the the default
+       initializer set.
+
+2007-07-25  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * gfortran.h (generate_isocbinding_symbol): Constify.
+       * symbol.c (gen_special_c_interop_ptr, gen_cptr_param,
+       generate_isocbinding_symbol): Likewise.
+
+2007-07-24  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/31205
+       PR fortran/32842
+       * trans-expr.c (gfc_conv_function_call): Remove the default
+       initialization of intent(out) derived types.
+       * symbol.c (gfc_lval_expr_from_sym): New function.
+       * matchexp.c (gfc_get_parentheses): Return argument, if it is
+       character and posseses a ref.
+       * gfortran.h : Add prototype for gfc_lval_expr_from_sym.
+       * resolve.c (has_default_initializer): Move higher up in file.
+       (resolve_code): On detecting an interface assignment, check
+       if the rhs and the lhs are the same symbol.  If this is so,
+       enclose the rhs in parenetheses to generate a temporary and
+       prevent any possible aliasing.
+       (apply_default_init): Remove code making the lval and call
+       gfc_lval_expr_from_sym instead.
+       (resolve_operator): Give a parentheses expression a type-
+       spec if it has no type.
+       * trans-decl.c (gfc_trans_deferred_vars): Apply the a default
+       initializer, if any, to an intent(out) derived type, using
+       gfc_lval_expr_from_sym and gfc_trans_assignment.  Check if
+       the dummy is present.
+
+2007-07-24  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/32867
+       * expr.c (check_init_expr): Simplify matched functions.
+
+2007-07-24  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/32778
+       * intrinsic.c (add_sym): Do not exclude any symbols, even if not part
+       of the selected standard.
+       (make generic): Likewise.
+       (make alias): Likewise, set standard the alias belongs to.
+       (add_subroutines): Call make_noreturn unconditionally.
+       (check_intrinsic_standard): Change return value to try.
+       (gfc_intrinsic_func_interface): Check return value of above function.
+       (gfc_intrinsic_sub_interface): Likewise.
+
+2007-07-24  Thomas Koenig  <tkoenig@gcc.gnu.org>
+
+       PR fortran/30814
+       * trans-decl.c (generate_function_code):  Add argument
+       for flag_bounds_check to the array for set_options.
+       * invoke.texi (-fbounds-check): Document new libarary run-time
+       behaviour.
+
+2007-07-23  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/25104
+       PR fortran/31639
+       * expr.c (check_transformational): Reject valid transformational
+       intrinsics to avoid ICE.
+       (check_inquiry): Report error for assumed character lengths for
+       all supported standards.
+       (check_init_expr): Whitespace fix.
+
+2007-07-23  Christopher D. Rickett  <crickett@lanl.gov>
+
+       PR fortran/32797
+       PR fortran/32800
+       * decl.c (verify_bind_c_sym): Use the result symbol for functions
+       with a result clause.  Warn if implicitly typed.  Verify the type
+       and rank of the SHAPE argument, if given.
+       * resolve.c (gfc_iso_c_sub_interface): Use gfc_procedure_use to
+       check the actual args against the formal, sorting them if
+       necessary.
+       * symbol.c (gen_shape_param): Initialize type of SHAPE param to
+       BT_VOID.
+
+2007-07-23  Christopher D. Rickett  <crickett@lanl.gov>
+
+       PR fortran/32732
+       * trans-decl.c (generate_local_decl): Convert the TREE_TYPE for by
+       value character dummy args of BIND(C) procedures.
+       * trans-expr.c (gfc_conv_variable): Do not build address
+       expression for BT_CHARACTER dummy args.
+
+2007-07-23  Christopher D. Rickett  <crickett@lanl.gov>
+           Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/32600
+       * trans-expr.c (gfc_conv_function_call): Handle c_funloc.
+       * trans-types.c: Add pfunc_type_node.
+       (gfc_init_types,gfc_typenode_for_spec): Use it.
+       * resolve.c (gfc_iso_c_func_interface): Fix whitespace and
+       improve error message.
+
+2007-07-22  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/32710
+       * parse.c (gfc_fixup_sibling_symbols): No replacement of symbols if
+       the current is a namelist.
+
+2007-07-22  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/29962
+       PR fortran/31253
+       PR fortran/31265
+       PR fortran/31639
+       * gfortran.h (gfc_intrinsic_sym): Changed members elemental, pure,
+       generic, specific, actual_ok, noreturn into bits of a bitfield, 
+       added bits for inquiry, transformational, conversion.
+       * check.c (non_init_transformational): Removed, removed all callers.
+       * intrinsic.c (enum class): New.
+       (add_sym*): Replaced argument elemetal by enum class. Changed all
+       callers.
+       (add_functions): Assign appropriate classes to intrinsic functions.
+       (add_subroutines): Assign appropriate classes to intrinsic subroutines.
+       (add_conv): Set conversion attribute.
+       (gfc_init_expr_extensions): Removed, removed all callers.
+       (gfc_intrinsic_func_interface): Reimplemented check for non-standard
+       initializatione expressions.
+       * expr.c (check_specification_function): New.
+       (gfc_is_constant_expr): Added check for specification functions.
+       (check_init_expr_arguments): New.
+       (check_inquiry): Changed return value to MATCH, added checks for
+       inquiry functions defined by F2003.
+       (check_transformational): New.
+       (check_null): New.
+       (check_elemental): New.
+       (check_conversion): New.
+       (check_init_expr): Call new check functions, add more specific error
+       messages.
+
+2007-07-21  Christopher D. Rickett  <crickett@lanl.gov>
+
+       PR fortran/32627
+       * resolve.c (set_name_and_label): Set kind number for character
+       version of c_f_pointer.
+       (gfc_iso_c_sub_interface): Set the kind of the SHAPE formal arg to
+       that of the actual SHAPE arg.
+       * symbol.c (gen_shape_param): Initialize kind for SHAPE arg.
+
+2007-07-21  Christopher D. Rickett  <crickett@lanl.gov>
+
+       PR fortran/32801
+       * symbol.c (generate_isocbinding_symbol): Remove unnecessary
+       conditional.
+
+       PR fortran/32804
+       * resolve.c (gfc_iso_c_func_interface): Reject assumed-shape and
+       deferred-shape arrays as args to C_LOC.  Fix bug in testing
+       character args to C_LOC.
+
+2007-07-21  Lee Millward  <lee.millward@gmail.com>
+
+       PR fortran/32823
+       * trans-intrinsic.c (gfc_conv_intrinsic_int): Evaluate all
+       arguments passed, not just the first one. Adjust code to 
+       refer to "args[0]" instead of "arg" as a result.
+       
+2007-07-19  Christopher D. Rickett  <crickett@lanl.gov>
+
+       PR fortran/32600
+       * trans-expr.c (gfc_conv_function_call): Inline C_LOC.
+
+2007-07-18  Christopher D. Rickett  <crickett@lanl.gov>
+
+       PR fortran/32801
+       * symbol.c (generate_isocbinding_symbol): Fix bug where
+       ISOCBINDING_FUNPTR was generated for C_LOC instead of the needed
+       ISOCBINDING_PTR.
+
+2007-07-17  Janus Weil  <jaydub66@gmail.com> 
+
+       PR fortran/32535
+       * resolve.c (resolve_fl_namelist): Check for namelist private 
+       components in contained subprograms.
+
+2007-07-17  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/31320
+       PR fortran/32665
+       * trans-expr.c (gfc_trans_subcomponent_assign): Ensure that
+       renormalization unity base is done independently of existing
+       lbound value.
+       (gfc_trans_scalar_assign): If rhs is not a variable, put
+       lse->pre after rse->pre to ensure that de-allocation of lhs
+       occurs after evaluation of rhs.
+
+2007-07-16  Lee Millward  <lee.millward@gmail.com>
+
+       PR fortran/32222
+       PR fortran/32238
+       PR fortran/32242        
+       * trans-intrinsic.c (gfc_conv_intrinsic_function_args): Adjust
+       to operate on a stack allocated array for the intrinsic arguments
+       instead of creating a TREE_LIST. Add two new parameters for the
+       array and the number of elements. Update all callers to allocate
+       an array of the correct length to pass in. Update comment.
+       (gfc_intrinsic_argument_list_length): New function.
+       (gfc_conv_intrinsic_conversion): Call it.
+       (gfc_conv_intrinsic_mnimax): Likewise.
+       (gfc_conv_intrinsic_merge): Likewise.
+       (gfc_conv_intrinsic_lib_function): Call it. Use new CALL_EXPR
+       constructors.
+       (gfc_conv_intrinsic_cmplx): Likewise.
+       (gfc_conv_intrinsic_ctime): Likewise.
+       (gfc_covn_intrinsic_fdate): Likewise.
+       (gfc_conv_intrinsic_ttynam): Likewise.
+       (gfc_conv_intrinsic_ishftc): Likewise.
+       (gfc_conv_intrinsic_index): Likewise.
+       (gfc_conv_intrinsic_scan): Likewise.
+       (gfc_conv_intrinsic_verify): Likewise.
+       (gfc_conv_intrinsic_trim): Likewise.
+       (gfc_conv_intrinsic_aint): Use new CALL_EXPR constructors.
+       (gfc_conv_intrinsic_exponent): Likewise.
+       (gfc_conv_intrinsic_bound): Likewise.
+       (gfc_conv_intrinsic_abs): Likewise.
+       (gfc_conv_intrinsic_mod): Likewise.
+       (gfc_conv_intrinsic_sign): Likewise.
+       (gfc_conv_intrinsic_len): Likewise.
+       (gfc_conv_intrinsic_adjust): Likewise.
+       (gfc_conv_intrinsic_si_kind): Likewise. 
+       
+2007-07-16  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       PR fortran/32748
+       * trans-decl.c (gfc_build_builtin_function_decls): Remove
+       DECL_IS_MALLOC attribute from internal_realloc, thus reverting
+       part of my 2007-07-03 patch.
+
+2007-07-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+           Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/32611
+       * gfortran.h (gfc_option_t): Add flag_sign_zero field.
+       * lang.opt (-fsign-zero): New option.
+       * trans.h: Rename gfor_fndecl_set_std into gfor_fndecl_set_options.
+       * trans-decl.c (gfc_build_builtin_function_decls): Build the function
+       declaration to pass an array containing the options to be used by the
+       runtime library. (gfc_generate_function_code): Build an array that
+       contains option values to be passed to the runtime library and the call
+       to the function. 
+       * options.c (gfc_init_options): Initialize the flag_sign_zero field.
+       (gfc_handle_option): Handle the -fsign-zero option.
+
+2007-07-15  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/32036
+       * trans-array.c (gfc_conv_array_ref): Only evaluate index once.
+
+2007-07-15  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/32357
+       * iresolve.c (gfc_resolve_mvbits): Convert FROMPOS, LEN and TOPOS
+       to C int.
+
+2007-07-14  Thomas Koenig  <tkoenig@gcc.gnu.org>
+
+       PR libfortran/32731
+       * iresolve.c(gfc_resolve_pack):  A scalar mask has
+       to be kind=4, an array mask with kind<4 is converted
+       to gfc_default_logical_kind automatically.
+       (gfc_resolve_unpack):  Convert mask to gfc_default_lotical_kind
+       if it has a kind<4.
+
+2007-07-14  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/32724
+       * parse.c (parse_spec): Emit error on unexpected statement
+       function.
+
+2007-07-13  Daniel Franke  <franke.daniel@gmail.com>
+
+       * invoke.texi: Unified upper- and lower-case in menus.
+       (-w, -W): Removed, documented by gcc.
+       * intrinsic.texi: Unified Class-section entries, added
+       subroutine/function warning where appropiate.
+
+2007-07-12  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/31639
+       * decl.c (gfc_match_suffix): Removed surplus general error that hides
+       a more specific message.
+       * resolve.c (resolve_fl_variable): Reject illegal initializiers only
+       if not already done.
+       (resolve_fl_procedure): Added check for initializers of functions.
+
+2007-07-12  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/32704
+       * invoke.texi (-static-libgfortran): Document new option.
+
+2007-07-12  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/32634
+       PR fortran/32727
+       * module.c (write_generic): Restore patch of 2007-07-10 and use
+       symbol name if there are no use names. 
+
+2007-07-12  Christopher D. Rickett  <crickett@lanl.gov>
+
+       PR fortran/32599
+       * decl.c (verify_c_interop_param): Require character string dummy
+       args to BIND(C) procedures to have length 1.
+       * resolve.c (resolve_fl_procedure): Modify parameter checking for
+       BIND(C) procedures.
+
+       PR fortran/32601
+       * resolve.c (gfc_iso_c_func_interface): Verify that a valid
+       expression is given as an argument to C_LOC and C_ASSOCIATED.
+       * trans-io.c (transfer_expr): Add argument for code block.  Add
+       standards check to determine if an error message should be
+       reported for printing C_PTR or C_FUNPTR.
+       (transfer_array_component): Update arguments to transfer_expr.
+       (gfc_trans_transfer): Ditto.
+
+       * symbol.c (gen_cptr_param): Fix whitespace.
+
+2007-07-12  Jakub Jelinek  <jakub@redhat.com>
+
+       PR fortran/32550
+       * trans.h (GFC_POINTER_TYPE_P): Define.
+       * trans-types.c (gfc_sym_type): Set it for types on attr->sym.pointer.
+       * trans-openmp.c (gfc_omp_privatize_by_reference): Return false
+       if GFC_POINTER_TYPE_P is set on the type.
+
+2007-07-12  Richard Guenther  <rguenther@suse.de>
+
+       * trans-intrinsic.c (gfc_conv_intrinsic_repeat): Convert
+       arguments to gfc_charlen_type_node.
+       * trans-io.c (gfc_convert_array_to_string): Convert type
+       size to gfc_array_index_type.
+
+2007-07-12  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/32634
+       PR fortran/32727
+       * module.c: Reverted Paul's patch from 2007-07-10.
+
+2007-07-11  Richard Guenther  <rguenther@suse.de>
+
+       * trans-array.c (gfc_conv_array_parameter): Use correct
+       types for comparison.
+       * trans-intrinsic.c (gfc_conv_intrinsic_repeat): Use
+       correct types for POINTER_PLUS_EXPR.
+       * trans-stmt.c (gfc_trans_forall_loop): Use correct type
+       for integer one constant.
+
+2007-07-10  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/32157
+       * resolve.c (is_external_proc): New function.  Adds test that
+       the symbol is not an intrinsic procedure.
+       * (resolve_function, resolve_call): Replace logical statements
+       with call to is_external_proc.
+
+       PR fortran/32689
+       * simplify.c (gfc_simplify_transfer): If mold has rank, the
+       result is an array.
+
+       PR fortran/32634
+       * module.c (write_generic): Write the local name of the
+       interface. 
+
+2007-07-09  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/29459
+       * trans-array.c (gfc_trans_array_constructor): Mark offset field
+       with TREE_NO_WARNING.
+       * trans-decl.c (gfc_build_qualified_array): Mark lbound, ubound,
+       stride and size variables with TREE_NO_WARNING.
+
+2007-07-09  Steven G. Kargl  <kargl@gcc.gnu.org>
+
+       * trans-decl.c (set_tree_decl_type_code): Remove function.
+       (generate_local_decl): Remove reference to set_tree_decl_type_code.
+
+2007-07-09  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/31129
+       * trans-decl.c (generate_local_decl) Emit a warning if an unused
+       parameter is found.
+
+2007-07-08  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/29876
+       * module.c (gfc_match_use): Do not set an non-existant 
+       intrinsic operator if a user-defined operator is found.
+
+2007-07-08  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/24784
+       PR fortran/28004
+       * trans-decl.c (generate_local_decl): Adjusted warning on unused 
+       dummy arguments, tell middle-end not to emit additional warnings.
+
+2007-07-08  Daniel Franke  <franke.daniel@gmail.com>
+           Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/17711
+       * gfortran.h (gfc_intrinsic_op): Added INTRINSIC_EQ_OS,
+       INTRINSIC_NE_OS, INTRINSIC_GT_OS, INTRINSIC_GE_OS, 
+       INTRINSIC_LT_OS and INTRINSIC_LE_OS.
+       * arith.c (eval_intrinsic, eval_type_intrinsic0): Likewise.
+       * arith.h (gfc_eq, gfc_ne, gfc_gt, gfc_ge, gfc_lt, gfc_le):
+       Added gfc_intrinsic_op as third argument type.
+       * dump-parse-tree.c (gfc_show_expr): Account for new enum values.
+       * expr.c (simplify_intrinsic_op, check_intrinsic_op): Likewise.
+       * interface.c (check_operator_interface): Likewise.
+       (gfc_check_interfaces): Added cross-checks for FORTRAN 77 and 
+       Fortran 90 style operators using new enum values.
+       (gfc_extend_expr): Likewise.
+       (gfc_add_interface): Likewise.
+       * match.c (intrinsic_operators): Distinguish FORTRAN 77 style
+       operators from Fortran 90 style operators using new enum values.
+       * matchexp.c (match_level_4): Account for new enum values.
+       * module.c (mio_expr): Likewise.
+       * resolve.c (resolve_operator): Deal with new enum values, fix
+       inconsistent error messages.
+       * trans-expr.c (gfc_conv_expr_op): Account for new enum values.
+
+2007-07-08  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/32669
+       * interface.c (get_expr_storage_size): Properly obtain lower bound.
+       (compare_actual_formal): Add space before parenthesis.
+
+2007-07-08  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/25094
+       * resolve.c (resolve_fl_procedure): Added check for PRIVATE types 
+       in PUBLIC interfaces.
+
+2007-07-07  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/32644
+       * decl.c (match_attr_spec): Don't return MATCH_ERROR if comma found and
+       gfc_match_bind_c does not return MATCH_YES.
+
+2007-07-07  Kazu Hirata  <kazu@codesourcery.com>
+
+       * decl.c, gfortran.h, interface.c, module.c, resolve.c,
+       trans-array.c, trans-decl.c: Fix comment typos.  Follow
+       spelling conventions.
+       * intrinsic.texi: Fix typos.  Follow spelling conventions.
+
+2007-05-06  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/32633
+       * symbol.c (save_status): New.
+       * gfortran.h (save_status): Added external declaration.
+       (check_conflict): Check for conflicting explicite SAVE statements
+       only.
+       (gen_special_c_interop_ptr): Use SAVE_EXPLICIT constant.
+       * module.c (ab_attribute, attr_bits): Removed enumerator value 
+       AB_SAVE for save attribute.
+       (mio_symbol_attribute): Import/export the full SAVE status, 
+       removed usage of AB_SAVE.
+       * dump-parse-tree.c (gfc_show_attr): Dump full SAVE status.
+       * decl.c (add_init_expr_to_sym): Set SAVE_IMPLICIT only if not
+       already explicit.
+
+2007-07-05  Daniel Franke  <franke.daniel@gmail.com>
+           Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/32359
+       * gfortran.h (symbol_attribute): Change save attribute into an enum.
+       * decl.c (add_init_expr_to_sym): Set it to SAVE_IMPLICIT.
+       * symbol.c (gfc_add_save): Check for SAVE_EXPLICIT.
+       * resolve.c (resolve_fl_variable): Check for SAVE_EXPLICIT.
+       (resolve_symbol): Allow OMP threadprivate with
+       initialization SAVEd and save_all variable.
+       * trans-decl.c (gfc_finish_var_decl): Remove obsolete sym->value check.
+
+2007-07-05  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/32526
+       * match.c (gfc_match_call): Check, in all cases, that a symbol
+       is neither generic nor a subroutine before trying to add it as
+       a subroutine.
+
+       PR fortran/32613
+       * match.c (gfc_match_do): Reset the implied_index attribute.
+
+2007-07-04  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/31198
+       * trans-intrinsic.c (trans-intrinsic.c): Handle optional
+       arguments correctly for MIN and MAX intrinsics.
+
+2007-07-03  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/32545
+       * io.c (check_format): Always call gfc_error for errors.
+       (check_format_string): Change type of this function to try and
+       return the result of check_format.
+       (check_io_constraints): Return MATCH_ERROR if check_format_string
+       returns FAILURE.
+
+2007-07-03  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/32612
+       * decl.c (get_proc_name): Include attr->mod_proc in check for error.
+
+2007-07-03  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/32432
+       * gfortran.h: Change type of gfc_assign_data_value from void to try.
+       * data.c (gfc_assign_data_value): Return FAILURE if error found.
+       * resolve.c (check_data_variable): If gfc_assign_data_value returns
+       failure, break out of loop and return failure.
+
+2007-07-03  Christopher D. Rickett  <crickett@lanl.gov>
+
+       PR fortran/32579
+       * symbol.c (gen_cptr_param): Generate C_PTR and C_FUNPTR if necessary.
+       (build_formal_args): Pass intrinsic module symbol id to
+       gen_cptr_param.
+
+2007-07-03  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/25062
+       * resolve.c (resolve_common_blocks): New check function.
+       (resolve_types): Use it.
+
+2007-07-03  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/30940
+       * interface.c (get_sym_storage_size): New function.
+       (get_sym_storage_size): New function.
+       (compare_actual_formal): Enhance sequence association
+       support and improve checking.
+
+2007-07-03  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       * trans-decl.c (gfc_build_builtin_function_decls): Mark
+       internal_realloc as a malloc function.
+
+2007-07-03  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/20888
+       * resolve.c (resolve_operator): Check for NULL as operand.
+
+2007-07-02  Tobias Burnus  <burnus@net-b.de>
+
+       * gfortran.texi (Fortran 2003): Add ISO Bind C.
+       * intrinsic.texi (C_ASSOCIATED,C_F_POINTER,C_F_PROCPOINTER,
+       C_FUNLOC,C_LOC): Document new ISO Bind C intrinsics.
+
+2007-07-01  Christopher D. Rickett  <crickett@lanl.gov>
+
+       * interface.c (gfc_compare_derived_types): Special case for comparing
+       derived types across namespaces.
+       (gfc_compare_types): Deal with BT_VOID.
+       (compare_parameter): Use BT_VOID to accept ISO C Binding pointers.
+       * trans-expr.c (gfc_conv_function_call): Remove setting parm_kind
+       to SCALAR
+       (gfc_conv_initializer): Deal with ISO C Binding NULL_PTR and 
+       NULL_FUNPTR.
+       (gfc_conv_expr): Convert expressions for ISO C Binding derived types.
+       * symbol.c (gfc_set_default_type): BIND(C) variables should not be
+       Implicitly declared.
+       (check_conflict): Add BIND(C) and check for conflicts.
+       (gfc_add_explicit_interface): Whitespace.       
+       (gfc_add_is_bind_c): New function.  
+       (gfc_copy_attr): Use it.
+       (gfc_new_symbol): Initialize ISO C Binding objects.
+       (get_iso_c_binding_dt):  New function.
+       (verify_bind_c_derived_type): Ditto.
+       (gen_special_c_interop_ptr): Ditto.
+       (add_formal_arg): Ditto.
+       (gen_cptr_param): Ditto.
+       (gen_fptr_param): Ditto.
+       (gen_shape_param): Ditto.
+       (add_proc_interface): Ditto.
+       (build_formal_args): Ditto.
+       (generate_isocbinding_symbol):  Ditto.
+       (get_iso_c_sym):  Ditto.
+       * decl.c (num_idents_on_line, has_name_equals): New variables.
+       (verify_c_interop_param): New function.
+       (build_sym): Finish binding labels and deal with COMMON blocks.
+       (add_init_expr_to_sym): Check if the initialized expression is
+       an iso_c_binding named constants
+       (variable_decl): Set ISO C Binding type_spec components.
+       (gfc_match_kind_spec): Check match for C interoperable kind.
+       (match_char_spec): Fix comment. Chnage gfc_match_small_int
+       to gfc_match_small_int_expr.  Check for C interoperable kind.
+       (match_type_spec): Clear the current binding label.
+       (match_attr_spec): Add DECL_IS_BIND_C.  If BIND(C) is found, use it
+       to set attributes.
+       (set_binding_label): New function.
+       (set_com_block_bind_c): Ditto.
+       (verify_c_interop): Ditto.
+       (verify_com_block_vars_c_interop): Ditto.
+       (verify_bind_c_sym): Ditto.
+       (set_verify_bind_c_sym): Ditto.
+       (set_verify_bind_c_com_block): Ditto.
+       (get_bind_c_idents): Ditto.
+       (gfc_match_bind_c_stmt): Ditto.
+       (gfc_match_data_decl): Use num_idents_on_line.
+       (match_result): Deal with right paren in BIND(C).
+       (gfc_match_suffix): New function.
+       (gfc_match_function_decl): Use it.  Code is re-arranged to deal with
+       ISO C Binding result clauses.
+       (gfc_match_subroutine):  Deal with BIND(C).
+       (gfc_match_bind_c): New function.
+       (gfc_get_type_attr_spec): New function.  Code is re-arranged in and
+       taken from gfc_match_derived_decl.
+       (gfc_match_derived_decl): Add check for BIND(C).
+       * trans-common.c: Forward declare gfc_get_common.
+       (gfc_sym_mangled_common_id): Change arg from 'const char *name' to
+       'gfc_common_head *com'.  Check for ISO C Binding of the common block.
+       (build_common_decl): 'com->name' to 'com in SET_DECL_ASSEMBLER_NAME.
+       * gfortran.h: Add GFC_MAX_BINDING_LABEL_LEN
+       (bt): Add BT_VOID
+       (sym_flavor): Add FL_VOID.
+       (iso_fortran_env_symbol, iso_c_binding_symbol, intmod_id): New enum
+       (CInteropKind_t): New struct.
+       (c_interop_kinds_table): Use it.  Declare an array of structs.
+       (symbol_attribute): Add is_bind_c, is_c_interop, and is_iso_c
+       bitfields.
+       (gfc_typespec): Add is_c_interop; is_iso_c, and f90_type members.
+       (gfc_symbol): Add from_intmod, intmod_sym_id, binding_label, and
+       common_block members.
+       (gfc_common_head): Add binding_label and is_bind_c members.
+       (gfc_gsymbol): Add sym_name, mod_name, and binding_label members.
+       Add prototypes for get_c_kind, gfc_validate_c_kind, 
+       gfc_check_any_c_kind, gfc_add_is_bind_c, gfc_add_value,
+       verify_c_interop, verify_c_interop_param, verify_bind_c_sym,
+       verify_bind_c_derived_type, verify_com_block_vars_c_interop,
+       generate_isocbinding_symbol, get_iso_c_sym, gfc_iso_c_sub_interface
+       * iso-c-binding.def: New file. This file contains the definitions
+       of the types provided by the Fortran 2003 ISO_C_BINDING intrinsic
+       module.
+       * trans-const.c (gfc_conv_constant_to_tree): Deal with C_NULL_PTR
+        or C_NULL_FUNPTR expressions.
+       * expr.c (gfc_copy_expr): Add BT_VOID case.  For BT_CHARACTER, the
+       ISO C Binding requires a minimum string length of 1 for '\0'.  
+       * module.c (intmod_sym): New struct.
+       (pointer_info): Add binding_label member.
+       (write_atom): Set len to 0 for NULL pointers. Check for NULL p and *p.
+       (ab_attribute): Add AB_IS_BIND_C, AB_IS_C_INTEROP and AB_IS_ISO_C.
+       (attr_bits): Add "IS_BIND_C", "IS_C_INTEROP", and "IS_ISO_C".
+       (mio_symbol_attribute): Deal with ISO C Binding attributes.
+       (bt_types): Add "VOID".
+       (mio_typespec): Deal with ISO C Binding components.
+       (mio_namespace_ref): Add intmod variable. 
+       (mio_symbol): Check for symbols from an intrinsic module.
+       (load_commons): Check for BIND(C) common block.
+       (read_module): Read binding_label and use it.
+       (write_common): Add label.  Write BIND(C) info.
+       (write_blank_common): Blank commons are not BIND(C).  Explicitly
+       set is_bind_c=0.
+       (write_symbol): Deal with binding_label.
+       (sort_iso_c_rename_list): New function.
+       (import_iso_c_binding_module): Ditto.
+       (create_int_parameter): Add to args.
+       (use_iso_fortran_env_module): Adjust to deal with iso_c_binding
+       intrinsic module.
+       * trans-types.c (c_interop_kinds_table): new array of structs. 
+       (gfc_validate_c_kind): New function.
+       (gfc_check_any_c_kind): Ditto.
+       (get_real_kind_from_node): Ditto.
+       (get_int_kind_from_node): Ditto.
+       (get_int_kind_from_width): Ditto.
+       (get_int_kind_from_minimal_width): Ditto.
+       (init_c_interop_kinds): Ditto.
+       (gfc_init_kinds): call init_c_interop_kinds.
+       (gfc_typenode_for_spec): Adjust for BT_VOID and ISO C Binding pointers.
+       Adjust handling of BT_DERIVED.
+       (gfc_sym_type): Whitespace.
+       (gfc_get_derived_type):  Account for iso_c_binding derived types
+       * resolve.c (is_scalar_expr_ptr): New function.
+       (gfc_iso_c_func_interface): Ditto.
+       (resolve_function): Use gfc_iso_c_func_interface. 
+       (set_name_and_label): New function.
+       (gfc_iso_c_sub_interface): Ditto.
+       (resolve_specific_s0): Use gfc_iso_c_sub_interface.
+       (resolve_bind_c_comms): New function.
+       (resolve_bind_c_derived_types): Ditto.
+       (gfc_verify_binding_labels): Ditto.
+       (resolve_fl_procedure): Check for ISO C interoperability.
+       (resolve_symbol): Check C interoperability.
+       (resolve_types): Walk the namespace.  Check COMMON blocks.
+       * trans-decl.c (gfc_sym_mangled_identifier):  Prevent the mangling
+       of identifiers that have an assigned binding label.
+       (gfc_sym_mangled_function_id): Use the binding label rather than
+       the mangled name.
+       (gfc_finish_var_decl): Put variables that are BIND(C) into a common
+       segment of the object file, because this is what C would do.
+       (gfc_create_module_variable): Conver to proper types
+       (set_tree_decl_type_code): New function.
+       (generate_local_decl): Check dummy variables and derived types for
+       ISO C Binding attributes.
+       * match.c (gfc_match_small_int_expr): New function.
+       (gfc_match_name_C): Ditto.
+       (match_common_name): Deal with ISO C Binding in COMMON blocks
+       * trans-io.c (transfer_expr):  Deal with C_NULL_PTR or C_NULL_FUNPTR
+       expressions
+       * match.h: Add prototypes for gfc_match_small_int_expr,
+       gfc_match_name_C, match_common_name, set_com_block_bind_c,
+       set_binding_label, set_verify_bind_c_sym,
+       set_verify_bind_c_com_block, get_bind_c_idents,
+       gfc_match_bind_c_stmt, gfc_match_suffix, gfc_match_bind_c,
+       gfc_get_type_attr_spec
+       * parse.c (decode_statement): Use gfc_match_bind_c_stmt
+       (parse_derived): Init *derived_sym = NULL, and gfc_current_block
+       later for valiadation.
+       * primary.c (got_delim): Set ISO C Binding components of ts.
+       (match_logical_constant): Ditto.
+       (match_complex_constant): Ditto.
+       (match_complex_constant): Ditto.
+       (gfc_match_rvalue): Check for existence of at least one arg for
+       C_LOC, C_FUNLOC, and C_ASSOCIATED.
+       * misc.c (gfc_clear_ts): Clear ISO C Bindoing components in ts.
+       (get_c_kind): New function.
+
+2007-07-01  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       PR fortran/32239
+       * trans-expr.c (gfc_conv_power_op): Use builtin_powi for
+       real**int4 powers.
+       * f95-lang.c (gfc_init_builtin_functions): Add builtin_powi to the
+       builtins table.
+
+2007-07-01  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       * trans.h: Remove decls for 64-bit allocation functions.
+       * trans-array.c (gfc_grow_array): Always pick the standard realloc
+       function decl.
+       (gfc_array_allocate): Likewise.
+       * trans-decl.c: Remove trees for 64-bit allocation functions.
+       (gfc_build_builtin_function_decls): Don't build fndecls for 64-bit
+       allocations functions, use index_int_type for normal allocation
+       functions.
+
+2007-06-30  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/20373
+       * intrinsic.c (add_functions): Additional function types.
+       (gfc_convert_type_warn): Remove intrinsic-flag from
+       conversion functions.
+       * resolve.c (resolve_symbol): Added type checks to 
+       explicitly defined intrinsics.
+
+2007-06-30  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/32555
+       * io.c (check_format): Allow zero to precede the
+       P edit descriptor.
+
+2007-06-30  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/32472
+       * simplify.c (gfc_simplify_repeat): Add handling of character
+       literal for first argument.
+
+2007-06-29  Daniel Franke  <franke.daniel@gmail.com>
+
+       * resolve.c (resolve_operator): Added check whether a user
+       defined operator is available.
+
+2007-06-29  Daniel Franke <franke.daniel@gmail.com>
+
+       * openmp.c (resolve_omp_clauses): Adjust error message to
+       better reflect the actual requirement.
+
+2007-06-29  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/32483
+       * io.c (format_lex): Fix FMT_ZERO.
+       (check_format,check_format_string,gfc_match_format,
+       check_io_constraints) Additional checking for READ.
+
+2007-06-28 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+       PR other/31400
+       * lang.opt (static-libgfortran): New option.
+       * gfortranspec.c (ADD_ARG_LIBGFORTRAN): New macro.
+       (Option): Add OPTION_static and OPTION_static_libgfortran.
+       (lookup_option): Handle the new -static-libgfortran option.
+       (lang_specific_driver): Check whether -static is passed.
+       Handle the new -static-libgfortran option.
+       * options.c (gfc_handle_option): If -static-libgfortran is
+       passed and isn't supported on this configuration, error out.
+
+2007-06-27  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/32467
+       * openmp.c (resolve_omp_clauses): Emit error on allocatable
+       components in COPYIN, COPYPRIVATE, FIRSTPRIVATE and LASTPRIVATE
+       clauses.
+
+2007-06-25  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/32464
+       * resolve.c (check_host_association): Return if the old symbol
+       is use associated.  Introduce retval to reduce the number of
+       evaluations of the first-order return value.
+
+       PR fortran/31494
+       * match.c (gfc_match_call): If a host associated symbol is not
+       a subroutine, build a new symtree/symbol in the current name
+       space.
+
+2007-06-24  Tobias Burnus  <burnus@net-de>
+
+       PR fortran/32460
+       * interface.c (gfc_compare_derived_types): Add access check.
+       * symbol.c (gfc_find_component): Ditto.
+       (gfc_set_component_attr,gfc_get_component_attr) Copy access state.
+       * dump-parse-tree.c (gfc_show_components): Dump access state.
+       * gfortran.h (struct gfc_component): Add gfc_access.
+       * module.c (mio_component): Add access state.
+       * (gfc_match_structure_constructor): Check for private access state.
+
+2007-06-24  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/32298
+       PR fortran/31726
+       * trans-intrinsic.c (gfc_conv_intrinsic_minmaxloc): Calculate
+       the offset between the loop counter and the position as
+       defined. Add the offset within the loop so that the mask acts
+       correctly.  Do not advance the location on the basis that it
+       is zero.
+
+2007-06-22  Daniel Franke  <franke.daniel@gmail.com>
+
+       PR fortran/31473
+       * symbol.c (gfc_copy_attr): Emit errors for duplicate 
+       EXTERNAL/INTRINSIC statements.
+
+2007-06-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/32360
+       * expr.c (gfc_check_assign): If the rvalue expression type is NULL_EXPR,
+       check to see if the lvalue has attribute pointer and data.  
+
+2007-06-21  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/31162
+       * resolve.c (gfc_resolve_iterator_expr): Add check for REAL using
+       gfc_notify_standard. (gfc_resolve_iterator): Remove check.
+       (resolve_branch): Change "Obsolete" to "Deleted feature".
+       * io.c (resolve_tag): Ditto.
+       * match.c (gfc_match_pause, gfc_match_assign, gfc_match_goto): Ditto.
+
+2007-06-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/32361
+       * match.c (gfc_match_common): If the symbol value expression type is
+       NULL_EXPR, don't error if previously initialized.
+
+2007-06-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/25061
+       * decl.c (get_proc_name) Check symbol for generic interface
+       and issue an error.
+
+2007-06-20  Andrew Pinski  <andrew_pinski@playstation.sony.com>
+       Richard Guenther  <rguenther@suse.de>
+
+       PR fortran/32140
+       * trans.c (gfc_build_addr_expr): Use the correct types.
+
+2007-06-19  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/20863
+       PR fortran/20882
+       * resolve.c (resolve_code): Use gfc_impure_variable as a
+       condition for rejecting derived types with pointers, in pure
+       procedures.
+       (gfc_impure_variable): Add test for dummy arguments of pure
+       procedures; any for functions and INTENT_IN for subroutines.
+
+       PR fortran/32236
+       * data.c (gfc_assign_data_value): Change the ICE on an array
+       reference initializer not being an array into an error and
+       clear init to prevent a repetition of the error.
+
+2007-06-17  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       * gfortran.texi: Add documentation for GFORTRAN_UNBUFFERED_n
+       environment variables. Fix documentation for
+       GFORTRAN_UNBUFFERED_ALL environment variable.
+
+2007-06-15  Andrew Pinski  <andrew_pinski@playstation.sony.com>
+
+       * trans-intrinsic.c (gfc_conv_intrinsic_repeat): Use
+       POINTER_PLUS_EXPR instead of PLUS_EXPR for pointer addition.
+       * trans-expr.c (gfc_trans_string_copy): Create
+       POINTER_PLUS_EXPR instead of a PLUS_EXPR
+       for pointer types.
+
+2007-06-14  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/32302
+       * trans-common.c (build_common_decl): If resizing of common
+       decl is needed, update the TREE_TYPE.
+
+2007-06-13  Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/32323
+       * interface.c (has_vector_section): New.
+       (compare_actual_formal): Check for array sections with vector subscript.
+
+2007-06-12  Dirk Mueller  <dmueller@suse.de>
+
+       * trans-stmt.c (gfc_trans_call): fix gcc_assert to
+       a comparison, not an assignment.
+
+2007-06-12  Paul Thomas  <pault@gcc.gnu.org>
+
+       * trans-common.c (create_common): Initialize 'field_init'.
+
+2007-06-12  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/29786
+       PR fortran/30875
+       * trans-common.c (get_init_field): New function.
+       (create_common): Call get_init_field for overlapping
+       initializers in equivalence blocks.
+       * resolve.c (resolve_equivalence_derived, resolve_equivalence):
+       Remove constraints on initializers in equivalence blocks.
+       * target-memory.c (expr_to_char, gfc_merge_initializers):
+       New functions.
+       (encode_derived): Add the bit offset to the byte offset to get
+       the total offset to the field.
+       * target-memory.h : Add prototype for gfc_merge_initializers.
+
+2007-06-11  Rafael Avila de Espindola  <espindola@google.com>
+
+       * trans-types.c (gfc_signed_type): Remove.
+       * trans-types.h (gfc_signed_type): Remove.
+       * f95-lang.c (LANG_HOOKS_SIGNED_TYPE): Remove.
+
+2007-06-08 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+       * trans-intrinsic.c: Revert Lee's 2007-06-04 patch.
+
+2007-06-07  Steven G. Kargl  <kargl@gcc.gnu.org>
+           Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/32223
+       * match.c (gfc_match_special_char): New function.  Match special char.
+       Add handling '\0'.
+       * match.h: Add prototype.
+       * io.c (next_char): Use it.
+       * primary.c (next_string_char): Ditto.
+
+2007-06-06  Steven G. Kargl  <kargl@gcc.gnu.org>
+
+       * decl.c: Miscellaneous whitespace fixes.
+       * expr.c: Likewise.
+       * gfortran.h: Likewise.
+       * interface.c : Likewise.
+       * io.c: Likewise.
+       * match.c: Likewise.
+       * match.h: Likewise.
+       * module.c: Likewise.
+       * parse.c: Likewise.
+       * resolve.c: Likewise.
+       * symbol.c: Likewise.
+       * trans-array.c: Likewise.
+       * trans-common.c: Likewise.
+       * trans-decl.c: Likewise.
+       * trans-intrinsic.c: Likewise.
+       * trans-io.c: Likewise.
+       * trans-stmt.c: Likewise.
+       * trans-types.c: Likewise.
+
+2007-06-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/18923
+       * parse.c (decode_statement): Don't call gfc_undo_symbols on MATCH_ERROR
+       for ST_FUNCTION since it is called in reject_statement.
+       (parse_contained): If error, loop back after reject_statement and try
+       again.  Free the namespace if an error occured.
+
+2007-06-04 Lee Millward <lee.millward@codesourcery.com>
+
+       * trans-intrinsic.c (gfc_conv_intrinsic_function_args): Adjust
+       to operate on a stack allocated array for the intrinsic arguments
+       instead of creating a TREE_LIST. Add two new parameters for the
+       array and the number of elements. Update all callers to allocate
+       an array of the correct length to pass in. Update comment.
+       (gfc_intrinsic_argument_list_length): New function.
+       (gfc_conv_intrinsic_mnimax): Call it.
+       (gfc_conv_intrinsic_merge): Likewise.
+       (gfc_conv_intrinsic_lib_function): Call it. Use new CALL_EXPR
+       constructors.
+       (gfc_conv_intrinsic_cmplx): Likewise.
+       (gfc_conv_intrinsic_ctime): Likewise.
+       (gfc_covn_intrinsic_fdate): Likewise.
+       (gfc_conv_intrinsic_ttynam): Likewise.
+       (gfc_conv_intrinsic_ishftc): Likewise.
+       (gfc_conv_intrinsic_index): Likewise.
+       (gfc_conv_intrinsic_scan): Likewise.
+       (gfc_conv_intrinsic_verify): Likewise.
+       (gfc_conv_intrinsic_trim): Likewise.
+       (gfc_conv_intrinsic_aint): Use new CALL_EXPR constructors.
+       (gfc_conv_intrinsic_exponent): Likewise.
+       (gfc_conv_intrinsic_bound): Likewise.
+       (gfc_conv_intrinsic_abs): Likewise.
+       (gfc_conv_intrinsic_mod): Likewise.
+       (gfc_conv_intrinsic_sign): Likewise.
+       (gfc_conv_intrinsic_len): Likewise.
+       (gfc_conv_intrinsic_adjust): Likewise.
+       (gfc_conv_intrinsic_si_kind): Likewise.
+
+2007-06-04  Steve Ellcey  <sje@cup.hp.com>
+
+       * trans-array.c (gfc_conv_array_parameter): Initialize tmp.
+
+2007-05-31  Richard Guenther  <rguenther@suse.de>
+
+       * trans-expr.c (gfc_conv_expr_op): Use zero constant
+       that matches the lse type.
+       (gfc_trans_string_copy): Use sizetype zero constant.
+       * intrinsic.c (add_functions): The sizeof intrinsic has
+       index type result.
+       * trans-types.c (gfc_get_dtype): Convert size to index
+       type before shifting.
+       * trans-array.c (gfc_trans_array_constructor_value): Use
+       index type for offset computation.
+       * trans-intrinsic.c (gfc_conv_associated): Use correct type
+       for zero constant.
+
+2007-05-31  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/32156
+       * trans-array.c (gfc_trans_array_constructor): Treat the case
+       where the ss expression charlen is missing.
+
+22007-05-31  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/32103
+       * module.c (mio_symtree_ref): If an equivalence group member
+       is not used, give it a hidden symbol and set the pointer_info.
+       (load_equiv): Only free the equivalence if none of the members
+       are used.
+
+2007-05-29  Daniel Franke  <franke.daniel@gmail.com>
+
+       * gfortran.h: Renamed 'enum gfc_generic_isym_id' to 'enum gfc_isym_id',
+       added missing GFC_ISYM_* enumerators, ordered alphabetically.
+       (struct gfc_intrinsic_sym): Renamed 'generic_id' to 'id'.
+       (gfc_find_subroutine): New prototype.
+       * intrinsic.c (add_sym, add_sym_*): Added argument 'id' and changed all callers.
+       (find_subroutine): Renamed to 'gfc_find_subroutine', removed static.  
+       * dependency.c: Changed usage of isym->generic_id to isym->id.  
+       * openmp.c: Likewise.  
+       * resolve.c: Likewise.  
+       * trans-array.c: Likewise.  
+       * trans-expr.c: Likewise.  
+       * trans-intrinsic.c: Likewise.  
+       * trans-openmp.c: Likewise.
+
+2007-05-28  Tobias Schlüter  <tobi@gcc.gnu.org>
+
+       * gfortran.h (gfc_generic_isym_id): Add GFC_ISYM_SIZEOF.
+       * intrinsic.c (add_functions): Add stuff for SIZEOF intrinsic.
+       * intrinsic.h (gfc_check_sizeof): Add prototype of ...
+       * check.c (gfc_check_sizeof): .. new function.
+       * trans-intrinsic.c (gfc_conv_intrinsic_sizeof): New function.
+       (gfc_conv_intrinsic_strcmp): Whitespace fix.
+       (gfc_conv_intrinsic_array_transfer): Remove double initialization,
+       use fold_build. where appropriate.
+       (gfc_conv_intrinsic_function): Add case for SIZEOF.
+       * intrinsic.texi: Add documentation for SIZEOF.
+
+2007-05-28  Brooks Moses  <brooks.moses@codesourcery.com>
+
+       * trans-array.c (gfc_conv_expr_descriptor): Edit comment.
+
+2007-05-28  Brooks Moses  <brooks.moses@codesourcery.com>
+
+       PR fortran/31972
+       * target-memory.c (gfc_target_expr_size): Add handling
+       for size of BT_HOLLERITH variables.
+       * check.c (gfc_check_transfer): Reject BT_HOLLERITH
+       variables in MOLD argument of TRANSFER.
+
+2007-05-28  Brooks Moses  <brooks.moses@codesourcery.com>
+
+       * gfortran.h (gfc_expr): Remove from_H, add "representation"
+       struct.
+       * primary.c (match_hollerith_constant): Store the representation
+       of the Hollerith in representation, not in value.character.
+       * arith.c: Add dependency on target-memory.h.
+       (eval_intrinsic): Remove check for from_H.
+       (hollerith2representation): New function.
+       (gfc_hollerith2int): Determine value of the new constant.
+       (gfc_hollerith2real): Likewise.
+       (gfc_hollerith2complex): Likewise.
+       (gfc_hollerith2logical): Likewise.
+       (gfc_hollerith2character): Point both representation.string and
+       value.character.string at the value string.
+       * data.c (create_character_initializer): For BT_HOLLERITH
+       rvalues, get the value from the representation rather than
+       value.character.
+       * expr.c (free_expr0): Update handling of BT_HOLLERITH values
+       and values with representation.string.
+       (gfc_copy_expr): Likewise.
+       * intrinsic.c (do_simplify): Remove special treatement of
+       variables resulting from Hollerith constants.
+       * dump-parse-trees.c (gfc_show_expr): Update handling of
+       Holleriths.
+       * trans-const.c (gfc_conv_constant_to_tree): Replace from_H
+       check with check for representation.string; get Hollerith
+       representation from representation.string, not value.character.
+       * trans-expr.c (is_zero_initializer_p): Replace from_H check
+       with check for representation.string.
+       * trans-stmt.c (gfc_trans_integer_select): Use
+       gfc_conv_mpz_to_tree for case values, so as to avoid picking up
+       the memory representation if the case is given by a transfer
+       expression.
+       * target-memory.c (gfc_target_encode_expr): Use the known memory
+       representation rather than the value, if it exists.
+       (gfc_target_interpret_expr): Store the memory representation of
+       the interpreted expression as well as its value.
+       (interpret_integer): Move to gfc_interpret_integer, make
+       non-static.
+       (interpret_float): Move to gfc_interpret_float, make non-static.
+       (interpret_complex): Move to gfc_interpret_complex, make
+       non-static.
+       (interpret_logical): Move to gfc_interpret_logical, make
+       non-static.
+       (interpret_character): Move to gfc_interpret_character, make
+       non-static.
+       (interpret_derived): Move to gfc_interpret_derived, make
+       non-static.
+       * target-memory.h: Add prototypes for newly-exported
+       gfc_interpret_* functions.
+
+2007-05-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/31812
+       * parse.c (next_statement): Warn for truncated lines if source is free
+       form.
+
+2007-05-27 Paul Thomas  <pault@gcc.gnu.org>
+          Tobias Burnus  <burnus@net-b.de>
+
+       PR fortran/32088
+       * symbol.c (gfc_check_function_type): Copy dimensions of
+         result variable.
+       * resolve.c (resolve_contained_fntype): Improve symbol output in
+         the error message.
+
+2007-05-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/31813
+       * io.c (check_format): Add warning for H specifier in format.
+       
+2007-05-26  Tobias Burnus  <burnus@net-b.de>
+
+       * gfortran.texi: Document the GFORTRAN_ERROR_DUMPCORE and
+       GFORTRAN_ERROR_BACKTRACE environment variables.
+
+2007-05-26  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/31219
+       * trans.h : Add no_function_call bitfield to gfc_se structure.
+       Add stmtblock_t argument to prototype of get_array_ctor_strlen.
+       * trans-array.c (get_array_ctor_all_strlen): New function.
+       (get_array_ctor_strlen): Add new stmtblock_t argument and call
+       new function for character elements that are not constants,
+       arrays or variables.
+       (gfc_conv_array_parameter): Call get_array_ctor_strlen to get
+       good string length.
+       * trans-intrinsic (gfc_conv_intrinsic_len): Add new argument
+       to call of get_array_ctor_strlen.
+
+2007-05-25  Kazu Hirata  <kazu@codesourcery.com>
+
+       * intrinsic.texi: Fix typos.
+
+2007-05-25  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/32047
+       * trans-expr.c (gfc_apply_interface_mapping_to_expr): Change
+       order in logic under EXPR_FUNCTION to handle functions with
+       no arguments.
+
+2007-05-23  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/31716
+       * array.c (spec_dimen_size): Test for correct BT_INTEGER type. 
+
+2007-05-23  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
+
+       PR fortran/32046
+       * trans-expr.c (gfc_trans_zero_assign): Convert the result of
+       TYPE_SIZE_UNIT into a signed type.
+       (gfc_trans_array_copy):  Likewise.
+       (gfc_trans_array_constructor_copy): Likewise.
+       * trans-array.c (gfc_trans_create_temp_array): Likewise.
+       (gfc_grow_array): Likewise.
+       (gfc_array_init_size): Likewise.
+       (gfc_duplicate_allocatable): Likewise.
+       * trans-stmt.c (allocate_temp_for_forall_nest_1): Likewise.
+
+2007-05-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/18923
+       * resolve.c (resolve_function): Don't call resolve_global_procedure if
+       there is no name. Delete duplicated statement in ELSE clause.
+
+2007-05-22 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+       PR fortran/31627
+       * trans-array.c (gfc_trans_array_bound_check): Take extra argument to
+       indicate whether we should check the upper bound in th