* Split the ChangeLog into years.
authorkargl <kargl@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 1 Jan 2006 17:04:47 +0000 (17:04 +0000)
committerkargl <kargl@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 1 Jan 2006 17:04:47 +0000 (17:04 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109224 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/fortran/ChangeLog
gcc/fortran/ChangeLog-2002 [new file with mode: 0644]
gcc/fortran/ChangeLog-2003 [new file with mode: 0644]
gcc/fortran/ChangeLog-2004 [new file with mode: 0644]
gcc/fortran/ChangeLog-2005 [new file with mode: 0644]

index 4d7e648..c8c82da 100644 (file)
-2005-12-30  Erik Edelmann  <eedelman@gcc.gnu.org>
+2006-01-01  Steven G. Kargl  <kargls@comcast.net>
 
-       PR fortran/22607
-       * trans-decl.c(gfc_get_extern_function_decl): Don't set
-       DECL_IS_PURE (fndecl) = 1 for return-by-reference
-       functions.
-
-       fortran/PR 25396
-       * interface.c (gfc_extend_expr): Initialize
-       e->value.function.name to NULL.
-
-2005-12-29  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/25532
-       * trans-types.c (copy_dt_decls_ifequal): Copy declarations for
-       components of derived type components by recursing into
-       gfc_get_derived_type.
-
-2005-12-28  Andrew Pinski  <pinskia@physics.uc.edu>
-
-       PR fortran/25587
-       * trans-io.c (gfc_build_st_parameter): Correct off by one error.
-
-2005-12-28  Rafael Ávila de Espíndola  <rafael.espindola@gmail.com>
-
-       * Make-lang.in: Remove distdir from comment.
-
-2005-12-24  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/25029
-       PR fortran/21256
-       * resolve.c (check_assumed_size_reference, resolve_assumed_size_actual):
-       Remove because of regressions caused by patch.
-       (resolve_function, resolve_call, resolve_variable): Remove assumed size
-       checks because of regressionscaused by patch.
-
-2005-12-23  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/25029
-       PR fortran/21256
-       *resolve.c(resolve_function): Remove assumed size checking for SIZE
-       and UBOUND and rely on their built-in checking.
-
-2005-12-22  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/18990
-       * gfortran.h (gfc_charlen): Add resolved field.
-       * expr.c (gfc_specification_expr): Accept NULL argument.
-       * resolve.c (gfc_resolve_charlen, gfc_resolve_derived): New.
-       (gfc_resolve_symbol): Resolve derived type definitions.  Use
-       resolve_charlen to resolve character lengths.
-
-2005-12-22  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/20889
-       *resolve.c(resolve_structure_cons): Do not attempt to convert
-       the type of mismatched pointer type components, except when
-       the constructor component is BT_UNKNOWN; emit error instead.
-
-       PR fortran/25029
-       PR fortran/21256
-       *resolve.c(check_assumed_size_reference): New function to check for upper
-       bound in assumed size array references.
-       (resolve_assumed_size_actual): New function to do a very restricted scan
-       of actual argument expressions of those procedures for which incomplete
-       assumed size array references are not allowed.
-       (resolve_function, resolve_call): Switch off assumed size checking of
-       actual arguments, except for elemental procedures and array valued
-       intrinsics; excepting LBOUND.
-       (resolve_variable): Call check_assumed_size_reference.
-
-       PR fortran/19362
-       PR fortran/20244
-       PR fortran/20864
-       PR fortran/25391
-       *interface.c(gfc_compare_types): Broken into two.
-       (gfc_compare_derived_types): Second half of gfc_compare_types with
-       corrections for a missing check that module name is non-NULL and
-       a check for private components.
-       *symbol.c(gfc_free_dt_list): New function.
-       (gfc_free_namespace): Call gfc_free_dt_list.
-       *resolve.c(resolve_symbol): Build the list of derived types in the
-       symbols namespace.
-       *gfortran.h: Define the structure type gfc_dt_list.  Add a new field,
-       derived_types to gfc_namespace.  Provide a prototye for the new
-       function gfc_compare_derived_types.
-       *trans_types.c(gfc_get_derived_type): Test for the derived type being
-       available in the host namespace. In this case, the host backend
-       declaration is used for the structure and its components.  If an
-       unbuilt, equal structure that is not use associated is found in the
-       host namespace, build it there and then.  On exit,traverse the
-       namespace of the derived type to see if there are equal but unbuilt.
-       If so, copy the structure and its component declarations.
-       (copy_dt_decls_ifequal): New functions to copy declarations to other
-       equal structure types.
-
-       PR fortran/20862
-       * io.c (gfc_match_format): Make the appearance of a format statement
-       in a module specification block an error.
-
-       PR fortran/23152
-       * match.c (gfc_match_namelist): Set assumed shape arrays in
-       namelists as std=GFC_STD_GNU and assumed size arrays as an
-       unconditional error.
-
-       PR fortran/25069
-       * match.c (gfc_match_namelist): Set the respecification of a USE
-       associated namelist group as std=GFC_STD_GNU.  Permit the concatenation
-       on no error.
-
-       PR fortran/25053
-       PR fortran/25063
-       PR fortran/25064
-       PR fortran/25066
-       PR fortran/25067
-       PR fortran/25068
-       PR fortran/25307
-       * io.c (resolve_tag): Change std on IOSTAT != default integer to
-       GFC_STD_GNU and change message accordingly.  Add same error for
-       SIZE.
-       (match_dt_element, gfortran.h): Add field err_where to gfc_dt and
-       set it when tags are being matched.
-       (gfc_resolve_dt): Remove tests that can be done before resolution
-       and add some of the new ones here.
-       (check_io_constraints): New function that checks for most of the
-       data transfer constraints. Some of these were previously done in
-       match_io, from where this function is called, and some were done
-       in gfc_resolve_dt.
-       (match_io): Remove most of the tests of constraints and add the
-       call to check_io_constraints.
-
-2005-12-21  Erik Edelmann  <eedelman@gcc.gnu.org>
-
-       PR fortran/25423
-       * parse.c (parse_where_block): break instead of "fall
-       through" after parsing nested WHERE construct.
-
-2005-12-18  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/25018
-       *expr.c(check_inquiry): Return FAILURE if there is no symtree to
-       provide a name. Error/warning for assumed character length argument
-       to LEN for an initialization expression, using GFC_GNU_STD. Add an
-       argument to flag that the expression is not restricted.
-       (check_init_expr): Improve the message for a failing variable.
-       (gfc_match_init_expr): Call check_enquiry again to make sure that
-       unsimplified expressions are not causing unnecessary errors.
-
-2005-12-17  Steven G. Kargl  <kargls@comcast.net>
-           Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/25458
-       * simplify.c (gfc_simplify_ibset, gfc_simplify_not): Add call to
-       twos_complement.
-
-2005-12-17  Steven G. Kargl  <kargls@comcast.net>
-
-       * decl.c (gfc_match_old_kind_spec,match_type_spec): Use gfc_std_notify
-       to report nonstandard intrinsic type declarations.
-
-2005-12-16  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
-
-       PR fortran/24268
-       * io.c (format_lex): Allow whitespace within text of format specifier.
-
-2005-12-16  Steven G. Kargl <kargls@comcast.net>
-       PR fortran/25106
-       PR fortran/25055
-       * match.c (gfc_match_small_literal_int): Add cnt argument;
-       (gfc_match_st_label,gfc_match_stopcode): Account for cnt argument.
-       * match.h (gfc_match_small_literal_int): Update prototype.
-       * decl.c (match_char_length,gfc_match_old_kind_spec): Account for cnt.
-       * parse.c (next_free): Ditto.
-       * primary.c (match_kind_param): Ditto.
-
-2005-12-16  Richard Guenther  <rguenther@suse.de>
-
-       * trans.h (tree): Remove declaration of gfc_build_function_call.
-       * trans.c (gfc_build_function_call): Remove.
-       (gfc_build_array_ref): Use build_function_call_expr.
-       (gfc_trans_runtime_check): Likewise.
-       * trans-array.c (gfc_trans_allocate_array_storage): Likewise.
-       (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.
-       * trans-expr.c (gfc_conv_power_op): Likewise.
-       (gfc_conv_string_tmp): Likewise.
-       (gfc_conv_concat_op): Likewise.
-       (gfc_conv_expr_op): Likewise.
-       (gfc_trans_string_copy): Likewise.
-       * trans-decl.c (build_entry_thunks): Likewise.
-       (gfc_generate_function_code): Likewise.
-       (gfc_generate_constructors): Likewise.
-       * trans-io.c (gfc_trans_open): Likewise.
-       (gfc_trans_close): Likewise.
-       (build_filepos): Likewise.
-       (gfc_trans_inquire): Likewise.
-       (transfer_namelist_element): Likewise.
-       (build_dt): Likewise.
-       (gfc_trans_dt_end): Likewise.
-       (transfer_expr): Likewise.
-       (transfer_array_desc): Likewise.
-       * trans-stmt.c (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): Likewise.
-       (gfc_trans_allocate): Likewise.
-       (gfc_trans_deallocate): Likewise.
-       * trans-intrinsic.c (gfc_conv_intrinsic_aint): Likewise.
-       (gfc_conv_intrinsic_lib_function): Likewise.
-       (gfc_conv_intrinsic_exponent): Likewise.
-       (gfc_conv_intrinsic_abs): Likewise.
-       (gfc_conv_intrinsic_sign): Likewise.
-       (gfc_conv_intrinsic_ctime): Likewise.
-       (gfc_conv_intrinsic_fdate): Likewise.
-       (gfc_conv_intrinsic_ttynam): Likewise.
-       (gfc_conv_intrinsic_ishftc): Likewise.
-       (gfc_conv_intrinsic_len_trim): Likewise.
-       (gfc_conv_intrinsic_index): Likewise.
-       (gfc_conv_intrinsic_size): Likewise.
-       (gfc_conv_intrinsic_strcmp): Likewise.
-       (gfc_conv_intrinsic_adjust): Likewise.
-       (gfc_conv_associated): Likewise.
-       (gfc_conv_intrinsic_scan): Likewise.
-       (gfc_conv_intrinsic_verify): Likewise.
-       (call_builtin_clz): Likewise.
-       (gfc_conv_intrinsic_si_kind): Likewise.
-       (gfc_conv_intrinsic_sr_kind): Likewise.
-       (gfc_conv_intrinsic_trim): Likewise.
-       (gfc_conv_intrinsic_repeat): Likewise.
-       (gfc_conv_intrinsic_iargc): Likewise.
-
-2005-12-16  Richard Guenther  <rguenther@suse.de>
-
-       * trans.h (gfc_build_indirect_ref): Remove declaration.
-       * trans.c (gfc_build_indirect_ref): Remove.
-       * trans-array.c (gfc_trans_array_ctor_element): Use
-       build_fold_indirect_ref instead of gfc_build_indirect_ref.
-       (gfc_trans_array_constructor_value): Likewise.
-       (gfc_conv_array_index_offset): Likewise.
-       (gfc_conv_scalarized_array_ref): Likewise.
-       (gfc_conv_array_ref): Likewise.
-       (gfc_trans_dummy_array_bias): Likewise.
-       (gfc_conv_expr_descriptor): Likewise.
-       (gfc_conv_array_parameter): Likewise.
-       * trans-decl.c (gfc_finish_cray_pointee): Likewise.
-       (gfc_get_symbol_decl): Likewise.
-       * trans-expr.c (gfc_conv_substring): Likewise.
-       (gfc_conv_component_ref): Likewise.
-       (gfc_conv_variable): Likewise.
-       (gfc_add_interface_mapping): Likewise.
-       (gfc_conv_function_call): Likewise.
-       * trans-intrinsic.c (gfc_conv_intrinsic_ichar): Likewise.
-       (gfc_conv_intrinsic_transfer): Likewise.
-       * trans-io.c (nml_get_addr_expr): Likewise.
-       (transfer_namelist_element): Likewise.
-       (transfer_expr): Likewise.
-       * trans-stmt.c (gfc_trans_nested_forall_loop): Likewise.
-       (allocate_temp_for_forall_nest_1): Likewise.
-       (gfc_trans_forall_1): Likewise.
-
-2005-12-16  Richard Guenther  <rguenther@suse.de>
-
-       * trans-array.c (gfc_conv_descriptor_data_addr): Use
-       build_fold_addr_expr where appropriate.
-       (gfc_trans_allocate_array_storage): Likewise.
-       (gfc_trans_array_constructor_value): Likewise.
-       (gfc_conv_array_data): Likewise.
-       (gfc_conv_expr_descriptor): Likewise.
-       (gfc_conv_array_parameter): Likewise.
-       * trans-expr.c (gfc_conv_variable): Likewise.
-       (gfc_conv_function_val): Likewise.
-       (gfc_conv_function_call): Likewise.
-       (gfc_conv_expr_reference): Likewise.
-       * trans-intrinsic.c (gfc_conv_intrinsic_ctime): Likewise.
-       (gfc_conv_intrinsic_fdate): Likewise.
-       (gfc_conv_intrinsic_ttynam): Likewise.
-       (gfc_conv_intrinsic_si_kind): Likewise.
-       (gfc_conv_intrinsic_trim): Likewise.
-       * trans-io.c (set_parameter_ref): Likewise.
-       (gfc_convert_array_to_string): Likewise.
-       (gfc_trans_open): Likewise.
-       (gfc_trans_close): Likewise.
-       (build_filepos): Likewise.
-       (gfc_trans_inquire): Likewise.
-       (nml_get_addr_expr): Likewise.
-       (transfer_namelist_element): Likewise.
-       (build_dt): Likewise.
-       (gfc_trans_dt_end): Likewise.
-       (transfer_array_component): Likewise.
-       (transfer_expr): Likewise.
-       (transfer_array_desc): Likewise.
-       (gfc_trans_transfer): Likewise.
-       * trans-stmt.c (gfc_trans_allocate): Likewise.
-       (gfc_trans_deallocate): Likewise.
-
-2005-12-16  Kazu Hirata  <kazu@codesourcery.com>
-
-       * dependency.c, resolve.c, trans-array.c: Fix comment typos.
-       * gfortran.texi: Fix typos.
-
-2005-12-14  Erik Edelmann  <eedelman@gcc.gnu.org>
-
-       PR fortran/18197
-       * resolve.c (resolve_formal_arglist): Remove code to set
-       the type of a function symbol from it's result symbol.
-
-2005-12-13  Richard Guenther  <rguenther@suse.de>
-
-       * trans-expr.c (gfc_conv_substring): Use fold_build2 and
-       build_int_cst.
-
-2005-12-13  Richard Sandiford  <richard@codesourcery.com>
-
-       * Make-lang.in (fortran/trans-resolve.o): Depend on
-       fortran/dependency.h.
-       * gfortran.h (gfc_expr): Add an "inline_noncopying_intrinsic" flag.
-       * dependency.h (gfc_get_noncopying_intrinsic_argument): Declare.
-       (gfc_check_fncall_dependency): Change prototype.
-       * dependency.c (gfc_get_noncopying_intrinsic_argument): New function.
-       (gfc_check_argument_var_dependency): New function, split from
-       gfc_check_fncall_dependency.
-       (gfc_check_argument_dependency): New function.
-       (gfc_check_fncall_dependency): Replace the expression parameter with
-       separate symbol and argument list parameters.  Generalize the function
-       to handle dependencies for any type of expression, not just variables.
-       Accept a further argument giving the intent of the expression being
-       tested.  Ignore intent(in) arguments if that expression is also
-       intent(in).
-       * resolve.c: Include dependency.h.
-       (find_noncopying_intrinsics): New function.
-       (resolve_function, resolve_call): Call it on success.
-       * trans-array.h (gfc_conv_array_transpose): Declare.
-       (gfc_check_fncall_dependency): Remove prototype.
-       * trans-array.c (gfc_conv_array_transpose): New function.
-       * trans-intrinsic.c (gfc_conv_intrinsic_function): Don't use the
-       libcall handling if the expression is to be evaluated inline.
-       Add a case for handling inline transpose()s.
-       * trans-expr.c (gfc_trans_arrayfunc_assign): Adjust for the new
-       interface provided by gfc_check_fncall_dependency.
-
-2005-12-12  Steven G. Kargl  <kargls@comcast.net>
-
-       PR fortran/25078
-       * match.c (gfc_match_equivalence):  Count number of objects.
-
-2005-12-11  Aldy Hernandez  <aldyh@redhat.com>
-
-        * lang.opt: Add RejectNegative to ffixed-form and ffree-form.
-
-2005-12-10  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       PR fortran/25068
-       * io.c (resolve_tag): Add correct diagnostic for F2003 feature.
-
-2005-12-10  Thomas Koenig  <Thomas.Koenig@online.de>
-
-       PR fortran/23815
-       * io.c (top level):  Add convert to io_tag.
-       (resolve_tag):  convert is GFC_STD_GNU.
-       (match_open_element):  Add convert.
-       (gfc_free_open):  Likewise.
-       (gfc_resolve_open):  Likewise.
-       (gfc_free_inquire):  Likewise.
-       (match_inquire_element):  Likewise.
-       * dump-parse-tree.c (gfc_show_code_node):  Add
-       convet for open and inquire.
-       gfortran.h: Add convert to gfc_open and gfc_inquire.
-       * trans-io.c (gfc_trans_open):  Add convert.
-       (gfc_trans_inquire):  Likewise.
-       * ioparm.def:  Add convert to open and inquire.
-       * gfortran.texi:  Document CONVERT.
-
-2005-12-09  Roger Sayle  <roger@eyesopen.com>
-
-       PR fortran/22527
-       * f95-lang.c (gfc_truthvalue_conversion): Use a zero of the correct
-       integer type when building an inequality.
-
-2005-12-09  Richard Guenther  <rguenther@suse.de>
-
-       * f95-lang.c (build_builtin_fntypes): Use correct
-       return types, as indicated by comments.
-
-2005-12-08  Erik Edelmann  <eedelman@gcc.gnu.org>
-
-       PR fortran/25292
-       * check.c (gfc_check_associated): Allow function results
-       as actual arguments to ASSOCIATED.  Moved a misplaced
-       comment.
-
-2005-12-07  Rafael Ávila de Espíndola  <rafael.espindola@gmail.com>
-
-       * Make-lang.in (fortran.all.build, fortran.install-normal): Remove.
-
-2005-12-07  Rafael Ávila de Espíndola  <rafael.espindola@gmail.com>
-
-       * Make-lang.in: Remove all dependencies on s-gtype, except for
-       gt-fortran-trans.h.
-
-2005-12-03  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       PR fortran/25106
-       * parse.c (next_free): Use new prototype for gfc_match_st_label.
-       Correctly emit hard error if a label is zero.
-       * match.c (gfc_match_st_label): Never allow zero as a valid
-       label.
-       (gfc_match, gfc_match_do, gfc_match_goto): Use new prototype for
-       gfc_match_st_label.
-       * primary.c (): Use new prototype for gfc_match_st_label.
-       * io.c (): Likewise.
-       * match.h: Likewise.
-
-2005-12-02  Richard Guenther  <rguenther@suse.de>
-
-       * trans.h (build1_v): Use build1, not build to build the
-       void typed tree.
-
-2005-12-01  Erik Schnetter  <schnetter@aei.mpg.de>
-
-       * decl.c (gfc_match_old_kind_spec):  Improve handling of old style
-       COMPLEX*N
-
-2005-12-01  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/24789
-       * trans-decl.c (gfc_get_symbol_decl):  Move the expression for
-       unit size of automatic character length, dummy pointer array
-       elements down a few lines from the version that fixed PR15809.
-
-2005-11-30  Bernhard Fischer <rep.nop@aon.at>
-
-       PR fortran/21302
-       * lang.opt: New options -ffree-line-length- and -ffree-line-length-none.
-       * gfortran.h: Add free_line_length and add description of
-       free_line_length and fixed_line_length.
-       * options.c (gfc_init_options, gfc_handle_option): Initialize
-       and set free_line_length and fixed_line_length.
-       * scanner.c (load_line): Set free_line_length to 132 and
-       fixed_line_length to 72 or user requested values.
-       * scanner.c: Typo in comment.
-       * invoke.texi: Document -ffree-line-length- and
-       -ffree-line-length-none
-
-2005-11-30  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/15809
-       * trans-decl.c (gfc_get_symbol_decl):  In the case of automatic
-       character length, dummy pointer arrays, build an expression for
-       unit size of the array elements, to be picked up and used in the
-       descriptor dtype.
-       * trans-io.c (gfc_trans_transfer):  Modify the detection of
-       components of derived type arrays to use the gfc_expr references
-       instead of the array descriptor dtype.  This allows the latter
-       to contain expressions.
-
-2005-11-30  Erik Edelmann  <erik.edelmann@iki.fi>
-
-       PR fortran/15809
-       * trans-array.c (gfc_trans_deferred_array):  Allow PARM_DECLs past
-       in addition to VAR_DECLs.
-
-2005-11-29  Jakub Jelinek  <jakub@redhat.com>
-
-       * io.c (gfc_resolve_open): RESOLVE_TAG access field as well.
-
-2005-11-27 Bernhard Fischer <rep.nop@aon.at>
-
-       * gfortran.h: remove superfluous whitespace and use GNU
-       comment-style for the documentation of backend_decl.
-
-2005-11-27  Steven G. Kargl  <kargls@comcast.net>
-
-       PR fortran/24917
-       * primary.c (match_boz_constant):  Implement postfix BOZ constants;
-       (match_string_constant): Peek for b, o, z, and x
-
-2005-11-27  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       PR fortran/23912
-       * iresolve.c (gfc_resolve_dim, gfc_resolve_mod,
-       gfc_resolve_modulo): When arguments have different kinds, fold
-       the lower one to the largest kind.
-       * check.c (gfc_check_a_p): Arguments of different kinds is not
-       a hard error, but an extension.
-       * simplify.c (gfc_simplify_dim, gfc_simplify_mod,
-       gfc_simplify_modulo): When arguments have different kinds, fold
-       the lower one to the largest kind.
-
-2005-11-21  Jakub Jelinek  <jakub@redhat.com>
-
-       PR fortran/14943
-       PR fortran/21647
-       * Make-lang.in (fortran/trans-io.o): Depend on fortran/ioparm.def.
-       * dump-parse-tree.c (gfc_show_code_node): Dump c->block for
-       EXEC_{READ,WRITE,IOLENGTH} nodes.
-       * io.c (terminate_io, match_io, gfc_match_inquire): Put data
-       transfer commands into EXEC_{READ,WRITE,IOLENGTH}'s code->block.
-       * resolve.c (resolve_blocks): Handle EXEC_{READ,WRITE,IOLENGTH}.
-       * trans-io.c (ioparm_unit, ioparm_err, ioparm_end, ioparm_eor,
-       ioparm_list_format, ioparm_library_return, ioparm_iostat,
-       ioparm_exist, ioparm_opened, ioparm_number, ioparm_named,
-       ioparm_rec, ioparm_nextrec, ioparm_size, ioparm_recl_in,
-       ioparm_recl_out, ioparm_iolength, ioparm_file, ioparm_file_len,
-       ioparm_status, ioparm_status_len, ioparm_access, ioparm_access_len,
-       ioparm_form, ioparm_form_len, ioparm_blank, ioparm_blank_len,
-       ioparm_position, ioparm_position_len, ioparm_action,
-       ioparm_action_len, ioparm_delim, ioparm_delim_len, ioparm_pad,
-       ioparm_pad_len, ioparm_format, ioparm_format_len, ioparm_advance,
-       ioparm_advance_len, ioparm_name, ioparm_name_len,
-       ioparm_internal_unit, ioparm_internal_unit_len,
-       ioparm_internal_unit_desc, ioparm_sequential, ioparm_sequential_len,
-       ioparm_direct, ioparm_direct_len, ioparm_formatted,
-       ioparm_formatted_len, ioparm_unformatted, ioparm_unformatted_len,
-       ioparm_read, ioparm_read_len, ioparm_write, ioparm_write_len,
-       ioparm_readwrite, ioparm_readwrite_len, ioparm_namelist_name,
-       ioparm_namelist_name_len, ioparm_namelist_read_mode, ioparm_iomsg,
-       ioparm_iomsg_len, ioparm_var): Remove.
-       (enum ioparam_type, enum iofield_type, enum iofield,
-       enum iocall): New enums.
-       (gfc_st_parameter_field, gfc_st_parameter): New typedefs.
-       (st_parameter, st_parameter_field, iocall): New variables.
-       (ADD_FIELD, ADD_STRING): Remove.
-       (dt_parm, dt_post_end_block): New variables.
-       (gfc_build_st_parameter): New function.
-       (gfc_build_io_library_fndecls): Use it.  Initialize iocall
-       array rather than ioparm_*, add extra first arguments to
-       the function types.
-       (set_parameter_const): New function.
-       (set_parameter_value): Add type argument, return a bitmask.
-       Changed to set a field in automatic structure variable rather
-       than set a field in a global _gfortran_ioparm variable.
-       (set_parameter_ref): Likewise.  If requested var has different
-       size than what field should point to, call with a temporary and
-       then copy into the user variable.  Add postblock argument.
-       (set_string): Remove var_len argument, add type argument, return
-       a bitmask.  Changed to set fields in automatic structure variable
-       rather than set a field in a global _gfortran_ioparm variable.
-       (set_internal_unit): Remove iunit, iunit_len, iunit_desc arguments,
-       add var argument.  Return a bitmask.  Changed to set fields in
-       automatic structure variable rather than set a field in a global
-       _gfortran_ioparm variable.
-       (set_flag): Removed.
-       (io_result): Add var argument.  Changed to read common.flags field
-       from automatic structure variable and bitwise AND it with 3.
-       (set_error_locus): Add var argument.  Changed to set fields in
-       automatic structure variable rather than set a field in a global
-       _gfortran_{filename,line} variables.
-       (gfc_trans_open): Use gfc_start_block rather than gfc_init_block.
-       Create a temporary st_parameter_* structure.  Adjust callers of
-       all above mentioned functions.  Pass address of the temporary
-       variable as first argument to the generated function call.
-       Use iocall array rather than ioparm_* separate variables.
-       (gfc_trans_close, build_filepos, gfc_trans_inquire): Likewise.
-       (build_dt): Likewise.  Change first argument to tree from tree *.
-       Don't dereference code->ext.dt if last_dt == INQUIRE.  Emit
-       IOLENGTH argument setup here.  Set dt_parm/dt_post_end_block
-       variables and gfc_trans_code the nested data transfer commands
-       in code->block.
-       (gfc_trans_iolength): Just set last_dt and call build_dt immediately.
-       (transfer_namelist_element): Pass address of dt_parm variable
-       to generated functions.  Use iocall array rather than ioparm_*
-       separate variables.
-       (gfc_trans_backspace, gfc_trans_endfile, gfc_trans_rewind,
-       gfc_trans_flush, gfc_trans_read, gfc_trans_write): Use iocall array
-       rather than ioparm_* separate variables.
-       (gfc_trans_dt_end): Likewise.  Pass address of dt_parm variable
-       as first argument to generated function.  Adjust io_result caller.
-       Prepend dt_post_end_block before io_result code.
-       (transfer_expr): Use iocall array rather than ioparm_* separate
-       variables.  Pass address of dt_parm variables as first argument
-       to generated functions.
-       * ioparm.def: New file.
-
-2005-11-21  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/24223
-       * resolve.c (resolve_contained_fntype) Error if an internal
-       function is assumed character length.
-
-       PR fortran/24705
-       * trans-decl.c (gfc_create_module_variable) Skip ICE in
-       when backend decl has been built and the symbol is marked
-       as being in an equivalence statement.
-
-2005-11-20  Toon Moene  <toon@moene.indiv.nluug.nl>
-
-       * invoke.texi: Remove superfluous @item.
-
-2005-11-19  Janne Blomqvist  <jb@gcc.gnu.org>
-
-       PR fortran/24862
-       * trans-io.c (gfc_trans_transfer): Handle arrays of derived type.
-
-2005-11-17  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       PR fortran/20811
-       * scanner.c (gfc_open_included_file): Add an extra include_cwd
-       argument. Only include files in the current working directory if
-       its value is true.
-       * gfortran.h: Change prototype for gfc_open_included_file.
-       (load_file): Don't search for include files in the current working
-       directory.
-       * options.c (gfc_post_options): Add the directory of the source file
-       to the list of paths for included files.
-       * module.c (gfc_use_module): Look for module files in the current
-       directory.
-
-2005-11-16  Alan Modra  <amodra@bigpond.net.au>
-
-       PR fortran/24096
-       * trans-types.c (gfc_init_kinds): Use one less for max_exponent
-       of IBM extended double format.
-
-2005-11-13  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       * intrinsic.c (add_functions): Add COMPLEX, FTELL, FGETC, FGET,
-       FPUTC, FPUT, AND, XOR and OR intrinsic functions.
-       (add_subroutines): Add FGETC, FGET, FPUTC, FPUT and FTELL intrinsic
-       subroutines.
-       * gfortran.h: Add GFC_ISYM_AND, GFC_ISYM_COMPLEX, GFC_ISYM_FGET,
-       GFC_ISYM_FGETC, GFC_ISYM_FPUT, GFC_ISYM_FPUTC, GFC_ISYM_FTELL,
-       GFC_ISYM_OR, GFC_ISYM_XOR.
-       * iresolve.c (gfc_resolve_and, gfc_resolve_complex,
-       gfc_resolve_or, gfc_resolve_fgetc, gfc_resolve_fget,
-       gfc_resolve_fputc, gfc_resolve_fput, gfc_resolve_ftell,
-       gfc_resolve_xor, gfc_resolve_fgetc_sub, gfc_resolve_fget_sub,
-       gfc_resolve_fputc_sub, gfc_resolve_fput_sub, gfc_resolve_ftell_sub):
-       New functions.
-       * check.c (gfc_check_complex, gfc_check_fgetputc_sub,
-       gfc_check_fgetputc, gfc_check_fgetput_sub, gfc_check_fgetput,
-       gfc_check_ftell, gfc_check_ftell_sub, gfc_check_and): New functions.
-       * simplify.c (gfc_simplify_and, gfc_simplify_complex, gfc_simplify_or,
-       gfc_simplify_xor): New functions.
-       * trans-intrinsic.c (gfc_conv_intrinsic_function): Add cases for
-       GFC_ISYM_AND, GFC_ISYM_COMPLEX, GFC_ISYM_FGET, GFC_ISYM_FGETC,
-       GFC_ISYM_FPUT, GFC_ISYM_FPUTC, GFC_ISYM_FTELL, GFC_ISYM_OR and
-       GFC_ISYM_XOR.
-       * intrinsic.h: Add prototypes for all functions added to iresolve.c,
-       simplify.c and check.c.
-
-2005-11-10  Paul Thomas  <pault@gcc.gnu.org>
-           Steven G. Kargl <kargls@comcast.net>
-
-       PR fortran/15976
-       * resolve.c (resolve_symbol): Disallow automatic arrays in module scope.
-
-2005-11-10  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/24655
-       PR fortran/24755
-       * match.c (recursive_stmt_fcn): Add checks that symtree exists
-       for the expression to weed out inline intrinsic functions and
-       parameters.
-
-       PR fortran/24409
-       * module.c (mio_symtree_ref): Correct the patch of 0923 so that
-       a symbol is not substituted for by a the symbol for the module
-       itself and to prevent the promotion of a formal argument.
-
-2005-11-10  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/24643
-       * primary.c (match_varspec): Check for implicitly typed CHARACTER
-       variables before matching substrings.
-
-2005-11-09  Steven G. Kargl  <kargls@comcast.net>
-
-       * trans-intrinsic.c: Typo in comment.
-
-2005-11-09  Erik Edelmann  <eedelman@gcc.gnu.org>
-
-       PR fortran/22607
-       * trans-decl.c(build_function_decl): Don't set
-       DECL_IS_PURE (fndecl) = 1 for return-by-reference
-       functions.
-
-2005-11-08  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * dump-parse-tree.c: Fix comment typo, add a few blank lines.
-
-2005-11-07  Steven G. Kargl  <kargls@comcast.net>
-
-       * error.c: Use flag_fatal_error.
-       * invoke.texi:  Remove -Werror from list of options.
-
-2005-11-06  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/24534
-       * resolve.c (resolve_symbol): Exclude case of PRIVATE declared
-       within derived type from error associated with PRIVATE type
-       components within derived type.
-
-       PR fortran/20838
-       PR fortran/20840
-       * gfortran.h: Add prototype for gfc_has_vector_index.
-       * io.c (gfc_resolve_dt): Error if internal unit has a vector index.
-       * expr.c (gfc_has_vector_index): New function to check if any of
-       the array references of an expression have vector inidices.
-       (gfc_check_pointer_assign): Error if internal unit has a vector index.
-
-       PR fortran/17737
-       * data.c (gfc_assign_data_value): Remove gcc_assert that caused the ICE
-       and replace by a standard dependent warning/error if overwriting an
-       existing initialization.
-       * decl.c (gfc_data_variable): Remove old error for already initialized
-       variable and the unused error check for common block variables.  Add
-       error for hots associated variable and standard dependent error for
-       common block variables, outside of blockdata.
-       * symbol.c (check_conflict): Add constraints for DATA statement.
-
-2005-11-06  Janne Blomqvist <jb@gcc.gnu.org>
-
-       PR fortran/24174
-       PR fortran/24305
-       * fortran/trans-io.c (gfc_build_io_library_fndecls): Add kind
-       argument to transfer_array.
-       (transfer_array_desc): Add kind argument.
-
-2005-11-06  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       * intrinsic.c (add_functions): Add ctime and fdate intrinsics.
-       (add_subroutines): Likewise.
-       * intrinsic.h: Prototypes for gfc_check_ctime,
-       gfc_check_ctime_sub, gfc_check_fdate_sub, gfc_resolve_ctime,
-       gfc_resolve_fdate, gfc_resolve_ctime_sub, gfc_resolve_fdate_sub.
-       * gfortran.h: Add GFC_ISYM_CTIME and GFC_ISYM_FDATE.
-       * iresolve.c (gfc_resolve_ctime, gfc_resolve_fdate,
-       gfc_resolve_ctime_sub, gfc_resolve_fdate_sub): New functions.
-       * trans-decl.c (gfc_build_intrinsic_function_decls): Add
-       gfor_fndecl_fdate and gfor_fndecl_ctime.
-       * check.c (gfc_check_ctime, gfc_check_ctime_sub,
-       gfc_check_fdate_sub): New functions.
-       * trans-intrinsic.c (gfc_conv_intrinsic_ctime,
-       gfc_conv_intrinsic_fdate): New functions.
-       (gfc_conv_intrinsic_function): Add cases for GFC_ISYM_CTIME
-       and GFC_ISYM_FDATE.
-       * intrinsic.texi: Documentation for the new CTIME and FDATE
-       intrinsics.
-       * trans.h: Declarations for gfor_fndecl_ctime and gfor_fndecl_fdate.
-
-2005-11-05  Kazu Hirata  <kazu@codesourcery.com>
-
-       * decl.c, trans-decl.c: Fix comment typos.
-       * gfortran.texi: Fix a typo.
-
-2005-11-05  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       * intrinsic.c (add_functions): Add function version of TTYNAM.
-       * intrinsic.h: Add prototypes for gfc_check_ttynam and
-       gfc_resolve_ttynam.
-       * gfortran.h: Add case for GFC_ISYM_TTYNAM.
-       * iresolve.c (gfc_resolve_ttynam): New function.
-       * trans-decl.c (gfc_build_intrinsic_function_decls): Add a tree
-       for function call to library ttynam.
-       * check.c (gfc_check_ttynam): New function.
-       * trans-intrinsic.c (gfc_conv_intrinsic_ttynam): New function.
-       (): Call gfc_conv_intrinsic_ttynam.
-       * trans.h: Add prototype for gfor_fndecl_ttynam.
-
-2005-11-04  Steven G. Kargl <kargls@comcast.net>
-
-       PR fortran/24636
-       * match.c (gfc_match_stopcode):  Set stop_code = -1.
-
-2005-11-04  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       PR fortran/18452
-       * lang-specs.h: Pass -lang-fortran to the preprocessor.
-
-2005-11-02  Andrew Pinski  <pinskia@physics.uc.edu>
-
-       PR fortran/18157
-       * trans-array.c (gfc_conv_resolve_dependencies): Use the correct
-       type for the temporary array.
-       * trans-expr.c (gfc_trans_assignment): Pass lss
-       instead of lss_section
-       to gfc_conv_resolve_dependencies to get the
-       correct type.
-
-2005-11-02  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * decl.c (gfc_match_entry): Function entries don't need an argument
-       list if there's no RESULT clause.
-
-2005-11-01  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/24008
-       * decl.c (gfc_match_entry): Function entries need an argument list.
-
-2005-11-01  Erik Edelmann  <eedelman@gcc.gnu.org>
-
-       PR 24245
-       * trans.c (gfc_generate_code): Move code to create a main
-       program symbol from here ...
-       * parse.c (main_program_symbol): ... to this new
-       function, setting the locus from gfc_current_locus
-       instead of ns->code->loc.
-       (gfc_parse_file):  Call main_program_symbol for main programs.
-
-2005-11-01  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/24404
-       * resolve.c (resolve_symbol): Output symbol names in more error
-       messages, clarify error message.
-
-2005-11-01  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * dump-parse-tree.c (show_symtree): Revert change unintentionally
-       committed in r106246.
-
-2005-11-01  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/21565
-       * symbol.c (check_conflict): An object cannot be in a namelist and in
-       block data.
-
-       PR fortran/18737
-       * resolve.c (resolve_symbol): Set the error flag to
-       gfc_set_default_type, in the case of an external symbol, so that
-       an error message is emitted if IMPLICIT NONE is set.
-
-       PR fortran/14994
-       * gfortran.h (gfc_generic_isym_id): Add GFC_ISYM_SECNDS to enum.
-       * check.c (gfc_check_secnds): New function.
-       * intrinsic.c (add_functions): Add call to secnds.
-       * iresolve.c (gfc_resolve_secnds): New function.
-       * trans-intrinsic (gfc_conv_intrinsic_function): Add call to
-       secnds via case GFC_ISYM_SECNDS.
-       * intrinsic.texi: Add documentation for secnds.
-
-2005-10-31  Andreas Schwab  <schwab@suse.de>
-
-       * Make-lang.in (GFORTRAN_TARGET_INSTALL_NAME): Define.
-       (GFORTRAN_CROSS_NAME): Remove.
-       (fortran.install-common): Correctly install a cross compiler.
-       (fortran.uninstall): Use GFORTRAN_TARGET_INSTALL_NAME instead of
-       GFORTRAN_CROSS_NAME.
-
-2005-10-30  Erik Edelmann  <eedelman@gcc.gnu.org>
-
-       * gfortran.texi: Update contributors.
-
-2005-10-30  Erik Edelmann  <eedelman@gcc.gnu.org>
-
-       PR fortran/18883
-       * trans-decl.c (gfc_finish_var_decl): Add decl to the
-       current function, rather than the parent.  Make
-       assertion accept fake result variables.
-       * trans-expr.c (gfc_conv_variable): If the character
-       length of an ENTRY isn't set, get the length from
-       the master function instead.
-
-2005-10-30  Thomas Koenig  <Thomas.Koenig@online.de>
-
-       * gfortran.texi:  Remove reservations about I/O usability.  Document
-       that array intrinsics mostly work.
-
-2005-10-30  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * gfortran.texi: Move license stuff to back.  Add information
-       on ENUM and ENUMERATOR.
-       * invoke.texi: Document -fshort-enums.
-
-2005-10-30  Gaurav Gautam  <gauravga@noida.hcltech.com>
-           Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * arith.c (gfc_enum_initializer): New function.
-       (gfc_check_integer_range): Made extern.
-       * decl.c (enumerator_history): New typedef.
-       (last_initializer, enum_history, max_enum): New variables.
-       (create_enum_history, gfc_free_enum_history): New functions.
-       (add_init_expr_to_sym): Call create_enum_history if parsing ENUM.
-       (variable_decl): Modified to parse enumerator definition.
-       (match_attr_spec): Add PARAMETER attribute to ENUMERATORs.
-       (gfc_match_data_decl): Issues error, if match_type_spec do not
-       return desired return values.
-       (set_enum_kind, gfc_match_enum, gfc_match_enumerator_def): New
-       functions.
-       (gfc_match_end): Deal with END ENUM.
-       * gfortran.h (gfc_statement): ST_ENUM, ST_ENUMERATOR, ST_END_ENUM
-       added.
-       (symbol_attribute): Bit field for enumerator added.
-       (gfc_options): Add fshort_enums.
-       (gfc_enum_initializer, gfc_check_integer_range): Add prototypes.
-       * options.c: Include target.h
-       (gfc_init_options): Initialize fshort_enums.
-       (gfc_handle_option): Deal with fshort_enums.
-       * parse.c (decode_statement): Match ENUM and ENUMERATOR statement.
-       (gfc_ascii_statement): Deal with the enumerator statements.
-       (parse_enum): New function to parse enum construct.
-       (parse_spec): Added case ST_ENUM.
-       * parse.h (gfc_compile_state): COMP_ENUM added.
-       (gfc_match_enum, gfc_match_enumerator_def, gfc_free_enum_history):
-       Prototype added.
-       * symbol.c (gfc_copy_attr): Copy enumeration attribute.
-       * lang.opt (fshort-enums): Option added.
-
-2005-10-30  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       * check.c (gfc_check_malloc, gfc_check_free): New functions.
-       * gfortran.h (gfc_generic_isym_id): Add GFC_ISYM_MALLOC.
-       * intrinsic.c (add_functions): Add symbols for MALLOC function.
-       (add_subroutines): Add symbol for FREE subroutine.
-       * intrinsic.h: Prototypes for gfc_check_malloc, gfc_check_free,
-       gfc_resolve_malloc and gfc_resolve_free.
-       * intrinsic.texi: Add doc for FREE and MALLOC intrinsics.
-       * iresolve.c (gfc_resolve_malloc, gfc_resolve_free): New
-       functions.
-       * trans-intrinsic.c (gfc_conv_intrinsic_function): Add case for
-       GFC_ISYM_MALLOC.
-
-2005-10-30  Steven Bosscher  <stevenb@suse.de>
-
-       * gfortran.texi: Update contributors.
-
-2005-10-29  Steven Bosscher  <stevenb@suse.de>
-
-       * interface.c: Fix previous checkin (an incomplete patch
-       was commited for me).
-
-2005-10-29  Joseph S. Myers  <joseph@codesourcery.com>
-
-       * intrinsic.texi: Remove empty @cindex line.
-
-2005-10-28  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       * check.c (gfc_check_alarm_sub, gfc_check_signal,
-       gfc_check_signal_sub): New functions.
-       * gfortran.h (gfc_generic_isym_id): Add GFC_ISYM_SIGNAL.
-       * intrinsic.c (add_functions): Add signal intrinsic.
-       (add_subroutines): Add signal and alarm intrinsics.
-       * intrinsic.texi: Document the new intrinsics.
-       * iresolve.c (gfc_resolve_signal, gfc_resolve_alarm_sub,
-       gfc_resolve_signal_sub): New functions.
-       * trans-intrinsic.c (gfc_conv_intrinsic_function): Add case
-       for GFC_ISYM_SIGNAL.
-       * intrinsic.h: Add prototypes for gfc_check_alarm_sub,
-       gfc_check_signal, gfc_check_signal_sub, gfc_resolve_signal,
-       gfc_resolve_alarm_sub, gfc_resolve_signal_sub.
-
-2005-10-28  Steven Bosscher  <stevenb@suse.de>
-
-       PR fortran/24545
-       * interface.c (gfc_match_end_interface): Fix typo in 
-       INTERFACE_USER_OP case.
-
-2005-10-26  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       PR fortran/15586
-       * resolve.c (resolve_symbol): Remove the use of whynot, so that
-       error messages are not built from pieces.
-
-2005-10-26  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/24158
-       * decl.c (gfc_match_data_decl): Correct broken bit of code
-       that prevents undefined derived types from being used as
-       components of another derived type.
-       * resolve.c (resolve_symbol): Add backstop error when derived
-       type variables arrive here with a type that has no components.
-
-2005-10-25  Jakub Jelinek  <jakub@redhat.com>
-
-       * trans.h (gfc_conv_cray_pointee): Remove.
-       * trans-expr.c (gfc_conv_variable): Revert 2005-10-24 change.
-       * trans-array.c (gfc_conv_array_parameter): Likewise.
-       * trans-decl.c (gfc_conv_cray_pointee): Remove.
-       (gfc_finish_cray_pointee): New function.
-       (gfc_finish_var_decl): Use it.  Don't return early for Cray
-       pointees.
-       (gfc_create_module_variable): Revert 2005-10-24 change.
-       * decl.c (cray_pointer_decl): Update comment.
-       * gfortran.texi: Don't mention Cray pointees aren't visible in the
-       debugger.
-
-       * symbol.c (check_conflict): Add conflict between cray_pointee
-       and in_common resp. in_equivalence.
-       * resolve.c (resolve_equivalence): Revert 2005-10-24 change.
-
-       * module.c (ab_attribute): Add AB_CRAY_POINTER and AB_CRAY_POINTEE.
-       (attr_bits): Likewise.
-       (mio_symbol_attribute): Save and restore cray_pointe{r,e} attributes.
-       (mio_symbol): For cray_pointee write/read cp_pointer reference.
-
-2005-10-25  Feng Wang  <fengwang@nudt.edu.cn>
-
-       PR fortran/22290
-       * trans-decl.c (gfc_add_assign_aux_vars): New function. Add two
-       auxiliary variables.
-       (gfc_get_symbol_decl): Use it when a variable, including dummy
-       argument, is assigned a label.
-       (gfc_trans_assign_aux_var): New function. Set initial value of
-       the auxiliary variable explicitly.
-       (gfc_trans_deferred_vars): Use it.
-       * trans-stmt.c (gfc_conv_label_variable): Handle dummy argument.
-
-2005-10-24  Asher Langton  <langton2@llnl.gov>
-
-       PR fortran/17031
-       PR fortran/22282
-       * check.c (gfc_check_loc): New function.
-       * decl.c (variable_decl): New variables cp_as and sym.  Added a
-       check for variables that have already been declared as Cray
-       Pointers, so we can get the necessary attributes without adding
-       a new symbol.
-       (attr_decl1): Added code to catch pointee symbols and "fix"
-       their array specs.
-       (cray_pointer_decl): New method.
-       (gfc_match_pointer): Added Cray pointer parsing code.
-       (gfc_mod_pointee_as): New method.
-       * expr.c (gfc_check_assign): Added a check to catch vector-type
-       assignments to pointees with an unspecified final dimension.
-       * gfortran.h: (GFC_ISYM_LOC): New.
-       (symbol_attribute): Added cray_pointer and cray_pointee bits.
-       (gfc_array_spec): Added cray_pointee and cp_was_assumed bools.
-       (gfc_symbol): Added gfc_symbol *cp_pointer.
-       (gfc_option): Added flag_cray_pointer.
-       (gfc_add_cray_pointee): Declare.
-       (gfc_add_cray_pointer ): Declare.
-       (gfc_mod_pointee_as): Declare.
-       * intrinsic.c (add_functions): Add code for loc() intrinsic.
-       * intrinsic.h (gfc_check_loc): Declare.
-       (gfc_resolve_loc): Declare.
-       * iresolve.c (gfc_resolve_loc): New.
-       * lang.opt: Added fcray-pointer flag.
-       * options.c (gfc_init_options): Initialized.
-       gfc_match_option.flag_cray_pointer.
-       (gfc_handle_option): Deal with -fcray-pointer.
-       * parse.c:(resolve_equivalence): Added code prohibiting Cray
-       pointees in equivalence statements.
-       * resolve.c (resolve_array_ref): Added code to prevent bounds
-       checking for Cray Pointee arrays.
-       (resolve_equivalence): Prohibited pointees in equivalence
-       statements.
-       * symbol.c (check_conflict): Added Cray pointer/pointee
-       attribute checking.
-       (gfc_add_cray_pointer): New.
-       (gfc_add_cray_pointee): New.
-       (gfc_copy_attr): New code for Cray pointers and pointees.
-       * trans-array.c (gfc_trans_auto_array_allocation): Added code to
-       prevent space from being allocated for pointees.
-       (gfc_conv_array_parameter): Added code to catch pointees and
-       correctly set their base address.
-       * trans-decl.c (gfc_finish_var_decl): Added code to prevent
-       pointee declarations from making it to the back end.
-       (gfc_create_module_variable): Same.
-       * trans-expr.c (gfc_conv_variable): Added code to detect and
-       translate pointees.
-       (gfc_conv_cray_pointee): New.
-       * trans-intrinsic.c (gfc_conv_intrinsic_loc): New.
-       (gfc_conv_intrinsic_function): Added entry point for loc
-       translation.
-       * trans.h (gfc_conv_cray_pointee): Declare.
-
-       * gfortran.texi: Added section on Cray pointers, removed Cray
-       pointers from list of proposed extensions.
-       * intrinsic.texi: Added documentation for loc intrinsic.
-       * invoke.texi: Documented -fcray-pointer flag.
-
-2005-10-24  Asher Langton  <langton2@llnl.gov>
-
-       * decl.c (gfc_match_save): Changed duplicate SAVE errors to
-       warnings in the absence of strict standard conformance
-       * symbol.c (gfc_add_save): Same.
-
-2005-10-24  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       PR fortran/15586
-       * arith.c (gfc_arith_error): Change message to include locus.
-       (check_result, eval_intrinsic, gfc_int2int, gfc_real2real,
-       gfc_real2complex, gfc_complex2real, gfc_complex2complex): Use
-       the new gfc_arith_error.
-       (arith_error): Rewrite full error messages instead of building
-       them from pieces.
-       * check.c (must_be): Removed.
-       (type_check, numeric_check, int_or_real_check, real_or_complex_check,
-       kind_check, double_check, logical_array_check, array_check,
-       scalar_check, same_type_check, rank_check, kind_value_check,
-       variable_check, gfc_check_allocated, gfc_check_associated,
-       gfc_check_cmplx, gfc_check_dcmplx, gfc_check_dot_product,
-       gfc_check_index, gfc_check_kind, gfc_check_matmul, gfc_check_null,
-       gfc_check_pack, gfc_check_precision, gfc_check_present,
-       gfc_check_spread): Rewrite full error messages instead of
-       building them from pieces.
-       * decl.c (gfc_match_entry): Rewrite full error messages instead
-       of building them from pieces.
-       * parse.c (gfc_state_name): Remove.
-       * parse.h: Remove prototype for gfc_state_name.
-
-2005-10-23  Andrew Pinski  <pinskia@physics.uc.edu>
-
-       PR fortran/23635
-       * check.c (gfc_check_ichar_iachar): Move the code around so
-       that the check on the length is after check for
-       references.
-
-2005-10-23  Asher Langton  <langton2@llnl.gov>
-
-       * decl.c (match_type_spec): Add a BYTE type as an extension.
-
-2005-10-23  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/18022
-       * trans-expr.c (gfc_trans_arrayfunc_assign): Return NULL
-       if there is a component ref during an array ref to force
-       use of temporary in assignment.
-
-       PR fortran/24311
-       PR fortran/24384
-       * fortran/iresolve.c (check_charlen_present): New function to
-       add a charlen to the typespec, in the case of constant
-       expressions.
-       (gfc_resolve_merge, gfc_resolve_spread): Call.the above.
-       (gfc_resolve_spread): Make calls to library functions that
-       handle the case of the spread intrinsic with a scalar source.
-
-2005-10-22  Erik Edelmann  <eedelman@gcc.gnu.org>
-
-       PR fortran/24426
-       * decl.c (variable_decl): Don't assign default initializers to
-       pointers.
-
-2005-10-21  Jakub Jelinek  <jakub@redhat.com>
-
-       * interface.c (compare_actual_formal): Issue error when attempting
-       to pass an assumed-size array as assumed-shape array argument.
-
-2005-10-20  Erik Edelmann  <erik.edelmann@iki.fi>
-
-       PR fortran/21625
-       * resolve.c (expr_to_initialize): New function.
-       (resolve_allocate_expr): Take current statement as new
-       argument. Add default initializers to variables of
-       derived types, if they need it.
-       (resolve_code): Provide current statement as argument to
-       resolve_allocate_expr().
-
-2005-10-19  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/24440
-       * resolve.c (resolve_symbol): Correct error in check for
-       assumed size array with default initializer by testing
-       for arrayspec before dereferencing it.
-
-2005-10-17  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/23446
-       * gfortran.h: Primitive for gfc_is_formal_arg.
-       * resolve.c(gfc_is_formal_arg): New function to signal across
-       several function calls that formal argument lists are being
-       processed.
-       (resolve_formal_arglist): Set/reset the flag for gfc_is_formal_arg.
-       *expr.c(check_restricted): Add check, via gfc_is_formal_arg, if
-       symbol is part of an formal argument declaration.
-
-       PR fortran/21459
-       * decl.c (add_init_expr_to_sym): Make a new character
-       length for each variable, when the expression is NULL
-       and link to cl_list.
-
-       PR fortran/20866
-       * match.c (recursive_stmt_fcn): New function that tests if
-       a statement function resurses through itself or other other
-       statement functions.
-       (gfc_match_st_function): Call recursive_stmt_fcn to check
-       if this is recursive and to raise error if so.
-
-       PR fortran/20849
-       PR fortran/20853
-       * resolve.c (resolve_symbol): Errors for assumed size arrays
-       with default initializer and for external objects with an
-       initializer.
-
-       PR fortran/20837
-       * decl.c (match_attr_spec): Prevent PUBLIC from being used
-       outside a module.
-
-2005-10-16  Erik Edelmann  <erik.edelmann@iki.fi>
-
-       PR 22273
-       * expr.c (check_inquiry): Add "len" to inquiry_function.
-
-2005-10-14  Jakub Jelinek  <jakub@redhat.com>
-
-       * primary.c (match_boz_constant): Add missing break after gfc_error.
-
-2005-10-12  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/24092
-       * trans-types.c (gfc_get_derived_type): Insert code to obtain backend
-       declaration for derived types, building if necessary.  Return the
-       derived type if the fields have been built by this process.  Otherwise,
-       continue as before but using the already obtained backend_decls for the
-       derived type components.  Change the gcc_assert to act on the field.
-
-2005-10-12  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/18082
-       * decl.c (variable_decl): Make a new copy of the character
-       length for each variable, when the expression is not a
-       constant.
-
-2005-10-12  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       * gfortran.h: Add bitmasks for different FPE traps. Add fpe
-       member to options_t.
-       * invoke.texi: Document the new -ffpe-trap option.
-       * lang.opt: Add -ffpe-trap option.
-       * options.c (gfc_init_options): Initialize the FPE option.
-       (gfc_handle_fpe_trap_option): New function to parse the argument
-       of the -ffpe-trap option.
-       (gfc_handle_option): Add case for -ffpe-trap.
-       * trans-decl.c: Declare a tree for the set_fpe library function.
-       (gfc_build_builtin_function_decls): Build this tree.
-       (gfc_generate_function_code): Generate a call to set_fpe at
-       the beginning of the main program.
-       * trans.h: New tree for the set_fpe library function.
-
-2005-10-12  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/20847
-       PR fortran/20856
-       * symbol.c (check_conflict): Prevent common variables and
-       function results from having the SAVE attribute,as required
-       by the standard.
-
-2005-10-12  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/24207
-       * resolve.c (resolve_symbol): Exclude use and host associated
-       symbols from the test for private objects in a public namelist.
-
-2005-10-12  Jakub Jelinek  <jakub@redhat.com>
-
-       * trans-common.c (build_field): Fix comment typo.
-       (create_common): Set backend_decl of COMMON or EQUIVALENCEd
-       variables to a VAR_DECL with the COMPONENT_REF in
-       DECL_HAS_VALUE_EXPR rather than COMPONENT_REF directly.
-       * f95-lang.c (gfc_expand_function): Emit debug info for
-       EQUIVALENCEd variables if the equiv union is going to be output.
-
-2005-10-11  Steven G. Kargl  <kargls@comcast.net>
-
-       PR fortran/20786
-       * iresolve.c (gfc_resolve_aint, gfc_resolve_anint): Type conversion
-       of the argument.
-
-2005-10-11  Jakub Jelinek  <jakub@redhat.com>
-
-       * f95-lang.c (gfc_init_decl_processing): Initialize
-       void_list_node.
-
-2005-10-07  Erik Edelmann  <erik.edelmann@iki.fi>
-
-       PR 18568
-       * resolve.c (find_array_spec): Search through the list of
-       components in the symbol of the type instead of the symbol of the
-       variable.
-
-2005-10-05  Richard Guenther  <rguenther@suse.de>
-
-       PR fortran/24176
-       * parse.c (gfc_parse_file): Exit early for empty files.
-
-2005-10-03  Steve Ellcey  <sje@cup.hp.com>
-
-       * fortran/trans-types.c (gfc_init_kinds): Only pass float, double,
-       and long double floating point types through to Fortran compiler.
-
-2005-10-03  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       PR fortran/20120
-       * f95-lang.c (DO_DEFINE_MATH_BUILTIN): Add support for long
-       double builtin function.
-       (gfc_init_builtin_functions): Add mfunc_longdouble,
-       mfunc_clongdouble and func_clongdouble_longdouble trees. Build
-       them for round, trunc, cabs, copysign and pow functions.
-       * iresolve.c (gfc_resolve_reshape, gfc_resolve_transpose): Add
-       case for kind 10 and 16.
-       * trans-decl.c: Add trees for cpowl10, cpowl16, ishftc16,
-       exponent10 and exponent16.
-       (gfc_build_intrinsic_function_decls): Build nodes for int16,
-       real10, real16, complex10 and complex16 types. Build all possible
-       combinations for function _gfortran_pow_?n_?n. Build function
-       calls cpowl10, cpowl16, ishftc16, exponent10 and exponent16.
-       * trans-expr.c (gfc_conv_power_op): Add case for integer(16),
-       real(10) and real(16).
-       * trans-intrinsic.c: Add suppport for long double builtin
-       functions in BUILT_IN_FUNCTION, LIBM_FUNCTION and LIBF_FUNCTION
-       macros.
-       (gfc_conv_intrinsic_aint): Add case for integer(16), real(10) and
-       real(16) kinds.
-       (gfc_build_intrinsic_lib_fndecls): Add support for real10_decl
-       and real16_decl in library functions.
-       (gfc_get_intrinsic_lib_fndecl): Add cases for real and complex
-       kinds 10 and 16.
-       (gfc_conv_intrinsic_exponent): Add cases for real(10) and real(16)
-       kinds.
-       (gfc_conv_intrinsic_sign): Likewise.
-       (gfc_conv_intrinsic_ishftc): Add case for integer(16) kind.
-       * trans-types.c (gfc_get_int_type, gfc_get_real_type,
-       gfc_get_complex_type, gfc_get_logical_type): Doesn't error out in
-       the case of kinds not available.
-       * trans.h: Declare trees for cpowl10, cpowl16, ishftc16,
-       exponent10 and exponent16.
-
-2005-10-01  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/16404
-       PR fortran/20835
-       PR fortran/20890
-       PR fortran/20899
-       PR fortran/20900
-       PR fortran/20901
-       PR fortran/20902
-       * gfortran.h: Prototype for gfc_add_in_equivalence.
-       * match.c (gfc_match_equivalence): Make a structure component
-       an explicit,rather than a syntax, error in an equivalence
-       group.  Call gfc_add_in_equivalence to add the constraints
-       imposed in check_conflict.
-       * resolve.c (resolve_symbol): Add constraints: No public
-       structures with private-type components and no public
-       procedures with private-type dummy arguments.
-       (resolve_equivalence_derived): Add constraint that prevents
-       a structure equivalence member from having a default
-       initializer.
-       (sequence_type): New static function to determine whether an
-       object is default numeric, default character, non-default
-       or mixed sequence. Add corresponding enum typespec.
-       (resolve_equivalence): Add constraints to equivalence groups
-       or their members: No more than one initialized member and
-       that different types are not equivalenced for std=f95.  All
-       the simple constraints have been moved to check_conflict.
-       * symbol.c (check_conflict): Simple equivalence constraints
-       added, including those removed from resolve_symbol.
-       (gfc_add_in_equivalence): New function to interface calls
-       match_equivalence to check_conflict.
-
-2005-09-27  Jakub Jelinek  <jakub@redhat.com>
-
-       PR fortran/18518
-       * trans-common.c (build_equiv_decl): Add IS_SAVED argument.
-       If it is true, set TREE_STATIC on the decl.
-       (create_common): If any symbol in equivalence has SAVE attribute,
-       pass true as last argument to build_equiv_decl.
-
-2005-09-24  Janne Blomqvist  <jblomqvi@cc.hut.fi>
-
-       * trans-io.c (gfc_build_io_library_fndecls): Add entry
-       iocall_x_array for transfer_array.
-       (transfer_array_desc): New function.
-       (gfc_trans_transfer): Add code to call transfer_array_desc.
-
-2005-09-26  Jakub Jelinek  <jakub@redhat.com>
-
-       PR fortran/23677
-       * symbol.c (gfc_is_var_automatic): Return true if character length
-       is non-constant rather than constant.
-       * resolve.c (gfc_resolve): Don't handle !gfc_option.flag_automatic
-       here.
-       * options.c (gfc_post_options): Set gfc_option.flag_max_stack_var_size
-       to 0 for -fno-automatic.
-
-2005-09-23  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/16861
-       * module.c (mio_component_ref): Return if the symbol is NULL
-       and wait for another iteration during module reads.
-       (mio_symtree_ref): Suppress the writing of contained symbols,
-       when a symbol is available in the main namespace.
-       (read_module): Restrict scope of special treatment of contained
-       symbols to variables only and suppress redundant call to
-       find_true_name.
-
-2005-09-22  Steven G. Kargl  <kargls@comcast.net>
-
-       PR fortran/24005
-       * interface.c (check_interface1): Fix NULL dereference.
-
-2005-09-22  Erik Edelmann  <erik.edelmann@iki.fi>
-
-       PR fortran/23843
-       * resolve.c (derived_inaccessible): New function.
-       (resolve_transfer): Use it to check for private
-       components.
-
-2005-09-22  Steven G. Kargl  <kargls@comcast.net>
-
-       PR fortran/23516
-       * intrinsic.c (add_function): Add IMAG, IMAGPART, and REALPART
-       intrinsics.
-       * intrinsic.h: Prototypes for gfc_simplify_realpart and
-       gfc_resolve_realpart.
-       * intrinsic.texi: Document intrinsic procedures.
-       * simplify.c (gfc_simplify_realpart): New function.
-       * irseolve.c (gfc_resolve_realpart): New function.
-
-2005-09-21  Erik Edelmann  <erik.edelmann@iki.fi>
-
-       PR fortran/19929
-       * trans-stmt.c (gfc_trans_deallocate): Check if the
-       object to be deallocated is an array by looking at
-       expr->rank instead of expr->symtree->n.sym->attr.dimension.
-
-2005-09-20  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/23420
-       * io.c (resolve_tag): Don't allow non-CHARACTER constants as formats.
-       (match_io): Fix usage of gfc_find_symbol.
-
-2005-09-20  Jakub Jelinek  <jakub@redhat.com>
-
-       PR fortran/23663
-       * primary.c (match_actual_arg): Handle ENTRY the same way
-       as FUNCTION.
-
-2005-09-18  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       * Make-lang.in: Make check-fortran alias for check-gfortran.
-
-2005-09-18  Andreas Jaeger  <aj@suse.de>
-
-       * module.c (read_module): Add missed line from last patch.
-
-2005-09-18  Erik Edelmann  <erik.edelmann@iki.fi>
-
-       PR fortran/15975
-       * resolve.c (resolve_symbol): Don't assign default
-       initializer to pointers.
-
-2005-09-18  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/16861
-       * module.c (read_module): Give symbols from module procedures
-       different true_name entries to those from the module proper.
-
-2005-09-17  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       PR fortran/15586
-       * arith.c (gfc_arith_error): Add translation support for error
-       messages.
-       * array.c (gfc_match_array_ref): Likewise.
-       (gfc_match_array_spec): Likewise.
-       * check.c (must_be): Add msgid convention to third argument.
-       (same_type_check): Add translation support for error message.
-       (rank_check): Likewise.
-       (kind_value_check): Likewise.
-       (gfc_check_associated): Correct typo.
-       (gfc_check_reshape): Add translation support for error message.
-       (gfc_check_spread): Likewise.
-       * error.c (error_printf): Add nocmsgid convention to argument.
-       (gfc_warning, gfc_notify_std, gfc_warning_now, gfc_warning_check)
-       (gfc_error, gfc_error_now): Likewise.
-       (gfc_status): Add cmsgid convention to argument.
-       * expr.c (gfc_extract_int): Add translation support for error
-       messages.
-       (gfc_check_conformance): Add msgid convention to argument.
-       (gfc_check_pointer_assign): Correct tabbing.
-       * gfortran.h: Include intl.h header. Remove prototype for gfc_article.
-       * gfortranspec.c: Include intl.h header.
-       (lang_specific_driver): Add translation support for --version.
-       * io.c (check_format): Add translation support for error message.
-       (format_item_1): Likewise.
-       (data_desc): Likewise.
-       * matchexp.c: Likewise.
-       * misc.c (gfc_article): Remove function.
-       * module.c (bad_module): Use msgid convention. Add translation support
-       for error messages.
-       (require_atom): Add translation support for error messages.
-       * parse.c (gfc_ascii_statement): Likewise.
-       (gfc_state_name): Likewise.
-       * primary.c (match_boz_constant): Reorganise error messages for
-       translations.
-       * resolve.c (resolve_entries): Likewise.
-       (resolve_operator): Add translation support for error messages.
-       (gfc_resolve_expr): Use msgid convention. Reorganise error messages
-       for translations.
-       (resolve_symbol): Add translation support for error messages.
-       * symbol.c (gfc_add_procedure): Remove use of gfc_article function.
-       * trans-const.c (gfc_build_string_const): Use msgid convention.
-
-2005-09-16  Paul Brook  <paul@codesourcery.com>
-
-       PR fortran/23906
-       * dependency.c (transform_sections): Divide by correct value.
-       Elaborate comment.
-
-2005-09-14  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/21875 Internal Unit Array I/O, NIST
-       * fortran/trans-io.c (gfc_build_io_library_fndecls): Add field for
-       array descriptor to IOPARM structure.
-       * fortran/trans-io.c (set_internal_unit): New function to generate code
-       to store the character (array) and the character length for an internal
-       unit.
-       * fortran/trans-io (build_dt): Use the new function set_internal_unit.
-
-2005-09-14  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/19358
-       * trans-array.c (gfc_trans_dummy_array_bias): correct the typo
-       which uses dim[i].upper for lbound, rather than dim[i].lower.
-
-2005-09-13  Erik Edelmann  <erik.edelmann@iki.fi>
-
-       PR fortran/17740
-       * trans-expr.c (gfc_trans_arrayfunc_assign): Check value
-       of attr.elemental for specific function instead of generic name.
-
-2005-09-13  Richard Sandiford  <richard@codesourcery.com>
-
-       PR fortran/18899
-       * trans-intrinsic.c (gfc_conv_intrinsic_bound): Move initialization
-       of argse.  Remove now-redundant want_pointer assignment.
-       * trans-array.c (gfc_conv_expr_descriptor): When not assigning to
-       a pointer, keep the original bounds of a full array reference.
-
-2005-09-13  Richard Sandiford  <richard@codesourcery.com>
-
-       PR target/19269
-       * iresolve.c (gfc_resolve_cshift, gfc_resolve_eoshift)
-       (gfc_resolve_pack, gfc_resolve_reshape, gfc_resolve_spread)
-       (gfc_resolve_transpose, gfc_resolve_unpack): Add "_char" to the name
-       for character-based operations.
-       (gfc_resolve_pack): Remove ATTRIBUTE_UNUSED from array argument.
-       (gfc_resolve_unpack): Copy the whole typespec from the vector.
-       * trans-array.c (gfc_conv_expr_descriptor): In the EXPR_FUNCTION
-       case, get the string length from the scalarization state.
-
-2005-09-14  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       * Make-lang.in: Change targets prefixes from f95 to fortran.
-       * config-lang.in: Change language name to "fortran".
-       * lang.opt: Change language name to "fortran".
-       * options.c: Change CL_F95 to CL_Fortran.
-
-2005-09-09  Thomas Koenig  <Thomas.Koenig@online.de>
-
-       gfortran.texi:  Document IOSTAT= specifier.
-
-2005-09-09  Thomas Koenig  <Thomas.Koenig@online.de>
-
-       * gfortran.h:  Add iomsg to gfc_open, gfc_close, gfc_filepos,
-       gfc_inquire and gfc_dt.
-       * dump-parse-tree.c (gfc_show_code_node):  Add iomsg
-       for open, close, file positioning, inquire and namelist.
-       * io.c (io_tag):  Add tag_iomsg.
-       (resolve_tag): Add standards warning for iomsg.
-       (match_open_element):  Add iomsg.
-       (gfc_free_open):  Add iomsg.
-       (gfc_resolve_open):  Add iomsg.
-       (gfc_free_close):  Add iomsg.
-       (match_close_element):  Add iomsg.
-       (gfc_resolve_close):  Add iomsg.
-       (gfc_free_filepos):  Add iomsg.
-       (match_file_element):  Add iomsg.
-       (gfc_resolve_filepos):  Add iostat and iomsg.
-       (match-dt_element):  Add iomsg.
-       (gfc_free_dt):  Add iomsg.
-       (gfc_resolve_dt):  Add iomsg.
-       (gfc_free_inquire):  Add iomsg.
-       (match_inquire_element):  Add iomsg.
-       (gfc_resolve_inquire):  Add iomsg.
-       * trans_io.c:  Add ioparm_iomsg and ioparm_iomsg_len.
-       (gfc_build_io_library_fndecls):  Add iomsg as last field.
-       (gfc_trans_open):  Add iomsg.
-       (gfc_trans_close):  Add iomsg.
-       (build_fileos):  Call set_string for iomsg.
-       (gfc_trans_inquire):  Add iomsg.
-       (build_dt):  Add iomsg.
-
-2005-09-09  Richard Sandiford  <richard@codesourcery.com>
-
-       * match.h (gfc_match_equiv_variable): Declare.
-
-2005-09-09  Richard Sandiford  <richard@codesourcery.com>
-
-       PR fortran/19239
-       * Makefile.in (fortran/trans-expr.o): Depend on dependency.h.
-       * dependency.h (gfc_ref_needs_temporary_p): Declare.
-       * dependency.c (gfc_ref_needs_temporary_p): New function.
-       (gfc_check_fncall_dependency): Use it instead of inlined check.
-       By so doing, take advantage of the fact that character substrings
-       within an array reference also need a temporary.
-       * trans.h (GFC_SS_VECTOR): Adjust comment.
-       * trans-array.c (gfc_free_ss): Remove GFC_SS_VECTOR case.
-       (gfc_set_vector_loop_bounds): New function.
-       (gfc_add_loop_ss_code): Call it after evaluating the subscripts of
-       a GFC_SS_SECTION.  Deal with the GFC_SS_VECTOR case by evaluating
-       the vector expression and caching its descriptor for use within
-       the loop.
-       (gfc_conv_array_index_ref, gfc_conv_vector_array_index): Delete.
-       (gfc_conv_array_index_offset): Handle scalar, vector and range
-       dimensions as separate cases of a switch statement.  In the vector
-       case, use the loop variable to calculate a vector index and use the
-       referenced element as the dimension's index.  Perform bounds checking
-       on this final index.
-       (gfc_conv_section_upper_bound): Return null for vector indexes.
-       (gfc_conv_section_startstride): Give vector indexes a start value
-       of 0 and a stride of 1.
-       (gfc_conv_ss_startstride): Adjust for new GFC_SS_VECTOR representation.
-       (gfc_conv_expr_descriptor): Expand comments.  Generalize the
-       handling of the !want_pointer && !direct_byref case.  Use
-       gfc_ref_needs_temporary_p to decide whether the variable case
-       needs a temporary.
-       (gfc_walk_variable_expr): Handle DIMEN_VECTOR by creating a
-       GFC_SS_VECTOR index.
-       * trans-expr.c: Include dependency.h.
-       (gfc_trans_arrayfunc_assign): Fail if the target needs a temporary.
-
-2005-09-09  Richard Sandiford  <richard@codesourcery.com>
-
-       PR fortran/21104
-       * trans.h (gfc_interface_sym_mapping, gfc_interface_mapping): Moved
-       from trans-expr.c.
-       (gfc_init_interface_mapping, gfc_free_interface_mapping)
-       (gfc_add_interface_mapping, gfc_finish_interface_mapping)
-       (gfc_apply_interface_mapping): Declare.
-       * trans-array.h (gfc_set_loop_bounds_from_array_spec): Declare.
-       (gfc_trans_allocate_temp_array): Add pre and post block arguments.
-       * trans-array.c (gfc_set_loop_bounds_from_array_spec): New function.
-       (gfc_trans_allocate_array_storage): Replace loop argument with
-       separate pre and post blocks.
-       (gfc_trans_allocate_temp_array): Add pre and post block arguments.
-       Update call to gfc_trans_allocate_array_storage.
-       (gfc_trans_array_constructor, gfc_conv_loop_setup): Adjust for new
-       interface to gfc_trans_allocate_temp_array.
-       * trans-expr.c (gfc_interface_sym_mapping, gfc_interface_mapping):
-       Moved to trans.h.
-       (gfc_init_interface_mapping, gfc_free_interface_mapping)
-       (gfc_add_interface_mapping, gfc_finish_interface_mapping)
-       (gfc_apply_interface_mapping): Make extern.
-       (gfc_conv_function_call): Build an interface mapping for array
-       return values too.  Call gfc_set_loop_bounds_from_array_spec.
-       Adjust call to gfc_trans_allocate_temp_array so that code is
-       added to SE rather than LOOP.
-
-2005-09-09  Richard Sandiford  <richard@codesourcery.com>
-
-       PR fortran/12840
-       * trans.h (gfor_fndecl_internal_realloc): Declare.
-       (gfor_fndecl_internal_realloc64): Declare.
-       * trans-decl.c (gfor_fndecl_internal_realloc): New variable.
-       (gfor_fndecl_internal_realloc64): New variable.
-       (gfc_build_builtin_function_decls): Initialize them.
-       * trans-array.h (gfc_trans_allocate_temp_array): Add a fourth argument.
-       * trans-array.c (gfc_trans_allocate_array_storage): Add an argument
-       to say whether the array can grow later.  Don't allocate the array
-       on the stack if so.  Don't call malloc for zero-sized arrays.
-       (gfc_trans_allocate_temp_array): Add a similar argument here.
-       Pass it along to gfc_trans_allocate_array_storage.
-       (gfc_get_iteration_count, gfc_grow_array): New functions.
-       (gfc_iterator_has_dynamic_bounds): New function.
-       (gfc_get_array_constructor_element_size): New function.
-       (gfc_get_array_constructor_size): New function.
-       (gfc_trans_array_ctor_element): Replace pointer argument with
-       a descriptor tree.
-       (gfc_trans_array_constructor_subarray): Likewise.  Take an extra
-       argument to say whether the variable-sized part of the constructor
-       must be allocated using realloc.  Grow the array when this
-       argument is true.
-       (gfc_trans_array_constructor_value): Likewise.
-       (gfc_get_array_cons_size): Delete.
-       (gfc_trans_array_constructor): If the loop bound has not been set,
-       split the allocation into a static part and a dynamic part.  Set
-       loop->to to the bounds for static part before allocating the
-       temporary.  Adjust call to gfc_trans_array_constructor_value.
-       (gfc_conv_loop_setup): Allow any constructor to determine the
-       loop bounds.  Check whether the constructor has a dynamic size
-       and prefer to use something else if so.  Expect the loop bound
-       to be set later.  Adjust call to gfc_trans_allocate_temp_array.
-       * trans-expr.c (gfc_conv_function_call): Adjust another call here.
-
-2005-09-09  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/18878
-       * module.c (find_use_name_n): Based on original
-       find_use_name. Either counts number of use names for a
-       given real name or returns use name n.
-       (find_use_name, number_use_names): Interfaces to the
-       function find_use_name_n.
-       (read_module): Add the logic and calls to these functions,
-       so that mutiple reuses of the same real name are loaded.
-
-2005-09-09  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/22304
-       PR fortran/23270
-       PR fortran/18870
-       PR fortran/16511
-       PR fortran/17917
-       * gfortran.h: Move definition of BLANK_COMMON_NAME from trans-
-       common.c so that it is accessible to module.c. Add common_head
-       field to gfc_symbol structure. Add field for the equivalence
-       name AND new attr field, in_equivalence.
-       * match.c (gfc_match_common, gfc_match_equivalence): In loops
-       that flag common block equivalences, emit an error if the
-       common blocks are different, using sym->common_head as the
-       common block identifier. Ensure that symbols that are equivalence
-       associated with a common block are marked as being in_common.
-       * module.c (write_blank_common): New.
-       (write_common): Use unmangled common block name.
-       (load_equiv): New function ported from g95.
-       (read_module): Call load_equiv.
-       (write_equiv): New function ported from g95. Correct
-       string referencing for gfc functions. Give module
-       equivalences a unique name.
-       (write_module): Call write_equiv and write_blank_common.
-       * primary.c (match_variable) Old gfc_match_variable, made
-       static and third argument provided to indicate if parent
-       namespace to be visited or not.
-       (gfc_match_variable) New. Interface to match_variable.
-       (gfc_match_equiv_variable) New. Interface to match_variable.
-       * trans-common.c (finish_equivalences): Provide the call
-       to create_common with a gfc_common_header so that
-       module equivalences are made external, rather than local.
-       (find_equivalences): Ensure that all members in common block
-       equivalences are marked as used. This prevents the subsequent
-       call to this function from making local unions.
-       * trans-decl.c (gfc_generate_function_code): Move the call to
-       gfc_generate_contained_functions to after the call to
-       gfc_trans_common so the use-associated, contained common
-       blocks produce the correct references.
-       (gfc_create_module_variable): Return for equivalenced symbols
-       with existing backend declaration.
-
-2005-09-08  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/23765
-       * match.c (gfc_match_common): Remove unnecessary / wrong special
-       cases for end-of-statement.
-
-2005-09-08  Janne Blomqvist  <jblomqvi@cc.hut.fi>
-
-       * gfortran.texi: Add section about implemented F2003 features.
-
-2005-09-08  Richard Sandiford  <richard@codesourcery.com>
-
-       PR fortran/15326
-       * trans-array.c (gfc_add_loop_ss_code): Set ss->string_length in
-       the GFC_SS_FUNCTION case too.
-       * trans-expr.c (gfc_conv_function_val): Allow symbols to be bound
-       to function pointers as well as function decls.
-       (gfc_interface_sym_mapping, gfc_interface_mapping): New structures.
-       (gfc_init_interface_mapping, gfc_free_interface_mapping)
-       (gfc_get_interface_mapping_charlen, gfc_get_interface_mapping_array)
-       (gfc_set_interface_mapping_bounds, gfc_add_interface_mapping)
-       (gfc_finish_interface_mapping, gfc_apply_interface_mapping_to_cons)
-       (gfc_apply_interface_mapping_to_ref)
-       (gfc_apply_interface_mapping_to_expr)
-       (gfc_apply_interface_mapping): New functions.
-       (gfc_conv_function_call): Evaluate the arguments before working
-       out where the result should go.  Make the null pointer case provide
-       the string length in parmse.string_length.  Cope with non-constant
-       string lengths, using the above functions to evaluate such lengths.
-       Use a temporary typespec; don't assign to sym->cl->backend_decl.
-       Don't assign to se->string_length when returning a cached array
-       descriptor.
-
-2005-09-08  Richard Sandiford  <richard@codesourcery.com>
-
-       PR fortran/19928
-       * trans-array.c (gfc_conv_array_ref): Call gfc_advance_se_ss_chain
-       after handling scalarized references.  Make "indexse" inherit from
-       "se" when handling AR_ELEMENTs.
-       (gfc_walk_variable_expr): Add GFC_SS_SCALAR entries for each
-       substring or scalar reference that follows an array section.
-       * trans-expr.c (gfc_conv_variable): When called from within a
-       scalarization loop, start out with "ref" pointing to the scalarized
-       part of the reference.  Don't call gfc_advance_se_ss_chain here.
-
-2005-09-07  Richard Sandiford  <richard@codesourcery.com>
-
-       PR fortran/23373
-       * trans-expr.c (gfc_trans_pointer_assignment): Assign to a temporary
-       descriptor if the rhs is not a null pointer or variable.
-
-2005-09-07  Thomas Koenig  <Thomas.Koenig@online.de>
-
-       PR fortran/20848
-       * symbol.c(check_conflict):  Add conflict for parameter/save,
-
-2005-09-06  Richard Sandiford  <richard@codesourcery.com>
-
-       PR fortran/19269
-       * simplify.c (gfc_simplify_transpose): Set the result's typespec from
-       the source, not the first element of the return value.
-
-2005-09-04  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/23661
-       * io.c (match_io): Correctly backup if PRINT followed by
-       symbol which is not a namelist.  Force blank between PRINT
-       and namelist in free form.
-
-2005-08-31  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       PR fortran/20592
-       * gfortran.h (gfc_option_t): Add flag_automatic.
-       * invoke.texi: Document the -fno-automatic option.
-       * lang.opt: Add a -fautomatic option.
-       * options.c (gfc_init_options): Default for -fautomatic is on.
-       (gfc_handle_option): Add handling of -fautomatic option.
-       * resolve.c (gfc_resolve): When -fno-automatic is used, mark
-       needed variables as SAVE.
-
-2005-08-27  Erik Edelmann  <erik.edelmann@iki.fi>
-
-       * trans-array.c (gfc_trans_deferred_array): Fix comments.
-
-2005-08-27  Erik Schnetter  <schnetter@aei.mpg.de>
-
-       * primary.c (match_charkind_name): Fix typo in comment leading to
-       function.
-
-2005-08-25  Erik Edelmann  <eedelman@acclab.helsinki.fi>
-
-       PR fortran/20363
-       * symbol.c (find_special): Remove.
-       (build_sym, add_init_expr, attr_decl1): Remove calls to
-       find_special in favor of calls to gfc_get_symbol.
-
-2005-08-24  Thomas Koenig  <Thomas.Koenig@online.de>
-
-       PR fortran/17758
-       * gfortran.h (symbol_attribute):  Add noreturn to the structure.
-       (gfc_intrinsic_sym):  Add noreturn to the structure.
-       * intrinsic.c (make_noreturn):  New function.
-       (add_subroutines):  Mark subroutines abort and exit as noreturn.
-       (gfc_intrinsic_sub_interface):  Copy noreturn attribute from
-       isym to the resolved symbol.
-       * trans-decl.c (gfc_get_extern_function_decl): Set function
-       as VOLATILE (== noreturn) if the noreturn attribute is set.
-
-2005-08-21  Steven G. Kargl  <kargls@comcast.net>
-
-       * decl.c: Typo in comment.
-
-2005-08-21  Steven G. Kargl  <kargls@comcast.net>
-
-       * array.c: Bump GFC_MAX_AC_EXPAND from 100 to 65535.
-
-2005-08-21  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * gfortran.h (gfc_option_t): Remove source field.  Add
-       flag_d_lines field.
-       (gfc_new_file): Remove arguments in prototype.
-       (gfc_source_file): Make 'const char *'.
-       * f95-lang.c (gfc_init): Use gfc_source_file instead of
-       gfc_option.source.  Call gfc_new_file without arguments.
-       * invoke.texi: Document new options '-fd-lines-as-code' and
-       '-fd-lines-as-comment'.
-       * lang.opt: Add new options.  Alphabetize.
-       * options.c (gfc_init_options): Initialize gfc_source_file instead
-       of gfc_option.source.  Initialize gfc_option.flag_d_lines.
-       (form_from_filename): Move here from scanner.c.  Make
-       'filename' argument 'const'.
-       (gfc_post_options): Set gfc_source_file.  Determine source form.
-       Warn if 'd-lines*' are used in free form.
-       * scanner.c (gfc_source_file): Constify.
-       (skip_fixed_comments): Deal with d-lines.
-       (get_file): Constify argument 'name'.
-       (load_file): Constify argument 'filename'.
-       (form_from_filename): Moved to options.c.
-       (gfc_new_file): Remove arguments.  Don't initialize
-       gfc_source_file, don't determine source form.
-       * trans-const.c (gfc_init_constants): Use gfc_source_file instead
-       of gfc_option.source.
-
-2005-08-19  Steven G. Kargl  <kargls@comcast.net>
-
-       PR fortran/23065
-       * gfortran.h: Remove PATH_MAX definition.
-       * module.c (write_module, gfc_dump_module): Use alloca to allocate
-       buffers.
-       * scanner.c (gfc_release_include_path, form_from_filename): Ditto.
-
-2004-08-16  Huang Chun  <chunhuang73@hotmail.com>
-
-       * trans-expr.c (gfc_conv_power_op): Evaluate the expression before
-       expand.
-
-2005-08-14  Asher Langton  <langton2@llnl.gov>
-
-       * parse.c (match): Enclose macro in do...while(0) and braces.
-
-2005-08-14  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/21432.
-       * gfortran.texi: Document PRINT namelist.
-
-2005-08-14  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/21432.
-       * io.c (match_io): Add code to implement PRINT namelist.
-
-2005-08-14  Canqun Yang  <canqun@nudt.edu.cn>
-
-       * trans-stmt.c (gfc_trans_arithmetic_if): Optimized in case of equal
-       labels.
-
-2005-08-11  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-           Steven Bosscher  <stevenb@suse.de>
-
-       PR libfortran/20006
-       * gfortran.h: Add is_main_program member to symbol_attribute.
-       * trans-decl: Add a gfor_fndecl_set_std tree.
-       (gfc_build_builtin_function_decls): Create it.
-       (gfc_generate_function_code): Add this call at the beginning of
-       the main program.
-       * trans.c (gfc_generate_code): Move main_program and attr.
-       * trans.h: Add declaration for gfor_fndecl_set_std.
-
-2005-08-10  Thomas Koenig  <Thomas.Koenig@online.de>
-
-       PR libfortran/22143
-       gfortran.h:  Declare new function gfc_resolve_dim_arg.
-       resolve.c:  New function gfc_resolve_dim_arg.
-       iresolve.c (gfc_resolve_all):  Use gfc_resolve_dim_arg.
-       (gfc_resolve_any):  Likewise.
-       (gfc_resolve_count):  Likewise.
-       (gfc_resolve_cshift):  Likewise.  If the kind of shift is less
-       gfc_default_integer_kind, convert it to default integer type.
-       (gfc_resolve_eoshift):  Likewise.
-       (gfc_resolve_maxloc):  Use gfc_resolve_dim_arg.
-       (gfc_resolve_maxval):  Likewise.
-       (gfc_resolve_minloc):  Likewise.
-       (gfc_resolve_minval):  Likewise.
-       (gfc_resolve_product):  Likewise.
-       (gfc_resolve_spread):  Likewise.
-       (gfc_resolve_sum):  Likewise.
-
-2005-08-09  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       * check.c (gfc_check_ttynam_sub, gfc_check_isatty): Add check
-       functions for new intrinsics TTYNAM and ISATTY.
-       * intrinsic.c (add_functions, add_subroutines): Add new
-       intrinsics.
-       * intrinsic.h: Add prototypes for new check and resolve
-       functions.
-       * iresolve.c (gfc_resolve_isatty, gfc_resolve_ttynam_sub): New
-       resolve functions for intrinsics TTYNAM and ISATTY.
-       * gfortran.h (gfc_generic_isym_id): Add symbol for ISATTY.
-       * trans-intrinsic.c: Add case for GFC_ISYM_ISATTY.
-
-2005-08-09  Jakub Jelinek  <jakub@redhat.com>
-
-       * scanner.c (preprocessor_line): Don't write beyond the end of flag
-       buffer.
-
-2005-08-07   Janne Blomqvist  <jblomqvi@cc.hut.fi>
-
-       PR fortran/22390
-       * dump-parse-tree.c (gfc_show_code_node): Add case for FLUSH.
-       * gfortran.h: Add enums for FLUSH.
-       * io.c (gfc_free_filepos,match_file_element,match_filepos): Modify
-       comment appropriately.  (gfc_match_flush): New function.
-       * match.c (gfc_match_if): Add match for flush.
-       * match.h: Add prototype.
-       * parse.c (decode_statement): Add flush to 'f' case.
-       (next_statement): Add case for flush. (gfc_ascii_statement): Likewise.
-       * resolve.c (resolve_code): Add flush case.
-       * st.c (gfc_free_statement): Add flush case.
-       * trans-io.c: Add prototype for flush.
-       (gfc_build_io_library_fndecls): Build fndecl for flush.
-       (gfc_trans_flush): New function.
-       * trans-stmt.h: Add prototype.
-       * trans.c (gfc_trans_code): Add case for flush.
-
-2005-08-06  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       * primary.c (match_hollerith_constant): Fix typo.
-
-2005-08-06  Kazu Hirata  <kazu@codesourcery.com>
-
-       * decl.c, dump-parse-tree.c, gfortran.texi, intrinsic.texi,
-       invoke.texi, resolve.c, trans-array.c, trans-array.h,
-       trans-common.c, trans-expr.c, trans-io.c, trans.h: Fix
-       comment/doc typos.  Follow spelling conventions.
-
-2005-08-06  Jakub Jelinek  <jakub@redhat.com>
-
-       PR fortran/18833
-       PR fortran/20850
-       * primary.c (match_varspec): If equiv_flag, don't look at sym's
-       attributes, call gfc_match_array_ref up to twice and don't do any
-       substring or component processing.
-       * resolve.c (resolve_equivalence): Transform REF_ARRAY into
-       REF_SUBSTRING or nothing if needed.  Check that substrings
-       don't have zero length.
-
-2005-08-05  Thomas Koenig  <Thomas.Koenig@online.de>
-
-       * trans-expr.c  (gfc_build_builtin_function_decls):  Mark
-       stop_numeric and stop_string as non-returning.
-
-2005-08-04  Paul Brook  <paul@codesourcery.com>
-
-       * trans-expr.c (gfc_conv_expr, gfc_conv_expr_type): Update comments.
-       (gfc_conv_expr_lhs): Fix assertion.
-       (gfc_conv_expr_val): Merge post block.  Set se.expr to new value.
-
-2005-08-02  David Edelsohn  <edelsohn@gnu.org>
-
-       PR fortran/22491
-       * expr.c (simplify_parameter_variable): Do not copy the subobject
-       references if the expression value is a constant.
-
-       * expr.c (gfc_simplify_expr): Evaluate constant substrings.
-
-2005-07-31  Jerry DeLisle  <jvdelisle@verizon.net>
-
-       * intrinsic.texi: Add documentation for exponent, floor, and fnum and
-       fix description of ceiling in index.
-
-2005-07-31  Steven Bosscher  <stevenb@suse.de>
-
-       * trans-decl.c (gfc_build_builtin_function_decls): Give the internal
-       malloc functions the 'malloc' attribute.  Give runtime_error the
-       'noreturn' attribute.
-
-2005-07-31  Steven Bosscher  <stevenb@suse.de>
-
-       * trans-stmt.c (gfc_trans_goto): Jump to the known label instead
-       of the assigned goto variable.
-
-2005-07-29  Steven Bosscher  <stevenb@suse.de>
-
-       * trans-types.h (gfc_array_range_type): Add missing GTY decl for this.
-
-2005-07-28  Andrew Pinski  <pinskia@physics.uc.edu>
-
-       * fortran/f95-lang.c (language_function): Remove
-       named_labels, shadowed_labels, returns_value, returns_abnormally,
-       warn_about_return_type, and extern_inline fields.
-       (named_labels): Remove variable.
-       (gfc_init_decl_processing): Remove setting of named_labels.
-
-2005-07-27  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
-
-       PR fortran/22503
-       * resolve.c (resolve_operator): Improve diagnostic for comparison
-       of logicals with invalid operator.
-
-2005-07-25  Jakub Jelinek  <jakub@redhat.com>
-
-       PR fortran/20063
-       * data.c (gfc_assign_data_value_range): Call
-       create_character_initializer if last_ts is a character type.
-
-2005-07-22  Manfred Hollstein  <mh@suse.com>
-
-       * match.c (gfc_match_symbol): Fix uninitialised warnings.
-       * matchexp.c (gfc_match_expr): Likewise.
-
-2005-07-20  Giovanni Bajo  <giovannibajo@libero.it>
-
-       Make CONSTRUCTOR use VEC to store initializers.
-       * trans-array.c (gfc_build_null_descriptor,
-       gfc_trans_array_constructor_value, gfc_conv_array_initializer):
-       Update to cope with VEC in CONSTRUCTOR_ELTS.
-       * trans-common.c (create_common): Likewise.
-       * trans-expr.c (gfc_conv_structure): Likewise.
-       * trans-stmt.c (gfc_trans_character_select): Use
-       build_constructor_from_list instead of build_constructor.
-
-2005-07-19  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/16940
-       * resolve.c (resolve_symbol): A symbol with FL_UNKNOWN
-       is matched against interfaces in parent namespaces. If there
-       the symtree is set to point to the interface.
-
-2005-07-16  David Edelsohn  <edelsohn@gnu.org>
-
-       PR fortran/21730
-       * decl.c (do_parm): Adjust character initializer to character length
-       of symbol before assigning.
-
-2005-07-14  Steve Ellcey  <sje@cup.hp.com>
-
-       * trans-types.c (MAX_REAL_KINDS): Increase from 4 to 5.
-
-2005-07-14  Jakub Jelinek  <jakub@redhat.com>
-
-       * gfortran.h (MAX_ERROR_MESSAGE): Remove.
-       (gfc_error_buf): Add allocated and index fields.  Change message
-       field from array to a pointer.
-       * error.c (use_warning_buffer, error_ptr, warning_ptr): Remove.
-       (cur_error_buffer): New variable.
-       (error_char): Use cur_error_buffer->{message,index} instead of
-       {warning,error}_{buffer.message,ptr}.  Reallocate message buffer
-       if too small.
-       (gfc_warning, gfc_notify_std, gfc_error, gfc_error_now): Setup
-       cur_error_buffer and its index rather than {warning,error}_ptr
-       and use_warning_buffer.
-       (gfc_warning_check, gfc_error_check): Don't print anything if
-       message is NULL.
-       (gfc_push_error): Allocate saved message with xstrdup.
-       (gfc_pop_error): Free saved message with gfc_free.
-       (gfc_free_error): New function.
-       * primary.c (match_complex_constant): Call gfc_free_error if
-       gfc_pop_error will not be called.
-       * match.c (gfc_match_st_function): Likewise.
-
-       PR fortran/22417
-       * scanner.c (preprocessor_line): Don't treat flag 3 as the start of a new
-       file.  Fix file left but not entered warning.
-
-2005-07-14  Feng Wang  <fengwang@nudt.edu.cn>
-       Steven G. Kargl  <kargls@comcast.net>
-
-       * array.c (resolve_character_array_constructor): Allocate gfc_charlen
-       for the array and attach to namespace list for automatic deallocation.
-
-2005-07-13  Andreas Schwab  <schwab@suse.de>
-
-       * Make-lang.in (fortran/dependency.o): Depend on
-       $(GFORTRAN_TRANS_DEPS).
-
-2005-07-11  Jakub Jelinek  <jakub@redhat.com>
-
-       * trans-stmt.c (gfc_trans_forall_loop): Clear maskindex before
-       the outermost loop.
-       (gfc_trans_assign_need_temp, gfc_trans_pointer_assign_need_temp,
-       gfc_trans_forall_1, gfc_evaluate_where_mask, gfc_trans_where_2):
-       Don't clear maskindexes here.
-
-2005-07-08  Daniel Berlin  <dberlin@dberlin.org>
-
-       * trans-decl.c (create_function_arglist): DECL_ARG_TYPE_AS_WRITTEN
-       is removed.
-
-2005-07-08  Jakub Jelinek  <jakub@redhat.com>
-
-       * primary.c (gfc_match_rvalue): Handle ENTRY the same way
-       as FUNCTION.
-
-2005-07-07  Jakub Jelinek  <jakub@redhat.com>
-
-       * scanner.c (load_line): Add pbuflen argument, don't make
-       buflen static.  If maxlen == 0 or preprocessor_flag,
-       don't truncate at buflen, but at maxlen.  In xrealloc add
-       1 byte at the end for the terminating '\0'.  Don't fill
-       with spaces up to buflen, but gfc_option.fixed_line_length.
-       (load_file): Adjust load_line caller.  Add line_len variable.
-
-       * scanner.c (preprocessor_line): Only set current_file->line when errors
-       have not been encountered.  Warn and don't crash if a file leave
-       preprocessor line has no corresponding entering line.  Formatting.
-
-2005-07-07  Steven Bosscher  <stevenb@suse.de>
-
-       * primary.c (match_hollerith_constant): Use int, not unsigned int,
-       for the hollerith length.  Fix indentation.
-
-2005-07-07  Feng Wang  <fengwang@nudt.edu.cn>
-
-       PR fortran/16531
-       PR fortran/15966
-       PR fortran/18781
-       * arith.c (gfc_hollerith2int, gfc_hollerith2real,
-       gfc_hollerith2complex, gfc_hollerith2character, gfc_hollerith2logical):
-       New functions.
-       (eval_intrinsic): Don't evaluate if Hollerith constant arguments exist.
-       * arith.h (gfc_hollerith2int, gfc_hollerith2real,
-       gfc_hollerith2complex, gfc_hollerith2character, gfc_hollerith2logical):
-       Add prototypes.
-       * expr.c (free_expr0): Free memery allocated for Hollerith constant.
-       (gfc_copy_expr): Allocate and copy string if Expr is from Hollerith.
-       (gfc_check_assign): Enable conversion from Hollerith to other.
-       * gfortran.h (bt): Add BT_HOLLERITH.
-       (gfc_expr): Add from_H flag.
-       * intrinsic.c (gfc_type_letter): Return 'h' for BT_HOLLERITH.
-       (add_conversions): Add conversions from Hollerith constant to other.
-       (do_simplify): Don't simplify if  Hollerith constant arguments exist.
-       * io.c (resolve_tag): Enable array in FORMAT tag under GFC_STD_GNU.
-       * misc.c (gfc_basetype_name): Return "HOLLERITH" for BT_HOLLERITH.
-       (gfc_type_name): Print "HOLLERITH" for BT_HOLLERITH.
-       * primary.c (match_hollerith_constant): New function.
-       (gfc_match_literal_constant): Add match Hollerith before Integer.
-       * simplify.c (gfc_convert_constant): Add conversion from Hollerith
-       to other.
-       * trans-const.c (gfc_conv_constant_to_tree): Use VIEW_CONVERT_EXPR to
-       convert Hollerith constant to tree.
-       * trans-io.c (gfc_convert_array_to_string): Get array's address and
-       length to set string expr.
-       (set_string): Deal with array assigned Hollerith constant and character
-       array.
-       * gfortran.texi: Document Hollerith constants as extention support.
-
-2005-07-07  Feng Wang  <fengwang@nudt.edu.cn>
-
-       PR fortran/22327
-       * trans-array.c (gfc_trans_array_constructor_value): Fix index of data.
-
-2005-07-07  Jakub Jelinek  <jakub@redhat.com>
-
-       * decl.c (gfc_match_entry): Allow ENTRY without parentheses
-       even in FUNCTIONs.
-
-2005-07-03  Kazu Hirata  <kazu@codesourcery.com>
-
-       * gfortran.texi, intrinsic.texi: Fix typos.
-       * symbol.c: Fix a comment typo.
-
-2005-07-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
-
-       * error.c (error_printf, error_print): Use ATTRIBUTE_GCC_GFC.
-       * gfortran.h (ATTRIBUTE_GCC_GFC): New.
-       (gfc_warning, gfc_warning_now, gfc_error, gfc_error_now,
-       gfc_fatal_error, gfc_internal_error, gfc_notify_std): Use
-       ATTRIBUTE_GCC_GFC.
-
-2005-07-03  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       PR fortran/20842
-       * io.c (match_dt_element): Do not allow END tag in PRINT or
-       WRITE statement.
-
-2005-07-02  Joseph S. Myers  <joseph@codesourcery.com>
-
-       * lang.opt: Remove "." from end of help texts.
-
-2005-07-01  Jerry DeLisle  <jvdelisle@verizon.net>
-
-       * gfortran.texi: Fix typos and grammar.
-       * invoke.texi: Fix typos and grammar.
-       * intrinsic.texi: Add documentaion for eoshift, epsilon, etime, and
-       exit. Fixed alignment of text for dtime syntax. Fixed a few line
-       lengths.
-
-2005-06-25  Jakub Jelinek  <jakub@redhat.com>
-
-       * trans-stmt.c (gfc_trans_forall_1): Prefer to use smaller logical
-       type than boolean_type_node.
-
-2005-06-25  Kelley Cook  <kcook@gcc.gnu.org>
-
-       * all files: Update FSF address in copyright headers.
-
-2005-06-24  Jerry DeLisle  <jvdelisle@verizon.net>
-
-       PR fortran/21915
-       * gfortran.h: Add symbols for new intrinsic functions.
-       * intrinsic.c: Add new functions acosh, asinh, and atanh.
-       * intrinsic.h: Add prototypes for the new functions.
-       * iresolve.c (gfc_resolve_acosh): New function.
-       (gfc_resolve_asinh): New function.
-       (gfc_resolve_atanh): New function.
-       * mathbuiltins.def: Add defines.
-       * simplify.c (gfc_simplify_acosh): New function.
-       (gfc_simplify_asinh): New function.
-       (gfc_simplify_atanh): New function.
-
-2005-06-24  Feng Wang  <fengwang@nudt.edu.cn>
-
-       * simplify.c (gfc_simplify_modulo): Don't clear before get result.
-
-2005-06-22  Paul Brook  <paul@codesourcery.com>
-
-       PR fortran/21034
-       * symbol.c (gfc_is_var_automatic): New function.
-       (save_symbol): Use it.
-
-2005-06-21  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-           Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/22010
-       Port from g95.
-       * module.c (mio_namelist): New function. Correct to set
-       namelist_tail and to give error on renaming namelist by use
-       association.
-       (mio_symbol): Call mio_namelist.
-
-2005-06-19  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       * gfortran.h: Add flag_backslash compile-time option.
-       * lang.opt: Add support for -fbackslash option.
-       * options.c: Likewise.
-       * primary.c: Implement behavior for -fno-backslash.
-       * invoke.texi: Add doc for -fbackslash option.
-       * gfortran.texi: Remove mention of -fno-backslash as a
-       possible extension.
-
-2005-06-20  Steven G. Kargl  <kargls@comcast.net>
-       (port from g95)
-
-       PR fortran/21257
-       * match.c (gfc_match_label): Detect duplicate labels.
-
-
-2005-06-20  Erik Edelmann  <erik.edelmann@iki.fi>
-
-       * intrinsic.c (check_intrinsic_standard): Fix spelling error
-       in a warning message.
-
-2005-06-18  Erik Edelman  <eedelman@acclab.helsinki.fi>
-           Steven G. Kargl  <kargls@comast.net>
-
-       PR fortran/19926
-       * primary.c (gfc_match_rvalue):  expr_type can be EXPR_CONSTANT
-       for an array; check that sym->as is NULL.
-
-
-2005-06-18  Steven G. Kargl  <kargls@comcast.net>
-
-       * intrinsic.c (gfc_intrinsic_func_interface): Enable errors for generic
-       functions whose simplification routine return FAILURE.
-
-2005-06-13  Geoffrey Keating  <geoffk@apple.com>
-
-       * Make-lang.in (fortran.install-man): Doesn't depend on installdirs.
-       (rule for installing f95.1 manpage): Does depend on installdirs.
-
-2005-06-13  Jakub Jelinek  <jakub@redhat.com>
-
-       PR fortran/22038
-       * trans-stmt.c (gfc_trans_forall_loop): Only increment maskindex
-       in the innermost loop.
-
-       * trans-expr.c (gfc_conv_function_call): Return int instead of
-       void.  Use a local variable for has_alternate_specifier and
-       return it.  Avoid modification of function type's return value
-       in place, since it may be shared.
-       * trans.h (has_alternate_specifier): Remove.
-       (gfc_conv_function_call): Change return type.
-       * trans-stmt.c (has_alternate_specifier): Remove.
-       (gfc_trans_call): Add a local has_alternate_specifier variable,
-       set it from gfc_conv_function_call return value.
-
-2005-06-12  Richard Henderson  <rth@redhat.com>
-
-       * trans-array.c (gfc_conv_descriptor_data_get): Rename from
-       gfc_conv_descriptor_data.  Cast the result to the DATAPTR type.
-       (gfc_conv_descriptor_data_set, gfc_conv_descriptor_data_addr): New.
-       (gfc_trans_allocate_array_storage): Use them.
-       (gfc_array_allocate, gfc_array_deallocate): Likewise.
-       (gfc_trans_dummy_array_bias, gfc_conv_expr_descriptor): Likewise.
-       (gfc_trans_deferred_array): Likewise.
-       * trans-expr.c (gfc_conv_function_call): Likewise.
-       (gfc_trans_subcomponent_assign): Likewise.
-       (gfc_trans_pointer_assignment): Likewise.
-       * trans-intrinsic.c (gfc_conv_allocated): Likewise.
-       * trans-types.c (gfc_array_descriptor_base): New.
-       (gfc_get_element_type): Use GFC_TYPE_ARRAY_DATAPTR_TYPE.
-       (gfc_get_array_descriptor_base): Break out from ...
-       (gfc_get_array_type_bounds): ... here.  Create type variants.
-       * trans-array.h (gfc_conv_descriptor_data_get): Declare.
-       (gfc_conv_descriptor_data_set, gfc_conv_descriptor_data_addr): Declare.
-
-2005-06-12  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-expr.c (gfc_conv_variable): POINTER results don't need f2c
-       calling conventions.  Look at sym instead of sym->result.
-       * trans-types.c (gfc_sym_type): Remove workaround for frontend bug.
-       Remove condition which is always false with workaround removed.
-       (gfc_return_by_reference): Always look at sym, never at sym->result.
-
-2005-06-11  Steven G. Kargl  <kargls@comcast.net>
-
-       PR fortran/17792
-       PR fortran/21375
-       * trans-array.c (gfc_array_deallocate): pstat is new argument
-       (gfc_array_allocate): update gfc_array_deallocate() call.
-       (gfc_trans_deferred_array): ditto.
-       * trans-array.h: update gfc_array_deallocate() prototype.
-       * trans-decl.c (gfc_build_builtin_function_decls): update declaration
-       * trans-stmt.c (gfc_trans_deallocate): Implement STAT= feature.
-
-2005-06-07  Jerry DeLisle  <jvdelisle@verizon.net>
-
-       * intrinsic.texi: Add documentation for dcmplx, digits,
-       dim, idim, ddim, dot_product, dprod, dreal, and dtime.
-
-2005-06-05  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/21912
-       * trans-array.c (gfc_trans_array_constructor_value): Slightly reorder.
-       Generate correct exit condition in case of negative steps in
-       implied-do loops.
-
-       * invoke.texi: Fix description of flags required for compatibility
-       with g77.
-
-2005-06-04  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-       Erik Schnetter  <schnetter@aei.mpg.de>
-
-       PR fortran/19195
-       * trans.c (gfc_get_backend_locus): Remove unnecessary adjustment,
-       remove FIXME comment.
-
-2005-06-04  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * match.c (match_forall_iterator): Don't immediately give error if '='
-       is not followed by an expression.
-
-2005-06-04  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-       Erik Edelmann  <erik.edelmann@iki.fi>
-
-       * array.c (gfc_match_array_constructor): Disallow empty array
-       constructor.
-
-2005-06-03  Jerry DeLisle  <jvdelisle@verizon.net>
-
-       * fortran/intrinsic.texi: Add documentation for
-       command_argument_count, conjg, dconjg, count,
-       cpu_time, cshift, date_and_time, dble, dfloat.
-
-2005-06-01  Roger Sayle  <roger@eyesopen.com>
-
-       * intrinsic.c (add_conv): No longer take a "simplify" argument as
-       its always gfc_convert_constant, instead take a "standard" argument.
-       (add_conversions): Change all existing calls of add_conv to pass
-       GFC_STD_F77 as appropriate.  Additionally, if we're allowing GNU
-       extensions support integer-logical and logical-integer conversions.
-       (gfc_convert_type_warn): Warn about use the use of these conversions
-       as a extension when appropriate, i.e. with -pedantic.
-       * simplify.c (gfc_convert_constant): Add support for integer to
-       logical and logical to integer conversions, using gfc_int2log and
-       gfc_log2int.
-       * arith.c (gfc_log2int, gfc_int2log): New functions.
-       * arith.h (gfc_log2int, gfc_int2log): Prototype here.
-       * gfortran.texi: Document this new GNU extension.
-
-2005-06-01  Paul Thomas  <pault@gcc.gnu.org>
-
-       * fortran/trans-expr.c (gfc_conv_variable): Clean up bracketting.
-       * fortran/trans-expr.c (gfc_conv_function_call): Insert spaces.
-       Correct comments and replace convert of integer_one_node with
-       build_int_cst.
-
-2005-06-01  Jakub Jelinek  <jakub@redhat.com>
-
-       PR fortran/21729
-       * resolve.c (resolve_contained_fntype): Use sym->attr.untyped
-       to avoid giving error multiple times.
-       (resolve_entries): Don't error about BT_UNKNOWN here.
-       (resolve_unknown_f): Capitalize IMPLICIT for consistency.
-       (resolve_fntype): New function.
-       (gfc_resolve): Call resolve_fntype.
-
-2005-06-01  Feng Wang  <fengwang@nudt.edu.cn>
-
-       PR fortran/20883
-       * fortran/io.c (resolve_tag): Fix error message.
-
-2005-05-31  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
-
-       * fortran/trans-decl.c: Don't include errors.h.
-       * fortran/Make-lang.in: Updates dependencies.
-
-2005-05-31  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/18109
-       PR fortran/18283
-       PR fortran/19107
-       * fortran/trans-array.c (gfc_conv_expr_descriptor): Obtain the
-       string length from the expression typespec character length value
-       and set temp_ss->stringlength and backend_decl. Obtain the
-       tree expression from gfc_conv_expr rather than gfc_conv_expr_val.
-       Dereference the expression to obtain the character.
-       * fortran/trans-expr.c (gfc_conv_component_ref): Remove the
-       dereference of scalar character pointer structure components.
-       * fortran/trans-expr.c (gfc_trans_subarray_assign): Obtain the
-       string length for the structure component from the component
-       expression.
-
-2005-05-30  Roger Sayle  <roger@eyesopen.com>
-
-       * gfortran.h (GFC_STD_LEGACY): New "standard" macro.  Reindent.
-       * options.c (gfc_init_options): By default, allow legacy extensions
-       but warn about them.
-       (gfc_post_options): Make -pedantic warn about legacy extensions
-       even with -std=legacy.
-       (gfc_handle_option): Make -std=gnu follow the default behaviour
-       of warning about legacy extensions, but allowing them. Make the
-       new -std=legacy accept everything and warn about nothing.
-       * lang.opt (std=legacy): New F95 command line option.
-       * invoke.texi: Document both -std=f2003 and -std=legacy.
-       * gfortran.texi: Explain the two types of extensions and document
-       how they are affected by the various -std= command line options.
-
-2005-05-30  Kazu Hirata  <kazu@cs.umass.edu>
-
-       * trans-expr.c: Remove trailing ^M.
-
-       * trans-expr.c: Fix comment typos.
-
-2005-05-29  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/16939
-       PR fortran/17192
-       PR fortran/17193
-       PR fortran/17202
-       PR fortran/18689
-       PR fortran/18890
-       * fortran/trans-array.c (gfc_conv_resolve_dependencies): Add string
-       length to temp_ss for character pointer array assignments.
-       * fortran/trans-expr.c (gfc_conv_variable): Correct errors in
-       dereferencing of characters and character pointers.
-       * fortran/trans-expr.c (gfc_conv_function_call): Provide string
-       length as return argument for various kinds of handling of return.
-       Return a char[]* temporary for character pointer functions and
-       dereference the temporary upon return.
-
-2005-05-29  Janne Blomqvist  <jblomqvi@vipunen.hut.fi>
-           Steven G. Kargl  <kargls@comcast.net>
-
-       fortran/PR20846
-       * io.c (gfc_match_inquire): Implement constraints on UNIT and FILE usage.
-
-2005-05-29  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       PR libfortran/20006
-       * io.c (format_item_1): Add check and extension warning for
-       $ edit descriptor.
-
-2005-05-28  Steven G. Kargl  <kargls@comcast.net>
-
-       * arith.c (gfc_arith_init_1): Fix off by one problem;
-       (gfc_check_integer_range): Chop extra bits in subnormal numbers.
-
-2005-05-28  Jerry DeLisle   <jvdelisle@verizon.net>
-           Steven G. Kargl  <kargls@comcast.net>
-
-       * intrinsic.texi: added documentation for BIT_SIZE, BTEST, CHAR, CEILING
-       and CMPLX
-
-2005-05-27  Steven G. Kargl  <kargls@comcast.net>
-
-       * trans-array.c (gfc_trans_deferred_array): Use build_int_cst to force
-       like types in comparsion.
-
-2005-05-26  Kazu Hirata  <kazu@cs.umass.edu>
-
-       * data.c, parse.c, trans-array.c, trans-decl.c,
-       trans-intrinsic.c, trans-stmt.c, trans-types.c, trans.c,
-       trans.h: Fix comment typos.  Follow spelling conventions.
-
-2005-05-22  Roger Sayle  <roger@eyesopen.com>
-
-       * gfortran.texi: Document some more GNU extensions.
-
-2005-05-22  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       * error.c (gfc_warning): Fix typo in comment.
-
-2005-05-18  Thomas Koenig  <Thomas.Koenig@online.de>
-
-       PR libfortran/21127
-       * fortran/iresolve.c (gfc_resolve_reshape): Add
-       gfc_type_letter (BT_COMPLEX) for complex to
-       to resolved function name.
-
-2005-05-18  Erik Edelmann  <erik.edelmann@iki.fi>
-
-       * array.c (gfc_match_array_constructor): Support [ ... ]
-       style array constructors.
-
-2005-05-18  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * f95-lang.c (gfc_init_builtin_functions): Define BUILT_IN_TRUNC
-       and BUILT_IN_TRUNCF instead of BUILT_IN_FLOOR and BUILT_IN_FLOORF.
-       * trans-intrinsic.c (build_fix_expr): Change 'op' argument
-       to correct enum type.
-       (gfc_conv_intrinsic_aint): Likewise.  Clarify comment in front of
-       function.  Add default case to switch, deal with FIX_TRUNC_EXPR
-       instead of FIX_FLOOR_EXPR.
-
-2005-05-18  Feng Wang  <fengwang@nudt.edu.cn>
-
-       PR fortran/20954
-       * trans-const.c (gfc_conv_const_charlen): Use gfc_charlen_type_node to
-       build character length.
-
-2005-05-17  Zdenek Dvorak  <dvorakz@suse.cz>
-
-       * trans-types.c (gfc_array_range_type): New variable.
-       (gfc_init_types): Initialize gfc_array_range_type.
-       (gfc_get_array_type_bounds): Use gfc_array_range_type.
-
-2005-05-17  Jakub Jelinek  <jakub@redhat.com>
-
-       PR fortran/15080
-       * trans-stmt.c (generate_loop_for_temp_to_lhs): Remove SIZE and COUNT2
-       arguments.  If LSS is gfc_ss_terminator, increment COUNT1 by 1, instead
-       of incrementing COUNT2 and using COUNT1+COUNT2 increment COUNT1 and use
-       just that as index.
-       (generate_loop_for_rhs_to_temp): Likewise.
-       (compute_overall_iter_number): Add INNER_SIZE_BODY argument.
-       It non-NULL, add it to body.
-       (allocate_temp_for_forall_nest_1): New function, split from
-       allocate_temp_for_forall_nest.
-       (allocate_temp_for_forall_nest): Add INNER_SIZE_BODY argument,
-       propagate it down to compute_overall_iter_number.  Use
-       allocate_temp_for_forall_nest_1.
-       (gfc_trans_assign_need_temp): Remove COUNT2.  Call
-       compute_inner_temp_size into a new stmtblock_t.  Adjust calls to
-       allocate_temp_for_forall_nest, generate_loop_for_rhs_to_temp
-       and generate_loop_for_temp_to_lhs.
-       (gfc_trans_pointer_assign_need_temp): Adjust calls to
-       allocate_temp_for_forall_nest.
-       (gfc_evaluate_where_mask): Call compute_inner_temp_size into a new
-       stmtblock_t.  Call compute_overall_iter_number just once, then
-       allocate_temp_for_forall_nest_1 twice with the same size.
-       Initialize mask indexes if nested_forall_info != NULL.
-       (gfc_trans_where_2): Initialize mask indexes before calling
-       gfc_trans_nested_forall_loop.
-
-2005-05-15  Feng Wang  <fengwang@nudt.edu.cn>
-       Jerry DeLisle  <jvdelisle@verizon.net>
-
-       PR fortran/17432
-       * trans-stmt.c (gfc_trans_label_assign): fix pointer type, to
-       resolve ICE on assign of format label.
-       * trans-io.c (set_string): add fold-convert to properly
-       handle assigned format label in write.
-
-2005-05-13  Paul Brook  <paul@codesourcery.com>
-
-       * trans-stmt.c (gfc_trans_forall_1): Fix comment typo.
-
-2005-05-12  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-types.c (gfc_is_nodesc_array): Remove redundant check.
-
-2005-05-11  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/21260
-       * io.c (check_format): Look for literal characters inside
-       hollerith constant.
-
-2005-05-11  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * resolve.c (resolve_symbol): Copy 'pointer' and 'dimension'
-       attribute from result symbol to function symbol.
-       * trans-expr.c (gfc_conv_function_call): Look at sym->attr.dimension
-       instead of sym->result->attr.dimension.
-
-2005-05-10  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/20178
-       * gfortran.h (gfc_option): Add flag_f2c.
-       * invoke.texi: Document '-ff2c' command line option.  Adapt
-       documentation for '-fno-second-underscore' and '-fno-underscoring'.
-       * lang.opt (ff2c): New entry.
-       * options.c (gfc-init_options): Set default calling convention
-       to -fno-f2c.  Mark -fsecond-underscore unset.
-       (gfc_post_options): Set -fsecond-underscore if not explicitly set
-       by user.
-       (handle_options): Set gfc_option.flag_f2c according to requested
-       calling convention.
-       * trans-decl.c (gfc_get_extern_function_decl): Use special f2c
-       intrinsics where necessary.
-       (gfc_trans_deferred_vars): Change todo error to assertion.
-       * trans-expr.c (gfc_conv_variable): Dereference access
-       to hidden result argument.
-       (gfc_conv_function_call): Add hidden result argument to argument
-       list if f2c calling conventions requested.  Slightly restructure
-       tests.  Convert result of default REAL function to requested type
-       if f2c calling conventions are used.  Dereference COMPLEX result
-       if f2c cc are used.
-       * trans-types.c (gfc_sym_type):  Return double for default REAL
-       function if f2c cc are used.
-       (gfc_return_by_reference): Slightly restructure logic.  Return
-       COMPLEX by reference depending on calling conventions.
-       (gfc_get_function_type): Correctly make hidden result argument a
-       pass-by-reference argument for COMPLEX.  Remove old code which does
-       this for derived types.
-
-2005-05-09  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * match.c (gfc_match_return): Only require space after keyword when
-       it is obligatory.  Only give stdwarn to after matching is successful.
-       * dump-parse-tree.c (gfc_show_symbol): Deal with alternate returns.
-
-2005-05-08  Kazu Hirata  <kazu@cs.umass.edu>
-
-       * intrinsic.texi: Fix typos.
-
-2005-05-07  Steven G. Kargl  <kargls@comcast.net>
-
-       * intrinsic.texi:  Document ASSOCIATED and ATAN2.  Update Bessel function
-       description to include information about scalar arguments.
-
-2005-05-03  Kazu Hirata  <kazu@cs.umass.edu>
-
-       * Make-lang.in, dump-parse-tree.c, invoke.texi, lang.opt,
-       match.h, trans-array.h: Update copyright.
-
-2005-04-29  Tom Tromey  <tromey@redhat.com>
-
-       * f95-lang.c (poplevel): Updated for change to build_block.
-
-2005-04-29  Jakub Jelinek  <jakub@redhat.com>
-
-       PR fortran/13082
-       PR fortran/18824
-       * trans-expr.c (gfc_conv_variable): Handle return values in functions
-       with alternate entry points.
-       * resolve.c (resolve_entries): Remove unnecessary string termination
-       after snprintf.  Set result of entry master.
-       If all entries have the same type, set entry master's type
-       to that common type, otherwise set mixed_entry_master attribute.
-       * trans-types.c (gfc_get_mixed_entry_union): New function.
-       (gfc_get_function_type): Use it for mixed_entry_master functions.
-       * gfortran.h (symbol_attribute): Add mixed_entry_master bit.
-       * decl.c (gfc_match_entry): Set entry->result properly for
-       function ENTRY.
-       * trans-decl.c (gfc_get_symbol_decl): For entry_master, skip over
-       __entry argument.
-       (build_entry_thunks): Handle return values in entry thunks.
-       Clear BT_CHARACTER's ts.cl->backend_decl, so that it is not
-       shared between multiple contexts.
-       (gfc_get_fake_result_decl): Use DECL_ARGUMENTS from
-       current_function_decl instead of sym->backend_decl.  Skip over
-       entry master's entry id argument.  For mixed_entry_master entries or
-       their results, return a COMPONENT_REF of the fake result.
-       (gfc_trans_deferred_vars): Don't warn about missing return value if
-       at least one entry point uses RESULT.
-       (gfc_generate_function_code): For entry master returning
-       CHARACTER, copy ts.cl->backend_decl to all entry result syms.
-       * trans-array.c (gfc_trans_dummy_array_bias): Don't consider return
-       values optional just because they are in entry master.
-
-2005-04-29  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       * gfortran.h (gfc_namespace): Add seen_implicit_none field,
-       Tobias forgot this in previous commit.
-
-2005-04-29  Paul Brook   <paul@codesourcery.com>
-
-       * trans-expr.c (gfc_conv_expr_present): Fix broken assert.  Update
-       comment.
-
-2005-04-29  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * gfortran.h (gfc_namespace): Add seen_implicit_none field.
-       * symbol.c (gfc_set_implicit_none): Give error if there's a previous
-       IMPLICIT NONE, set seen_implicit_none.
-       (gfc_merge_new_implicit): Error if there's an IMPLICIT NONE statement.
-
-2005-04-28  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * gfortran.h (gfc_gsymbol): Make name a const char *.
-       * symbol.c (gfc_get_gsymbol): Allocate gsymbol name via
-       gfc_get_string.
-
-2005-04-28  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       PR fortran/20865
-       * resolve.c (resolve_actual_arglist): Issue an error if a statement
-       functions is used as actual argument.
-
-2005-04-27  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       PR fortran/21177
-       * interface.c (compare_parameter): Ignore type for EXPR_NULL
-       only if type is BT_UNKNOWN.
-
-2005-04-25  Paul Brook  <paul@codesourcery.com>
-       Steven G. Kargl  <kargls@comcast.net>
-
-       PR fortran/20879
-       * check.c (gfc_check_ichar_iachar): New function.
-       * instinsic.h (gfc_check_ichar_iachar): Add prototype.
-       * intrinsic.c (add_functions): Use it.
-       * primary.c (match_varspec, gfc_match_rvalue): Clear incorrect
-       character expression lengths.
-
-2005-04-24  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/20059
-       * trans-common.c (translate_common): Cast offset and
-       common_segment->offset to type int for warning message.
-
-2005-04-23  DJ Delorie  <dj@redhat.com>
-
-       * trans-decl.c: Adjust warning() callers.
-
-2005-04-23  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-const.c (gfc_conv_mpfr_to_tree): Use hexadecimal string as
-       intermediate representation.  Fix typo in comment.
-
-2005-04-21  Steven G. Kargl  <kargls@comcast.net>
-
-       * trans-const.c (gfc_conv_mpfr_to_tree): Remove unneeded computation;
-       simplify logic; Add a gcc_assert.
-
-2005-04-19  Steven G. Kargl  <kargls@comcast.net>
-
-       * trans-const.c (gfc_conv_mpz_to_tree): Fix comment.
-
-2005-04-19  Arnaud Desitter  <arnaud.desitter@ouce.ox.ac.uk>
-           Steven G. Kargl  <kargls@comcast.net>
-
-       * invoke.texi: Update -Waliasing description
-
-2005-04-19  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       PR fortran/16861
-       * resolve.c (resolve_variable): If e->symtree is not set, this
-       ought to be a FAILURE, and not a segfault.
-
-2005-04-17  Paul Thomas  <pault@gcc.gnu.org>
-
-       PR fortran/17472
-       PR fortran/18209
-       PR fortran/18396
-       PR fortran/19467
-       PR fortran/19657
-       * fortran/trans-io.c (gfc_build_io_library_fndecls): Create
-       declaration for st_set_nml_var and st_set_nml_var_dim. Remove
-       declarations of old namelist functions.
-       (build_dt): Simplified call to transfer_namelist_element.
-       (nml_get_addr_expr): Generates address expression for start of
-       object data. New function.
-       (nml_full_name): Qualified name for derived type components. New
-       function.
-       (transfer_namelist_element): Modified for calls to new functions
-       and improved derived type handling.
-
-2005-04-17  Richard Guenther  <rguenth@gcc.gnu.org>
-
-       * scanner.c (gfc_next_char_literal): Reset truncation flag
-       for lines ending in a comment for both fixed and free form.
-       (load_line): Do not set truncated flag if only truncating
-       the EOL marker.
-
-2005-04-15  Richard Guenther  <rguenth@gcc.gnu.org>
-
-       PR fortran/14569
-       * gfortran.h (gfc_linebuf): Add truncated field.
-       * parse.c (next_statement): Handle warning for truncated
-       lines.
-       * scanner.c (load_line): Return if line was truncated.
-       No longer warn for truncated lines.  Remove unused parameters.
-       (load_file): Store load_line return value to linebuf.
-       (gfc_error_recovery): Do not advance line at the end.
-
-2005-04-14  Steven G. Kargl  <kargls@comcast.net>
-
-       * gfortran.h (gfc_real_info): Add subnormal struct member.
-       * arith.c (gfc_arith_init_1): Set it.
-       (gfc_check_real_range): Use it.
-       * simplify.c (gfc_simplify_nearest): Fix nearest(0.,1.).
-
-2005-04-12  Kazu Hirata  <kazu@cs.umass.edu>
-
-       * simplify.c: Fix a comment typo.
-
-2005-04-11  Richard Sandiford  <rsandifo@redhat.com>
-
-       * lang.opt: Refer to the GCC internals documentation instead of c.opt.
-
-2005-04-11  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * simplify.c (gfc_simplify_nearest): Overhaul.
-
-2005-04-10  Kazu Hirata  <kazu@cs.umass.edu>
-
-       * interface.c: Fix a comment typo.
-
-2005-04-10  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       * match.c (match_arithmetic_if): Arithmetic IF is obsolete in
-       Fortran 95.
-
-2005-04-09  Steven G. Kargl  <kargls@comcast.net>
-
-       * simplify.c (gfc_simplify_anint): Use mpfr_round()
-       (gfc_simplify_dnint): ditto.
-       (gfc_simplify_nint): ditto.
-
-2005-04-09  Andrew Pinski  <pinskia@physics.uc.edu>
-
-       PR fortran/13257
-       * io.c (check_format): Allow an optional comma
-       between descriptors.
-
-2005-04-09  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       * match.c (match_arithmetic_if): Remove gfc_ prefix and correct
-       comment according to GNU coding style.
-       (gfc_match_if): Remove gfc_ prefix in call to
-       match_arithmetic_if.
-
-2005-04-08  Diego Novillo  <dnovillo@redhat.com>
-
-       * match.c (gfc_match_arithmetic_if): Declare static.
-
-2005-04-08  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       PR fortran/17229
-       * match.c (gfc_match_arithmetic_if): New function to match an
-       arithmetic IF statement.
-       (gfc_match_if): Use gfc_match_arithmetic_if to match an
-       arithmetic IF statement embedded in a simple IF statement.
-
-2005-04-07  Steven G. Kargl  <kargls@comcast.net>
-
-       * simplify.c (gfc_simplify_exponent): Fix exponent(tiny(x))
-
-2005-04-06  Steven G. Kargl  <kargls@comcast.net>
-
-       * invoke.texi: Remove documentation of -std=f90
-
-2005-04-06  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * expr.c (gfc_check_assign): Don't allow NULL as rhs in a
-       non-pointer assignment.
-
-2005-04-05  Feng Wang  <fengwang@nudt.edu.cn>
-
-       PR fortran/15959
-       PR fortran/20713
-
-       * array.c (resolve_character_array_constructor): New function. Set
-       constant character array's character length.
-       (gfc_resolve_array_constructor): Use it.
-       * decl.c (add_init_expr_to_sym): Set symbol and initializer character
-       length.
-       (gfc_set_constant_character_len): New function. Set constant character
-       expression according the given length.
-       * match.h (gfc_set_constant_character_len): Add prototype.
-
-2005-04-04  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       * intrinsic.texi: BES?? functions are not in the f95 standard.
-
-2005-04-03  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       * intrinsic.texi: Document COS, EXP, LOG, LOG10, SIN, SQRT, TAN.
-
-2005-04-03  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       * intrinsic.texi: Document BESJ0, BESJ1, BESJN, BESY0, BESY1,
-       BESYN, ATAN, COSH, ERF, ERC, SINH, TANH.
-
-2005-04-02  Steven G. Kargl  <kargls@comcast.net>
-
-       * intrinsic.texi: Document ALLOCATED, ANINT, ANY, ASIN; fix typos
-
-2005-04-01  Kazu Hirata  <kazu@cs.umass.edu>
-
-       * decl.c, f95-lang.c, interface.c, module.c, trans-stmt.c,
-       trans.h: Fix comment typos.
-
-2005-03-29  Steven G. Kargl  <kargls@comcast.net>
-
-       * gfortran.h (option_t): Change d8, i8, r8 to flag_default_double,
-       flag_default_integer, flag_default_real
-       * invoke.texi: Update documentation
-       * lang.opt: Remove d8, i8, r8 definitions; Add fdefault-double-8
-       fdefault-integer-8, and fdefault-real-8 definitions.
-       * options.c (gfc_init_options): Set option defaults
-       (gfc_handle_option): Handle command line options.
-       * trans-types.c (gfc_init_kinds): Use options.
-
-2005-03-29  Keith Besaw  <kbesaw@us.ibm.com>
-
-       * f95-lang.c (builtin_function): Process the attrs parameter
-       and apply the "const" attribute to the builtin if found.
-
-2005-03-27  Steven G. Kargl  <kargls@comcast.net>
-
-       * intrinsic.texi: Document AIMAG, AINT, ALL
-
-2005-03-26  Steven G. Kargl  <kargls@comcast.net>
-
-       * arith.c (check_result): Fix illogical logic.
-
-2005-03-26  Canqun Yang  <canqun@nudt.edu.cn>
-
-       * trans-common.c (create_common): Build RECORD_NODE for common blocks
-       contain no equivalence objects.
-       (add_equivalences): New argument saw_equiv.
-       (trans_common): New local variable saw_equiv.
-       (finish_equivalences): Add a local variable dummy, Always pass true
-       for the 3rd parameter to create_common.
-
-2005-03-25  Steven G. Kargl  <kargls@comcast.net>
-
-       * intrinsic.texi: Fix "make dvi"
-
-2005-03-24  Steven G. Kargl  <kargls@comcast.net>
-
-       * intrinsic.texi: New file.
-       * gfortran.texi: Include it; white space change; fix typo.
-
-2005-03-23  Joseph S. Myers  <joseph@codesourcery.com>
-
-       * f95-lang.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove.
-
-2005-03-23  Steven Bosscher  <stevenb@suse.de>
-
-       * convert.c (convert): Replace fold (buildN (...)) with fold_buildN.
-       * trans-array.c (gfc_trans_allocate_array_storage,
-       gfc_trans_allocate_temp_array gfc_trans_array_constructor_value,
-       gfc_conv_array_index_ref, gfc_trans_array_bound_check,
-       gfc_conv_array_index_offset, gfc_conv_scalarized_array_ref,
-       gfc_conv_array_ref, gfc_trans_preloop_setup, gfc_conv_ss_startstride,
-       gfc_conv_loop_setup, gfc_array_init_size, gfc_trans_array_bounds,
-       gfc_trans_auto_array_allocation, gfc_trans_dummy_array_bias,
-       gfc_conv_expr_descriptor): Likewise.
-       * trans-expr.c (gfc_conv_powi, gfc_conv_string_tmp,
-       gfc_conv_concat_op, gfc_conv_expr_op): Likewise.
-       * trans-intrinsic.c (build_round_expr, gfc_conv_intrinsic_bound,
-       gfc_conv_intrinsic_cmplx, gfc_conv_intrinsic_sign,
-       gfc_conv_intrinsic_minmaxloc, gfc_conv_intrinsic_minmaxval,
-       gfc_conv_intrinsic_btest, gfc_conv_intrinsic_bitop,
-       gfc_conv_intrinsic_singlebitop, gfc_conv_intrinsic_ibits,
-       gfc_conv_intrinsic_ishft, gfc_conv_intrinsic_ishftc,
-       gfc_conv_intrinsic_merge, prepare_arg_info,
-       gfc_conv_intrinsic_rrspacing, gfc_conv_intrinsic_repeat): Likewise.
-       * trans-stmt.c (gfc_trans_simple_do, gfc_trans_do, gfc_trans_do_while,
-       gfc_trans_forall_loop, gfc_do_allocate, generate_loop_for_temp_to_lhs,
-       generate_loop_for_rhs_to_temp, compute_inner_temp_size,
-       allocate_temp_for_forall_nest, gfc_trans_pointer_assign_need_temp,
-       gfc_trans_forall_1, gfc_evaluate_where_mask, gfc_trans_where_assign):
-       Likewise.
-       * trans-types.c (gfc_get_dtype, gfc_get_array_type_bounds): Likewise.
-       * trans.c (gfc_add_modify_expr): Likewise.
-
-2005-03-22  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       * check.c (gfc_check_chdir, gfc_check_chdir_sub, gfc_check_kill,
-       gfc_check_kill_sub, gfc_check_link, gfc_check_link_sub,
-       gfc_check_symlnk, gfc_check_symlnk_sub, gfc_check_rename,
-       gfc_check_rename_sub, gfc_check_sleep_sub, gfc_check_gerror,
-       gfc_check_getlog, gfc_check_hostnm, gfc_check_hostnm_sub,
-       gfc_check_perror): new functions to check newly implemented
-       g77 intrinsics.
-       * gfortran.h: adding symbols for new intrinsics.
-       * intrinsic.c (add_functions): adding new intrinsics.
-       (add_subroutines): adding new intrinsics.
-       * intrinsic.h: prototype for all checking and resolving
-       functions.
-       * iresolve.c (gfc_resolve_chdir, gfc_resolve_chdir_sub,
-       gfc_resolve_hostnm, gfc_resolve_ierrno, gfc_resolve_kill,
-       gfc_resolve_link, gfc_resolve_rename, gfc_resolve_symlnk,
-       gfc_resolve_time, gfc_resolve_time8, gfc_resolve_rename_sub,
-       gfc_resolve_kill_sub, gfc_resolve_link_sub,
-       gfc_resolve_symlnk_sub, gfc_resolve_sleep_sub,
-       gfc_resolve_gerror, gfc_resolve_getlog, gfc_resolve_hostnm_sub,
-       gfc_resolve_perror): new functions to resolve intrinsics.
-       * trans-intrinsic.c (gfc_conv_intrinsic_function): add case
-       for new symbols.
-
-2005-03-19  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * dump-parse-tree.c (gfc_show_expr): Dump name of namespace
-       in which the variable is declared.
-
-       PR fortran/18525
-       * resolve.c (was_declared): Also check for dummy attribute.
-
-2005-03-19  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * gfortran.h (arith): Remove ARITH_0TO0.
-       * arith.c (gfc_arith_error): Remove handling of ARITH_0TO0.
-       (gfc_arith_power): Remove special casing of zero to integral
-       power zero.
-
-2005-03-18  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
-
-       * Make-lang.in (fortran-warn): Remove -Wno-error.
-       (expr.o-warn, resolve.o-warn, simplify.o-warn,
-       trans-common.o-warn): Specify -Wno-error.
-
-2005-03-17  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-array.c (gfc_trans_static_array_pointer,
-       get_array_ctor_var_strlen, gfc_conv_array_index_offset): Fix
-       comment and formatting typos.
-
-2005-03-17  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
-
-       * invoke.texi: Fix typos.
-
-2005-03-15  Zack Weinberg  <zack@codesourcery.com>
-
-       * Make-lang.in (GFORTRAN_TEXI): Add gcc-vers.texi.
-
-2005-03-15  Feng Wang  <fengwang@nudt.edu.cn>
-
-       * trans-stmt.c (gfc_trans_label_assign): Don't set DECL_ARTIFICIAL flag
-       to zero on label_tree.
-
-2005-03-15  Feng Wang  <fengwang@nudt.edu.cn>
-
-       PR fortran/18827
-       * io.c (resolve_tag): Add checking on assigned label.
-       (match_dt_format): Does not set symbol assign attribute.
-       * match.c (gfc_match_goto):Does not set symbol assign attribute.
-       * resolve.c (resolve_code): Add checking on assigned label.
-       * trans-common.c (build_field): Deals with common variable assigned
-       a label.
-       * trans-stmt.c (gfc_conv_label_variable): New function.
-       (gfc_trans_label_assign): Use it.
-       (gfc_trans_goto): Ditto.
-       * trans-io.c (set_string): Ditto.
-       * trans.h (gfc_conv_label_variable): Add prototype.
-
-2005-03-14  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/20467
-       * symbol.c (check_conflict): A dummy argument can't be a statement
-       function.
-
-2005-03-14  Zdenek Dvorak  <dvorakz@suse.cz>
-
-       * fortran/trans-intrinsic.c (gfc_conv_intrinsic_ishft): Convert
-       the argument of the shift to the unsigned type.
-
-2005-03-13  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/16907
-       * resolve.c (gfc_resolve_index): Allow REAL indices as an extension.
-
-2005-03-13  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/20323
-       * resolve.c (gfc_resolve): Check if character lengths are
-       specification expressions.
-
-2005-03-12  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/20361
-       * trans-array.c (gfc_stack_space_left): Remove unused variable.
-       (gfc_can_put_var_on_stack): Move to trans-decl.c, remove #if 0'ed
-       code.
-       * trans-array.h (gfc_stack_space_left, gfc_can_put_var_on_stack):
-       Remove declaration / prototype.
-       * trans-common.c (build_equiv_decl): Give union a name.  Check if
-       it can be put on the stack.
-       * trans-decl.c (gfc_stack_space_left): Move function here.
-       (gfc_build_qualified_array): Fix comment typo.
-       * trans.h (gfc_put_var_on_stack): Add prototype.
-
-2005-03-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
-
-       * Make-lang.in (fortran-warn): Set to $(STRICT_WARN) -Wno-error.
-       * decl.c, trans.c: Don't use C++ style comments.
-       * gfortran.h (sym_flavor, procedure_type, sym_intent, gfc_access,
-       ifsrc): Give names to enums and use ENUM_BITFIELD.
-       (gfc_access): Remove trailing comma.
-
-2005-03-05  Steven G. Kargl  <kargls@comcast.net>
-
-       PR 19936
-       * primary.c (match_complex_constant): Mangled complex constant may
-       be an implied do-loop.  Give implied do-loop matcher a chance.
-
-2005-03-05  Steven G. Kargl  <kargls@comcast.net>
-
-       PR fortran/19754
-       * resolve.c (compare_shapes):  New function.
-       (resolve_operator): Use it.
-
-2005-03-05  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-const.c (gfc_conv_constant_to_tree): Use correct tree
-       type for COMPLEX constants.
-
-2005-03-04  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/19673
-       * trans-expr.c (gfc_conv_function_call): Correctly dereference
-       argument from a pointer function also if it has a result clause.
-
-2005-03-04  Steven G. Kargl  <kargls@comcast.net>
-
-       * expr.c (gfc_copy_shape_excluding): Change && to ||.
-
-2005-03-04  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-intrinsic.c (gfc_get_symbol_for_expr): Fix comment typo,
-       clarify comment.
-
-2005-02-28  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-       (port from g95)
-
-       PR fortran/19479
-       * simplify.c (gfc_simplify_bound): Rename to ...
-       (simplify_bound): ... this and overhaul.
-
-2005-02-28  Steven G. Kargl  <kargl@gcc.gnu.org>
-
-       * trans-intrinsic.c (gfc_conv_intrinsic_iargc): remove boolean argument.
-       (gfc_conv_intrinsic_function): update function calls
-
-2005-02-27  Steven G. Kargl  <kargl@gcc.gnu.org>
-
-       PR fortran/20058
-       * trans-types.c (gfc_max_integer_kind): Declare
-       (gfc_init_kinds): Initialize it.
-       * gfortran.h (gfc_max_integer_kind): extern it.
-       * primary.c (match_boz_constant): Use it; remove gfortran extension
-       of kind suffixes on BOZ literal constants
-
-
-2005-02-27  Steven G. Kargl  <kargls@comcast.net>
-
-       * arith.c (gfc_check_real_range):  Remove multiple returns
-       (check_result): New function.
-       (gfc_arith_uminus,gfc_arith_plus,gfc_arith_times,
-       gfc_arith_divide,gfc_arith_power,gfc_arith_minus): Use it.
-
-
-2005-02-24  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
-
-       * decl.c, resolve.c, trans-array.c, trans.h: Fix comment typo(s).
-
-
-2005-02-24  Tobias Schl"uter  <tobias.schlueter@physik.uni-meunchen.de>
-
-       Unrevert previously reverted patch.  Adding this fix:
-       * module.c (find_true_name): Deal with NULL module.
-
-2005-02-24  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       Revert yesterday's patch:
-       2005-02-23  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-               * gfortran.h (gfc_component, gfc_actual_arglist, ...
-               ... argument.  Copy string instead of pointing to it.
-
-2005-02-23  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * gfortran.h (gfc_get_namespace): Add second argument to prototype.
-       * intrinsic.c (gfc_intrinsic_init_1): Pass second argument to
-       gfc_get_namespace.
-       * module.c (mio_namespace_ref, load_needed): Likewise.
-       * parse.c (parse_interface, parse_contained): Likewise.  Here the
-       correct second argument matters.
-       * symbol.c (gfc_get_namespace): Add parent_types argument, only copy
-       parent's implicit types if this is set.
-       (gfc_symbol_init_2): Pass second argument to gfc_get_namespace.
-       * trans-common.c (build_common_decl): Likewise.
-
-       * gfortran.h (symbol_attribute): New 'untyped' field, fix comment
-       formatting.
-       * symbol.c (gfc_set_default_type): Issue error only once, by setting
-       and checking 'untyped' attribute.
-
-       * gfortran.h (gfc_expr): Move 'operator', 'op1', 'op2', and 'uop'
-       fields into new struct 'op' inside the 'value' union.
-       * arith.c (eval_intrinsic): Adapt all users.
-       * dependency.c (gfc_check_dependency): Likewise.
-       * dump-parse-tree.c (gfc_show_expr): Likewise.
-       * expr.c (gfc_get_expr): Don't clear removed fields.
-       (free_expr0, gfc_copy_expr, gfc_type_convert_binary,
-       gfc_is_constant_expr, simplify_intrinsic_op, check_init_expr,
-       check_intrinsic_op): Adapt to new field names.
-       * interface.c (gfc_extend_expr): Likewise.  Also explicitly
-       nullify 'esym' and 'isym' fields of new function call.
-       * iresolve.c (gfc_resolve_dot_product, gfc_resolve_matmul):
-       Adapt to renamed structure fields.
-       * matchexp.c (build_node, match_level_1, match_expr): Likewise.
-       * module.c (mio_expr): Likewise.
-       * resolve.c (resolve_operator): Likewise.
-       (gfc_find_forall_index): Likewise.  Only look through operands
-       if dealing with EXPR_OP
-       * trans-array.c (gfc_walk_op_expr): Adapt to renamed fields.
-       * trans-expr.c (gfc_conv_unary_op, gfc_conv_power_op,
-       gfc_conv_concat_op, gfc_conv_expr_op): Likewise.
-
-       [ Reverted ]
-       * gfortran.h (gfc_component, gfc_actual_arglist, gfc_user_op): Make
-       'name' a 'const char *'.
-       (gfc_symbol): Likewise, also for 'module'.
-       (gfc_symtree): Make 'name' a 'const char *'.
-       (gfc_intrinsic_sym): Likewise, also for 'lib_name'.
-       (gfc_get_gsymbol, gfc_find_gsymbol): Add 'const' qualifier to
-       'char *' argument.
-       (gfc_intrinsic_symbol): Use 'gfc_get_string' instead of 'strcpy' to
-       initialize 'SYM->module'.
-       * check.c (gfc_check_minloc_maxloc, check_reduction): Check for NULL
-       pointer instead of empty string.
-       * dump-parse-tree.c (gfc_show_actual_arglist): Likewise.
-       * interface.c (gfc_compare_types): Adapt check to account for possible
-       NULL pointer.
-       (compare_actual_formal): Check for NULL pointer instead of empty
-       string.
-       * intrinsic.c (gfc_current_intrinsic, gfc_current_intrinsic_arg):
-       Add 'const' qualifier.
-       (conv_name): Return a heap allocated string.
-       (find_conv): Add 'const' qualifier to 'target'.
-       (add_sym): Use 'gfc_get_string' instead of 'strcpy'.
-       (make_generic): Check for NULL pointer instead of empty string.
-       (make_alias): Use 'gfc_get_string' instead of 'strcpy'.
-       (add_conv): No need to strcpy result from 'conv_name'.
-       (sort_actual): Check for NULL pointer instead of empty  string.
-       * intrinsic.h (gfc_current_intrinsic, gfc_current_intrinsic_arg):
-       Adapt prototype.
-       * module.c (compare_true_names): Compare pointers instead of strings
-       for 'module' member.
-       (find_true_name): Initialize string fields with gfc_get_string.
-       (mio_pool_string): New function.
-       (mio_internal_string): Adapt comment.
-       (mio_component_ref, mio_component, mio_actual_arg): Use
-       'mio_pool_string' instead of 'mio_internal_string'.
-       (mio_symbol_interface): Add 'const' qualifier to string arguments.
-       Add level of indirection. Use 'mio_pool_string' instead of
-       'mio_internal_string'.
-       (load_needed, read_module): Use 'gfc_get_string' instead of 'strcpy'.
-       (write_common, write_symbol): Use 'mio_pool_string' instead of
-       'mio_internal_string'.
-       (write_symbol0, write_symbol1): Likewise, also check for NULL pointer
-       instead of empty string.
-       (write_operator, write_generic): Pass correct type variable to
-       'mio_symbol_interface'.
-       (write_symtree): Use 'mio_pool_string' instead of
-       'mio_internal_string'.
-       * primary.c (match_keyword_arg): Adapt check to possible
-       case of NULL pointer.  Use 'gfc_get_string' instead of 'strcpy'.
-       * symbol.c (gfc_add_component, gfc_new_symtree, delete_symtree,
-       gfc_get_uop, gfc_new_symbol): Use 'gfc_get_string' instead of
-       'strcpy'.
-       (ambiguous_symbol): Check for NULL pointer instead of empty string.
-       (gfc_find_gsymbol, gfc_get_gsymbol): Add 'const' qualifier on string
-       arguments.
-       * trans-array.c (gfc_trans_auto_array_allocation): Check for NULL
-       pointer instead of empty string.
-       * trans-decl.c (gfc_sym_mangled_identifier,
-       gfc_sym_mangled_function_id, gfc_finish_var_decl, gfc_get_symbol_decl,
-       gfc_get_symbol_decl): Likewise.
-       * trans-io.c (gfc_new_nml_name_expr): Add 'const' qualifier to
-       argument.  Copy string instead of pointing to it.
-
-2005-02-23  Kazu Hirata  <kazu@cs.umass.edu>
-
-       * intrinsic.h, st.c: Update copyright.
-
-2005-02-20  Steven G. Kargl  <kargls@comcast.net>
-
-       * symbol.c: Typos in comments.
-
-2005-02-20  Steven G. Kargl  <kargls@comcast.net>
-
-       * expr.c (gfc_type_convert_binary): Typo in comment.
-
-2005-02-19  Steven G. Kargl  <kargls@comcast.net>
-
-       * check.c (gfc_check_selected_int_kind): New function.
-       * intrinsic.h: Prototype it.
-       * intrinsic.c (add_function): Use it.
-       * simplify (gfc_simplify_ceiling,gfc_simplify_floor): Change
-         BT_REAL to BT_INTEGER and use gfc_default_integer_kind.
-
-2005-02-19  Steven G. Kargl  <kargls@comcast.net>
-
-       * check.c (gfc_check_int): improve checking of optional kind
-       * simplify.c (gfc_simplify_int): Change BT_REAL to BT_INTEGER
-
-2005-02-19  Steven G. Kargl  <kargls@comcast.net>
-
-       * check.c (gfc_check_achar): New function
-       * intrinsic.h: Prototype it.
-       * intrinsic.c (add_function): Use it.
-
-2005-02-13  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-stmt.c (generate_loop_for_temp_to_lhs,
-       generate_loop_for_rhs_to_temp): Remove if whose condition is
-       always true.
-
-2005-02-12  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * symbol.c (gfc_use_ha_derived): Remove, fold functionality into ...
-       (gfc_use_derived): ... this function.
-
-2005-02-09  Richard Henderson  <rth@redhat.com>
-
-       * f95-lang.c (gfc_init_builtin_functions): Call
-       build_common_builtin_nodes; do not define any functions handled
-       by it.
-
-2005-02-08  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * expr.c (gfc_copy_expr): Don't copy 'op1' and 'op2' for
-       EXPR_SUBSTRING.
-       (gfc_is_constant_expr): Check 'ref' to determine if substring
-       reference is constant.
-       (gfc_simplify_expr): Simplify 'ref' instead of 'op1' and 'op2'.
-       (check_init_expr, check_restricted): Check 'ref' instead of 'op1'
-       and 'op2'.
-       * module.c (mio_expr): Read / write 'ref' instead of 'op1' and 'op2'.
-
-2005-02-07  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * gfortran.h (gfc_add_dimension, gfc_add_result, gfc_add_save,
-       gfc_add_dummy, gfc_add_generic, gfc_add_in_common, gfc_add_data,
-       gfc_add_in_namelist, gfc_add_sequence, gfc_add_function,
-       gfc_add_subroutine, gfc_add_access, gfc_add_flavor, gfc_add_entry,
-       gfc_add_procedure): Add argument.
-       * array.c (gfc_set_array_spec), decl.c (var_element, get_proc_name,
-       gfc_match_null, match_type_spec, match_attr_spec,
-       gfc_match_formal_arglist, match_result, gfc_match_function_decl):
-       Update callers to match.
-       (gfc_match_entry): Likewise, fix comment typo.
-       (gfc_match_subroutine, attr_decl1, gfc_add_dimension,
-       access_attr_decl, do_parm, gfc_match_save, gfc_match_modproc,
-       gfc_match_derived_decl): Update callers.
-       * interface.c (gfc_match_interface): Likewise.
-       * match.c (gfc_match_label, gfc_add_flavor,
-       gfc_match_call, gfc_match_common, gfc_match_block_data,
-       gfc_match_namelist, gfc_match_module, gfc_match_st_function):
-       Likewise.
-       * parse.c (parse_derived, parse_interface, parse_contained),
-       primary.c (gfc_match_rvalue, gfc_match_variable): Likewise.
-       * resolve.c (resolve_formal_arglist, resolve_entries): Update callers.
-       * symbol.c (check_conflict, check_used): Add new 'name' argument,
-       use when printing error message.
-       (gfc_add_dimension, gfc_add_result, gfc_add_save, gfc_add_dummy,
-       gfc_add_generic, gfc_add_in_common, gfc_add_data,
-       gfc_add_in_namelist, gfc_add_sequence, gfc_add_function,
-       gfc_add_subroutine, gfc_add_access, gfc_add_flavor, gfc_add_entry,
-       gfc_add_procedure): Add new 'name' argument.  Pass along to
-       check_conflict and check_used.
-       (gfc_add_allocatable, gfc_add_external, gfc_add_intrinsic,
-       gfc_add_optional, gfc_add_pointer, gfc_add_target, gfc_add_elemental,
-       gfc_add_pure, gfc_add_recursive, gfc_add_intent,
-       gfc_add_explicit_interface, gfc_copy_attr): Pass NULL for new
-       argument in calls to any of the modified functions.
-
-2005-02-06  Joseph S. Myers  <joseph@codesourcery.com>
-
-       * gfortran.texi: Don't give last update date.
-
-2006-01-30  Richard Henderson  <rth@redhat.com>
-
-       * options.c (gfc_init_options): Zero flag_errno_math.
-
-2005-01-29  Paul Brook  <paul@codesourcery.com>
-
-       PR fortran/18565
-       * check.c (real_or_complex_check): New function.
-       (gfc_check_fn_c, gfc_check_fn_r, gfc_check_fn_rc): New functions.
-       * intrinsic.c (add_functions): Use new check functions.
-       * intrinsic.h (gfc_check_fn_c, gfc_check_fn_r, gfc_check_fn_rc):
-       Add prototypes.
-
-2005-01-29  Steven G. Kargl  <kargls@comcast.net>
-
-       PR fortran/19589
-       * expr.c (gfc_check_assign):  Check for conformance of logical operands
-
-2004-01-27  Steven Bosscher  <stevenb@suse.de>
-
-       * trans-decl.c (gfc_build_label_decl): Set DECL_ARTIFICAL and
-       TREE_USED for all labels.
-       (gfc_trans_entry_master_switch): Use it instead of building a
-       label by hand.
-       * trans-io.c (add_case): Likewise.
-       * trans-stmt.c (gfc_trans_integer_select): Likewise.
-
-2004-01-23  Paul Brook  <paul@codesourcery.com>
-       Steven G. Kargl  <kargls@comcast.net>
-
-       PR fortran/17941
-       * arith.c (gfc_convert_real): Remove sign handling.
-       * primary.c (match_digits): Allow whitespace after initial sign.
-       (match_real_const): Handle signs here.  Allow whitespace after
-       initial sign.  Remove dead code.
-       (match_const_complex_part): Remove.
-       (match_complex_part): Use match_{real,integer}_const.
-       (match_complex_constant): Cross-promote integer types.
-
-2005-01-23  James A. Morrison  <phython@gcc.gnu.org>
-
-       PR fortran/19294
-       * iresolve.c (gfc_resolve_transpose): Resolve to transpose_c4 or
-       transpose_c8 for complex types.
-
-2005-01-23  Kazu Hirata  <kazu@cs.umass.edu>
-
-       * data.c, dependency.c, f95-lang.c, io.c, trans-array.c,
-       trans-decl.c, trans-expr.c, trans-intrinsic.c, trans-io.c,
-       trans-stmt.c, trans-types.c, trans.h: Fix comment typos.
-       Follow spelling conventions.
-
-2005-01-22  Bud Davis  <bdavis9659@comcast.net>
-
-       PR fortran/19313
-       * trans-io.c (gfc_trans_inquire): Added code to support
-       pad.
-
-2005-01-22  Steven G. Kargl  <kargls@comcast.net>
-
-       * intrinsic.c (make_alias):  Add standard argument.
-       (add_functions): Update make_alias calls.
-
-2005-01-22  Paul Brook  <paul@codesourcery.com>
-
-       * trans-expr.c (gfc_conv_function_call): Remove bogus TODO.
-
-2005-01-22  Paul Brook  <paul@codesourcery.com>
-
-       * gfortran.h (gfc_check_access): Add prototype.
-       * match.c (gfc_match_namelist): Remove TODO.
-       * module.c (check_access): Rename ...
-       (gfc_check_access): ... to this.  Boolify.  Update callers.
-       * resolve.c (resolve_symbol): Check for private objects in public
-       namelists.
-
-2005-01-22  Paul Brook  <paul@codesourcery.com>
-
-       * primary.c (gfc_match_rvalue): Only apply implicit type if variable
-       does not have an explicit type.
-       (gfc_match_variable): Resolve implicit derived types in all cases.
-       Resolve contained function types from their own namespace, not the
-       parent.
-       * resolve.c (resolve_contained_fntype): Remove duplicate sym->result
-       checking.  Resolve from the contained namespace, not the parent.
-
-2005-01-22  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/19543
-       * trans-const.c (gfc_conv_constant_to_tree): Give logical
-       constants the correct type.
-
-       PR fortran/19194
-       * trans-io.c (ADD_STRING): Use gfc_charlen_type_node for string
-       length parameters.
-       (gfc_build_io_library_fndecls): 'rec' and 'recl_in' are not
-       pointer fields.
-
-2005-01-18  Kazu Hirata  <kazu@cs.umass.edu>
-
-       * arith.c, array.c, check.c, decl.c, expr.c, f95-lang.c,
-       gfortran.h, interface.c, intrinsic.c, io.c, iresolve.c,
-       match.c, matchexp.c, misc.c, module.c, options.c, parse.c,
-       scanner.c, simplify.c, symbol.c, trans-array.c, trans-expr.c,
-       trans-io.c, trans-stmt.c, trans.c: Update copyright.
-
-2005-01-17  Ira Rosen  <irar@il.ibm.com>
-
-       * f95-lang.c (gfc_init_builtin_functions): Call targetm.init_builtins.
-
-2005-01-16  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/19182
-       * error.c (error_char): Line-buffer errors / warnings.
-
-2005-01-16  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-intrinsic.c (gfc_conv_intrinsic_ishft): Fix signed /
-       unsigned issue.  Use build_int_cst instead of converting
-       integer_zero_node.  Remove unnecessary conversion.
-
-       * trans-types.c (gfc_get_character_type_len): Use
-       gfc_charlen_type_node as basic type for the range field.
-
-       * trans-intrinsic.c (build_fixbound_expr,
-       gfc_conv_intrinsic_bound, gfc_conv_intrinsic_anyall,
-       gfc_conv_intrinsic_count, gfc_conv_intrinsic_btest,
-       gfc_conv_intrinsic_singlebitop): Use 'build_int_cst' instead
-       of converting 'integer_zero_node' or 'integer_one_node'
-       respectively.
-       (gfc_conv_intrinsic_ishftc): Same, but store in local variable to
-       evade re-building.
-       (gfc_conv_intrinsic_strcmp, gfc_conv_intrinsic_rrspacing,
-       gfc_conv_intrinsic_trim, gfc_conv_intrinsic_iargc): Use
-       'build_int_cst' instead of converting 'integer_zero_node' or
-       'integer_one_node' respectively.
-
-       * trans-intrinsic.c (gfc_conv_intrinsic_index,
-       gfc_conv_intrinsic_scan, gfc_conv_intrinsic_verify): Remove
-       'gfc'-prefix from local variable, remove dead code, use correct
-       type when inserting argument.
-
-       * trans-intrinsic.c, trans-types.c: Update copyright years.
-
-2005-01-16  Steven G. Kargl  <kargls@comcast.net>
-
-       PR 19168
-       * resolve.c (check_case_overlap): Typo in comment.
-       (validate_case_label_expr):  Fix up kinds of case values
-       (resolve_select): Properly handle kind mismatches.
-
-2004-01-16  Paul Brook  <paul@codesourcery.com>
-
-       PR fortran/17675
-       * trans-common.c (translate_common): Remove duplicate function call.
-       (finish_equivalences): Preserve alignment when biasing offsets.
-
-2005-01-15  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de
-
-       * primary.c (check_digit): Call 'ISXDIGIT' instead of assuming
-       ASCII-like character encoding.
-
-2005-01-14  Steven G. Kargl  <kargls@comcast.net>
-
-       * resolve.c (compare_case): Cleanup.
-
-2005-01-14  Steven G. Kargl  <kargls@comcast.net>
-
-       * resolve.c (compare_case): Give arguments correct type.
-
-2005-01-13  Kazu Hirata  <kazu@cs.umass.edu>
-
-       * iresolve.c, trans-common.c, trans-types.c: Fix comment
-       typos.
-
-2005-01-09  Paul Brook  <paul@codesourcery.com>
-
-       PR fortran/17675
-       * trans-common.c (current_common, current_offset): Remove.
-       (create_common): Add head argument.
-       (align_segment): New function.
-       (apply_segment_offset): New function.
-       (translate_common): Merge code from new_segment.  Handle alignment.
-       (new_segment): Remove.
-       (finish_equivalences): Ensure proper alignment.
-
-2005-01-08  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-const.c: Don't include unused math.h.
-
-       * trans-intrinsic.c (gfc_get_intrinsic_lib_fndecl,
-       gfc_conv_intrinsic_bound, gfc_conv_intrinsic_minmaxloc,
-       gfc_conv_intrinsic_ishft, gfc_conv_intrinsic_len): Remove
-       trailing whitespace.
-       (prepare_arg_info): Fix formatting, indenting and remove trailing
-       whitespace.
-       (gfc_conv_intrinsic_spacing, gfc_conv_intrinsic_trim): Remove
-       trailing whitespace.
-
-       * arith.c (arctangent2, gfc_arith_init_1, gfc_arith_done_1,
-       gfc_constant_result, gfc_range_check, gfc_arith_power,
-       eval_type_intrinsic0, eval_intrinsic_f2, gfc_real2real,
-       gfc_real2complex, gfc_complex2int, gfc_complex2real,
-       gfc_complex2complex): Fix whitespace issues.
-       * check.c (must_be, type_check, numeric_check, int_or_real_check,
-       logical_array_check, array_check, scalar_check, nonoptional_check,
-       variable_check, dim_check, check_a_kind, gfc_check_a_ikind,
-       gfc_check_a_xkind, gfc_check_abs, gfc_check_all_any,
-       gfc_check_allocated, gfc_check_a_p, gfc_check_besn,
-       gfc_check_btest, gfc_check_char, gfc_check_cmplx, gfc_check_count,
-       gfc_check_cshift, gfc_check_dcmplx, gfc_check_dble,
-       gfc_check_digits, gfc_check_dot_product, gfc_check_eoshift,
-       gfc_check_fnum, gfc_check_g77_math1, gfc_check_huge, gfc_check_i,
-       gfc_check_iand, gfc_check_ibclr, gfc_check_ibits, gfc_check_ibset,
-       gfc_check_idnint, gfc_check_ieor, gfc_check_index, gfc_check_int,
-       gfc_check_ior, gfc_check_ishft, gfc_check_ishftc, gfc_check_kind,
-       gfc_check_lbound, gfc_check_logical, min_max_args,
-       gfc_check_min_max_integer, gfc_check_min_max_real,
-       gfc_check_min_max_double, gfc_check_matmul,
-       gfc_check_minval_maxval, gfc_check_merge, gfc_check_nearest,
-       gfc_check_pack, gfc_check_precision, gfc_check_radix,
-       gfc_check_range, gfc_check_real, gfc_check_repeat,
-       gfc_check_scale, gfc_check_scan, gfc_check_selected_real_kind,
-       gfc_check_set_exponent): Fix formatting issues.
-       (gfc_check_size, gfc_check_sign): Alphabetize function order,
-       remove whitespace-only line.
-       (gfc_check_fstat, gfc_check_fstat_sub, gfc_check_stat,
-       gfc_check_stat_sub, gfc_check_transfer, gfc_check_transpose,
-       gfc_check_ubound, gfc_check_unpack, gfc_check_verify, gfc_check_x,
-       gfc_check_cpu_time, gfc_check_date_and_time, gfc_check_mvbits,
-       gfc_check_random_number, gfc_check_random_seed,
-       gfc_check_second_sub, gfc_check_system_clock,
-       gfc_check_getcwd_sub, gfc_check_exit, gfc_check_flush,
-       gfc_check_umask, gfc_check_umask_sub, gfc_check_unlink,
-       gfc_check_unlink_sub): Fix formatting issues.
-
-2005-01-08  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * gfortran.h: Remove outdated comment.  Don't include stdio.h
-       explicitly.
-
-2005-01-06  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * gfortranspec.c (lang_specific_driver): Change year to 2005 in
-       output of 'gfortran --version'.
-
-2005-01-03  Steven G. Kargl  <kargls@comcast.net>
-
-       * arith.c: Add system.h; remove string.h
-       * decl.c: Ditto
-       * matchexp.c: Ditto
-       * parse.c: Ditto
-       * resolve.c: Ditto
-       * st.c: Ditto
-       * check.c: Remove stdlib.h and stdarg.h
-       * error.c: Remove stdlib.h, stdarg.h, stdio.h, string.h
-       * expr.c: Add system.h; remove stdarg.h, stdio.h, and string.h
-       * f95-lang.c: Add system.h; remove stdio.h
-       * interface.c: Add system.h; remove stdlib.h and string.h
-       * intrinsic.c: Remove stdarg.h, stdio.h, and string.h
-       * io.c: Remove string.h
-       * simplify.c: Ditto
-       * match.c: Remove stdarg.h and string.h
-       * misc.c: Update copyright; add system.h; remove stdlib.h,
-       string.h, and sys/stat.h
-       * module.c: Add system.h; remove string.h, stdio.h, errno.h,
-       unistd.h, and time.h
-       * option.c: Remove string.h and stdlib.h
-       * primary.c: Ditto
-       * scanner.c: Update copyright; add system.h; remove stdlib.h,
-       stdio.h, string.h, and strings.h
-       * symbol.c: Add system.h; remove stdlib.h, stdio.h, and string.h
-       * trans-array.c: Remove stdio.h and gmp.h
-       * trans-const.c: Ditto
-       * trans-expr.c: Ditto
-       * trans-io.c: Ditto
-       * trans-stmt.c: Ditto
-       * trans.c: Ditto
-       * trans-intrinsic.c: Remove stdio.h and string.h
-
-2004-12-29  Steven G. Kargl  <kargls@comcast.net>
-
-       * gfortran.h (gfc_case): fix typo in comment.
-
-2004-12-27  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-intrinsic.c (gfc_conv_intrinsic_ishft): Change to
-       logical shift.  Call fold.  Remove 0-bit shift shortcut.
-       (gfc_conv_intrinsic_ishftc): Convert first argument to at least
-       4 bytes bits.  Convert 2nd and 3rd argument to 4 bytes.  Convert
-       result if width(arg 1) < 4 bytes.  Call fold.
-
-       PR fortran/19032
-       * trans-intrinsic.c (gfc_conv_intrinsic_mod): Update comment
-       in front of function to match the standard.  Correct handling
-       of MODULO.
-
-2004-12-27  Andrew Pinski  <pinskia@physics.uc.edu>
-
-       * trans-expr.c (gfc_conv_cst_int_power): Only check for
-       flag_unsafe_math_optimizations if we have a float type.
-
-2004-12-23  Steven G. Kargl  <kargls@comcast.net>
-
-       * gfortran.texi: Fix typo.
-
-2004-12-16  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-intrinsic.c (build_fixbound_expr): Clarify comment, fix
-       comment typo.
-
-2004-12-15  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/18993
-       * match.c (gfc_match_if): Don't explicitly skip optional whitespace.
-       (gfc_match_nullify): Make sure that ')' is in front of the end of
-       statement.
-
-       * scanner.c (skip_fixed_comments): Fix typo in comment preceding
-       function.
-
-2004-12-14  Richard Henderson  <rth@redhat.com>
-
-       * gfortran.h (gfc_expr.function.name): Make const.
-       (gfc_iresolve_init_1, gfc_iresolve_done_1): Remove.
-       (gfc_get_string): Update prototype.
-       * iresolve.c: Include tree.h.
-       (string_node, HASH_SIZE, string_head, hash): Remove.
-       (gfc_get_string): Use vsnprintf, get_identifier.
-       (free_strings, gfc_iresolve_init_1, gfc_iresolve_done_1): Remove.
-       * misc.c (gfc_init_1): Don't call gfc_iresolve_init_1.
-       (gfc_done_1): Don't call gfc_iresolve_done_1.
-       * module.c (mio_allocated_string): Take and return const char *,
-       instead of modifying char**.
-       (mio_expr): Update to match.
-       * resolve.c (pure_function): Constify name argument.
-       (resolve_function): Constify name.
-       * trans-intrinsic.c (gfc_conv_intrinsic_function): Likewise.
-
-2004-12-12  Richard Henderson  <rth@redhat.com>
-
-       * iresolve.c (gfc_resolve_all, gfc_resolve_any, gfc_resolve_count,
-       gfc_resolve_cshift, gfc_resolve_dot_product, gfc_resolve_eoshift,
-       gfc_resolve_matmul, gfc_resolve_maxloc, gfc_resolve_maxval,
-       gfc_resolve_minloc, gfc_resolve_minval, gfc_resolve_pack,
-       gfc_resolve_product, gfc_resolve_reshape, gfc_resolve_shape,
-       gfc_resolve_spread, gfc_resolve_sum, gfc_resolve_transpose,
-       gfc_resolve_unpack: Use PREFIX.
-
-2004-12-12  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/18869
-       * match.c (gfc_match_common): Skip whitespace.
-
-2004-12-12  Steven G. Kargl  <kargls@comcast.net>
-
-       PR fortran/16581
-       * check.c (gfc_check_iand, gfc_check_ibclr, gfc_check_ibits,
-       gfc_check_ibset, gfc_check_ieor, gfc_check_ior): Remove default
-       integer kind check; Issue error for -std=f95 when needed.
-       * intrinsic.c (add_functions): Change ieor from GFC_STD_GNU to
-       GFC_STD_F95.
-       * iresolve.c (gfc_resolve_iand, gfc_resolve_ieor, gfc_resolve_ior):
-       Promote arguments to same kind.
-
-2004-12-12  Steven G. Kargl  <kargls@comcast.net>
-       Paul Brook  <paul@codesourcery.com>
-
-       PR fortran/16222
-       * resolve.c (gfc_resolve_iterator_expr): New function.
-       (gfc_resolve_iterator): Use it.  Add real_ok argument.  Convert
-       start, end and stride to correct type.
-       (resolve_code): Pass extra argument.
-       * array.c (resolve_array_list): Pass extra argument.
-       * gfortran.h (gfc_resolve): Add prototype.
-       * trans-stmt.c (gfc_trans_do): Remove redundant type conversions.
-       Handle real type iterators.
-
-2004-12-11  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/17175
-       * iresolve.c (gfc_resolve_scale): Convert 'I' argument if not of
-       same kind as C's 'int'.
-       (gfc_resolve_set_exponent): Convert 'I' argument if not of kind 4.
-
-2004-12-08  Richard Henderson  <rth@redhat.com>
-
-       * intrinsic.c (gfc_convert_type_warn): Propagate the input shape
-       to the output expression.
-       * iresolve.c (gfc_resolve_cshift, gfc_resolve_eoshift): Suppress
-       warning conversion.
-       (gfc_resolve_reshape): Force convert SHAPE and ORDER parameters
-       to index kind.
-
-2004-12-08  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/18826
-       * resolve.c (resolve_code): Impose correct restrictions on
-       assigned variable.
-
-       * decl.c (gfc_match_end): Use locus of END when eos is an error.
-
-2004-12-02  Steven G. Kargl  <kargls@comcast.net>
-       Paul Brook  <paul@codesourcery.com>
-
-       * check.c (gfc_check_flush, gfc_check_fnum): New functions.
-       (gfc_check_fstat, gfc_check_fstat_sub): New functions.
-       (gfc_check_stat, gfc_check_stat_sub): New functions.
-       * gfortran.h (GFC_ISYM_FNUM,GFC_ISYM_FSTAT,GFC_ISYM_STAT): New symbols
-       * intrinsic.c (add_functions,add_subroutines): Add flush, fnum,
-       fstat, and stat to intrinsics symbol tables.
-       * intrinsic.h (gfc_check_flush, gfc_resolve_stat_sub): Add prototypes.
-       (gfc_resolve_fstat_sub, gfc_resolve_stat): Ditto.
-       * iresolve.c (gfc_resolve_fnum, gfc_resolve_fstat): New functions.
-       (gfc_resolve_stat, gfc_resolve_flush): New functions.
-       (gfc_resolve_stat_sub,gfc_resolve_fstat_sub): New functions
-       * trans-intrinsic.c (gfc_conv_intrinsic_function): Add new intrinsics.
-
-2004-12-02  Steven G. Kargl  <kargls@comcast.net>
-
-       * intrinsic.c: Fix and add comments, fix function declarations
-       (OPTIONAL,REQUIRED): New symbols
-       (add_functions,add_subroutines): Use symbols
-       (gmp.h): Remove unused include
-
-2004-11-25  Joseph S. Myers  <joseph@codesourcery.com>
-
-       * f95-lang.c, gfortranspec.c, trans-decl.c: Avoid ` as left quote
-       in diagnostics.
-
-2004-11-24  Steven Bosscher  <stevenb@suse.de>
-
-       * options.c (gfc_post_options): Don't clear flag_inline_functions.
-
-2004-11-20  Steven G. Kargl  <kargls@comcast.net>
-
-       * check.c (gfc_check_getcwd_sub): Fix seg fault.
-
-       * check.c (gfc_check_exit,gfc_check_umask,gfc_check_umask_sub,
-       gfc_check_unlink,gfc_check_unlink_sub): New functions
-       * gfortran.h (GFC_ISYM_UMASK,GFC_ISYM_UNLINK): New symbols
-       * intrinsic.c (add_functions,add_subroutines): Add umask, unlink,
-       exit to intrinsics symbol tables.
-       * intrinsic.h (gfc_check_umask,gfc_check_unlink,gfc_check_exit,
-       gfc_check_umask_sub,gfc_check_unlink_sub,gfc_resolve_umask,
-       gfc_resolve_unlink,gfc_resolve_exit,gfc_resolve_umask_sub,
-       gfc_resolve_unlink_sub): Add and sort prototypes.
-       * iresolve.c (gfc_resolve_umask,gfc_resolve_unlink,gfc_resolve_exit,
-       gfc_resolve_umask_sub,gfc_resolve_unlink_sub): New functions
-       * trans-intrinsic.c (gfc_conv_intrinsic_function): Use symbols
-
-2004-11-16  Paul Brook  <paul@codesourcery.com>
-
-       PR fortran/13010
-       * trans-array.c (gfc_trans_allocate_temp_array): Use gfc_get_dtype.
-       (gfc_array_init_size, gfc_conv_expr_descriptor): Ditto.
-       * trans-types.c (gfc_get_dtype): Accept array type rather than element
-       type.
-       (gfc_get_nodesc_array_type): Don't set GFC_TYPE_ARRAY_DTYPE.
-       (gfc_get_array_type_bounds): Ditto.
-       (gfc_get_derived_type): Recurse into derived type pointers.
-       * trans-types.h (gfc_get_dtype): Add prototype.
-       * trans.h (GFC_TYPE_ARRAY_DTYPE): Add comment.
-
-2004-11-15  Paul Brook  <paul@codesourcery.com>
-
-       * trans-types.c (gfc_get_dtype): Remove obsolete TODO.
-
-2004-11-10  Paul Brook  <paul@codesourcery.com>
-
-       PR fortran/18375
-       * trans-expr.c (gfc_trans_subarray_assign): Free shape before ss.
-       * trans-io.c (transfer_array_component): Ditto.
-
-2004-11-10  Paul Brook  <paul@codesourcery.com>
-
-       * invoke.texi: Fix typo.
-
-2004-11-08  Kazu Hirata  <kazu@cs.umass.edu>
-
-       * arith.c, array.c, decl.c, expr.c, f95-lang.c, gfortran.h,
-       gfortranspec.c, interface.c, intrinsic.c, iresolve.c, match.c,
-       module.c, parse.c, parse.h, primary.c, resolve.c, scanner.c,
-       trans-array.c, trans-array.h, trans-expr.c, trans-intrinsic.c,
-       trans-io.c, trans-stmt.c, trans.h: Fix comment formatting.
-
-2004-11-06  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/18023
-       * io.c (resolve_tag): Tighten up exception for assigned FORMAT.
-
-2004-11-06  Kazu Hirata  <kazu@cs.umass.edu>
-
-       * gfortranspec.c: Replace GNU CC with GCC.
-
-2004-11-05  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * gfortranspec.c (lang_specific_driver): Change year to 2004.
-
-2004-11-05  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/18111
-       *  trans-decl.c (create_function_arglist): Set DECL_ARTIFICIAL for
-       hidden parameters.
-
-2004-11-05  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/15164
-       * trans-decl.c (gfc_finish_var_decl): Don't declare arguments to
-       module procedures as if they were module variables.
-
-2004-11-03  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/17535
-       PR fortran/17583
-       PR fortran/17713
-       * module.c (write_symbol1): Set module_name for dummy arguments.
-
-2004-11-02  Paul Brook  <paul@codesourcery.com>
-
-       * intrinsic.c (check_intrinsic_standard): Include error locus.
-       Remove VLA.
-       (gfc_intrinsic_func_interface, gfc_intrinsic_sub_interface): Pass
-       locus to check_intrinsic_standard.
-
-2004-10-31  Janne Blomqvist  <jblomqvi@cc.hut.fi>
-
-       PR fortran/17590
-       * gfortran.h: Change GFC_STD_* flags to more appropriate
-       ones. (struct gfc_intrinsic_isym): Add field for standard. (struct
-       gfc_option_t): Add field for warning about use of nonstandard
-       intrinsics.
-       * intrinsic.c (add_sym): Add parameter for standard version, check
-       this against current standard.
-       (add_sym_0): Pass standard parameter to add_sym.
-       (add_sym_1, add_sym_0s, add_sym_1s, add_sym_1m, add_sym_2): Ditto.
-       (add_sym_2s, add_sym_3, add_sym_3ml, add_sym_3red, add_sym_3s): Ditto.
-       (add_sym_4, add_sym_4s, add_sym_5, add_sym_5s): Ditto.
-       (make_generic): Add parameter for standard, check this
-       against currently selected standard.
-       (add_functions, add_subroutines): Add parameter to tell which
-       standard an intrinsic belongs to.
-       (check_intrinsic_standard): New function.
-       (gfc_intrinsic_func_interface): Add call to check_intrinsic_standard.
-       (gfc_intrinsic_sub_interface): Ditto.
-       * lang.opt: Add Wnonstd-intrinsics option.
-       * options.c (gfc_init_options): Change to use new GFC_STD_* flags,
-       init new warning.
-       (set_Wall): Add warning about nonstd intrinsics.
-       (gfc_handle_option): Change to use new GFC_STD_* flags,
-       handle new warning.
-       * invoke.texi: Update manual to include -Wnonstd-intrinsics.
-
-2004-10-30  Andrew Pinski  <pinskia@physics.uc.edu>
-
-       * f95-lang.c (lang_tree_node): Add chain_next to be the TREE_CHAIN.
-
-2004-10-30  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * simplify.c (twos_complement): Calculate mask in GMP arithmetic.
-
-2004-10-30  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans.c (gfc_trans_code): Set global locus after recursing. Fix
-       comment typo.
-
-2004-10-30  Canqun Yang  <canqun@nudt.edu.cn>
-
-       * check.c (gfc_check_rand): Allow missing optional argument.
-       (gfc_check_irand): Ditto.
-       * intrinsic.c (add_functions): Set arg optional flag for {i,}rand.
-
-2004-10-28  Scott Robert Ladd  <scott.ladd@coyotegulch.com>
-
-       PR fortran/13490, PR fortran/17912
-       * gcc/fortran/gfortran.h: Added pedantic_min_int to gfc_integer_info
-       * gcc/fortran/gfortran.h: Added ARITH_ASYMMETRIC to arith
-       * gcc/fortran/arith.c: Added support for an "asymmetric integer"
-       warning when compiling with pedantic.
-       * gcc/fortran/arith.c: Set minimum integer values to reflect
-       realities of two's complement signed integers. Added
-       pedantic minimum.
-
-2004-10-17  Andrew Pinski  <pinskia@physics.uc.edu>
-
-       * Make-lang.in (F95_ADDITIONAL_OBJS): Kill.
-       (f951): Do not depend on F95_ADDITIONAL_OBJS and don't
-       link it in.
-
-2004-10-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-decl.c (generate_local_decl): Simplify logic, fix comment
-       typo.
-       (gfc_generate_function_code): Fix formatting issue.
-
-2004-10-10  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * module.c: Fix formatting issues.
-
-2004-10-09  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * module.c (mio_interface_rest): Set where member of interface
-       while loading.
-
-2004-10-08  Andrew Pinski  <pinskia@physics.uc.edu>
-
-       PR fortran/17901
-       * options.c (gfc_handle_option): Add break after handing the
-       J/M option.
-
-2004-10-08  Tobias Schlueter  <tobias.shclueter@physik.uni-muenchen.de>
-
-       * arith.c: Fix formatting issues.
-
-2004-10-07  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/17676
-       * resolve.c (resolve_operator): Use correct operator name in message.
-
-2004-10-07  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * primary.c (match_boz_constant): Allow kind parameter suffixes.
-       Move standard warning further to the front.
-
-2004-10-07  Kazu Hirata  <kazu@cs.umass.edu>
-
-       * trans-stmt.c: Fix a comment typo.
-
-2004-10-07  Paul Brook  <paul@codesourcery.com>
-
-       PR fortran/17678
-       * trans-array.c (gfc_trans_deferred_array): Leave use associated
-       variables alone.
-
-2004-10-06  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/17568
-       * simplify.c (twos_complement): New function.
-       (gfc_simplify_ishft, gfc_simplify_ishftc): Revise.
-
-       * simplify.c (gfc_simplify_abs): Use mpfr_hypot for CABS.
-
-2004-10-06  Paul Brook  <paul@codesourcery.com>
-
-       * trans-stmt.c (gfc_trans_simple_do): New function.
-       (gfc_trans_do): Use it.  Evaluate iteration bounds before entering
-       loop.  Update comments.
-
-2004-10-04  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/17283
-       * iresolve.c (gfc_resolve_pack): Choose function depending if mask
-       is scalar.
-
-       PR fortran/17631
-       * intrinsic.c (add_sym_5): Remove.
-       (add_subroutines): Add resolution function for MVBITS.
-       * intrinsic.h (gfc_resolve_mvbits): Declare resolution function for
-       MVBITS
-       * iresolve.c (gfc_resolve_mvbits): New function.
-       (gfc_resolve_random_number): Remove empty line at end of function.
-
-       * trans-const.c (gfc_build_cstring_const): New function.
-       (gfc_init_cst): Use new function.
-       * trans-const.h (gfc_build_cstring_const): Add prototype.
-       * trans-io.c (set_string, set_error_locus): Use new function.
-       * trans-stmt.c (gfc_trans_goto): Use new function.
-
-       PR fortran/17708
-       * parse.c (accept_statement): Don't treat END DO like END IF and
-       END SELECT.
-       (parse_do_block): Generate possible END DO label inside END DO
-       block.
-
-       PR fortran/17776
-       * check.c (gfc_check_system_sub): New function.
-       * gfortran.h (gfc_generic_isym_id): Add GFC_ISYM_SYSTEM.
-       * intrinsic.c (add_functions): Add 'system'.
-       (add_subroutines): Add 'system'.
-       * intrinsic.h (gfc_check_etime_sub, gfc_check_getcwd_sub):
-       Move prototypes to other suborutines.
-       (gfc_check_system_sub, gfc_resolve_system, gfc_resolve_system_sub):
-       Add prototype.
-       (gfc_resolve_system_clock): Fix formatting of prototype.
-       * iresolve.c (gfc_resolve_system, gfc_resolve_system_sub): New
-       functions.
-       * trans-intrinsic.c (gfc_conv_intrinsic_function): Deal with
-       GFC_ISYM_SYSTEM.
-
-2004-10-04  Erik Schnetter  <schnetter@aei.mpg.de>
-
-       * scanner.c (preprocessor_line): Accept preprocessor lines without
-       file names.  Check file names for closing quotes.  Handle escaped
-       quotes in file names.
-
-2004-10-04  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-       Paul Brook  <paul@codesourcery.com>
-
-       * trans-array.c (gfc_conv_expr_descriptor): Check for substriungs.
-       Use gfc_get_expr_charlen.
-       * trans-expr.c (gfc_get_expr_charlen): New function.
-       * trans.h (gfc_get_expr_charlen): Add prototype.
-
-2004-10-04  Kazu Hirata  <kazu@cs.umass.edu>
-
-       * trans-intrinsic.c: Fix a comment typo.
-
-2004-10-03  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * simplify.c (range_check): Remove blank line at beginning of function.
-       (gfc_simplify_dint): Same at end of function.
-       (gfc_simplify_exponent, gfc_simplify_fraction): Simplify calculations.
-       (gfc_simplify_bound): Fix indentation.
-       (gfc_simplify_log10): Simplify calculation.
-       (gfc_simplify_min, gfc_simplify_max): Remove blank line at beginning
-       of function.
-       (gfc_simplify_nearest): Same at end of function.
-       (gfc_simplify_nint, gfc_simplify_idnint): Same at beginning of
-       function.
-       (gfc_simplify_rrspacing, gfc_simplify_set_exponent,
-       gfc_simplify_spacing): Simplify calulations.
-
-2004-10-03  Feng Wang  <fengwang@nudt.edu.cn>
-
-       * trans-intrinsic.c: Fix comments on spacing and rrspacing
-       (gfc_conv_intrinsic_rrspacing): Add fold on constant trees.
-
-2004-10-01  Jan Hubicka  <jh@suse.cz>
-
-       * f95-lang.c (gfc_expand_function): Update call of
-       tree_rest_of_compilation.
-       * trans-decl.c (gfc_generate_constructors): Likewise.
-
-2004-09-26  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-intrinsic.c: Comment fixes.
-
-2004-09-25  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * decl.c (add_init_expr_to_sym, variable_decl): Comment fixes.
-
-2004-09-24  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-types.c (gfc_return_by_reference): Remove superfluous
-       assertion.
-
-       * intrinsic.h (gfc_resolve_getcwd): Update prototype.
-       * iresolve.c (gfc_resolve_getcwd): Add second argument to function.
-
-       PR fortran/17615
-       * trans-expr.c (gfc_trans_arrayfunc_assign): Look at resolved
-       function to determine return type.
-
-2004-09-20  Jan Hubicka  <jh@suse.cz>
-
-       * trans-decl.c (build_entry_thunks): Finalize the function; do not lower
-       tree.
-       (gfc_generate_function_code): Likewise.
-
-2004-09-20  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/15957
-       * simplify.c (gfc_simplify_reshape): Set shape of return value
-       correctly.
-
-2004-09-17  Jeffrey D. Oldham  <oldham@codesourcery.com>
-           Zack Weinberg  <zack@codesourcery.com>
-
-       * f95-lang.c, trans-expr.c, trans.c: Update for new tree-class
-       enumeration constants.
-
-2004-09-17  Paul Brook  <paul@codesourcery.com>
-
-       * gfortran.h (struct gfc_linebuf): Don't use C99 empty arrays.
-       (gfc_linebuf_header_size): Define.
-       * scanner.c (load_file): Use it.
-
-2004-09-16  Kazu Hirata  <kazu@cs.umass.edu>
-
-       * array.c, data.c, decl.c, dependency.c, error.c, f95-lang.c,
-       interface.c, intrinsic.c, io.c, misc.c, module.c, parse.h,
-       resolve.c, scanner.c, trans-array.c, trans-array.h,
-       trans-common.c, trans-const.h, trans-decl.c, trans-expr.c,
-       trans-intrinsic.c, trans-stmt.c, trans-types.c, trans.c,
-       trans.h: Fix comment typos.  Follow spelling conventions.
-
-2004-09-16  Victor Leikehman  <lei@il.ibm.com>
-
-       PR/15364
-       * trans-io.c (transfer_array_component): New function.
-       (transfer_expr): For array fields, call transfer_array_component.
-
-2004-09-16  Kazu Hirata  <kazu@cs.umass.edu>
-
-       * gfortran.texi: Fix a typo.
-
-2004-09-15  Aaron W. LaFramboise  <aaronavay62@aaronwl.com>
-
-       * parse.c (eof_buf): Rename eof to eof_buf.
-       (unexpected_eof): Same.
-       (gfc_parse_file): Same.
-
-2004-09-15  Steven G. Kargl  <kargls@comcast.net>
-
-       * check.c (gfc_check_getcwd_sub): New function.
-       * gfortran.h (GFC_ISYM_GETCWD): New symbol.
-       * intrinsic.c (add_functions): Add function definition;
-       Use symbol.
-       * intrinsic.c (add_subroutines): Add subroutine definitions.
-       * intrinsic.h: Add prototypes.
-       * iresolve.c (gfc_resolve_getcwd, gfc_resolve_getcwd_sub):
-       New functions.
-       * trans-intrinsic.c (gfc_conv_intrinsic_function): Use symbol.
-
-2004-09-15  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/16485
-       * module.c (write_symbol): Don't fill in module name here.
-       (write_symbol0): Fill in here instead.
-
-2004-09-14  Kazu Hirata  <kazu@cs.umass.edu>
-
-       * data.c, decl.c, f95-lang.c, gfortran.h, match.c,
-       trans-array.c, trans-common.c, trans-expr.c,
-       trans-intrinsic.c, trans-stmt.c, trans-types.c, trans.h: Fix
-       comment typos.  Follow spelling conventions.
-
-2004-09-09  Paul Brook  <paul@codesourcery.com>
-
-       * scanner.c (get_file): Add ATTRIBUTE_UNUSED.
-
-2004-09-08  Paul Brook  <paul@codesourcery.com>
-
-       * array.c: Don't include assert.h.
-       * data.c: Don't include assert.h.  Replace assert and abort with
-       gcc_assert and gcc_unreachable.
-       * dependency.c: Ditto.
-       * f95-lang.c: Ditto.
-       * iresolve.c: Ditto.
-       * resolve.c: Ditto.
-       * simplify.c: Ditto.
-       * symbol.c: Ditto.
-       * trans-array.c: Ditto.
-       * trans-common.c: Ditto.
-       * trans-const.c: Ditto.
-       * trans-decl.c: Ditto.
-       * trans-expr.c: Ditto.
-       * trans-intrinsic.c: Ditto.
-       * trans-io.c: Ditto.
-       * trans-stmt.c: Ditto.
-       * trans-types.c: Ditto.
-       * trans.c: Ditto.
-
-2004-09-07  Per Bothner  <per@bothner.com>
-       Paul Brook  <paul@codesourcery.com>
-
-       * error.c (show_locus): Handle mapped locations.
-       * f95-lang.c (gfc_be_parse_file): Initialize mapped locations.
-       * gfortran.h: Include input.h.
-       (struct gfc_linebuf): Use source_location.
-       * scanner.c (get_file): Initialize linemap.
-       (preprocessor_line): Pass extra argument to get_file.
-       (load_file): Ditto.  Setup linemap.
-       (gfc_new_file): Handle mapped locations.
-       * trans-common.c (build_field, build_equiv_decl, build_common_decl):
-       Set decl source locations.
-       (gfc_trans_common): Set blank common block location.
-       * trans-decl.c (gfc_set_decl_location): New function.
-       (gfc_get_label_decl, gfc_get_symbol_decl): Use it.
-       (trans_function_start): Move call to gfc_set_backend_locus..
-       (build_function_decl): ... to here.
-       (build_entry_thunks): Set and restore the backend locus.
-       (gfc_generate_constructors): Remove excess arguments to
-       init_function_start.
-       (gfc_generate_block_data): Add comments.  Set the decl locus.
-       * trans-io.c (set_error_locus): Handle mapped locations.
-       * trans.c (gfc_get_backend_locus, gfc_get_backend_locus): Ditto.
-       (gfc_trans_code): Use SET_EXPR_LOCATION.
-       (gfc_generate_code): Override the location of the new symbol.
-       * trans.h (gfc_set_decl_location): Add prototype.
-
-2004-08-31  Paul Brook  <paul@codesourcery.com>
-
-       * trans-types.c (gfc_type_for_mode): Return NULL for unknown modes.
-
-2004-09-01  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/15327
-       * trans-intrinsic.c (gfc_conv_intrinsic_merge): Do the right thing for
-       strings.
-
-2004-09-01  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/16400
-       PR fortran/16404
-       (port from g95)
-       * resolve.c (resolve_transfer): New function.
-       (resolve_code): Call resolve_transfer in case of EXEC_TRANSFER.
-
-2004-08-31  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/16579
-       * trans-types.c (gfc_init_types): Make gfc_character1_type_node an
-       unsigned char.
-
-2004-08-31  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * CONTRIB, NEWS, README, TODO: Remove obsolete files.
-
-2004-08-31  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/17244
-       * trans-types.c (gfc_return_by_reference): Remove TODO error,
-       add comment pointing out possible issue WRT compatibility with g77.
-
-2004-08-31  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-decl.c, trans-expr.c, trans-io.c, trans-types.c: Replace
-       all occurences of 'gfc_strlen_type_node' by
-       'gfc_charlen_type_node'.
-       * trans-types.h: Same. Also update comment accordingly.
-
-2004-08-31  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * primary.c: Update copyright boilerplate to say GCC.
-       * f95-lang.c: Change initial comment to say gfortran.
-
-2004-08-31  Paul Brook  <paul@codesourcery.com>
-
-       * trans-types.h: Add comments.
-       (intmax_type_node, string_type_node, const_string_type_node): Remove.
-
-2004-08-30  Richard Henderson  <rth@redhat.com>
-
-       * Make-lang.in (fortran/f95-lang.o): Update dependencies.
-       (fortran/trans-decl.o, fortran/trans-types.o): Likewise.
-       * gfortran.h (gfc_integer_info): Add c_char, c_short, c_int,
-       c_long, c_long_long.
-       (gfc_logical_info): Add c_bool.
-       (gfc_real_info): Add mode_precision, c_float, c_double, c_long_double.
-       * trans-array.c (gfc_array_allocate): Use TYPE_PRECISION
-       rather than gfc_int[48]_type_node for allocate choice.
-       * trans-decl.c (gfc_build_intrinsic_function_decls): Cache
-       local copies of some kind type nodes.
-       (gfc_build_builtin_function_decls): Likewise.
-       * trans-expr.c (gfc_conv_power_op): Likewise.
-       * trans-intrinsic.c (gfc_conv_intrinsic_index,
-       gfc_conv_intrinsic_scan, gfc_conv_intrinsic_verify,
-       gfc_conv_intrinsic_trim, gfc_conv_intrinsic_repeat): Likewise.
-       * trans-stmt.c (gfc_trans_pause, gfc_trans_stop,
-       gfc_trans_character_select, gfc_trans_allocate): Likewise.
-       * trans-io.c (gfc_pint4_type_node): Move into ...
-       (gfc_build_io_library_fndecls): ... here.  Cache local copies of
-       some kind type nodes.
-       * trans-types.c (gfc_type_nodes): Remove.
-       (gfc_character1_type_node, gfc_strlen_type_node): New.
-       (gfc_integer_types, gfc_logical_types): New.
-       (gfc_real_types, gfc_complex_types): New.
-       (gfc_init_kinds): Fill in real mode_precision.
-       (gfc_build_int_type, gfc_build_real_type): New.
-       (gfc_build_complex_type, gfc_build_logical_type): New.
-       (c_size_t_size): New.
-       (gfc_init_types): Loop over kinds.
-       (gfc_get_int_type, gfc_get_real_type): Use gfc_validate_kind.
-       (gfc_get_complex_type, gfc_get_logical_type): Likewise.
-       (gfc_get_character_type_len): Likewise.
-       (gfc_type_for_size): Loop over kinds; use a reduced set of
-       unsigned type nodes.
-       (gfc_type_for_mode): Loop over kinds.
-       (gfc_signed_or_unsigned_type): Use gfc_type_for_size.
-       (gfc_unsigned_type, gfc_signed_type): Use gfc_signed_or_unsigned_type.
-       * trans-types.h (F95_INT1_TYPE, F95_INT2_TYPE, F95_INT4_TYPE,
-       F95_INT8_TYPE, F95_INT16_TYPE, F95_REAL4_TYPE, F95_REAL8_TYPE,
-       F95_REAl16_TYPE, F95_COMPLEX4_TYPE, F95_COMPLEX8_TYPE,
-       F95_COMPLEX16_TYPE, F95_LOGICAL1_TYPE, F95_LOGICAL2_TYPE,
-       F95_LOGICAL4_TYPE, F95_LOGICAL8_TYPE, F95_LOGICAL16_TYPE,
-       F95_CHARACTER1_TYPE, NUM_F95_TYPES, gfc_type_nodes,
-       gfc_int1_type_node, gfc_int2_type_node, gfc_int4_type_node,
-       gfc_int8_type_node, gfc_int16_type_node, gfc_real4_type_node,
-       gfc_real8_type_node, gfc_real16_type_node, gfc_complex4_type_node,
-       gfc_complex8_type_node, gfc_complex16_type_node,
-       gfc_logical1_type_node, gfc_logical2_type_node,
-       gfc_logical4_type_node, gfc_logical8_type_node,
-       gfc_logical16_type_node, gfc_strlen_kind): Remove.
-       (gfc_character1_type_node): Turn in to a variable.
-       (gfc_strlen_type_node): Likewise.
-
-2004-08-30  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * gfortran.h (gfc_namespace): Add new field is_block_data.
-       * parse.c (accept_statement): Remove special handling for BLOCK DATA.
-       (parse_block_data): Record BLOCK DATA name, set is_block_data field.
-       * trans.c (gfc_generate_code): Handle BLOCK DATA units.
-       * trans.h (gfc_generate_block_data): Add prototype.
-       * trans-decl.c (gfc_generate_block_data): New function.
-
-2004-08-29  Richard Henderson  <rth@redhat.com>
-
-       * trans-const.c (gfc_conv_mpz_to_tree): Use mpz_export.
-       * trans-types.c (gfc_init_kinds): Reject integer kinds larger
-       than two HOST_WIDE_INT.
-
-2004-08-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/13910
-       * decl.c (free_variable, free_value, gfc_free_data, var_list,
-       var_element, top_var_list, match_data_constant, top_val_list,
-       gfc_match_data): Move here from match.c.
-       (match_old_style_init): New function.
-       (variable_decl): Match old-style initialization.
-       * expr.c (gfc_get_variable_expr): New function.
-       * gfortran.h (gfc_get_variable_expr): Add prototype.
-       * gfortran.texi: Start documentation for supported extensions.
-       * match.c: Remove the functions moved to decl.c.
-       * match.h (gfc_match_data): Move prototype to under decl.c.
-       * symbol.c (gfc_find_sym_tree, gfc_find_symbol): Add/correct
-       comments.
-
-2004-08-29  Steven G. Kargl  <kargls@comcast.net>
-       Paul Brook  <paul@codesourcery.com>
-
-       * check.c (gfc_check_besn, gfc_check_g77_math1): New functions.
-       * f95-lang.c (DO_DEFINE_MATH_BUILTIN): Define.
-       (DEFINE_MATH_BUILTIN, DEFINE_MATH_BUILTIN_C): Use it.
-       (build_builtin_fntypes): New function.
-       (gfc_init_builtin_functions): Use it.
-       * gfortran.h (enum gfc_generic_isym_id): Add GFC_ISYM_{J,Y}{0,1,N}
-       and GFC_ISYM_ERF{,C}.
-       (gfc_c_int_kind): Declare.
-       * intrinsic.c (add_functions): Add [d]bes* and [d]erf*.
-       * intrinsic.h (gfc_check_besn, gfc_check_g77_math1, gfc_resolve_besn,
-       gfc_resolve_g77_math1): Add prototypes.
-       * resolve.c (gfc_resolve_besn, gfc_resolve_g77_math1): New functions.
-       * mathbuiltins.def: Add comment.  Change third argument.  Use
-       DEFINE_MATH_BUILTIN_C.  Add bessel and error functions.
-       * trans-intrinsic.c (BUILT_IN_FUNCTION): Define.
-       (DEFINE_MATH_BUILTIN, DEFINE_MATH_BUILTIN_C): Use it.
-       * trans-types.c (gfc_c_int_kind): Declare.
-       (gfc_init_kinds): Set it.
-
-2004-08-29  Steven G. Kargl  <kargls@comcast.net>
-       Paul Brook  <paul@codesourcery.com>
-
-       * gfortran.h (enum gfc_generic_isym_id): Add GFC_ISYM_GET?ID.
-       (gfc_check_f, gfc_simplify_f): Add f0.
-       * intrinsic.c (do_check): Call f0.  Flatten.
-       (add_sym_0): Fix prototype.  Set f0.
-       (add_functions): Add getgid, getgid and getuid.
-       (resolve_intrinsic): Remove obsolete comment.
-       (do_simplify): Call f0.
-       * intrinsic.h (gfc_resolve_getgid, gfc_resolve_getpid,
-       gfc_resolve_getuid): Add prototypes.
-       * iresolve.c (gfc_resolve_getgid, gfc_resolve_getpid,
-       gfc_resolve_getuid): New functions.
-       * trans-intrinsic.c (gfc_conv_intrinsic_function): Handle
-       GFC_ISYM_GET?ID.
-
-2004-08-28  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * error.c (gfc_error_init_1): Remove blank line in front of
-       function body. Add missing blank.
-       (gfc_buffer_error, error_char, error_string): Remove blank line in
-       front of function body.
-       (show_locus): Add comma in comment.
-       (gfc_clear_warning, gfc_warning_check, gfc_clear_error,
-       gfc_push_error, gfc_pop_error): Remove blank line in front of
-       function body.
-       (gfc_get_errors): Typo fix in comment in front of function. Remove
-       blank line in front of function body.
-
-2004-08-27  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * gfortran.h (gfc_default_*_kind): Remove prototypes, add extern
-       variable declaration of same name.
-       * arith.c, check.c, decl.c, dump_parse_tree.c, expr.c,
-       intrinsic.c, io.c, iresolve.c, match.c, options.c, primary.c,
-       resolve.c, simplify.c, symbol.c, trans-const.c, trans-io.c:
-       Replace all calls to gfc_default_*_kind with variable accesses.
-       * trans-types.c: Same as above.
-       (gfc_default_*_kind_1): Rename to gfc_default_*_kind, remove
-       static qualifier. Replace all occurences.
-       (gfc_default_*_kind): Remove functions.
-
-2004-08-26  Richard Henderson  <rth@redhat.com>
-
-       * arith.c: Include system.h, not real system headers.
-       (MPZ_NULL, MPF_NULL, DEF_GFC_INTEGER_KIND, DEF_GFC_LOGICAL_KIND,
-       DEF_GFC_REAL_KIND, GFC_SP_KIND, GFC_SP_PREC, GFC_SP_EMIN, GFC_SP_EMAX,
-       GFC_DP_KIND, GFC_DP_PREC, GFC_DP_EMIN, GFC_DP_EMAX, GFC_QP_KIND,
-       GFC_QP_PREC, GFC_QP_EMIN, GFC_QP_EMAX): Remove.
-       (gfc_integer_kinds, gfc_logical_kinds, gfc_real_kinds,
-       gfc_index_integer_kind, gfc_default_integer_kind,
-       gfc_default_real_kind,gfc_default_double_kind,
-       gfc_default_character_kind, gfc_default_logical_kind,
-       gfc_default_complex_kind, validate_integer, validate_real,
-       validate_logical, validate_character,
-       gfc_validate_kind): Move to trans-types.c.
-       (gfc_set_model_kind): Use gfc_validate_kind.
-       (gfc_set_model): Just copy the current precision to default.
-       (gfc_arith_init_1): Use mpfr precision 128 for integer setup.
-       * f95-lang.c (gfc_init_decl_processing): Invoke gfc_init_kinds.
-       * gfortran.h: Update file commentary.
-       * trans-types.c (MAX_INT_KINDS, MAX_REAL_KINDS): New.
-       (gfc_default_integer_kind_1, gfc_default_real_kind_1,
-       gfc_default_double_kind_1, gfc_default_character_kind_1,
-       gfc_default_logical_kind_1, gfc_default_complex_kind_1): New.
-       (gfc_init_kinds): New.
-       (gfc_init_types): Don't set gfc_index_integer_kind here.
-       * trans-types.h (gfc_init_kinds): Declare.
-       * doc/invoke.texi: Clarify DOUBLE PRECISION behaviour wrt -r8.
-
-2004-08-26  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * check.c (gfc_check_atan2): New function.
-       * intrinsic.c (add_functions): Use gfc_check_atan2 for ATAN2
-       * intrinsic.h (gfc_check_atan2): Add prototype.
-
-2004-08-25  Richard Henderson  <rth@redhat.com>
-
-       * arith.c (gfc_validate_kind): Add may_fail argument; abort if
-       false and we don't validate the kind.
-       (gfc_check_integer_range, gfc_check_real_range): Update to match.
-       * check.c (kind_check): Likewise.
-       * decl.c (gfc_match_old_kind_spec, gfc_match_kind_spec): Likewise.
-       (match_char_spec, match_logical_spec): Likewise.
-       * gfortran.h (gfc_validate_kind): Likewise.
-       * options.c (gfc_handle_option): Likewise.
-       * primary.c (match_integer_constant, match_real_constant,
-       match_string_constant, match_logical_constant,
-       match_const_complex_part): Likewise.
-       * simplify.c (get_kind, gfc_simplify_bit_size, gfc_simplify_digits,
-       gfc_simplify_epsilon, gfc_simplify_huge, gfc_simplify_ibclr,
-       gfc_simplify_ibset, gfc_simplify_ishft, gfc_simplify_ishftc,
-       gfc_simplify_maxexponent, gfc_simplify_minexponent,
-       gfc_simplify_nearest, gfc_simplify_not, gfc_simplify_precision,
-       gfc_simplify_radix, gfc_simplify_range, gfc_simplify_rrspacing,
-       gfc_simplify_scale, gfc_simplify_spacing, gfc_simplify_tan,
-       gfc_simplify_tiny): Likewise.
-       * trans-intrinsic.c (gfc_conv_intrinsic_aint, gfc_conv_intrinsic_mod,
-       gfc_conv_intrinsic_minmaxloc, gfc_conv_intrinsic_minmaxval,
-       prepare_arg_info): Likewise.
-
-2004-08-25  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * expr.c (gfc_check_assign): Add comment. Add new warning.
-       * trans-expr.c (gfc_conv_function_call): Correctly dereference
-       result of pointer valued function when not in pointer assignment.
-
-2004-08-25  Paul Brook  <paul@codesourcery.com>
-
-       * config-lang.in: Remove dead commented line.
-       * module.c: Replace g95 with gfortran in comment.
-
-2004-08-25  Paul Brook  <paul@codesourcery.com>
-
-       PR fortran/17190
-       * arith.c (gfc_mpfr_to_mpz): Workaround mpfr bug.
-
-2004-08-25  Paul Brook  <paul@codesourcery.com>
-
-       PR fortran/17144
-       * trans-array.c (gfc_trans_allocate_temp_array): Remove
-       string_length argument.
-       (gfc_trans_array_ctor_element): New function.
-       (gfc_trans_array_constructor_subarray): Use it.
-       (gfc_trans_array_constructor_value): Ditto.  Handle constant
-       character arrays.
-       (get_array_ctor_var_strlen, get_array_ctor_strlen): New functions.
-       (gfc_trans_array_constructor): Use them.
-       (gfc_add_loop_ss_code): Update to new gfc_ss layout.
-       (gfc_conv_ss_descriptor): Remember section string length.
-       (gfc_conv_scalarized_array_ref): Ditto.  Remove dead code.
-       (gfc_conv_resolve_dependencies): Update to new gfc_ss layout.
-       (gfc_conv_expr_descriptor): Ditto.
-       (gfc_conv_loop_setup): Ditto.  Spelling fixes.
-       * trans-array.h (gfc_trans_allocate_temp_array): Update prototype.
-       * trans-const.c (gfc_conv_constant):  Update to new gfc_ss layout.
-       * trans-expr.c (gfc_conv_component_ref): Turn error into ICE.
-       (gfc_conv_variable): Set string_length from section.
-       (gfc_conv_function_call): Remove extra argument.
-       (gfc_conv_expr, gfc_conv_expr_reference): Update to new gfc_ss layout.
-       * trans-types.c (gfc_get_character_type_len): New function.
-       (gfc_get_character_type): Use it.
-       (gfc_get_dtype): Return zero for internal types.
-       * trans-types.h (gfc_get_character_type_len): Add prototype.
-       * trans.h (struct gfc_ss): Move string_length out of union.
-
-2004-08-25  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans.h (build2_v, build3_v): New macros.
-       (build_v): Remove.
-       * f95-lang.c (gfc_truthvalue_conversion): Use build2 instead of
-       build.
-       * trans-array.c (gfc_conv_descriptor_data,
-       gfc_conv_descriptor_offset, gfc_conv_descriptor_dimension,
-       gfc_conv_descriptor_stride, gfc_conv_descriptor_lbound,
-       gfc_conv_descriptor_ubound, gfc_trans_allocate_array_storage,
-       gfc_trans_allocate_temp_array,
-       gfc_trans_array_constructor_subarray,
-       gfc_trans_array_constructor_value, gfc_conv_array_index_ref,
-       gfc_trans_array_bound_check, gfc_conv_array_index_offset,
-       gfc_conv_scalarized_array_ref, gfc_conv_array_ref,
-       gfc_conv_array_ref, gfc_trans_preloop_setup,
-       gfc_trans_scalarized_loop_end, gfc_conv_ss_startstride,
-       gfc_conv_loop_setup, gfc_array_init_size,
-       gfc_conv_array_initializer, gfc_trans_array_bounds,
-       gfc_trans_auto_array_allocation, gfc_trans_dummy_array_bias,
-       gfc_conv_expr_descriptor, gfc_conv_array_parameter,
-       gfc_trans_deferred_array): Use buildN and buildN_v macros instead
-       of build and build_v as appropriate.
-       * trans-common.c (create_common): Same.
-       * trans-decl.c (gfc_trans_auto_character_variable,
-       gfc_trans_entry_master_switch, gfc_generate_function_code): Same.
-       * trans-expr.c (gfc_conv_expr_present, gfc_conv_substring,
-       gfc_conv_component_ref, gfc_conv_unary_op, gfc_conv_powi,
-       gfc_conv_cst_int_power, gfc_conv_string_tmp, gfc_conv_concat_op,
-       gfc_conv_expr_op, gfc_conv_function_call,
-       gfc_trans_structure_assign): Same.
-       * trans-intrinsic.c (build_fixbound_expr, build_round_expr,
-       gfc_conv_intrinsic_aint, gfc_conv_intrinsic_bound,
-       gfc_conv_intrinsic_cmplx, gfc_conv_intrinsic_mod,
-       gfc_conv_intrinsic_dim, gfc_conv_intrinsic_sign,
-       gfc_conv_intrinsic_dprod, gfc_conv_intrinsic_minmax,
-       gfc_conv_intrinsic_anyall, gfc_conv_intrinsic_count,
-       gfc_conv_intrinsic_arith, gfc_conv_intrinsic_minmaxloc,
-       gfc_conv_intrinsic_minmaxval, gfc_conv_intrinsic_btest,
-       gfc_conv_intrinsic_bitop, gfc_conv_intrinsic_singlebitop,
-       gfc_conv_intrinsic_ibits, gfc_conv_intrinsic_ishft,
-       gfc_conv_intrinsic_merge, gfc_conv_intrinsic_strcmp,
-       gfc_conv_allocated, gfc_conv_associated, prepare_arg_info,
-       gfc_conv_intrinsic_spacing, gfc_conv_intrinsic_rrspacing,
-       gfc_conv_intrinsic_trim, gfc_conv_intrinsic_repeat,
-       gfc_conv_intrinsic_iargc): Same.
-       * trans-io.c (set_parameter_value, set_parameter_ref, set_string,
-       set_flag, add_case, io_result, transfer_namelist_element,
-       transfer_expr): Same.
-       * trans-stmt.c (gfc_trans_goto, gfc_trans_return, gfc_trans_if_1,
-       gfc_trans_arithmetic_if, gfc_trans_do, gfc_trans_do_while,
-       gfc_trans_integer_select, gfc_trans_logical_select,
-       gfc_trans_character_select, gfc_trans_forall_loop,
-       gfc_trans_nested_forall_loop, gfc_do_allocate,
-       generate_loop_for_temp_to_lhs, generate_loop_for_rhs_to_temp,
-       compute_inner_temp_size, compute_overall_iter_number,
-       allocate_temp_for_forall_nest, gfc_trans_pointer_assign_need_temp,
-       gfc_trans_forall_1, gfc_evaluate_where_mask,
-       gfc_trans_where_assign, gfc_trans_allocate): Same.
-       * trans-types.c (gfc_get_dtype, gfc_get_array_type_bounds): Same.
-       * trans.c (gfc_add_modify_expr, gfc_finish_block,
-       gfc_build_array_ref, gfc_build_function_call,
-       gfc_trans_runtime_check): Same.
-
-2004-08-25  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-const.c (gfc_conv_mpz_to_tree): Change call to
-       build_int_cst to build_int_cst_wide in accordance to Nathan's
-       previous patch.
-
-2004-08-25  Nathan Sidwell  <nathan@codesourcery.com>
-
-       * trans-array.c (gfc_trans_array_constructor_value): Adjust
-       build_int_cst calls.
-       * trans-const.c (gfc_build_string_const, gfc_init_constants,
-       gfc_conv_mpz_to_tree, gfc_conv_constant_to_tree): Likewise.
-       * trans-decl.c (gfc_get_symbol_decl, build_entry_thunks,
-       gfc_trans_entry_master_switch): Likewise.
-       * trans-intrinsic.c (gfc_conv_intrinsic_ibits,
-       gfc_conv_intrinsic_len, prepare_arg_info): Likewise.
-       * trans-io.c (add_case, set_error_locus,
-       transfer_namelist_element, transfer_expr): Likewise.
-       * trans-stmt.c (gfc_trans_label_assign, gfc_trans_pause,
-       gfc_trans_stop, gfc_trans_character_select): Likewise.
-       * trans-types.c (gfc_init_types, gfc_get_dtype): Likewise.
-       * trans.c (gfc_trans_runtime_check): Likewise.
-
-2004-08-24  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-decl.c, trans-types.c: Add and remove blank lines as
-       required.
-
-2004-08-24  Richard Henderson  <rth@redhat.com>
-
-       * trans-const.c (gfc_conv_mpz_to_tree): Fix 64-bit shift warning.
-
-2004-08-24  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * resolve.c (merge_argument_lists): Revert unintentionally
-       committed change.
-
-2004-08-24  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-decl.c (build_function_decl): Fix spelling in comment.
-       (build_entry_thunks): Remove code with no function.
-       (gfc_build_intrinsic_function_decls): Remove empty line.
-
-       * resolve.c (resolve_entries): Fix a bunch of comment typos.
-
-2004-08-24  Nathan Sidwell  <nathan@codesourcery.com>
-
-       * f95-lang.c (gfc_init_decl_processing): Adjust
-       build_common_tree_nodes call.
-
-2004-08-24  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-types.c: Spelling and formatting fixes.
-
-2004-08-23  Richard Henderson  <rth@redhat.com>
-
-       * trans-const.c (gfc_conv_mpz_to_tree): Use mpz_getlimbn instead
-       of going through an intermediate string.  Fix 32/64 int/long bug.
-
-2004-08-23  Eric Christopher  <echristo@redhat.com>
-
-       * trans-types.c (gfc_type_for_mode): Remove VECTOR_TYPE_SUPPORTED_P
-       usage. Use build_vector_type_for_mode for vector types.
-
-2004-08-22  Richard Henderson  <rth@redhat.com>
-
-       PR 13465
-       * data.c (find_con_by_offset): Search ordered list; handle
-       elements with repeat counts.
-       (gfc_assign_data_value_range): New.
-       * gfortran.h (struct gfc_data_value): Make repeat unsigned.
-       (gfc_assign_data_value_range): Declare.
-       * match.c (top_val_list): Extract repeat count into a temporary.
-       * resolve.c (values): Make left unsigned.
-       (next_data_value): Don't decrement left.
-       (check_data_variable): Use gfc_assign_data_value_range.
-
-2004-08-22  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-const.c, trans-decl.c, trans-expr.c: Spelling fixes.
-
-2004-08-22  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * check.c (gfc_check_reduction): Rename to ...
-       (check_reduction): ... this. Make static. Don't check type of
-       first argument.
-       (gfc_check_minval_maxval, gfc_check_prodcut_sum): New functions.
-       * intrinsic.c (add_functions): Change MAXVAL, MINVAL, PRODUCT and
-       SUM to use new check functions.
-       (check_specific): Change logic to call new functions.
-       * intrinsic.h (gfc_check_minval_maxval, gfc_check_product_sum):
-       Add prototypes.
-       (gfc_check_reduction): Remove prototype.
-
-2004-08-20  Paul Brook  <paul@codesourcery.com>
-       Canqun Yang  <canqun@nudt.edu.cn>
-
-       PR fortran/17077
-       * trans-array.c (gfc_conv_array_parameter): Pass correct pointer
-       for automatic arrays.
-       * trans-types.c (gfc_get_nodesc_array_type): Add comment.
-
-2004-08-19  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-       (Port from g95)
-
-       PR fortran/17074
-       * match.c (match_simple_forall, match_simple_where): Forward-declare.
-       (gfc_match_if): Order statement list alphabetically, add WHERE and
-       FORALL, remove double PAUSE.
-       (gfc_match_simple_where, match_forall_header,
-       gfc_match_simple_forall): New functions.
-       (gfc_match_forall): Use match_forall_header.
-
-2004-08-19  Paul Brook  <paul@codesourcery.com>
-
-       PR fortran/17091
-       * gfortran.h (gfc_access): Give ACCESS_UNKNOWN value 0.
-       * symbol.c (gfc_clear_attr): Use memset.
-
-2004-08-19  Paul Brook  <paul@codesourcery.com>
-
-       PR fortran/14976
-       PR fortran/16228
-       * data.c (assign_substring_data_value): Remove.
-       (create_character_intializer): New function.
-       (gfc_assign_data_value): Track the typespec for the current
-       subobject.  Use create_character_intializer.
-
-2004-08-19  Erik Schnetter  <schnetter@aei.mpg.de>
-
-       PR fortran/16946
-       * check.c (gfc_check_reduction): New function.
-       (gfc_check_minval_maxval): Removed.
-       (gfc_check_product): Removed.
-       (gfc_check_sum): Removed.
-       * intrinsic.h: Add/remove declarations for these.
-       * gfortran.h: Add field f3red to union gfc_check_f.
-       * intrinsic.c (add_sym_3red): New function.
-       (add_functions): Register maxval, minval, product, and sum intrinsics
-       through add_sym_3red.
-       (check_specific): Handle f3red union field.
-       * iresolve.c: Whitespace change.
-
-2004-08-18  Paul Brook  <paul@codesourcery.com>
-
-       * trans-types.c (gfc_sym_type): Use pointer types for optional args.
-
-2004-08-18  Victor Leikehman  <lei@il.ibm.com>
-
-       PR fortran/13278
-       * trans-io.c (transfer_namelist_element): New. Recursively handle
-       derived-type variables.  Pass string lengths.
-       (build_dt): Code moved to build_namelist, with some
-       changes and additions.
-       (gfc_build_io_library_fndecls): Declare the fifth
-       argument in st_set_nml_var_char -- string_length.
-
-2004-08-17  Paul Brook  <paul@codesourcery.com>
-       Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/13082
-       * decl.c (get_proc_name): Update mystery comment.
-       (gfc_match_entry): Check for errors earlier.  Add entry point to list.
-       * dump-parse-tree.c (gfc_show_code_node): Print EXEC_ENTRY nodes.
-       * gfortran.h (symbol_attribute): Add entry_master.  Document entry.
-       (struct gfc_entry_list): Define.
-       (gfc_get_entry_list): Define.
-       (struct gfc_namespace): Add refs and entries.
-       (enum gfc_exec_op): Add EXEC_ENTRY.
-       (struct gfc_code): Add ext.entry.
-       * module.c (ab_attribute, attr_bits): Remove AB_ENTRY.
-       (mio_symbol_attribute): Don't save/reture addr->entry.
-       (mio_namespace_ref): Refcount namespaces.
-       * parse.c (accept_statement): Handle ST_ENTRY.
-       (gfc_fixup_sibling_symbols): Mark symbol as referenced.
-       (parse_contained): Fixup sibling references to entry points
-       after parsing the procedure body.
-       * resolve.c (resolve_contained_fntype): New function.
-       (merge_argument_lists, resolve_entries): New functions.
-       (resolve_contained_functions): Use them.
-       (resolve_code): Handle EXEC_ENTRY.
-       (gfc_resolve): Call resolve_entries.
-       * st.c (gfc_free_statement): Handle EXEC_ENTRY.
-       * symbol.c (gfc_get_namespace): Refcount namespaces.
-       (gfc_free_namespace): Ditto.
-       * trans-array.c (gfc_trans_dummy_array_bias): Treat all args as
-       optional when multiple entry points are present.
-       * trans-decl.c (gfc_get_symbol_decl): Remove incorrect check.
-       (gfc_get_extern_function_decl): Add assertion.  Fix coment.
-       (create_function_arglist, trans_function_start, build_entry_thunks):
-       New functions.
-       (gfc_build_function_decl): Rename ...
-       (build_function_decl): ... to this.
-       (gfc_create_function_decl): New function.
-       (gfc_generate_contained_functions): Use it.
-       (gfc_trans_entry_master_switch): New function.
-       (gfc_generate_function_code): Use new functions.
-       * trans-stmt.c (gfc_trans_entry): New function.
-       * trans-stmt.h (gfc_trans_entry): Add prototype.
-       * trans-types.c (gfc_get_function_type): Add entry point argument.
-       * trans.c (gfc_trans_code): Handle EXEC_ENTRY.
-       (gfc_generate_module_code): Call gfc_create_function_decl.
-       * trans.h (gfc_build_function_decl): Remove.
-       (gfc_create_function_decl): Add prototype.
-
-2004-08-15  Andrew Pinski  <apinski@apple.com>
-
-       PR fortran/17030
-       * f95-lang.c (gfc_init_builtin_functions): Initialize the builtins
-       for cabs{,f} and copysign{,f}.
-       * trans-decl.c (gfor_fndecl_math_cabsf): Delete.
-       (gfor_fndecl_math_cabs): Delete.
-       (gfor_fndecl_math_sign4): Delete.
-       (gfor_fndecl_math_sign8): Delete.
-       (gfc_build_intrinsic_function_decls): Remove the
-       initializing of cabs{,f} and copysign{,f} functions.
-       * trans-intrinsic.c (gfc_conv_intrinsic_abs): Use the builtins
-       instead of the functions definitions.
-       (gfc_conv_intrinsic_sign): Likewise.
-       * trans.h (gfor_fndecl_math_cabsf): Delete.
-       (gfor_fndecl_math_cabs): Delete.
-       (gfor_fndecl_math_sign4): Delete.
-       (gfor_fndecl_math_sign8): Delete.
-
-2004-08-15  Nathan Sidwell  <nathan@codesourcery.com>
-
-       * trans-array.c (gfc_trans_array_constructor_value): Use
-       build_int_cst.
-       * trans-const.c (gfc_build_string_const,
-       gfc_init_constants, gfc_conv_mpz_to_tree,
-       gfc_conv_constant_to_tree): Likewise.
-       * trans-decl.c (gfc_get_symbol_decl): Likewise.
-       * trans-intrinsic.c (gfc_conv_intrinsic_ibits,
-       gfc_conv_intrinsic_len, prepare_arg_info): Likewise.
-       * trans-io.c (add_case, set_error_locus, build_dt,
-       transfer_expr): Likewise.
-       * trans-stmt.c (gfc_trans_label_assign, gfc_trans_pause,
-       gfc_trans_stop, gfc_trans_character_select): Likewise.
-       * trans-types.c (gfc_init_types, gfc_get_dtype): Likewise.
-       * trans.c (gfc_trans_runtime_check): Likewise.
-
-2004-08-14  Paul Brook  <paul@codesourcery.com>
-
-       * trans-decl.c (gfc_build_function_decl): Remove dead code.
-
-2004-08-14  Paul Brook  <paul@codesourcery.com>
-
-       * trans-arry.c (gfc_trans_auto_array_allocation): Remove unused var.
-
-2004-08-13  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * gfortran.h: Add comments.
-       * parse.c (parse_contained): Fix comment typo.
-       * resolve.c (was_declared): Ditto.
-       * symbol.c: Ditto.
-
-2004-08-11  Paul Brook  <paul@codeourcery.com>
-
-       PR fortran/16917
-       * intrinsic.c (add_functions): Add dfloat as an alias for dble.
-
-2004-08-10  Richard Henderson  <rth@redhat.com>
-
-       * f95-lang.c (gfc_init_builtin_functions): Remove
-        __builtin_stack_alloc, add __builtin_alloca.
-       * trans-array.c (gfc_trans_auto_array_allocation): Use DECL_EXPR.
-       * trans-decl.c (gfc_trans_auto_character_variable): Likewise.
-
-2004-08-10  Paul Brook  <paul@codesourcery.com>
-
-       * trans-io.c (transfer_expr): Handle pointters.
-
-2004-08-10  Paul Brook  <paul@codesourcery.com>
-
-       PR fortran/16919
-       * trans-array.c (gfc_add_loop_ss_code): Handle GFC_SS_COMPONENT.
-       (gfc_conv_array_index_offset): Allow "temporary" with nonzero delta.
-       (gfc_trans_preloop_setup, gfc_trans_scalarized_loop_boundary):
-       Handle GFC_SS_COMPONENT.
-       (gfc_conv_ss_startstride): Ditto.  Set ss->shape.
-       (gfc_conv_loop_setup): Tweak commends. Remove dead code.
-       Use ss->shape.
-       (gfc_conv_array_initializer): Call specific initializer routines.
-       * trans-expr.c (gfc_trans_structure_assign): New function.
-       (gfc_trans_subarray_assign): New function.
-       (gfc_trans_subcomponent_assign): New fucntion
-       (gfc_conv_structure): Use them.
-       * trans.h (gfc_ss_type): Add GFC_SS_COMPONENT.
-       (gfc_ss): Add shape.
-
-2004-08-08  Victor Leikehman  <lei@il.ibm.com>
-
-       * simplify.c (gfc_simplify_shape): Bugfix.
-       * expr.c (gfc_copy_shape_excluding): New function.
-       * gfortran.h (gfc_get_shape): Bugfix.
-       (gfc_copy_shape_excluding): Added declaration.
-       * iresolve.c (gfc_resolve_all, gfc_resolve_any, gfc_resolve_count,
-       gfc_resolve_cshift, gfc_resolve_eoshift, gfc_resolve_lbound,
-       gfc_resolve_ubound, gfc_resolve_transpose): Added compile
-       time resolution of shape.
-
-2004-08-06  Janne Blomqvist  <jblomqvi@cc.hut.fi>
-
-       * intrinsic.c (add_subroutines): Add getenv and
-       get_environment_variable. (add_sym_5s): New function.
-       * intrinsic.h (gfc_resolve_get_environment_variable): Add
-       prototype.
-       * iresolve.c (gfc_resolve_get_environment_variable): New
-       function.
-
-2004-08-06  Feng Wang  <fengwang@nudt.edu.cn>
-
-       * f95-lang.c (gfc_init_builtin_functions): Fix the number of
-       __builtin_pow[f] arguments.
-
-2004-08-06  Steven G. Kargl  <kargls@comcast.net>
-
-       * arith.c: Add #define for model numbers.  Remove global GMP variables.
-       (natural_logarithm,common_logarithm,exponential,sine,
-       cosine,arctangent,hypercos,hypersine ): Remove.
-       (gfc_mpfr_to_mpz,gfc_set_model_kind,gfc_set_model): New functions.
-       (arctangent2,gfc_arith_init_1,gfc_arith_done_1
-       gfc_check_real_range, gfc_constant_result, gfc_range_check,
-       gfc_arith_uminus,gfc_arith_plus, gfc_arith_minus, gfc_arith_times,
-       gfc_arith_divide,complex_reciprocal,complex_pow_ui,
-       gfc_arith_power,gfc_compare_expr,compare_complex,gfc_convert_real,
-       gfc_convert_complex,gfc_int2real,gfc_int2complex,
-       gfc_real2int,gfc_real2real,gfc_real2complex,
-       gfc_complex2int,gfc_complex2real,gfc_complex2complex): Convert GMP
-       to MPFR, use new functions.
-       * arith.h: Remove extern global variables.
-       (natural_logarithm,common_logarithm,exponential, sine, cosine,
-       arctangent,hypercos,hypersine): Remove prototypes.
-       (arctangent2): Update prototype from GMP to MPFR.
-       (gfc_mpfr_to_mpz, gfc_set_model_kind,gfc_set_model): Add prototypes.
-       * dump-parse-tree.c (gfc_show_expr): Convert GMP to MPFR.
-       * expr.c (free_expr0,gfc_copy_expr): Convert GMP to MPFR.
-       * gfortran.h (GFC_REAL_BITS): Remove.
-       (arith): Add ARITH_NAN.
-       Include mpfr.h.  Define GFC_RND_MODE.
-       Rename GCC_GFORTRAN_H GFC_GFC_H.
-       (gfc_expr): Convert GMP to MPFR.
-       * module.c: Add arith.h, correct type in comment.
-       (mio_gmp_real): Convert GMP to MPFR.
-       (mio_expr):  Use gfc_set_model_kind().
-       * primary.c:  Update copyright date with 2004.
-       (match_real_constant,match_const_complex_part): Convert GMP to MPFR.
-       * simplify.c: Remove global GMP variables
-       (gfc_simplify_abs,gfc_simplify_acos,gfc_simplify_aimag,
-       gfc_simplify_aint,gfc_simplify_dint,gfc_simplify_anint,
-       gfc_simplify_dnint,gfc_simplify_asin,gfc_simplify_atan,
-       gfc_simplify_atan2,gfc_simplify_ceiling,simplify_cmplx,
-       gfc_simplify_conjg,gfc_simplify_cos,gfc_simplify_cosh,
-       gfc_simplify_dim,gfc_simplify_dprod,gfc_simplify_epsilon,
-       gfc_simplify_exp,gfc_simplify_exponent,gfc_simplify_floor,
-       gfc_simplify_fraction,gfc_simplify_huge,gfc_simplify_int,
-       gfc_simplify_ifix,gfc_simplify_idint,gfc_simplify_log,
-       gfc_simplify_log10,simplify_min_max,gfc_simplify_mod,
-       gfc_simplify_modulo,gfc_simplify_nearest,simplify_nint,
-       gfc_simplify_rrspacing,gfc_simplify_scale,
-       gfc_simplify_set_exponent,gfc_simplify_sign,gfc_simplify_sin,
-       gfc_simplify_sinh,gfc_simplify_spacing,gfc_simplify_sqrt,
-       gfc_simplify_tan,gfc_simplify_tanh,gfc_simplify_tiny,
-       gfc_simplify_init_1,gfc_simplify_done_1):  Convert GMP to MPFR.
-       Use new functions.
-       * trans-const.c (gfc_conv_mpfr_to_tree): Rename from
-       gfc_conv_mpf_to_tree.  Convert it to use MPFR
-       (gfc_conv_constant_to_tree): Use it.
-       * trans-const.h: Update prototype for gfc_conv_mpfr_to_tree().
-       * trans-intrinsic.c: Add arith.h, remove gmp.h
-       (gfc_conv_intrinsic_aint,gfc_conv_intrinsic_mod): Convert GMP to MPFR.
-
-2004-08-06  Victor Leikehman  <lei@il.ibm.com>
-       Paul Brook  <paul@codesourcery.com>
-
-       * trans-array.c (gfc_trans_allocate_array_storage,
-       gfc_trans_allocate_temp_array, gfc_add_loop_ss_code,
-       gfc_conv_loop_setup): For functions, if the shape of the result
-       is not known in compile-time, generate an empty array descriptor for
-       the result and let the callee to allocate the memory.
-       (gfc_trans_dummy_array_bias): Do nothing for pointers.
-       (gfc_conv_expr_descriptor): Use function return values directly.
-       * trans-expr.c (gfc_conv_function_call): Always add byref call
-       insn to pre chain.
-       (gfc_trans_pointer_assignment): Add comments.
-       (gfc_trans_arrayfunc_assign): Don't chain on expression.
-
-2004-08-01  Roger Sayle  <roger@eyesopen.com>
-
-       * options.c (gfc_init_options): Don't warn about the use GNU
-       extensions by default.
-       (gfc_post_options): Warn about GNU extensions with -pedantic.
-       (gfc_handle_option): Don't warn about GNU extensions with -std=gnu.
-
-2004-07-30  Richard Henderson  <rth@redhat.com>
-
-       * trans-expr.c (gfc_conv_expr_reference): Create a CONST_DECL
-       for TREE_CONSTANTs.
-
-2004-07-25  Richard Henderson  <rth@redhat.com>
-
-       * trans-decl.c (gfc_build_function_decl): Set DECL_ARTIFICIAL
-       and DECL_IGNORED_P on RESULT_DECL.
-       (gfc_generate_constructors): Likewise.
-
-2004-07-18  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/16465
-       * lang.opt (ffixed-line-length-none, ffixed-line-length-): New
-       options.
-       (ffixed-line-length-80, ffixed-line-length-132): Remove.
-       * options.c (gfc_handle_options): Deal with changed options.
-       * scanner.c (load_line): Change second arg to 'char **',
-       allocate if pointing to NULL. Keep track of buffer's length.
-       Adapt buffer size to overlong lines. Pad lines to full length
-       in fixed form.
-       (load_file): Adapt to new interface of load_line.
-
-2004-07-17  Joseph S. Myers  <jsm@polyomino.org.uk>
-
-       * trans.h (builtin_function): Declare.
-
-2004-07-16  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/16404
-       (parts ported from g95)
-       * parse.h (gfc_state_data): New field do_variable.
-       (gfc_check_do_variable): Add prototype.
-       * parse.c (push_state): Initialize field 'do_variable'.
-       (gfc_check_do_variable): New function.
-       (parse_do_block): Remember do iterator variable.
-       (parse_file): Initialize field 'do_variable'.
-       * match.c (gfc_match_assignment, gfc_match_do,
-       gfc_match_allocate, gfc_match_nullify, gfc_match_deallocate):
-       Add previously missing checks.
-       (gfc_match_return): Reformat error message.
-       * io.c (match_out_tag): New function.
-       (match_open_element, match_close_element,
-       match_file_element, match_dt_element): Call match_out_tag
-       instead of match_vtag where appropriate.
-       (match_io_iterator, match_io_element): Add missing check.
-       (match_io): Reformat error message.
-       (match_inquire_element): Call match_out_tag where appropriate.
-
-       * parse.c (gfc_check_do_variable): Fix error locus.
-
-2004-07-15  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/15129
-       * trans-decl.c (gfc_build_function_decl): Create a new chardecl
-       for every assumed length character dummy argument.
-
-       PR fortran/15140
-       * trans-decl.c (gfc_trans_deferred_vars): Remove bogus assertion.
-
-       PR fortran/13792
-       * simplify.c (gfc_simplify_bound): Copy the bound expression.
-
-2004-07-15  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/15324
-       * trans-array.c gfc_trans_g77_array,
-       gfc_trans_dummy_array_bias): Don't call gfc_trans_string_init
-       for assumed length characters.
-       (gfc_conv_expr_descriptor): Set se->string_length if dealing
-       with a character expression.
-       (gfc_cvonv_array_parameter): Pass string length when passing
-       character array according to g77 conventions.
-
-2004-07-12  Paul Brook  <paul@codesourcery.com>
-
-       * expr.c (gfc_check_assign_symbol): Handle pointer assignments.
-       * trans-array.c (gfc_trans_auto_array_allocation): Remove
-       initialization code.
-       * trans-common.c (create_common): Use gfc_conv_initializer.
-       * trans-decl.c (gfc_get_symbol_decl): Use gfc_conv_initializer.
-       * trans-expr.c (gfc_conv_initializer): New function.
-       (gfc_conv_structure): Use it.
-       * trans.h (gfc_conv_initializer): Add prototype.
-
-2004-07-11  Paul Brook  <paul@codesourcery.com>
-
-       PR fortran/15986
-       * parse.c (gfc_fixup_sibling_symbols): Also look for untyped
-       variables.
-       (parse_contained): Mark contained symbols as referenced.
-
-2004-07-11  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/16455
-       * module.c (gfc_dump_module, gfc_use_module): Print locus
-       when opening of module file fails.
-
-       PR fortran/16404
-       * io.c (match_io): Flag 'WRITE(...), ...' as extension.
-
-       PR fortran/16404
-       * match.c (gfc_match_program): A program name is obligatory.
-       (gfc_match_return): RETURN in main program is an extension.
-       (gfc_match_block_data): A space is required before a block data
-       name.
-
-       PR fortran/16433
-       * primary.c (match_boz_constant): Call gfc_notify_std only if
-       we actually have a non-standard boz-literal-constant.
-
-       PR fortran/15754
-       * expr.c (gfc_check_assign): Print ranks if incompatible. Issue
-       warning if assigning NULL().
-
-2004-07-11  Joseph S. Myers  <jsm@polyomino.org.uk>
-
-       * f95-lang.c (set_block): Remove.
-       (gfc_clear_binding_stack): New.
-       (LANG_HOOKS_CLEAR_BINDING_STACK): Define.
-       (struct binding_level): Remove block_created_by_back_end.
-       (clear_binding_level): Likewise.
-       (poplevel): Don't handle block_created_by_back_end.
-
-2004-07-10  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-decl.c (gfc_create_module_variable): Nothing to do if
-       symbol is in common, because we ...
-       (gfc_generate_module_vars): Call gfc_trans_common.
-
-2004-07-10  Paul Brook  <paul@codesourcery.com>
-
-       * trans-array.c (gfc_build_null_descriptor): New function.
-       (gfc_trans_static_array_pointer): Use it.
-       * trans-array.h (gfc_build_null_descriptor): Add prototype.
-       * trans-expr.c (gfc_conv_structure): Handle array pointers.
-
-2004-07-10  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/16336
-       * decl.c (gfc_match_save): Use-associated common block
-       doesn't collide.
-       * gfortran.h (gfc_common_head): Add new field 'name'.
-       Fix typo in comment after #endif.
-       * match.c (gfc_get_common): Add new argument from_common,
-       mangle name if flag is set, fill in new field in structure
-       gfc_common_head.
-       (match_common): Set new arg in call to gfc_get_common,
-       use-associated common block doesn't collide.
-       * match.h (gfc_get_common): Adapt prototype.
-       * module.c (load_commons): Set new arg in call to
-       gfc_get_common.
-       * symbol.c (free_common_tree): New function.
-       (gfc_free_namespace): Call new function.
-       * trans-common.c (several functions): Remove argument
-       'name', use name from gfc_common_head instead.
-
-2004-07-10  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * expr.c (gfc_check_pointer_assign): Verify that rank of the LHS
-       and RHS match. Return early if the RHS is NULL().
-
-       PR fortran/16336
-       * match.c (match_common): Fix error reporting for used common.
-
-       PR fortran/15969
-       * trans-expr.c (gfc_conv_structure): Handle initialization
-       of scalar pointer components.
-
-       * parse.c (decode_statement): Fix matching of BLOCK DATA.
-
-       * trans-decl.c (generate_local_decl): Remove workaround obsoleted
-       by fix for PR 15481.
-
-2004-07-10  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-common.c: Fix whitespace issues, make variable names
-       more readable.
-       (create_common): Additionally, make loop logic more obvious.
-
-2004-07-10  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-       Paul Brook  <paul@codesourcery.com>
-
-       PR fortran/13415
-       * trans-common.c (calculate_length): Remove ...
-       (get_segment_info): Merge into here.  Save field type.
-       (build_field): Use saved type.
-       (create_common, new_condition, new_segment, finish_equivalences):
-       Use new get_segment_info.
-       * trans-types.c: Update comment.
-
-2004-07-09  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/14077
-       * moduele.c (mio_symbol): Don't I/O initial values unless
-       symbol is a parameter.
-
-2004-07-09  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/13201
-       * resolve.c (resolve_symbol): Verify that the shape of a
-       parameter array is not only explicit, but also constant.
-       * array.c (gfc_is_compile_time_shape): New function.
-       * gfortran.h (gfc_is_compile_time_shape): Add prototype.
-
-2004-07-09  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/15481
-       PR fortran/13372
-       PR fortran/13575
-       PR fortran/15978
-       * module.c (write_symbol, write_symtree): Remove workaround.
-       * primary.c (match_actual_arglist): Enhance comment.
-       (gfc_match_rvalue): Handle function call with first argument
-       a keyword argument correctly.
-       * resolve.c (resolve_symbol): Change call to
-       gfc_set_default_type to issue error if no implicit type
-       can be found.
-       * trans-decl.c (gfc_create_module_variable): Remove workaround.
-
-2004-07-08  Paul Brook  <paul@codesourcery.com>
-
-       * intrinsic.c (add_sym_4s): New function.
-       (add_subroutines): Change gfc_add_sym_? to gfc_add_sym_?s.
-
-2004-07-04  Janne Blomqvist  <jblomqvi@cc.hut.fi>
-       Paul Brook  <paul@codesourcery.com>
-
-       PR fortran/15280
-       PR fortran/15665
-       * gfortran.h (enum gfc_generic_isym_id): Add GFC_ISYM_IARGC and
-       GFC_ISYM_COMMAND_ARGUMENT_COUNT.
-       * intrinsic.c (add_functions):  Identify iargc.  Add
-       command_argument_count.
-       (add_subroutines): Resolve getarg.  Add get_command and
-       get_command_argument.
-       * intrinsic.h (gfc_resolve_getarg, gfc_resolve_get_command,
-       gfc_resolve_get_command_argument): Add prototypes.
-       * iresolve.c (gfc_resolve_getarg, gfc_resolve_get_command,
-       gfc_resolve_get_command_argument): New functions.
-       * trans-decl.c (gfor_fndecl_iargc): New variable.
-       (gfc_build_intrinsic_function_decls): Set it.
-       * trans-intrinsic.c (gfc_conv_intrinsic_iargc): New function.
-       (gfc_conv_intrinsic_function): Use it.
-       * trans.h (gfor_fndecl_iargc): Declare.
-
-2004-07-04  Matthias Klose  <doko@debian.org>
-
-       * Make-lang.in: Generate and install gfortran man page.
-       * invoke.texi: Remove extra '@c man end'.
-
-2004-07-04  Richard Henderson  <rth@redhat.com>
-
-       * f95-lang.c (gfc_mark_addressable): Don't put_var_into_stack.
-
-2004-07-04  Paul Brook  <paul@codesourcery.com>
-
-       * decl.c (gfc_match_implicit_range): Don't use typespec.
-       (gfc_match_implicit): Handle character selectors.
-       * gfortran.h (gfc_set_implicit): Remove prototype.
-       (gfc_add_new_implicit_range, gfc_merge_new_implicit): Update.
-       * parse.c (accept_statement): Don't call gfc_set_implicit.
-       * symbol.c (new_ts): Remove.
-       (gfc_set_implicit_none): Use same loop bounds as other functions.
-       (gfc_set_implicit): Remove.
-       (gfc_clear_new_implicit, gfc_add_new_implicit_range): Only set flags.
-       (gfc_merge_new_implicit): Combine with gfc_set_implicit.
-
-2004-06-30  Richard Henderson  <rth@redhat.com>
-
-       * match.c (var_element): Remove unused variable.
-
-       * trans-decl.c (gfc_generate_function_code): Don't set
-       x_whole_function_mode_p.
-       (gfc_generate_constructors): Likewise.
-
-2004-06-30  Richard Henderson  <rth@redhat.com>
-
-       * trans-decl.c (gfc_generate_function_code): Don't set
-       immediate_size_expand.
-       (gfc_generate_constructors): Likewise.
-
-2004-06-30  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/16161
-       * decl.c (gfc_match_type_spec): Rename second argument to
-       'implicit_flag', reverse meaning. Don't match_char_spec if
-       'implicit_flag' is set. Rename to ...
-       (match_type_spec): ... this.
-       (gfc_match_implicit_none, match_implicit_range): Move here
-       from match.c.
-       (gfc_match_implicit): Move here from match.c, try to
-       match_char_len if match_implicit_range doesn't succeed for
-       CHARACTER implicits. Call renamed fucntion match_type_spec.
-       (gfc_match_data_decl, match_prefix): Call renamed function
-       match_type_spec.
-       * match.c (gfc_match_implicit_none, match_implicit_range,
-       gfc_match_implicit): Move to decl.c.
-       * match.h (gfc_match_implicit_none, gfc_match_implicit):
-       Move protoypes to section 'decl.c'.
-       (gfc_match_type_spec): Remove prototype.
-
-2004-06-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * decl.c, interface.c, symbol.c, trans-common.c: Add 2004 to
-       copyright years.
-
-2004-06-29  Steven Bosscher  <stevenb@suse.de>
-
-       Make sure types in assignments are compatible.  Mostly mechanical.
-       * trans-const.h (gfc_index_one_node): New define.
-       * trans-array.c (gfc_trans_allocate_array_storage,
-       gfc_trans_allocate_temp_array, gfc_trans_array_constructor_subarray,
-       gfc_trans_array_constructor_value, gfc_trans_array_constructor,
-       gfc_conv_array_ubound, gfc_conv_array_ref,
-       gfc_trans_scalarized_loop_end, gfc_conv_section_startstride,
-       gfc_conv_ss_startstride, gfc_conv_loop_setup, gfc_array_init_size,
-       gfc_trans_array_bounds, gfc_trans_dummy_array_bias,
-       gfc_conv_expr_descriptor, gfc_trans_deferred_array): Use the correct
-       types in assignments, conversions and conditionals for expressions.
-       * trans-expr.c (gfc_conv_expr_present, gfc_conv_substring,
-       gfc_conv_unary_op, gfc_conv_cst_int_power, gfc_conv_string_tmp,
-       gfc_conv_function_call, gfc_trans_pointer_assignment,
-       gfc_trans_scalar_assign): Likewise.
-       * trans-intrinsic.c (build_fixbound_expr, gfc_conv_intrinsic_bound,
-       gfc_conv_intrinsic_anyall, gfc_conv_intrinsic_count,
-       gfc_conv_intrinsic_minmaxloc, gfc_conv_intrinsic_btest,
-       gfc_conv_intrinsic_singlebitop, gfc_conv_intrinsic_ishft,
-       gfc_conv_intrinsic_ishftc, gfc_conv_intrinsic_strcmp,
-       gfc_conv_allocated, gfc_conv_associated,
-       gfc_conv_intrinsic_rrspacing, gfc_conv_intrinsic_trim): Likewise.
-       * trans-io.c (set_string): Likewise.
-       * trans-stmt.c (gfc_trans_do, gfc_trans_forall_loop,
-       gfc_do_allocate, generate_loop_for_temp_to_lhs,
-       generate_loop_for_rhs_to_temp, compute_inner_temp_size,
-       compute_overall_iter_number, gfc_trans_assign_need_temp,
-       gfc_trans_pointer_assign_need_temp, gfc_trans_forall_1,
-       gfc_evaluate_where_mask, gfc_trans_where_assign,
-       gfc_trans_where_2): Likewise.
-       * trans-types.c (gfc_get_character_type, gfc_build_array_type,
-       gfc_get_nodesc_array_type, gfc_get_array_type_bounds): Likewise.
-
-       * trans.c (gfc_add_modify_expr): Add sanity check that types
-       for the lhs and rhs are the same for scalar assignments.
-
-2004-06-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * dump-parse-tree.c (show_common): New function.
-       (gfc_show_namespace): Show commons.
-
-2004-06-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-       Andrew Vaught  <andyv@firstinter.net>
-
-       PR fortran/13249
-       PR fortran/15481
-       * decl.c (gfc_match_save): Adapt to new common structures,
-       don't allow saving USE-associated common.
-       * dump-parse-tree (gfc_show_attr): (saved_)common are not
-       symbol attributes any longer.
-       (gfc_show_symbol): Don't show old-style commons any longer.
-       (gfc_show_namespace): Adapt call to gfc_traverse_symtree to new
-       interface.
-       * gfortran.h (symbol_attribute): Remove common and saved_common
-       attributes.
-       (gfc_symbol): Remove common_head element.
-       (gfc_common_head): New struct.
-       (gfc_get_common_head): New macro.
-       (gfc_symtree): Add field 'common' to union.
-       (gfc_namespace): Add field 'common_root'; change type of field
-       'blank_common' to blank_common.
-       (gfc_add_data): New prototype.
-       (gfc_traverse_symtree): Expect a symtree as first argument
-       instead of namespace.
-       * match.c (gfc_get_common): New function.
-       (match_common_name): Change to take char * as argument, adapt,
-       fix bug with empty name.
-       (gfc_match_common): Adapt to new data structures. Disallow
-       redeclaration of USE-associated COMMON-block. Fix bug with
-       empty common.
-       (var_element): Adapt to new common structures.
-       * match.h (gfc_get_common): Declare.
-       * module.c: Add 2004 to copyright years, add commons to module
-       file layout description.
-       (ab_attribute, attr_bits, mio_symbol_attributes): Remove code
-       for removed attributes.
-       (mio_symbol): Adapt to new way of storing common relations.
-       (load_commons): New function.
-       (read_module): Skip common list on first pass, load_commons at
-       second.
-       (write_commons): New function.
-       (write_module): Call write_commons().
-       * symbol.c (gfc_add_saved_comon, gfc_add_common): Remove
-       functions related to removed attributes.
-       (gfc_add_data): New function.
-       (gfc_clear_attr): Don't set removed attributes.
-       (gfc_copy_attr): Don't copy removed attributes.
-       (traverse_symtree): Remove.
-       (gfc_traverse_symtree): Don't traverse symbol
-       tree of the passed namespace, but require a symtree to be passed
-       instead. Unify with traverse_symtree.
-       (gfc_traverse_ns): Call gfc_traverse_symtree according to new
-       interface.
-       (save_symbol): Remove setting of removed attribute.
-       * trans-common.c (gfc_sym_mangled_common_id): Change to
-       take 'char *' argument instead of 'gfc_symbol'.
-       (build_common_decl, new_segment, translate_common): Adapt to new
-       data structures, add new
-       argument name.
-       (create_common): Adapt to new data structures, add new
-       argument name. Fix typo in intialization of derived types.
-       (finish_equivalences): Add second argument in call to
-       create_common.
-       (named_common): take 'gfc_symtree' instead of 'gfc_symbol'.
-       (gfc_trans_common): Adapt to new data structures.
-       * trans-decl.c (gfc_create_module_variables): Remove test for
-       removed attribute.
-
-2004-06-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * io.c: Add 2004 to copyright years.
-
-2004-06-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-       Andrew Vaught  <andyv@firstinter.net>
-
-       * gfortran.h (gfc_gsymbol): New typedef.
-       (gfc_gsym_root): New variable.
-       (gfc_get_gsymbol, gfc_find_gsym): New prototypes.
-       * parse.c (global_used): New function.
-       (parse_block_data): Check for double empty BLOCK DATA,
-       use global symbol table.
-       (parse_module): Use global symbol table.
-       (add_global_procedure, add_global_program): New functions.
-       (gfc_parse_file): Use global symbol table.
-       * symbol.c (gfc_gsym_root): New variable.
-       (gfc_find_gsym, gsym_compare, gfc_get_gsymbol): New
-       functions.
-
-2004-06-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * module.c (mio_gmp_real): Correct writing of negative numbers.
-
-2004-06-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/15963
-       * expr.c (check_intrinsic_op): Allow comparison of characters.
-       Make logic easier.
-
-2004-06-26  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-       Andrew Vaught  <andyv@firstinter.net>
-
-       * decl.c (contained_procedure): New function.
-       (match_end): Verify correctness of END STATEMENT in
-       all cases.
-
-2004-06-26  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-       Andrew Vaught  <andyv@firstinter.net>
-
-       PR fortran/15190
-       * decl.c (gfc_match_type_spec), io.c (match_io), parse.c
-       (decode_statement): Enforce required space in free-form.
-
-2004-06-22  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
-
-       * f95-lang.c (LANG_HOOKS_GIMPLE_BEFORE_INLINING): Deleted.
-       * trans-array.c (gfc_conv_descriptor_data): Add operand
-       for COMPONENT_REF.
-       (gfc_conv_descriptor_offset, gfc_conv_descriptor_dtype): Likewise.
-       (gfc_conv_descriptor_dimension, gfc_conv_descriptor_stride): Likewise.
-       (gfc_conv_descriptor_lbound, gfc_conv_descriptor_ubound): Likewise.
-       * trans-common.c (create_common): Likewise.
-       * trans-expr.c (gfc_conv_component_ref): Likewise.
-       * trans-io.c (set_parameter_value): Likewise.
-       (set_parameter_ref, set_string, set_flag, io_result): Likewise.
-       (transfer_expr): Likewise.
-       * trans-decl.c (gfc_trans_auto_character_variable):
-       Set up to get DECL_SIZE and DECL_SIZE_UNIT gimplified.
-       (gfc_gimplify_function): New function.
-       (gfc_generate_function-code): Properly handle nested functions.
-       * trans.c (gfc_build_array_ref): Add two new operands for ARRAY_REF.
-
-2004-06-22  Janne Blomqvist  <jblomqvi@cc.hut.fi>
-
-       PR fortran/15750
-       * io.c (gfc_match_inquire): Bugfix for iolength related stuff.
-       (gfc_resolve_inquire): Resolve the iolength tag.  Return
-       SUCCESS at end of function if no failure has occured.
-       * resolve.c (resolve_code): Resolve if iolength is encountered.
-       * trans-io.c: (ioparm_iolength, iocall_iolength,
-       iocall_iolength_done): New variables.
-       (last_dt): Add IOLENGTH.
-       (gfc_build_io_library_fndecls ): Set iolength related variables.
-       (gfc_trans_iolength): Implement.
-       (gfc_trans_dt_end): Treat iolength as a third form of data transfer.
-
-2004-06-21  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de
-
-       PR fortran/15511
-       * scanner.c (load_line): Don't truncate preprocessor lines.
-       Reformat error message.
-       (preprocessor_line): Issue warning in case of malformed
-       preprocessor line.
-
-2004-06-21  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * resolve.c (resolve_symbol): Add comment in function body.
-       (check_data_variable): Change type of mark to ar_type, adapt code
-       accordingly.
-
-2004-06-21  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * array.c (gfc_insert_constructor): Avoid redundant call to
-       mpz_comp. Add 2004 to copyright years.
-
-2004-06-21  Joseph S. Myers  <jsm@polyomino.org.uk>
-
-       * trans.h (stmtblock_t): Change has_scope to unsigned int.
-
-2004-06-20  Steven G. Kargl  <kargls@comcast.net>
-
-       * arith.c (gfc_range_check): correct complex underflow.
-
-2004-06-15  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/15962
-       * match.c (match_case_selector): Call gfc_match_init_expr
-       instead of gfc_match_expr.
-       * resolve.c (validate_case_label_expr): No need to check for
-       constant, since it wouldn't have been matched with the fix to
-       match.c.
-
-2004-06-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/15211
-       * trans-intrinsic.c (gfc_conv_intrinsic_len): Deal with arrays
-       of strings.
-
-2004-06-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/15510
-       * trans-deecl.c (generate_local_decl): Do not issue warning for
-       unused variables if they're use associated.
-
-2004-06-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-       Andrew Vaught  <andyv@firstinter.net>
-
-       PR fortran/14928
-       * gfortran.h (gfc_check_f): Add new field f3ml.
-       * check.c (gfc_check_minloc_maxloc): Take argument list instead
-       of individual arguments, reorder if necessary.
-       * intrinsic.h (gfc_check_minloc_maxloc): ... adapt prototype.
-       * intrinsic.c (add_sym_3ml): New function.
-       (add_functions): Change to add_sym_3ml for MINLOC, MAXLOC.
-       (check_specific): Catch special case MINLOC, MAXLOC.
-
-2004-06-14  Paul Brook  <paul@codesourcery.com>
-
-       * intrinsic.c (add_sym_2s): Use correct function types.
-
-2004-06-12  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * Make-lang.in (F95_OBJS, F95_PARSER_OBJS): Alphabetize.  Move data.c
-       * data.c (gfc_get_section_index):  Remove dependency on trans.h.
-
-2004-06-12  Steven G. Kargl  <kargls@comcast.net>
-
-       * check.c (gfc_check_second_sub, gfc_check_irand, gfc_check_rand
-       gfc_check_srand, gfc_check_etime, gfc_check_etime_sub): New functions.
-       * gfortran.h (gfc_generic_isym_id): New symbols GFC_ISYM_ETIME,
-       GFC_ISYM_IRAND, GFC_ISYM_RAND, GFC_ISYM_SECOND.
-       * trans-intrinsic.c:  Use symbols.
-       * intrinsic.c (add_sym_2s): New function.
-       * intrinsic.c: Add etime, dtime, irand, rand, second, srand.
-       * intrinsic.h: Function prototypes.
-       * iresolve.c (gfc_resolve_etime_sub, gfc_resolve_second_sub
-       gfc_resolve_srand):  New functions.
-
-2004-06-12  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/14957
-       * decl.c (gfc_match_end): Require END {SUBROUTINE|FUNCTION} for
-       contained procedure.
-
-2004-06-12  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/12841
-       * interface.c (compare_parameter, compare_actual_formal): Don't
-       check types and array shapes for NULL()
-       * trans-expr.c (conv_function_call): No double indirection for
-       NULL()
-
-2004-06-09  Toon Moene  <toon@moene.indiv.nluug.nl>
-
-       * trans-expr.c (gfc_conv_cst_int_power): Compute
-       x**(-n) by converting it to (1/x)**n instead of
-       1/x**n.
-
-2004-06-09  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/13372
-       * module.c (write_symbol, write_symtree): Don't write symbols
-       wrongly added to namespace.
-       * trans-decl.c (gfc_create_module_variable): Don't create a
-       backend decl for a symbol incorrectly added to namespace.
-
-2004-06-09  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/13201
-       * resolve.c (resolve_symbol): Verify that parameter array has an
-       explicit shape. Fix typos and coding style issues in surrounding
-       lines.
-
-2004-06-05  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/15478
-       * gfortran.texi: The documentation doesn't contain infomration on
-       how to report bugs, and shouldn't, so remove the line which
-       says it does.
-
-2004-06-05  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * intrinsic.c (sort_actual): Keep track of type of missing
-       arguments. (Missing from previous commit.)
-
-2004-06-03  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * gfortran.h (gfc_actual_arglist): New field missing_arg_type.
-       * interface.c (compare_actual_formal): Keep type of omitted
-       optional arguments.
-       * trans-expr.c (gfc_conv_function_call): Add string length
-       argument for omitted string argument.
-
-2004-06-03  Paul Brook  <paul@codesourcery.com>
-
-       * trans.c (gfc_finish_block, gfc_add_expr_to_block): Build statement
-       lists instead of compound expr chains.
-       (gfc_trans_code): Annotate statement lists.
-
-2004-06-03  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-array.c: Fix spelling in comments.
-
-2004-06-02  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/15557
-       * data.c (assign_substring_data_value): New function.
-       (gfc_assign_data_value): Call the new function if we're dealing
-       with a substring LHS.
-
-2004-06-01  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/15477
-       * gfortran.h (GFC_VERSION): Remove.
-       * gfortran.texi (version-gfortran): Remove, replace by version-GCC
-       where used.
-
-2004-05-31  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-types.c: Fix spelling & layout in comments.
-
-2004-05-30  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/14067
-       * trans-const.c (gfc_conv_string_init): Allow variable string
-       length lower than initialization string length.
-
-2004-05-30  Paul Brook  <paul@codesourcery.com>
-
-       PR fortran/15620
-       * trans-decl.c (gfc_shadow_sym, gfc_restore_sym): New functions.
-       * trans-expr.c (gfc_trans_string_copy): New function.
-       (gfc_conv_statement_function): Use them.  Create temp vars.  Enforce
-       character lengths.
-       (gfc_conv_string_parameter): Use gfc_trans_string_copy.
-       * trans-stmt.c (gfc_trans_forall_1): Use gfc_{shadow,restore}_sym.
-       * trans.h (struct gfc_saved_var): Define.
-       (gfc_shadow_sym, gfc_restore_sym): Add prototypes.
-
-2004-05-30  Steven G. Kargl  <kargls@comcast.net>
-
-       * iresolve.c (gfc_resolve_random_number): Clean up conditional.
-
-2004-05-29  Steven G. Kargl  <kargls@comcast.net>
-
-       * simplify.c (gfc_simplify_log): Remove useless line of code.
-
-2004-05-29  Paul Brook  <paul@codesourcery.com>
-
-       * trans-common.c (find_equivalence): Find multiple rules.
-
-2004-05-27  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * gfortran.h (gfc_current_locus, gfc_set_locus): Remove.
-       (gfc_current_locus): Declare new global variable.
-       * scanner.c (gfc_current_locus, gfc_set_locus): Remove.
-       (gfc_current_locus1): Rename ...
-       (gfc_current_locus): ... to this.
-       (gfc_at_eof, gfc_at_bol, gfc_at_eol, gfc_advance_line, next_char,
-       skip_fixed_comments, skip_free_comments, gfc_next_char_literal,
-       gfc_peek_char, gfc_gobble_whitespace, gfc_new_file): Use
-       gfc_current_locus instead of gfc_current_locus1, gfc_set_locus()
-       and gfc_current_locus(), respectively.
-       * array.c (match_subscript, gfc_match_array_ref, match_array_list,
-       match_array_cons_element, gfc_match_array_constructor):
-       Read/modify gfc_current_locus instead of calling gfc_set_locus()
-       and gfc_current_locus().
-       * decl.c (gfc_match_null, variable_decl, gfc_match_kind_spec,
-       match_attr_spec, gfc_match_function_decl, gfc_match_end,
-       attr_decl1, gfc_match_save): Likewise.
-       * error.c (error_print, gfc_internal_error): Likewise.
-       * expr.c (gfc_int_expr, gfc_default_logical_kind): Likewise.
-       * interface.c (gfc_add_interface): Likewise.
-       * io.c (gfc_match_format, match_dt_format, match_dt_element,
-       match_io_iterator, match_io): Likewise.
-       * match.c (gfc_match_space, gfc_match_eos,
-       gfc_match_small_literal_int, gfc_match_st_label,
-       gfc_match_strings, gfc_match_name, gfc_match_iterator,
-       gfc_match_char, gfc_match, gfc_match_assignment,
-       gfc_match_pointer_assignment, gfc_match_if, gfc_match_do,
-       gfc_match_nullify, gfc_match_call, match_implicit_range,
-       gfc_match_implicit, gfc_match_data, match_case_selector,
-       gfc_match_case, match_forall_iterator): Likewise.
-       * matchexp.c (gfc_match_defined_op_name, next_operator,
-       match_level_1, match_mult_operand, match_ext_mult_operand,
-       match_add_operand, match_ext_add_operand, match_level_2,
-       match_level_3, match_level_4, match_and_operand, match_or_operand,
-       match_equiv_operand, match_level_5, gfc_match_expr): Likewise.
-       * module.c (gfc_match_use, mio_array_ref, mio_expr): Likewise.
-       * parse.c (match_word, decode_statement, next_free, next_fixed,
-       add_statement, verify_st_order, parse_if_block, gfc_parse_file):
-       Likewise.
-       * primary.c (match_digits, match_integer_constant,
-       match_boz_constant, match_real_constant, match_substring,
-       next_string_char, match_charkind_name, match_string_constant,
-       match_logical_constant, match_const_complex_part,
-       match_complex_constant, match_actual_arg, match_keyword_arg,
-       gfc_match_actual_arglist, gfc_match_structure_constructor,
-       gfc_match_rvalue, gfc_match_variable): Likewise.
-       * st.c (gfc_get_code): Likewise.
-       * symbol.c (check_conflict, check_used, check_done,
-       duplicate_attr, add_flavor, gfc_add_procedure, gfc_add_intent,
-       gfc_add_access, gfc_add_explicit_interface, gfc_add_type,
-       gfc_add_component, gfc_reference_st_label, gfc_new_symbol): Likewise.
-
-2004-05-26  Roger Sayle  <roger@eyesopen.com>
-
-       * io.c (format_asterisk): Silence compiler warnings by correcting
-       the number of elements of a "locus" initializer.
-
-2004-05-25  Roger Sayle  <roger@eyesopen.com>
-
-       PR fortran/13912
-       * matchexp.c: Allow unary operators after arithmetic operators
-       as a GNU extension.
-       (match_ext_mult_operand, match_ext_add_operand): New functions.
-       (match_mult_operand): Tweak to call match_ext_mult_operand.
-       (match_add_operand): Tweak to call match_ext_mult_operand.
-       (match_level_2): Rearrange to call match_ext_add_operand.
-
-2004-05-25  Paul Brook  <paul@codesourcery.com>
-
-       * expr.c (check_inquiry): Remove bogus tests.
-
-2004-05-23  Paul Brook  <paul@codesourcery.com>
-
-       PR fortran/13773
-       * expr.c (restricted_args): Remove redundant checks/argument.
-       (external_spec_function): Update to match.
-       (restricted_intrinsic): Rewrite.
-
-2004-05-23  Paul Brook  <paul@codesourcery.com>
-       Victor Leikehman  <lei@haifasphere.co.il>
-
-       * gfortran.h (struct gfc_symbol): Add equiv_built.
-       * trans-common.c: Change int to HOST_WIDE_INT.  Capitalize error
-       messages.
-       (current_length): Remove.
-       (add_segments): New function.
-       (build_equiv_decl): Create initialized common blocks.
-       (build_common_decl): Always add decl to bindings.
-       (create_common): Create initializers.
-       (find_segment_info): Reformat to match coding conventions.
-       (new_condition): Use add_segments.
-       (add_condition, find_equivalence, add_equivalences): Move iteration
-       inside functions.  Only process each segment once.
-       (new_segment, finish_equivalences, translate_common): Simplify.
-
-2004-05-23  Steven G. Kargl  <kargls@comcast.net>
-
-       * check.c (gfc_check_random_seed): Issue for too many arguments.
-
-2004-05-22  Steven G. Kargl  <kargls@comcast.net>
-
-       * intrinsic.c (add_subroutines): Use add_sym_3s for random_seed.
-
-2004-05-22  Paul Brook  <paul@codesourcery.com>
-
-       * dump-parse-tree.c (gfc_show_equiv): New function.
-       (gfc_show_namespace): Use it.
-
-2004-05-22  Victor Leikehman  <lei@haifasphere.co.il>
-
-       PR fortran/13249
-       * symbol.c (gfc_add_common): Disable checks to work around other more
-       fundamental inadequacies.
-
-2004-05-22  Tobias Schlüter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-decl.c (gfc_get_extern_function_decl): Set DECL_IS_PURE
-       only for functions.
-       (gfc_build_function_decl): Likewise.
-
-2004-05-22  Steven G. Kargl  <kargls@comcast.net>
-
-       * check.c (gfc_check_system_clock): New function.
-       * intrinsic.c (add_sym_3s): New function.
-       (add_subroutines): Use it.
-       * intrinsic.h (gfc_check_system_clock, gfc_resolve_system_clock):
-       Add prototypes.
-       * iresolve.c (gfc_resolve_system_clock): New function.
-
-2004-05-22  Steven G. Kargl  <kargls@comcast.net>
-
-       * invoke.texi: Document -Wunderflow and spell check.
-       * lang.opt: Add Wunderflow.
-       * gfortran.h (gfc_option_t): Add warn_underflow option.
-       * options.c (gfc_init_options, set_Wall): Use it.
-       * primary.c (match_real_constant): Explicitly handle UNDERFLOW.
-       * arith.c (gfc_arith_uminus, gfc_arith_plus, gfc_arith_minus,
-       gfc_arith_times, gfc_arith_divide, gfc_arith_power, gfc_real2real,
-       gfc_real2complex, gfc_complex2real, gfc_complex2complex): Ditto.
-       * arith.c (common_logarithm): Fix typo in comment.
-
-2004-05-21  Roger Sayle  <roger@eyesopen.com>
-
-       * io.c (check_format): As a GNU extension, allow the comma after a
-       string literal to be optional in a format.  Use gfc_notify_std to
-       issue an error/warning as appropriate.
-
-2004-05-21  Roger Sayle  <roger@eyesopen.com>
-
-       * io.c (check_format): Use gfc_notify_std to determine whether to
-       issue an error/warning for omitting the digits from the X format.
-
-2004-05-20  Roger Sayle  <roger@eyesopen.com>
-
-       * io.c (check_format): Allow the number before the X format to
-       be optional when not -pedantic.
-
-2004-05-18  Feng Wang  <fengwang@nudt.edu.cn>
-       Paul Brook  <paul@codesourcery.com>
-
-       * f95-lang.c (gfc_init_builtin_functions): Use vold_list_node.
-       Create decls for __builtin_pow{,f}.
-       * gfortran.h (PREFIX_LEN): Define.
-       * trans-decl.c (gfor_fndecl_math_powi): Add.
-       (gfor_fndecl_math_powf, gfor_fndecl_math_pow): Remove.
-       (gfc_build_intrinsic_function_decls): Create decls for powi.
-       * trans-expr.c (powi_table): Add.
-       (gfc_conv_integer_power): Remove.
-       (gfc_conv_powi): New function.
-       (gfc_conv_cst_int_power): New function.
-       (gfc_conv_power_op): Use new powi routines.
-       * trans.h (struct gfc_powdecl_list): Add.
-       (gfor_fndecl_math_powi): Add.
-       (gfor_fndecl_math_powf, gfor_fndecl_math_pow): Remove.
-
-2004-05-18  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans.c, trans-decl.c: Fix comment typos.
-
-2004-05-18  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-const.c (gfc_conv_mpf_to_tree): Fix typo.
-
-2004-05-18  Steve Kargl  <kargls@comcast.net>
-
-       * arith.c (gfc_int2complex): Fix incorrect range checking.
-
-2004-05-18  Paul Brook  <paul@codesourcery.com>
-
-       PR fortran/13930
-       * decl.c (add_init_expr_to_sym): Remove incorrect check.
-       (default_initializer): Move to expr.c.
-       (variable_decl): Don't assign default initializer to variables.
-       * expr.c (gfc_default_initializer): Move to here.
-       * gfortran.h (gfc_default_initializer): Add prototype.
-       * resolve.c (resolve_symbol): Check for illegal initializers.
-       Assign default initializer.
-
-2004-05-17  Steve Kargl  <kargls@comcast.net>
-
-       * arith.c (gfc_arith_power): Complex number raised to 0 power is 1.
-
-2004-05-17  Steve Kargl  <kargls@comcast.net>
-
-       * arith.c (gfc_real2complex): Range checking wrong part of complex
-       number.
-
-2004-05-16  Paul Brook  <paul@codesourcery.com>
-
-       * options.c (gfc_handle_module_path_options): Fix buffer overrun.
-
-2004-05-16  Paul Brook  <paul@codesourcery.com>
-
-       * arith.c (gfc_range_check): Fix logic error.
-
-2004-05-16  Steve Kargl  <sgk@troutmask.apl.washington.edu>
-
-       * arith.c: Fix comment typos.
-
-2004-05-15  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/13742
-       * decl.c (add_init_expr_to_sym): Verify that COMMON variable is
-       not initialized in a disallowed fashion.
-       * match.c (gfc_match_common): Likewise.
-       (var_element): Verify that variable is not in the blank COMMON,
-       if it is in a common.
-
-2004-05-15  Joseph S. Myers  <jsm@polyomino.org.uk>
-
-       * Make-lang.in (f95.generated-manpages): Remove.
-       (f95.srcextra): New.
-       (f95.info, fortran/gfortran.info, fortran/gfortran.dvi,
-       f95.maintainer-clean): Generate info and dvi files in objdir/doc.
-       (f95.dvi): Remove.
-       (dvi): New.
-       (f95.install-info): Remove.
-       (install-info): New.
-
-2004-05-15  Victor Leikehman  <lei@haifasphere.co.il>
-
-       * decl.c (add_init_expr_to_sym): Check for variable size arrays.
-
-2004-05-15  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * primary.c (match_boz_constant): Use gfc_notify_std() for
-       issuing a warning or an error.
-
-2004-05-15  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/13826
-       * primary.c (match_structure_constructor): Rename ...
-       (gfc_match_structure_constructor): ... to this. Make non-static.
-       (gfc_match_rvalue): Call renamed function.
-       * match.h (gfc_match_structure_constructor): Declare.
-       * match.c (gfc_match_data_constant): Handle structure
-       constructor.
-
-2004-05-15  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/13702
-       (Port from g95)
-       * gfortran.h (gfc_linebuf): New typedef.
-       (linebuf): Remove.
-       (gfc_file): Revamped, use new gfc_linebuf.
-       (locus): Revamped, use new types.
-       (gfc_current_file): Remove.
-       (gfc_current_form, gfc_source_file): New global variables.
-       * match.c (gfc_match_space, gfc_match_strings): Use
-       gfc_current_form to find source form.
-       * module.c (gfc_dump_module): Use gfc_source_file when printing
-       module header.
-       * error.c (show_locus, show_loci) Use new data structures to print
-       locus.
-       * scanner.c (first_file, first_duplicated_file, gfc_current_file):
-       Remove.
-       (file_head, current_file, gfc_current_form, line_head, line_tail,
-       gfc_current_locus1, gfc_source_file): New global variables.
-       (gfc_scanner_init1): Set new global variables.
-       (gfc_scanner_done1): Free new data structures.
-       (gfc_current_locus): Return pointer to gfc_current_locus1.
-       (gfc_set_locus): Set gfc_current_locus1.
-       (gfc_at_eof): Set new variables.
-       (gfc_at_bol, gfc_at_eol, gfc_advance_line, gfc_next_char): Adapt
-       to new locus structure.
-       (gfc_check_include): Remove.
-       (skip_free_comments, skip_fixed_comments): Use gfc_current_locus1.
-       (gfc_skip_comments): Use gfc_current_form, find locus with
-       gfc_current_locus1.
-       (gfc_next_char): Use gfc_current_form.
-       (gfc_peek_char, gfc_gobble_whitespace): Use gfc_current_locus1.
-       (load_line): Use gfc_current_form. Recognize ^Z as EOF. Fix
-       comment formatting.
-       (get_file): New function.
-       (preprocessor_line, include_line): New functions.
-       (load_file): Move down, rewrite to match new data structures.
-       (gfc_new_file): Rewrite to match new data structures.
-       * parse.c (next_statement): Remove code which is now useless. Use
-       gfc_source_form and gfc_source_file where appropriate.
-       * trans-decl.c (gfc_get_label_decl): adapt to new data structures
-       when determining locus of frontend code.
-       * trans-io.c (set_error_locus): Same.
-       * trans.c (gfc_get_backend_locus, gfc_set_backend_locus): Likewise.
-       * lang-specs.h (@f77-cpp-input, @f95-cpp-input): Remove '-P' from
-       preprocessor flags.
-       (all): Add missing initializers.
-
-2004-05-15  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * Make-lang.in (trans-common.o): Remove redundant dependency.
-       (data.c): Replace object file name ...
-       (data.o): ... by the correct one.
-
-2004-05-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * dump-parse-tree.c (gfc_show_array_ref): Print colon only
-       for ranges when dumping array references.
-
-2004-05-14  Victor Leikehman  <lei@haifasphere.co.il>
-
-       * decl.c (variable_decl): Always apply default initializer.
-
-2004-05-08  Tobias Schlüter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/15206
-       * trans-intrinsic.c (gfc_conv_intrinsic_rrspacing): Fixed to
-       handle zero correctly.
-
-2004-05-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * match.c (gfc_match): Eliminate dead code.
-
-2004-05-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * parse.c (gfc_statement_next_fixed): (Change from Andy's tree)
-       Detect bad continuation line in fixed form sources.
-
-2004-05-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/15205
-       * iresolve.c (gfc_resolve_nearest): Add new function.
-       * intrinsic.h: ... declare it here.
-       * intrinsic.c (add_functions): ... add it as resolving function
-       for NEAREST.
-
-2004-05-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/14066
-       * match.c (gfc_match_do): Allow infinite loops with
-       label-do-stmt. Do not enforce space after comma.
-
-2004-05-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/15051
-       * parse.c (parse_interface): Allow empty INTERFACE, remove
-       seen_body.
-
-2004-05-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * Make-lang.in, arith.c, arith.h, array.c, bbt.c, check.c,
-       decl.c, dependency.c, dependency.h, dump-parse-tree.c, error.c,
-       expr.c, f95-lang.c, gfortran.h, interface.c, intrinsic.c,
-       intrinsic.h, io.c, iresolve.c, lang-specs.h, match.c, match.h,
-       matchexp.c, misc.c, module.c, options.c, parse.c, parse.h,
-       primary.c, resolve.c, scanner.c, simplify.c, st.c, symbol.c,
-       trans-array.c, trans-array.h, trans-common.c, trans-const.c,
-       trans-const.h, trans-decl.c, trans-expr.c, trans-intrinsic.c,
-       trans-io.c, trans-stmt.c, trans-stmt.h, trans-types.c,
-       trans-types.h, trans.c, trans.h: Update copyright years and
-       boilerplate.
-       * data.c: Likewise, also removed two whitespace-only lines.
-       * gfortranspec.c, lang.opt: Update copyright years.
-
-2004-05-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/14568
-       * trans-decl.c (generate_local_decl): Don't warn for unused
-       variables which are in common blocks.
-
-2004-05-13  Diego Novillo  <dnovillo@redhat.com>
-
-       * Make-lang.in, f95-lang.c, trans-array.c, trans-decl.c,
-       trans-expr.c, trans-intrinsic.c, trans-io.c, trans-stmt.c,
-       trans.c: Rename tree-simple.[ch] to tree-gimple.[ch].
-
-2004-05-13  Victor Leikehman  <lei@haifasphere.co.il>
-
-       PR fortran/15314
-       * trans-expr.c (gfc_conv_structure): Use field type, not expr type.
-
-2004-05-13  Joseph S. Myers  <jsm@polyomino.org.uk>
-
-       * gfortran.texi: Use @table @emph instead of @itemize @emph.
-       Remove "set DEVELOPMENT".
-       (Compiling GFORTRAN): Remove.
-
-2004-05-09  Tobias Schlüter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * array.c (match_subscript, match_array_ref): Add comments
-       explaining argument 'init'.
-       * decl.c, f95-lang.c, match.c, resolve.c, trans-array.c,
-       trans-expr.c, trans.c: Fix some typos in comments.
-       * dump-parse-tree.c (gfc_show_expr): Remove wrong comment.
-       * primary.c (match_digits, match_integer_constant): Add comment
-       explaining signflag.
-
-2004-05-01  Tobias Schlüter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/13940
-       * primary.c: Include system.h and flags.h, needed for pedantic.
-       (match_boz_constant): Allow "x" for hexadecimal constants, warn if
-       pedantic is set.
-
-2004-05-01  Tobias Schlüter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       PR fortran/13940
-       * match.c (match_data_constant): Handle case where
-       gfc_find_symbol sets sym to NULL
-
-2004-04-28  Tobias Schlüter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * Make-lang.in (f95-lang.o, trans-intrinsic.o): Add missing
-       dependency on mathbuiltins.def
-
-2004-04-24  Victor Leikehman  <lei@il.ibm.com>
-
-       * trans-io.c (transfer_expr): Implemented recursive printing
-       of derived types.
-
-2004-04-24  Andrew Pinski  <pinskia@physics.uc.edu>
-
-       * gfortranspec.c: Do not include multilib.h.
-
-2004-04-24  Tobias Schlüter  <tobias.schlueter@physik.uni-muenchen.de>
-
-       * trans-intrinsic.c: Fix comment, this is not trans-expr.c. Add
-       2004 to copyright years.
-       * trans-expr.c, trans-decl.c: Comment update, we now generate
-       GENERIC, not SIMPLE. Add 2004 to copyright years.
-
-2004-04-24  Paul Brook  <paul@codesourcery.com>
-
-       * Make-lang.in (gfortranspec.o): Add dependency on $(TM_H).
-
-2004-04-24  Feng Wang  <fengwang@nudt.edu.cn>
-
-       PR 14817
-       * arith.c (gfc_arith_divide): Fix complex divide.
-
-2004-04-23  Andrew Pinski  <pinskia@physics.uc.edu>
-
-       * gfortranspec.c: Include the target headers.
-
-2004-04-18  Feng Wang  <fengwang@nudt.edu.cn>
-
-       PR fortran/14921
-       PR fortran/14540
-       * arith.c (arctangent2): New function.
-       * arith.h (arctangent2): Add function prototype.
-       * simplify.c (gfc_simplify_atan2): Use it.
-       (gfc_simplify_log): Use it.
-
-2004-04-12  Diego Novillo  <dnovillo@redhat.com>
-
-       * fortran/f95-lang.c (gfc_expand_stmt): Remove.
-       (LANG_HOOKS_RTL_EXPAND_STMT): Remove.
-
-2004-04-11  Bud Davis  <bdavis9659@comcast.net>
-
-       PR fortran/14872
-       * trans-io.c (build_dt): Change REC to value.
-
-2004-04-11  Feng Wang  <fengwang@nudt.edu.cn>
-
-       PR 14394
-       * trans-const.c (gfc_conv_mpf_to_tree): Loosen the maximum digits of
-       the real value when converting mpf to string.
-
-2004-04-11  Feng Wang  <fengwang@nudt.edu.cn>
-
-       PR 14395
-       * trans-intrinsic.c (gfc_conv_intrinsic_cmplx): Fix the imag part of
-       the result.
-
-2004-04-11  Feng Wang  <fengwang@nudt.edu.cn>
-
-       PR fortran/14377
-       * simplify.c (simplify_min_max): Convert the type of the result.
-
-2004-04-11  Paul Brook  <paul@codesourcery.com>
-
-       * gfortran.texi: Use full target triplet.
-
-2004-04-11  Paul Brook  <paul@codesourcery.com>
-
-       * Make-lang.in (GFORTRAN_TEXI): Set it.
-       (fortran/dfortran.dvi): Use it.  Add fortran to include paths.
-       (fortran/gfortran.info): Ditto.
-       * gfortran.texi: Major update.
-       * invoke.texi: New file.
-
-2004-04-10  Paul Brook  <paul@codesourcery.com>
-
-       * trans-array.c (gfc_trans_allocate_temp_array,
-       gfc_conv_tmp_array_ref): Don't use GFC_DECL_STRING.
-       * trans-decl.c (gfc_build_dummy_array_decl,
-       gfc_get_symbol_decl, gfc_build_function_decl,
-       gfc_create_module_variable): Ditto.
-       * trans-expr.c (gfc_conv_variable): Ditto.
-       * trans-intrinsic.c (gfc_conv_intrinsic_len): Ditto.
-       * trans.h (GFC_DECL_STRING): Remove.
-       (GFC_DECL_PACKED_ARRAY, GFC_DECL_PARTIAL_PACKED_ARRAY,
-       GFC_DECL_ASSIGN): Renumber flags.
-
-2004-04-05  Paul Brook  <paul@codesourcery.com>
-
-       PR 13252
-       PR 14081
-       * f95-lang.c (gfc_init_builtin_functions): Add stack_alloc, stack_save
-       and stack_restore.
-       * gfortran.h (struct gfc_charlen): Add backend_decl.
-       * trans-array.c (gfc_trans_allocate_temp_array,
-       gfc_conv_temp_array_ref, gfc_conv_resolve_dependencies,
-       (gfc_conv_loop_setup, gfc_array_allocate, gfc_conv_array_init_size):
-       Remove old, broken string handling.
-       (gfc_trans_auto_array_allocation, gfc_trans_g77_array,
-       gfc_trans_dummy_array_bias, gfc_conv_expr_descriptor,
-       gfc_trans_deferred_array): Handle character arrays.
-       * trans-const.c (gfc_conv_const_charlen): New function.
-       * trans-const.h (gfc_conv_const_charlen): Add prototype.
-       * trans-decl.c (gfc_finish_var_decl): Don't mark automatic variables
-       as static.
-       (gfc_build_dummy_array_decl): Handle arrays with unknown element size.
-       (gfc_create_string_length): New function.
-       (gfc_get_symbol_decl): Create lengths for character variables.
-       (gfc_get_fake_result_decl): Ditto.
-       (gfc_build_function_decl): Only set length for assumed length
-       character arguments.
-       (gfc_trans_dummy_character): New function.
-       (gfc_trans_auto_character_variable): Rewrite.
-       (gfc_trans_deferred_vars): Handle more types of character variable.
-       (gfc_create_module_variable): String lengths have moved.
-       (gfc_generate_function_code): Initialize deferred var chain earlier.
-       * trans-expr.c (gfc_conv_init_string_length): Rename ...
-       (gfc_trans_init_string_length):  ... to this.
-       (gfc_conv_component_ref, gfc_conv_variable, gfc_conv_concat_op,
-       gfc_conv_function_call): Update to new format for character variables.
-       (gfc_conv_string_length): Remove.
-       (gfc_conv_string_parameter): Update assertion.
-       * trans-intrinsic.c (gfc_conv_intrinsic_len): Use new location.
-       * trans-io.c (set_string): Use new macro names.
-       * trans-stmt.c (gfc_trans_label_assign. gfc_trans_goto): Ditto.
-       * trans-types.c (gfc_get_character_type): Use existing length expr.
-       (gfc_is_nodesc_array): Make public.
-       (gfc_get_dtype_cst): Rename ...
-       (gfc_get_dtype): ... to this.  Handle unknown size arrays.
-       (gfc_get_nodesc_array_type): Use new name.
-       (gfc_sym_type): New character variable code.
-       (gfc_get_derived_type): Ditto.
-       (gfc_get_function_type): Evaluate character variable lengths.
-       * trans-types.h (gfc_strlen_kind): Define.
-       (gfc_is_nodesc_array): Add prototype.
-       * trans.h: Update prototypes.
-       (struct lang_type): Update comments.
-       (GFC_DECL_STRING_LEN): New name for GFC_DECL_STRING_LENGTH.
-       (GFC_KNOWN_SIZE_STRING_TYPE): Remove.
-
-2004-04-04  Paul Brook  <paul@codesourcery.com>
-
-       * gfortran.h (struct gfc_option_t): Remove flag_g77_calls.
-       * options.c (gfc_init.options, gfc_handle_option): Ditto.
-       * trans-expr.c (gfc_conv_function_call): Ditto.
-       * trans-types.c (gfc_is_nodesc_array): Ditto
-       * lang.opt (fg77-calls): Remove.
-
-2004-04-04  Paul Brook  <paul@codesourcery.com>
-
-       * trans-array.c (OFFSET_FIELD): Rename from BASE_FIELD.
-       (gfc_conv_descriptor_base): Rename ...
-       (gfc_conv_descriptor_offset): ... to this.
-       (gfc_trans_allocate_array_storage): Set offset to zero.
-       (gfc_conv_array_base): Rename ...
-       (gfc_conv_array_offset): ... to this.
-       (gfc_conv_array_index_ref): Add offset parameter.
-       (gfc_conv_array_ref): Include offset.
-       (gfc_trans_preloop_setup): Use existing offset.
-       (gfc_trans_allocate_temp_array,  gfc_array_allocate,
-       gfc_trans_auto_array_allocation, gfc_trans_g77_array,
-       gfc_trans_dummy_array_bias, gfc_conv_expr_descriptor,
-       gfc_conf_ss_descriptor): Set offset.
-       * trans-array.h: Rename prototypes.
-       * trans-const.h (gfc_index_zero_node): Define.
-       * trans-decl.c (gfc_build_qualified_array): Change base to offset.
-       * trans-types.c (gfc_get_array_type_bounds): Ditto.
-       (gfc_get_nodesc_array_type): Calculate offset before upper bound.
-
-2004-03-25  Diego Novillo  <dnovillo@redhat.com>
-
-       * convert.c (convert): Don't handle WITH_RECORD_EXPR.
-
-2004-03-24  Bud Davis  <bdavis9659@comcast.net>
-
-       PR 14055
-       * arith.c (gfc_convert_integer,gfc_convert_real):  Removed leading '+'
-       before conversion by gmp library call.
-
-2004-03-24  Bud Davis  <bdavis9659@comcast.net>
-
-       PR 12921
-       * trans-io.c (gfc_trans_open): Change RECL= to a value parameter.
-
-2004-02-24  Richard Henderson  <rth@redhat.com>
-
-       * trans-array.c (gfc_trans_dummy_array_bias): Fix typo.
-
-2004-02-19  Loren J. Rittle  <ljrittle@acm.org>
-
-       * Make-lang.in ($(srcdir)/fortran/gfortran.info): Move...
-       (fortran/gfortran.info): ... to here.
-       (f95.srcinfo): New.
-
-2004-02-16  Richard Henderson  <rth@redhat.com>
-
-       * Make-lang.in (f95-lang.o, trans-decl.o): Depend on cgraph.h.
-       * f95-lang.c (LANG_HOOKS_EXPAND_DECL): Remove.
-       (LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): New.
-       (gfc_expand_function): Rename from expand_function_body, make static,
-       don't do anything except invoke tree_rest_of_compilation.
-       (gfc_be_parse_file): Invoke cgraph.
-       (gfc_expand_decl): Remove.
-       (gfc_init_builtin_functions): Add __builtin_init_trampoline and
-       __builtin_adjust_trampoline.
-       * trans-decl.c (gfc_get_extern_function_decl): Don't set DECL_CONTEXT.
-       (gfc_finalize): New.
-       (gfc_generate_function_code): Use it.  Lower nested functions.
-       * trans-expr.c (gfc_conv_function_call): Add static chain operand
-       to call_expr.
-       * trans.c (gfc_build_function_call): Likewise.
-       * trans.h (expand_function_body): Remove.
-
-2004-02-15  Victor Leikehman  <lei@il.ibm.com>
-
-       PR gfortran/13433
-       * trans-decl.c (gfc_build_function_decl) For functions
-       returning CHARACTER pass an extra length argument,
-       following g77 calling conventions.
-       * trans-types.c (gfc_get_function_type) Ditto.
-       * trans-expr.c (gfc_conv_function_call) Ditto.
-
-2004-02-14  Paul Brook  <paul@codesourcery.com>
-
-       * f95-lang.c (gfc_init_builtin_functions): Build chain properly.
-
-2004-02-12  Paul Brook  <paul@nowt.org>
-
-       * BUGS: Remove.
-
-2004-02-08  Steve Kargl  <sgk@troutmask.apl.washington.edu>
-
-       * gfortran.texi: Fix typos.
-
-2004-02-07  Bud Davis  <bdavis9659@comcast.net>
-
-       PR gfortran/13909
-       * intrinsic.c (add_conversions) Use logical conversion instead
-       of real.
-       * trans-types.c (gfc_get_logical_type) implemented logical*1
-       and logical*2.
-
-2004-01-17  Paul Brook  <paul@codesourcery.com>
-
-       * lang-specs.h: Remove %<fixed-form.
-
-2004-01-15  Toon Moene  <toon@moene.indiv.nluug.nl>
-
-       * lang-specs.h: Enable preprocessing of source files
-       ending in .F, .fpp, .FPP, .F90 and .F95.
-
-2004-01-13  Toon Moene  <toon@moene.indiv.nluug.nl>
-
-       PR fortran/12912
-       * lang-specs.h: Enable compilation of files ending
-       in .f, .for and .FOR.
-
-2004-01-11  Paul Brook  <paul@codesourcery.com>
-
-       * trans-stmt.c (gfc_trans_if_1): New function.
-       (gfc_trans_if): Use it.
-
-2004-01-11  Erik Schnetter  <schnetter@uni-tuebingen.de>
-
-       * gfortran.h (GFC_MAX_SYMBOL_LEN): Increase.
-       (gfc_option_t): Add max_identifier_length.
-       * lang.opt: Add fmax-identifier-length.
-       * match.c (parse_name): Use limit.
-       * options.c (gfc_init_options): Set max_identifier_length.
-       (gfc_handle_option): Ditto.
-
-2004-01-11  Feng Wang  <fengwang@nudt.edu.cn>
-
-       * intrinsic.c (add_functions): Add resolve function to dcmplx.
-       * intrinsic.h (gfc_resolve_dcmplx): Add prototype.
-       * iresolve.c (gfc_resolve_dcmplx): New function.
-
-2004-01-10  Paul Brook  <paul@codesourcery.com>
-
-       * trans-decl.c (gfc_get_symbol_decl): Don't set subroutine attr.
-       * trans-types.c (gfc_sym_type): Handle external dummy procedures.
-       (gfc_return_by_reference): Correct condition.
-       (gfc_get_function_type): Ditto.
-
-2004-01-10  Paul Brook  <paul@codesourcery.com>
-
-       * trans-intrinsic.c (gfc_conv_intrinsic_minmax): Convert mismatched
-       types.
-
-2004-01-10  Huang Chun  <chunhuang73@hotmail.com>
-
-       * iresolve.c: Use correct kind.
-
-2004-01-10  Huang Chun  <chunhuang73@hotmail.com>
-
-       PR fortran/13467
-       * trans-decl.c (gfc_create_module_variable):  Output array valued
-       parameters.
-
-2004-01-10  Paul Brook  <paul@codesourcery.com>
-
-       * resolve.c (resolve_branch): Get error message right way round.
-
-2004-01-10  Canqun Yang  <canqun@nudt.edu.cn>
-
-       * trans-array (gfc_conv_loop_setup): Adjust comment to track
-       reality.
-       (gfc_array_allocate): Don't count size of element twice.
-
-2004-01-04  Paul Brook  <paul@codesourcery.com>
-
-       * lang.opt (i8, r8, std=*): Remove RejectNegative.
-
-2004-01-04  Paul Brook  <paul@codesourcery.com>
-
-       * error.c (gfc_notify_std): New function.
-       * gfortran.h (gfc_notify_std): Declare.
-       (GFC_STD_*): Define.
-       (gfc_option_t): Add warn_std and allow_std.
-       * intrinsic.c (gfc_init_expr_extensions): Fix logic.
-       (gfc_intrinsic_func_interface): Use gfc_notify_std.
-       * check.c (check_rest): Use gfc_notify_std.
-       * match.c (gfc_match_pause): Ditto.
-       (gfc_match_assign): Ditto.
-       (gfc_match_goto): Ditto.
-       * resolve.c (resolve_branch): Ditto.
-       * lang.opt: Add std=<foo> and w.
-       * options.c (gfc_init_options): Set allow_std and warn_std.
-       (gfc_handle_option): Handle OPT_std_* and OPT_w.
-
-2004-01-01  Paul Brook  <paul@codesourcery.com>
-
-       * array.c (gfc_append_constructor): Take constructor, not expression.
-       * data.c (struct gfc_expr_stack): Remove.
-       (expr_stack): Remove.
-       (find_con_by_offset): Rename from find_expr_in_con.
-       (find_con_by_component): Rename from find_component_in_con.
-       (gfc_get_expr_stack): Remove.
-       (gfc_assign_data_value): Rewrite.
-       (gfc_expr_push): Remove.
-       (gfc_expr_pop): Remove.
-       (gfc_advance_section): Rename from
-       gfc_modify_index_and_calculate_offset.  Handle unbounded sections.
-       (gfc_get_section_index): Handle unbounded sections.
-       * gfortran.h: Update prototypes.
-       * resolve.c (check_data_variable): Array section maight not be the
-       last ref.
-
-2004-01-01  Paul Brook  <paul@codesourcery.com>
-
-       PR fortran/13432
-       * resolve.c (resolve_symbol): Allow assumed length function results.
-
-2004-01-01  Steve Kargl  <sgk@troutmask.apl.washington.edu>
-
-       * match.c (gfc_match_pause): Fix spelling.
-
-2004-01-01  Steven Bosscher  <stevenb@suse.de>
-
-       PR fortran/13251
-       * trans-expr.c (gfc_conv_variable): Take the type kind of a substring
-       reference from the expression.
-
-2003-12-26  Feng Wang  <fengwang@nudt.edu.cn>
-
-       * dump-parse-tree.c (gfc_show_code_node): Add ASSIGN and ASSIGNED GOTO
-       dumping.
-       * gfortran.h (gfc_statement): New ST_LABEL_ASSIGNMENT.
-       (gfc_exec_op): New EXEC_LABEL_ASSIGN.
-       (symbol_attribute):New variable attribute: assign.
-       * io.c (resolve_tag):Integer variable is allowed.
-       (match_dt_format): Add ASSIGN statement. Set assign flag.
-       * match.c (gfc_match_if): Change ST_NONE to ST_LABEL_ASSIGNMENT.
-       (gfc_match_assign): Add ASSIGN statement. Set assign flag.
-       (gfc_match_goto): Add ASSIGNED GOTO statement. Set assign flag.
-       * parse.c (decode_statement): Add ST_LABEL_ASSIGNMENT.
-       (next_statement): Add ST_LABEL_ASSIGNMENT.
-       (gfc_ascii_statement): Add ST_LABEL_ASSIGNMENT.
-       * resolve.c (resolve_code): Resolve ASSIGN and ASSIGNED GOTO statement.
-       (resolve_blocks): Resolve ASSIGNED GOTO statement label list.
-       * st.c (gfc_free_statement): Add EXEC_LABEL_ASSIGN.
-       * trans-decl.c (gfc_get_symbol_decl): Create the shadow variable for
-       assign.  Put them into the stuct lang_decl.
-       * trans-io.c (set_string): Add the assign statement.
-       * trans-stmt.c (gfc_trans_label_assign): New function.
-       (gfc_trans_goto): Translate ASSIGNED GOTO statement.
-       * trans-stmt.h (gfc_trans_label_assign): Added function prototype.
-       * trans.c (gfc_trans_code): Add EXEC_LABEL_ASSIGN.
-       * trans.h (lang_decl):Add shadow variable decl tree needed by assign.
-       (GFC_DECL_ASSIGN_ADDR(node)): New macro to access this.
-       (GFC_DECL_ASSIGN(node)): New macro to access flag.
-
-2003-12-31  Huang Chun  <chunhuang73@hotmail.com>
-
-       PR fortran/13434
-       * trans-intrinsic.c (gfc_conv_intrinsic_minmaxval): Fixed bug in
-       minval/maxval.
-
-2003-12-22  Toon Moene  <toon@moene.indiv.nluug.nl>
-
-       * options.c (gfc_init_options): Set flag_argument_noalias to 2, to indicate
-       that arguments to subroutines/functions can't alias themselves, nor global
-       memory.
-
-2003-12-20  Steven Bosscher  <stevenb@suse.de>
-
-       * trans-expr.c (gfc_conv_expr_op): Fold the result expression.
-       * trans.c (gfc_add_modify_expr, gfc_add_expr_to_block): Likewise.
-
-2003-12-12  Huang Chun  <chunhuang73@hotmail.com>
-
-       * primary.c (match_substring): Fix substring bug for start point
-       or end point is NULL.
-       * trans-expr.c (gfc_conv_substring): Ditto
-       * trans-types.c (gfc_sym_type): Get correct type of scalar
-       character variables.
-       * trans-intrinsic.c (gfc_conv_intrinsic_len): Handle character in
-       derived type.
-
-2003-12-10  Richard Henderson  <rth@redhat.com>
-
-       * options.c (gfc_post_options): Don't ever use rtl inlining.
-
-2003-12-05  Canqun Yang  <canqun@nudt.edu.cn>
-
-       * trans-common.c: Re-implement COMMON blocks and EQUIVALENCE lists.
-       * trans-equivalence.c: Remove.
-       * trans-decl.c (gfc_get_symbol_decl): Update to match.
-       (gfc_generate_function_code): Ditto.
-       * trans-array.c (gfc_conv_array_parameter): Ditto.
-       * Make-lang.in (F95_OBJS): Remove fortran/trans-equivalence.o
-       (F95_ADDITIONAL_OBJS): Add stor-layout.o
-       * trans.h (gfc_trans_equivalence): Remove.
-       * gfortran.h (struct gfc_equiv): Add used field.
-       (struct gfc_symbol): Remove addr_base, addr_offset, equiv_ring,
-       equiv_offset fields.
-
-2003-12-05  Richard Henderson  <rth@redhat.com>
-
-       * trans.c (gfc_build_addr_expr): New.
-       (gfc_build_indirect_ref, gfc_build_array_ref): New.
-       * trans.h: Declare them.
-       * trans-array.c, trans-expr.c, trans-intrinsic.c, trans-io.c,
-       trans-stmt.c, trans.c (*): Use them.
-
-       * f95-lang.c (gfc_post_options): Remove dead prototype.
-       * trans-array.c (gfc_trans_deferred_vars): Remove unused variable.
-       * trans-stmt.c (gfc_evaluate_where_mask): Fix temporary_list
-       allocation size.
-
-2003-12-01  Feng Wang  <fengwang@nudt.edu.cn>
-
-       * io.c (gfc_match_format): Check for missing format label.
-
-2003-11-30 Huang Chun  <chunhuang73@hotmail.com>
-
-       PR fortran/13155
-       * trans-decl.c (gfc_sym_mangled_function_id): Don't mangle symbols
-       from interfaces in modules.
-
-2003-11-30  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c (gfc_trans_g77_array): Make non-static.
-       (gfc_trans_assumed_size): Remove.
-       (gfc_trans_dummy_array_bias): Explicitly free temporary.
-       * trans-array.h (gfc_trans_g77_array): Add prototype.
-       (gfc_trans_assumed_size): Remove.
-       * trans-decls.c (gfor_fndecl_push_context): Remove.
-       (gfor_fndecl_pop_context): Remove.
-       (gfc_build_function)decls): Don't create them.
-       (gfc_trans_deferred_vars): Update to match. Remove dead code.
-       * trans-stmt.c (gfc_trans_pointer_assign_need_temp): Free temp.
-
-2003-11-30  Kejia Zhao  <kejia_zh@nudt.edu.cn>
-
-       * trans-array.c (gfc_conv_array_parameter): Simplify
-       array argument passing for array name actual argument.
-       * trans-expr.c (gfc_conv_function_call): Ditto
-       * trans-types.c (gfc_is_nodesc_array):Ditto.
-
-2003-11-30  Paul Brook  <paul@nowt.org>
-
-       * f95-lang.c (gfc_post_options): Move ...
-       * options.c (gfc_post_options): .. to here.  Handle inlining options.
-       * gfortran.h (gfc_post_options): Add prototype.
-
-2003-11-28  Richard Henderson  <rth@redhat.com>
-
-       * trans.c (gfc_create_var_np): Use create_tmp_var_raw.
-
-2003-11-28 Huang Chun  <chunhuang73@hotmail.com>
-
-       * trans.h (has_alternate_specifier): New global variable.
-       * match.c (gfc_match_call): Handle actual arguments associated with
-       alternate return indicators.
-       * trans-expr.c (gfc_conv_function_call): Ditto
-       * trans-stmt.c (gfc_trans_call): Ditto
-       (gfc_trans_return): Handle return statement with value.
-       * trans-decl.c (gfc_generate_function_code): Handle functions with
-       asterisk dummy.
-       (gfc_get_fake_result_decl): Ditto
-       * trans-types.c (gfc_get_function_type): Ditto
-       * resolve.c (resolve_actual_arglist): Check alternate return indicators.
-       (resolve_formal_arglist): Check asterisk dummy.
-
-2003-11-27  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c (gfc_tran_allocate_array_storage): Use new memory
-       allocation interface.
-       (gfc_conv_ array_parameter): Ditto.
-       (gfc_trans_auto_array_allocation): Ditto. Also free the memory.
-       * trans-array.c: Update prototype.
-       * trans-decl.c (gfc_build_builtin_function_decls): Update prototypes.
-       (gfc_trans_auto_character_variable): Use new memory alloc interface.
-       * trans-expr.c (gfc_conv_string_tmp): Ditto.
-       (gfc_conv_function_call): Use gfc_conv_string_tmp.
-       * trans-stmt.c (gfc_do_allocate):  Use new memory alloc interface.
-       * trans-intrinsic.c (gfc_conv_intrinsic_trim): Ditto.
-       * trans.h (gfc_ss_info): Remove unused pdata field.
-       * trans.c (gfc_create_var_np): Change T to V.
-
-2003-11-26  Richard Henderson  <rth@redhat.com>
-
-       * mathbuiltins.def: Move acos, asin, cosh, log10, sinh, tanh from ...
-       * trans-intrinsic.c (gfc_intrinsic_map): ... here.  Add SCALE,
-       FRACTION, NEAREST, SET_EXPONENT.
-       (gfc_intrinsic_map_t): Add libm_name, complex_available, is_constant.
-       Fix GTY marking.  Remove unnecessary const's.
-       (LIBM_FUNCTION): Rename from I_LIB.
-       (LIBF_FUNCTION): New.
-       (gfc_get_intrinsic_lib_fndecl): Handle libm and libgfortran naming
-       conventions.  Assume the expr signature is correct.  Mark const.
-       (gfc_conv_intrinsic_exponent): Use library functions.
-       (gfc_conv_intrinsic_set_exponent): Remove.
-       (gfc_conv_intrinsic_scale): Remove.
-       (gfc_conv_intrinsic_nearest): Remove.
-       (gfc_conv_intrinsic_fraction): Remove.
-       (gfc_conv_intrinsic_function): Update.
-       * trans-decl.c (gfor_fndecl_math_exponent4): New.
-       (gfor_fndecl_math_exponent8): New.
-       (gfc_build_intrinsic_function_decls): Set them.
-       * trans.h: Declare them.
-
-2003-11-25  Canqun Yang  <canqun@nudt.edu.cn>
-
-       * trans-common.c (gfc_layout_global_equiv): Locate the error for
-       underflow COMMON block.
-       (gfc_trans_one_common): Fix bug for size of COMMON block containing
-       EQUIVALENCE object. Also fix typo in an error message.
-
-2003-11-25  Diego Novillo  <dnovillo@redhat.com>
-
-       * Make-lang.in: Add check-gfortran to lang_checks.
-       (check-f95): Alias for check-gfortran.
-
-2003-11-25  Jason Merrill  <jason@redhat.com>
-
-       * Make-lang.in (f95.tags): Create TAGS.sub files in each
-       directory and TAGS files that include them for each front end.
-
-2003-11-24  Paul Brook  <paul@nowt.org>
-
-       PR fortran/13154
-       * trans-decl.c (gfc_greate_module_variable): Skip COMMON blocks.
-
-2003-11-24  Paul Brook  <paul@nowt.org>
-
-       * expr.c (simplify_const_ref): Return SUCCESS for things we don't
-       handle.
-       * resolve.c (gfc_resolve_expr): Resolve contents before rank/shape.
-
-2003-11-24  Paul Brook  <paul@nowt.org>
-
-       PR fortran/13105
-       * array.c (gfc_array_ref_shape): Handle elemental dimensions.
-       * trans-array.c (gfc_trans_preloop_setup): Use correct dim lookup.
-
-2003-11-20  Richard Henderson  <rth@redhat.com>
-
-       * trans-array.c (gfc_trans_allocate_array_storage): Use convert.
-       (gfc_conv_array_base): Likewise.
-       * trans-decl.c (gfc_trans_auto_character_variable): Likewise.
-       * trans-expr.c (gfc_conv_string_tmp): Likewise.
-       * trans-intrinsic.c (gfc_conv_intrinsic_trim): Likewise.
-       * trans-stmt.c (gfc_trans_character_select): Likewise.
-
-2003-11-13  Paul Brook  <paul@nowt.org>
-
-       * trans-decl.c (gfc_sym_mangled_function_id): Dont mangle externals.
-
-2003-11-13  Canqun Yang  <canqun@nudt.edu.cn>
-
-       * resolve.c (gfc_resolve): Also resolve EQUIVALENCE objects.
-       (resolve_equivalence): New function.
-       (resolve_equivalence_derived): New function.
-
-2003-11-12  Richard Henderson  <rth@redhat.com>
-
-       * trans.c (gfc_trans_code): Use annotate_with_locus instead of
-       annotate_all_with_locus.
-
-2003-11-11  Canqun Yang  <canqun@nudt.edu.cn>
-
-       * options.c (gfc_init_options): Set flag_max_stack_var_size as 32768.
-       * trans-decl.c (gfc_finish_var_decl): Modified.
-
-2003-11-08  Paul Brook  <paul@nowt.org>
-
-       PR fortran/12704
-       * trans-intrinsic.c (gfc_conv_intrinsics_minmaxloc): Handle zero-size
-       arrays.
-
-2003-11-06  Paul Brook  <paul@nowt.org>
-
-       * trans-intrinsic.c (gfc_conv_intrinsics_minmaxloc): Initialize pos.
-
-2003-11-02  Canqun Yang  <canqun@nudt.edu.cn>
-
-       * match.c (gfc_match_stopcode): Assign '0' to stop_code.
-
-2003-10-27  Anthony Green  <green@redhat.com>
-
-       * Make-lang.in (f95.stageprofile): Use tabs, not spaces.
-       (f95.stagefeedback): Ditto.
-
-2003-10-27  Andrew Pinski  <pinskia@physics.uc.edu>
-
-       PR fortran/12682
-       * Make-lang.in (f95.stageprofile): Add.
-       (f95.stagefeedback): Add.
-
-2003-10-23  Richard Henderson  <rth@redhat.com>
-
-       * f96-lang.c (gfc_gimplify_expr): Remove.
-       (LANG_HOOKS_GIMPLIFY_EXPR): Remove.
-       (LANG_HOOKS_GIMPLE_BEFORE_INLINING): New.
-
-2003-10-23  Richard Henderson  <rth@redhat.com>
-
-       * f95-lang.c (gfc_gimplify_expr): Return gimplify_status.
-
-2003-10-20  Paul Brook  <paul@nowt.org>
-
-       * trans-expr.c (gfc_conv_integer_power): Use boolean_type_node.
-       * trans-stmt.c (gfc_trans_do_while): Ditto.
-
-2003-10-17  Paul Brook  <paul@nowt.org>
-
-       * simplify.c (gfc_simplify_shape): Use gfc_array_dimen_size.
-
-2003-10-17  Paul Brook  <paul@nowt.org>
-
-       * trans-io.c (gfc_build_io_library_fndecls): Set TREE_PUBLIC.
-
-2003-10-17  Feng Wang  <wf_cs@yahoo.com>
-
-       * iresolve.c (gfc_resolve_maxloc): Change the result's kind and type.
-       (gfc_resolve_minloc): Ditto.
-       * trans-intrinsic.c (gfc_conv_intrinsic_minmaxloc): Use correct types.
-       Return the value after subtracting the lower bound.
-
-2003-10-16  Richard Henderson  <rth@redhat.com>
-
-       * f95-lang.c (expand_function_body): Don't check flag_disable_gimple.
-
-2003-10-16  Steven Bosscher  <steven@gcc.gnu.org>
-
-       * lang.c: Remove -M option for now, it's in the way for C.
-
-2003-10-14  Jason Merrill  <jason@redhat.com>
-
-       * Make-lang.in (f95.tags): New rule.
-
-2003-10-13  Richard Henderson  <rth@redhat.com>
-
-       * trans.c (gfc_trans_code): Use annotate_all_with_locus.
-
-2003-10-13  Paul Brook  <paul@nowt.org>
-
-       * trans-decl.c (generate_local_decl): Don't create junk variables.
-
-2003-10-13  Paul Brook  <paul@nowt.org>
-
-       * resolve.c (resolve_formal_arglist): Use function result decl in
-       preference to function decl.
-
-2003-10-12  Richard Henderson  <rth@redhat.com>
-
-       * f95-lang.c (gfc_define_builtin): New const_p argument.  Set
-       TREE_READONLY.  Update all callers.
-
-2003-10-12  Feng Wang  <wf_cs@yahoo.com>
-
-       * iresolve.c (gfc_resolve_cshift): Change to match implementation.
-       * trans-intrinsic.c (gfc_conv_intrinsic_function): Remove CSHIFT.
-       (gfc_is_intrinsic_libcall): Add CSHIFT.
-
-2003-10-12  Richard Henderson  <rth@redhat.com>
-
-       * trans-array.c (gfc_trans_static_array_pointer): Set TREE_INVARIANT.
-       (gfc_trans_array_constructor_value): Likewise.
-       (gfc_conv_array_initializer): Likewise.
-       * trans-stmt.c (gfc_trans_character_select): Likewise.
-
-2003-11-12  Kejia Zhao  <kejia_zh@yahoo.com.cn>
-
-       * trans-intrinsic.c (integer_kind_info, real_kind_info): Remove.
-
-2003-10-11  Huang Chun  <jiwang@mail.edu.cn>
-
-       * check.c (gfc_check_repeat): Check arguments are scalar.
-       (gfc_check_trim): New function.
-       * intrinsic.h (gfc_check_trim): Add prototype.
-       * intrinsic.c (add_functions): Use it.
-       * trans.h (gfor_fndecl_string_trim, gfor_fndecl_string_repeat):
-       Decalare.
-       * trans-decl.c: Ditto.
-       (gfc_build_intrinsic_fucntion_decls): Set them.
-       * trans-intrinsic.c (gfc_conv_intrinsic_len): Handle result vars.
-       (gfc_conv_intrinsic_trim): New function.
-       (gfc_conv_intrinsic_repeat): New function.
-       (gfc_conv_intrinsic_function): Use them.
-
-2003-10-11  Huang Chun  <jiwang@mail.edu.cn>
-
-       * trans-types.c (gfc_sym_type): Handle result variables.
-
-2003-10-11  Huang Chun  <jiwang@mail.edu.cn>
-
-       * trans-intrinsic.c (gfc_conv_intrinsic_char): Don't use
-       gfc_get_character_type.
-
-2003-10-11  Feng Wang  <wf_cs@yahoo.com>
-
-       * trans-expr.c (gfc_conv_variable): Check sym->ts, not the decl.
-
-2003-10-11  Paul Brook  <paul@nowt.org>
-
-       * iresolve.c (gfc_resolve_dint, gfc_resolve_dnint): New functions.
-       (gfc_resolve_dprod): New function.
-       (gfc_resolve_aint, gfc_resolve_anint): Only base name on arg type.
-       * intrinsic.h (gfc_resolve_dint, gfc_resolve_dnint): Declare.
-       (gfc_resolve_dprod): Declare.
-       * intrinsic.c (add_functions): Use them.
-       * trans-decl.c (gfc_get_extern_function_decl): Only pass one arg.
-
-2003-10-06  Richard Henderson  <rth@redhat.com>
-
-       * f95-lang.c (gfc_init_builtin_functions): Add clzll.
-       * trans-intrinsic.c (call_builtin_clz): Use it.
-
-2003-10-05  Paul Brook  <paul@nowt.org>
-
-       * f95-lang.c (expand_function_body): Call (push|pop)_function_context.
-       * trans-decl.c (gfc_generate_function_code): Set
-       cfun->function_end_locus.
-
-2003-09-24  Jason Merrill  <jason@redhat.com>
-
-       * f95-lang.c, trans-decl.c: Use DECL_SOURCE_LOCATION instead of
-       TREE_LOCUS.
-
-2003-09-21  Lifang Zeng  <zlf605@hotmail.com>
-       Paul Brook  <paul@nowt.org>
-
-       * Make-lang.in (F95_OBJS): Add fortran/data.o.
-       * array.c (gfc_inser_constructor): New function.
-       (gfc_get_constructor): New function.
-       (gfc_free_constructor): Initialize offset and repeat.
-       (iterator_stack): Remove.
-       (expand_info): Add offset, component and repeat fields.
-       (expand_constructor): Set them.
-       (expand): Set new fields.
-       (gfc_copy_constructor): Ditto. Avoid recursion.
-       * gfortran.h: Add prototypes for new functions.
-       (gfc_constructor): Add offset, component and repeat.
-       (iteratio_stack): Move to here.
-       * resolve.c (check_data_variable): Convert data values into variable
-       initializers.
-       (traverse_data_list): Build implicit loop chain.
-       (gfc_resolve): Ditto.
-       * trans-array.c (gfc_conv_array_intializer): Handle repeat count.
-       * trans-decl.c (gfc_get_symbol_decl): Use gfc_conv_structure.
-       * trans-expr.c (gfc_conv_structure): Handle array initializers.
-       (gfc_conv_expr): Update to match.
-       * trans.h (gfc_conv_structure): Declare.
-       * data.c: New file.
-
-2003-09-20  Kejia Zhao  <kejia_zh@yahoo.com.cn>
-
-       * trans.h: Add declarations for gfor_fndecl_si_kind and
-       gfor_fndecl_sr_kind.
-       * trans-decl.c (g95_build_intrinsic_function_decls): Build them.
-       * trans-intrinsic.c (g95_conv_intrinsic_si_kind): New function.
-       (g95_conv_intrinsic_sr_kind): New function.
-       (g95_conv_intrinsic_function): Add SELECTED_INT_KIND and
-       SELECTED_REAL_KIND.
-
-2003-09-17  Lars Segerlund  <Lars.Segerlund@comsys.se>
-
-       * iresolve.c (gfc_resolve_random_number): Generate _r4 & _r8
-       instead of _4 and _8 as postfix for libgfortran calls.
-
-2003-09-16  Paul Brook  <paul@nowt.org>
-
-       * array.c (compare_bounds): New function.
-       (gfc_compare_array_spec): Use it.
-
-2003-09-14  Paul Brook  <paul@nowt.org>
-
-       * primary.c (gfc_match_rvalue): Make sure sym->result is set.
-       * trans-expr.c (gfc_conv_string_parameter): Also allow PRAM_DECLs.
-
-2003-09-14  Paul Brook  <paul@nowt.org>
-
-       * check.c (dim_rank_check): Allow assumed bounds if requested.
-       (gfc_check_lbound): Call it.
-       (gfc_check_ubound): Ditto.
-       (gfc_check_size): Change to match.
-       * simplify.c (gfc_simplify_bound): New function.
-       (gfc_simplify_lbound): New function.
-       (gfc_simplify_ubound): New function.
-       * intrinsic.h: Declare them.
-       * intrinsic.c (add_functions): Use them.
-
-2003-09-14  Paul Brook  <paul@nowt.org>
-
-       * io.c (format_lex): Initialize negative_flag.
-       (check_format): Intialize repeat.
-       * trans-io.c (gfc_new_nml_name_expr): Declare static.
-       (gfc_new_var_expr): Ditto.
-
-2003-09-14  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c (gfc_conv_array_initializer): Handle derived types.
-       * trans-decl.c (gfc_get_symbol_decl): Only do local scalar values.
-
-2003-09-12  Paul Brook  <paul@nowt.org>
-
-       * trans-intrinsic.c (gfc_conv_intrinsic_sign): Call fold.
-
-2003-09-12  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
-
-       * fortran/trans.c (gfc_finish_block): Call rationalize_compound_expr
-       for a correct expression.
-
-2003-09-10  Kejia Zhao  <kejia_zh@yahoo.com.cn>
-
-       * trans-intrinsic.c (real_compnt_info): New struct.
-       (prepare_arg_info): New function.
-       (gfc_conv_intrinsic_set_exponent): New function.
-       (gfc_conv_intrinsic_scale): New function.
-       (gfc_conv_intrinsic_nearest): New function.
-       (gfc_conv_intrinsic_fraction): New function.
-       (gfc_conv_intrinsic_exponent): New function.
-       (gfc_conv_intrinsic_spacing): New function.
-       (gfc_conv_intrinsic_rrspacing): New function.
-       (gfc_conv_intrinsic_function): Use them.
-
-2003-08-24 XiaoQiang Zhang  (zhangapache@yahoo.com>
-
-       * trans-const.c (gfc_conv_mpz_to_tree): Fix bug, parameter for
-       build_int_2 changed from (high, low) to (low, high).
-       * trans-io.c (ioparm_namelist_name, ioparm_namelist_name_len,
-       ioparm_namelist_read_mode, iocall_set_nml_val_int,
-       iocall_set_nml_val_float, iocall_set_nml_val_char,
-       iocall_set_nml_val_complex, iocall_set_nml_val_log): New declaration.
-       (gfc_build_io_library_fndecls): Add variable initialization.
-       (gfc_new_nml_name_expr, get_new_var_expr): New function.
-       (build_dt): Add namelist support.
-       * io.c (value): New variable.
-       (check_format): Support FMT_H now.
-
-2003-09-07  Paul Brook  <paul@nowt.org>
-
-       * io.c (gfc_resolve_dt): Error if format label is not defined.
-
-2003-09-07  Kejia Zhao  <kejia_zh@yahoo.com.cn>
-
-       * trans-intrinsic.c (gfc_conv_intrinsic_aint): Fix two bugs. One is
-       about case_switch's break. The other is about building the condition
-       statement tree, which judges the argument in the range of the
-       corresponding integer type.
-       * trans-intrinsic.c (gfc_conv_intrinsic_mod): MOD and MODULO can work
-       for the large values.
-
-2003-09-05  Paul Brook  <paul@nowt.org>
-
-       * f95-lang.c (expand_function_body): Gimplify the function.
-
-2003-09-04  Jeff Law  <law@redhat.com>
-
-       * f95-lang.c (DEFINE_MATH_BUILTIN): C arrays start at
-       index zero!
-
-2003-09-04  Paul Brook  <paul@nowt.org>
-
-       * f95-lang.c (gfc_define_builtin): Also set implicit_built_in_decls.
-       (gfc_expand_stmt): New function.
-       (LANG_HOOKS_RTL_EXPAND_STMT): Define.
-       (expand_function_body): Use tree_rest_of_compilation.
-       * trans-decl.c (gfc_generate_function_code): Don't free cfun.
-
-2003-09-03  Jeff Law  <law@redhat.com>
-
-       * f95-lang.c (gfc_init_builtin_functions): C arrays start at
-       index zero!
-
-2003-08-30  Paul Brook  <paul@nowt.org>
-
-       * f95-lang.c (builtin_function): Remove #if 0 code.
-       (gfc_define_builtin): New function.
-       (gfc_init_builtin_functions): Use mathbuiltins.def not ../builtins.def.
-       * mathbuiltins.def: New file.
-       * trans-intrinsic.c (gfc_intrinsic_map_t): Add builtin code fields.
-       (gfc_intrinsic_map): Use mathbuiltins.def.
-       (gfc_intrinsic_builtin_t): Remove.
-       (gfc_build_intrinsic_lib_fndecls): Update.
-       * trans-types.c (gfc_init_types): Remove redundant initilaization of
-       signed_size_type_node.
-
-2003-08-29  Paul Brook  <paul@nowt.org>
-
-       * arith.c (gfc_real_kinds): Use correct minimum exponents.
-
-2003-08-22  Kejia Zhao  <kejia_zh@yahoo.com.cn>
-
-       * trans-instinsic.c (gfc_conv_intrinsic_mod): Also do MODULO.
-       (gfc_conv_intrinsic_function): Add MODULO.
-
-2003-08-22  Jason Merrill  <jason@redhat.com>
-
-       * trans-array.c (gfc_conv_expr_descriptor): Update use of predicates.
-
-2003-08-22  Andreas Jaeger  <aj@suse.de>
-
-       * Make-lang.in (f95.install-common): Add DESTDIR support.
-       * (f95.install-info): Likewise.
-       (f95.uninstall): Likewise.
-
-2003-08-19  Diego Novillo  <dnovillo@redhat.com>
-
-       * trans-types.c (gfc_init_types): Initialize
-       signed_size_type_node with size_type_node.
-
-2003-08-18  Paul Brook  <paul@nowt.org>
-
-       * dependency.c (gfc_dependency): New enum.
-       (check_another_array_ref): Remove.
-       (gfc_get_array_from_component): Remove.
-       (get_x): Remove.
-       (get_range): Remove.
-       (get_no_of_elements): Use mpz_t, not mpf_t.
-       (transform_sections): New function.
-       (gfc_check_range_range): Rename ...
-       (gfc_check_section_vs_section): ... to this.  Use new function.
-       (gfc_is_inside_range): Rewrite to match.
-       (gfc_check_element_vs_section): Ditto.
-       (gfc_check_element_vs_element): Ditto.
-       (get_deps): Ditto.
-       (gfc_dep_resolver): Ditto.  Remove unused parameter.
-       * Dependency.h (gfc_check_range_range, gfc_check_element_vs_section,
-       gfc_check_element_vs_element, gfc_is_inside_range,
-       gfc_get_array_from_component): Remove prototypes for static functions.
-       (gfc_dep_resolver): Update prototype.
-       * trans-array.c (gfc_conv_resolve_dependencies): Change to match.
-
-2003-08-15  Paul Brook  <paul@nowt.org>
-
-       * trans-decl.c (gfc_build_qualified_array): Don't add symbols for
-       return values to parent scope.
-       (gfc_build_dummy_array_decl): Ditto.
-
-2003-08-14  Paul Brook  <paul@nowt.org>
-
-       * trans-stmt.c (gfc_trans_allocate): Handle NULL refs. Allocate the
-       size of the type, not the pointer.
-       * resolve.c (resolve_symbol): Give more accurate error message.
-
-2003-08-10  Paul Brook  <paul@nowt.org>
-
-       * trans-decl.c (gfc_build_function_decl): Only mangle global symbols.
-
-2003-08-10  Paul Brook  <paul@nowt.org>
-
-       * trans-stmt.c (gfc_trans_allocate): Correctly handle non-array derived
-       type components.
-
-2003-08-10  Chun Huang  <compiler@sohu.com>
-
-       * resolve.c (resolve_formal_arglist): Resolve STATEMENT function.
-       (resolve_symbol): Ditto.
-       * trans-expr.c (gfc_conv_statement_function): New function.
-       (gfc_conv_function_expr): Use it.
-
-2003-08-10  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c (gfc_conv_ss_startstride): Handle functions.
-       (walk_function_expr): Set section rank.
-       * trans-intrinsic.c (gfc_walk_intrinsic_libfunc): Ditto.
-
-2003-08-10  Paul Brook  <paul@nowt.org>
-
-       * intrinsic.c (add_sym): Prefix names with correct string.
-       (add_sym_0s): New function.
-       (add_subroutines): Register abort.
-
-2003-08-10  Erik Schnetter  <schnetter@uni-tuebingen.de>
-
-       * gfortran.h: Introduce options to control the mangling.
-       * lang.opt: Likewise.
-       * options.c (gfc_init_options): Handle the options.
-       * trans-common.c (gfc_sym_mangled_common_id): New function.
-       (gfc_build_common_decl): Call it.
-       * trans-decl.c (gfc_sym_mangled_function_id): New function.
-       (gfc_get_extern_function_decl, gfc_build_function_decl): Call it.
-
-2003-08-09  Paul Brook  <paul@nowt.org>
-
-       * module.c (mio_symbol): Always ouput a namespace for formal args.
-       (load_needed): Namespace now belong to their proper symbol.
-       (gfc_dump_module): Change G95=>GFORTRAN.
-
-2003-08-05  Paul Brook  <paul@nowt.org>
-
-       * options.c: Force -fg77-calls.
-
-2003-08-02  Paul Brook  <paul@nowt.org>
-
-       * Makelang.in: Rename G95_* to GFORTRAN_*.
-       * All sources: Rename G95_* to GFC_*.
-
-2003-08-01  Paul Brook  <paul@nowt.org>
-
-       * fortran/Make-lang.in: Use GMPLIBS.
-       * fortran/config-lang.in: Set need_gmp.
-       * trans-expr.c (gfc_conv_variable): Remove incorrect assertion.
-
-2003-07-27  Andreas Jaeger  <aj@suse.de>
-
-       * trans-decl.c (gfc_generate_constructors): Convert prototype to
-       ISO C90.
-       * trans-const.c (gfc_init_constants): Likewise.
-       * trans-intrinsic.c (gfc_build_intrinsic_lib_fndecls): Likewise.
-
-       * gfortranspec.c: Convert to ISO C90.
-       (lang_specific_driver): Correct copyright, remove ALT_LIBM usage.
-
-2003-07-26  Paul Brook  <paul@nowt.org>
-
-       * lang.opt: Add -fdump-parse-tree.
-       * options.c (gfc_handle_option): Ditto.
-       * resolve.c (resolve_forall_iterators): Convert to proper type.
-       * trans-stmt.c (gfc_trans_forall_1): Create temp var with correct type.
-
-2003-07-26  Paul Brook  <paul@nowt.org>
-
-       * Makefile.in: Add build dependencies on files common with rest of gcc.
-
-2003-07-26  Lifang Zeng  <zlf605@hotmail.com>
-
-       * trans.h: Declare g95_trans_pointer_assignment.
-       * trans-expr.c (g95_trans_pointer_assignment): New function.
-       (g95_trans_pointer_assign): Use it.
-       * trans-stmt.c (g95_trans_forall_1): Handle pointer assignment.
-       (g95_trans_pointer_assign_need_temp): New function.
-
-2003-07-26  Paul Brook  <paul@nowt.org>
-
-       * gfortran.texi: Replace references to g95.
-
-2003-07-26  Paul Brook  <paul@nowt.org>
-
-       Rename g95_* to gfc_*.
-
-2003-07-25  Paul Brook  <paul@nowt.org>
-
-       * gfortran.h: Rename from g95.h.
-       * trans-types.c (boolean_type_node, booelan_true_node,
-       boolean_false_node): Remove.
-       * trans-types.h: Ditto.
-
-2003-07-25  Chun Huang  <compiler@sohu.com>
-
-       * parse.c (accept_statement): Implement BLOCK DATA statement.
-       * trans-expr.c (g95_conv_variable): Fix bug for dereference pointer
-       variables.
-
-2003-07-24  Lifang Zeng  <zlf605@hotmail.com>
-
-       * trans-stmt.c (temporary_list): Define.
-       (g95_trans_assign_need_temp): New function.
-       (g95_trans_forall_1): Modified for WHERE.
-       (g95_trans_where_assign): Modified.
-       (g95_trans_where_2): Modified.
-       (g95_evaluate_where_mask): Modified.
-       (g95_trans_where): Modified.
-       (g95_get_temp_expr): Removed.
-       (g95_add_to_where_stmt_list): Removed.
-       (compute_overall_iter_number): Modified for WHERE.
-       * trans.h: Remove where_stmt_list.
-
-2003-07-24  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
-
-       * lang.opt: Correct description of options -J and -M.
-
-2003-07-23  Steven Bosscher   <steven@gcc.gnu.org>
-
-       * lang.opt: Move help text to here.
-       * lang-options.h: Remove.
-
-2003-07-23  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
-       * iresolve.c (g95_resolve_transpose): Proper variable in switch.
-       * simplify.c (g95_simplify_nearest): Fix typo and use a correct test
-       on kind.
-
-2003-07-22  Steven Bosscher  <steven@gcc.gnu.org>
-       Paul Brook  <paul@nowt.org>
-
-       * check.c (check_rest): Use global pedantic flag.
-       * io.c (data_desc): Ditto.
-       * error.c (g95_warning, g95_warning_now): Use global flag.
-       * f95-lang.c (LANG_HOOKS_HANDLE_OPTION): Rename from DECODE.
-       (expand_function_body): Update to new prototypes.
-       (g95_init): Use new option names.
-       * g95.h (g95_option_t): Standardize names.
-       (g95_init_options, g95_handle_option): Update prototypes.
-       * interface.c: Use new option names.
-       * match.c: Ditto.
-       * module.c: Ditto.
-       * parse.c: Ditto.
-       * primary.c: Ditto.
-       * resolve.c: Ditto.
-       * scanner.c: Ditto.
-       * simplify.c: Ditto.
-       * symbol.c: Ditto.
-       * trans-array.c: Ditto.
-       * trans-expr.c: Ditto.
-       * trans-types.c: Ditto.
-       * trans-decl.c: Ditto.
-       (g95_build_library_function_decl): Remove obsolete VPARAMS.
-       * trans.h: Ditto.
-       * options.c (g95_display_help): Remove.
-       (g95_init_options): Convert to new scheme.
-       (set_Wall): Ditto
-       (g95module_option): Ditto, rename from g95_parse_arg.
-       (g95_handle_module_path_options): New function.
-       * trans-equivalence.c: Fix error message.
-       * lang.opt: Corrections.
-
-2003-07-21  Steven Bosscher  <steven@gcc.gnu.org>
-
-       * lang.opt: New file.
-
-2003-07-21  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
-
-       * decl.c (match_attr_spec): Set colon_seen.
-
-2003-07-14  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c: Update comment.
-       (g95_trans_array_constructor_subarray): Cleanup loopinfo data.
-       * trans-intrinsic.c (g95_conv_intrinsic_anyall,count,arith,
-       minmaxloc,minmaxval): Ditto.
-       * trans-io.c (g95_trans_transfer): Ditto.
-       * trans-stmt.c: Remove unneeded prototypes.
-       (generate_loop_for_lhs_to_rhs): Rename vars. Add loop post chain.
-       (generate_loop_for_rhs_to_temp): Rename vars. Don't share loopinfo.
-       (compute_inner_temp_size): Remove bits of dead code. Add comments.
-       Don't share loopinfo.
-       (compute_overall_iter_number): Declare as static.
-       (allocate_temp_for_forall_nest): Ditto.
-       (g95_trans_forall_1): Don't pass shared loopinfo.
-       * trans.c (g95_start_block): Expand comment.
-
-2003-07-12  Paul Brook  <paul@nowt.org>
-
-       * arith.c (g95_index_integer_kind): Remove unused initializer.
-       * trans-stmt.c (generate_loop_for_temp_to_lhs): Don't multiply array
-       index by size of element.
-       (generate_loop_for_rhs_to_temp): Ditto.
-       (allocate_temp_for_forall_nest): Use element size, not index size.
-
-2003-07-11  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
-
-       * arith.c (g95_index_integer_kind): Add a TODO.
-       * simplify.c (g95_simplify_nearest): Add a TODO.
-
-2003-07-09  Chun Huang  <compiler@sohu.com>
-
-       * trans.h: Add declarations for gfor_fndecl_string_scan and
-       gfor_fndecl_string_verify.
-       * trans-decl.c (g95_build_intrinsic_function_decls): Build them.
-       * trans-intrinsic.c (g95_conv_intrinsic_scan): New function.
-       (g95_conv_intrinsic_verify): New function.
-       (g95_conv_intrinsic_function): Add SCAN and VERIFY.
-       * simplify.c (g95_simplify_scan, g95_simplify_verify): Fix bug in case
-       of parameter 'BACK=.TRUE.'
-
-2003-07-05  Lifang Zeng  <zlf605@hotmail.com>
-
-       * trans-stmt.c (iter_info, forall_info): Define.
-       (g95_trans_forall_block): Remove.
-       (g95_trans_forall_loop): Use forall info blocks.
-       (g95_trans_nested_forall_loop): New function.
-       (g95_do_allocate): Handle things other than logical masks.
-       (generate_loop_for_temp_to_lhs): New function.
-       (generate_loop_for_rsh_to_temp): New function.
-       (compute_inner_temp_size): New function.
-       (compute_overall_iter_number): New function.
-       (allocate_temp_for_forall_nest): New function.
-       (g95_trans_forall): Move body ...
-       (g95_trans_forall_1): ... to here.  Handle loops with temporaries.
-
-2003-07-02  Paul Brook  <paul@nowt.org>
-
-       * trans-decl.c (create_index_var, g95_build_qualified_array): Put vars
-               in correct scope.  Change callers to match.
-       * trans-types.c (g95_get_dtype_cst): Allow rank 7 arrays.
-       * iresolve.c (g95_resolve_reshape): Only use constant shapes.
-
-2003-07-02  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c (g95_conv_loop_setup): Remove dead var.  Use
-       expression shape for all expressions.
-       * trans-decl.c (g95_symbol_init): Allow adding at very end of list.
-
-2003-07-03  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
-
-       * g95.h (g95_option_t), lang-options.h, options.c (g95_init_options,
-       g95_parse_arg), intrinsic.c (g95_convert_type): support of
-       -Wconversion.
-       * intrinsic.c, g95.h: Add g95_convert_type_warn,
-       * resolve.c (g95_resolve_index): Call it.
-
-2003-07-02  Paul Brook  <paul@nowt.org>
-
-       * iresolve.c (g95_resolve_reshape): Set expression shape.
-       (g95_resolve_shape): Ditto.
-       * simplify.c (g95_simplify_shape): Move common code outside condition.
-       * trans-array.c (g95_conv_array_initializer): Teach it how to count.
-
-2003-07-01  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
-
-       * array.c (g95_array_dimen_size): Deal with EXPR_ARRAY to improve
-       conformance checks.
-
-2003-06-29  Paul Brook  <paul@nowt.org>
-
-       * array.c (g95_simplify_iterator_var): Don't bother with return value.
-       * expr.c (find_array_element, find_component_ref): New functions.
-       (remove_subobject_ref): New function.
-       (simplify_const_ref): Use them.  Rename from simplify_component_ref.
-       (simplify_ref_chain): New function.
-       (g95_simplify_expr): Use it.  Simplify parameter variable subobjects.
-       (g95_specification_expr): Simplify the expression.
-       * resolve.c (resolve_operator): Check simplifications return code.
-       (g95_resolve_expr): Ditto.
-
-2003-06-26  Paul Brook  <paul@nowt.org>
-
-       * expr.c (simplify_component_ref): New function.
-       (g95_simplify_expr): Use it.
-       * resolve.c (resolve_structure_cons): Handle references.
-
-2003-06-25  Paul Brook  <paul@nowt.org>
-
-       * trans-io.c (build_dt): Handle internal units.
-
-2003-06-25  Canqun Yang  <canqun@yahoo.com.cn>
-
-       * trans-common.c (g95_build_common_decl): Array index range starts at 0.
-       (g95_build_common_decl, g95_layout_global_equiv, g95_trans_one_common):
-       Use g95_array_index_type instead of integer_type_node.
-       (g95_build_common_decl, g95_set_common_master_type): Use
-       g95_character1_type_node instead of char_type_node.
-       * trans-equivalence.c (g95_layout_local_equiv): As above.
-
-2003-06-24  Steven G. Kargl  <kargls@attbi.com>
-
-       * g95.h (g95_option_t), options.c (g95_init_options, g95_parse_arg):
-       remove last remains of -fquiet.
-
-2003-06-22  Paul Brook  <paul@nowt.org>
-
-       * resolve.c (resolve_operator): Don't fail if we can't simplify.
-       (g95_resolve_expr): Ditto.
-       (resolce_code): Mark as static.
-       * trans-stmt.c (g95_trans_chaaracter_select): Mark labels because the
-       gimplifer doesn't (yet).
-
-2003-06-20  Paul Brook  <paul@nowt.org>
-
-       * g95.h: Add ST_PAUSE and EXEC_PAUSE.
-       * match.c (g95_match_if): Add ST_PAUSE.
-       (g95_match_stopcode): New function.
-       (g95_match_pause, g95_match_stop): Use it.
-       * parse.c (g95_ascii_statement): Handle ST_PAUSE.
-       (decode_stmt, next_statement, parse_executable): Ditto.
-       * resolve.c (resolve_code): Ditto.
-       * st.c (g95_free_statement): Ditto.
-       * trans-stmt.c (g95_trans_pause): New function.
-       * trans-stmt.h: Declare it.
-       * trans.c (g95_trans_code): Use it.
-       * trans-decl.c (gfor_fndecl_pause_numeric, gfor_fndecl_pause_string):
-       Declare.
-       (g95_build_builtin_function_decls): Initialize them.
-       * trans.h: Ditto.
-       * dump-parse-tree.c (g95_show_code_node): Handle EXEC_PAUSE.
-
-2003-06-18  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
-
-       * io.c (g95_match_open , g95_match_close, g95_match_inquire,
-       match_filepos): Fix error handling.
-
-2003-06-18  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
-
-       * array.c (spec_dimen_size, ref_dimen_size, g95_array_dimen_size):
-       Add assertions on arguments.
-       * resolve.c (expression_shape): Remove useless &.
-       * simplify.c (get_kind, g95_simplify_bit_size, g95_simplify_digits,
-       g95_simplify_ibclr, g95_simplify_ibits, g95_simplify_ibset,
-       g95_simplify_ishft,g95_simplify_ishftc, g95_simplify_maxexponent,
-       g95_simplify_minexponent, g95_simplify_radix, g95_simplify_range
-       g95_simplify_rrspacing, g95_simplify_scale, g95_simplify_spacing,
-       g95_simplify_tan, g95_simplify_tiny): Clean predicates and assertions.
-       (g95_simplify_not, g95_simplify_scale): Add assertions.
-
-2003-06-15  Paul Brook  <paul@nowt.org>
-
-       Clean up stuff to work with the ssa optimizers.
-       * convert.c (convert): Handle BOOLEAN_TYPEs.
-       * f95-lang.c (g95_truthvalue_conversion): Implement.
-       * trans-array.c (g95_trans_array_constructor_value): Group multiple
-       scalar values.
-       * trans.h (g95_truthvalue_conversion): Declare.
-       * trans-intrinsic.c (g95_conv_intrinsic_anyall): Use bool constants.
-       * trans-stmt.c (g95_trans_character_select): Don't create array
-       assignments.  Mark labels as indirect jump targets.
-       * trans-types.h (g95_init_types): Use BOOLEAN_TYPE nodes.
-       (g95_get_dtype_cst): Handle LOGICAL types.
-
-2003-06-14  Paul Brook  <paul@nowt.org>
-
-       * f95-lang.c (g95_gimplify_expr): New function.
-       * trans-array.c (g95_trans_array_constructor_value): Don't create
-       array assignments.
-       (g95_conv_expr_descriptor): Rename simple->gimple.
-       * trans-expr.c (conv_expr_op): Use proper logical operators.
-       * trans-intrinsic.c (build_fixbound_expr): New function.
-       (build_fix_expr): Ditto.
-       (g95_conv_intinsic_aint): Use them. Use builtin functions.
-       (g95_conv_intrinsic_function): Add FLOOR and CEILING.
-
-2003-06-10  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
-
-       * array.c (g95_compare_array_spec): Remove unreachable code.
-       * expr.c (g95_copy_expr): Likewise.
-       * intrinsic.c (g95_convert_type): Likewise.
-       * misc.c (g95_code2string): Likewise.
-       * simplify.c (g95_simplify_ishft, g95_simplify_real,
-       g95_simplify_reshape, g95_simplify_sign, g95_simplify_sqrt): Likewise.
-       * trans-stmt.c (g95_trans_select): Likewise.
-       * primary.c (extend_ref): Add an assertion.
-       * simplify.c (g95_convert_constant): Add const.
-       * intrinsic.h: Remove g95_check_x_ni.
-       * f95-lang.c (g95_finish): Call g95_release_include_path.
-
-2003-06-10  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
-
-       * resolve.c (resolve_contained_functions): Fix typo introduced on
-       2003-01-13.
-
-2003-06-09  Paul Brook  <paul@nowt.org>
-
-       * g95.h: Include system.h not hwint.h.
-       * many: use safe-ctype.h not ctype.h.  Change isalpha -> ISALPHA, etc.
-       * misc.c (g95_getmem): Use xmalloc/memset instead of calloc.
-
-2003-06-09  Paul Brook  <paul@nowt.org>
-
-       * g95.h (g95_symbol): Add fields for COMMON and EQUIVALENCE variables.
-       * Make-lang.in (F95_OBJS): Add files for COMMON and EQUIVALENCE.
-       * trans-decl.c (g95_add_decl_to_functions): Make non-static.
-       (g95_get_symbol_decl): Handle COMMON and EQUIVALENCE objects.
-       (g95_generate_function_code): Translate COMMON and EQUIVALENCE
-       objects.
-       * trans.h (g95_trans_equivalence, g95_trans_common,
-       g95_add_decl_to_function): Declare.
-       * trans-common.c, trans-equivalence.c: New files.
-
-2003-06-08  Steven Bosscher  <steven@gcc.gnu.org>
-
-       * intrinsic.c (g95_intrinsic_extension): Remove.
-       (add_functions): Substitute g95_check_x for g95_check_x_ni
-       everywhere.
-       (g95_init_expr_extensions): New function.
-       (g95_intrinsic_func_interface): Use it.
-       * intrinsic.h: Remove extern decl for g95_intrinsic_extension.
-       * check.c (g95_check_digit, g95_check_huge, g95_check_kind,
-       g95_check_precision, g95_check_present, g95_check_radix,
-       g95_check_range, g95_check_selected_real_kind): Do not set
-       g95_intrinsic_extension.
-       (g95_check_x_ni): Remove now duplicate of g95_check_x.
-
-       * expr.c (check_inquiry): Add FIXME, fixup some code style.
-
-2003-06-06  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
-
-       * g95.h (ref_type): Name this type explicitly.
-       * module.c (MIO_NAME): Add specialisations of mio_name.
-       (mio_symbol_attribute, mio_typespec, mio_array_ref,
-       mio_array_spec, mio_ref, mio_expr, mio_symbol): Use them.
-       (ab_attribute): Name this type explicitly.
-       (mio_symbol_attribute, mio_expr): Add cast to call to find_enum.
-
-2003-06-05  Kejia Zhao  <kejia_zh@yahoo.com.cn>
-
-       * trans-intrinsic.c (g95_conv_allocated): New function.
-       (g95_conv_intrinsic_function): Make G95_ISYM_ALLOCATED work.
-
-2003-06-05  Steven Bosscher  <steven@gcc.gnu.org>
-
-       * f95-lang.c: Don't include g95-support.h
-       (g95_mark_addressable): Add prototype.
-       (g95_init_decl_processing): Remove C front end hack.
-       * f95-tree.c: Remove file.
-       * support.c: Remove file.
-       * g95-support.h: Remove file.
-       * trans-types.c (g95_init_types): Set up boolean
-       type related tree nodes.
-       * Make-lang.in: Remove rules for dead files and
-       dependencies on them.
-
-2003-06-05  Steven Bosscher  <steven@gcc.gnu.org>
-
-       * Make-lang.in (F95_ADDITIONAL_OBJS): Remove the final
-       C front end dependency.  Also, convert.c does not depend on
-       g95-support.h anymore.
-       * convert.c: Don't include c-common.h and g95-support.h
-       * f95-lang.c: Don't inlude c-common.h and c-common.def (3x).
-       (g95_stmt_tree, g95_scope_stmt_stack, anon_aggr_type_p,
-       stmts_are_full_exprs_p, current_stmt_tree,
-       current_scope_stmt_stack): Remove.
-       * g95-support.h (unsigned_conversion_warning): Kill proto.
-       (boolean_type_node, boolean_true_node, boolean_false_node):
-       Don't define here.  Instead, make then true tree nodes in
-       trans-types.
-       * support.c (c_global_trees): Die, C front end, die!!!
-       (g95_init_c_decl_hacks): Don't touch intmax_type_node,
-       uintmax_type_node, string_type_node and const_string_type_node.
-       (decl_constant_value, overflow_warning): Make static functions.
-       They are in death row too, though.
-       (default_conversion, c_expand_asm_operands): Remove.
-       * trans-array.c, trans-expr.c, trans-intrinsic.c, trans-stmt.c,
-       trans.c: Don't include c-common.h.
-       * trans-types.c (boolean_type_node, boolean_true_node,
-       boolean_false_node): Make them real tree nodes.
-       * trans-types.h (intmax_type_node, string_type_node,
-       const_string_type_node): Hack to work around C dependencies
-       in builtin-types.def.
-
-2003-06-04  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
-
-       * decl.c (decl_types): Add some iterators-like sentinels.
-       * decl.c (match_attr_spec): Use them.
-       Use "decl_types" instead of "int".
-       Add cast in call to g95_match_strings.
-       * dump-parse-tree.c (g95_show_namespace):  Use "g95_intrinsic_op"
-       instead of "int".
-       * g95.h (g95_intrinsic_op): Add some iterators-like sentinels.
-       (g95_interface_info): Use "g95_intrinsic_op".
-       * dump-parse-tree.c (g95_show_namespace): Use them.
-       * interface.c (g95_check_interfaces): Use them.
-       * module.c (read_module, write_module): Use them.
-       * symbol.c (g95_get_namespace, g95_free_namespace): Use them.
-       Use "g95_intrinsic_op".
-       * interface.c (check_operator_interface): Use "g95_intrinsic_op".
-       Add a default case in switch statement.
-       * intrinsic.h (g95_generic_isym_id): Moved to...
-       * g95.h (g95_generic_isym_id): here.
-       (g95_intrinsic_sym): Use "g95_generic_isym_id".
-       * intrinsic.c (make_generic): Use "g95_generice_isym_id".
-       * trans-intrinsic.c (g95_intrinsic_map_t,
-        g95_conv_intrinsic_lib_funtion): Use "g95_generice_isym_id".
-       * match.c (g95_match_intrinsic_op): Add cast in call to
-       g95_match_strings.
-
-2003-06-03  Steven Bosscher  <steven@gcc.gnu.org>
-
-       * support.c (skip_evaluation, warn_conversion, lvalue_p,
-       lvalue_or_else, pedantic_lvalue_warning, warn_for_assignment,
-       constant_fits_type_p, convert_and_check,
-       unsigned_conversion_warning): Remove these ugly remnants
-       we inherited from the C front end.
-       (function_types_compatible): Remove '#if 0'-edcode.
-       (build_modify_expr): Likewise.
-       (convert_for_assignment): Don't use the deceased functions.
-       The parameter fundecl is now unused.
-       (decl_constant_value): Always just return decl.  In fact
-       this function is not used at present, but it might be in
-       the future, when we start using the tree inliner.
-       (overflow_warning, default_conversion, c_expand_asm_operands):
-       Abort when these are called, they are part of the C type
-       checking implementation and therefore poison to Fortran.
-
-2003-06-04  Steven Bosscher  <steven@gcc.gnu.org>
-
-       * Make-lang.in (F95_ADDITIONAL_OBJS): Don't depend on
-       c-pretty-print.o and c-dump.o.  Add a comment on why we
-       depend on c-semantics.c.
-       * f95-lang.c (LANG_HOOKS_TREE_DUMP_DUMP_TREE_FN):
-       Don't use the C front end tree dumper hook to dump the
-       language specific tree representation -- we don't have
-       one.  So instead, inherit the default langhook.
-
-2003-06-02  Paul Brook  <paul@nowt.org>
-
-       * trans-expr.c (g95_conv_variable): Remove incorrent assertion.
-
-2003-06-02  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
-
-       * check.c (g95_check_associated): Use proper types.  Remove
-       extraneous argument in call to g95_error().
-
-2003-06-02  Kejia Zhao  <kejia_zh@yahoo.com.cn>
-
-       * resolve.c (resolve_operator): Make logical operands convert to the
-       type with higher kind.
-
-2003-06-02  Kejia Zhao  <kejia_zh@yahoo.com.cn>
-
-       * check.c (g95_check_associated): Make sure both pointer and target has
-       the same type and rank. Null pointer or array section with vector
-       subscript as target are not allowed.
-       * trans.h: Declare gfor_fndecl_associated.
-       * trans-decl.c: (g95_build_builtin_function_decls): Initialize
-       gfor_fndecl_associated.
-       * trans-intrinsic.c (g95_conv_associated): New function.
-       (g95_conv_intrinsic_function): Make G95_ISYM_ASSOCIATED work.
-
-2003-06-02  Kejia Zhao  <kejia_zh@yahoo.com.cn>
-
-       * trans-array.c (g95_conv_expr_descriptor): Set the base of POINTER
-       according to POINTER itself rather than TARGET.
-       (g95_conv_expr_descriptor): Make lbound start at 1.
-       * trans-expr.c (g95_trans_pointer_assign): Fix a bug for Nullify.
-
-2003-06-01  Paul Brook  <paul@nowt.org>
-
-       * expr.c (g95_type_convert_binary): Make it match the standard.
-       * g95.texi: Remove dead link.
-
-2003-06-01  Steven Bosscher  <steven@gcc.gnu.org>
-
-       * g95.texi: Cleanup somewhat in preparation for inclusion
-       in GCC CVS.
-
-2003-05-23  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
-           Canqun Yang  <canqun@yahoo.com.cn>
-
-       * resolve.c (compare_bound_int, resolve_where_shape): Proper return
-       type.
-       (g95_find_forall_index): Return proper value.
-       (g95_resolve_assign_in_forall, g95_resolve_forall): Use proper type to
-       compare the return value from g95_find_forall_index.
-
-2003-05-23  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
-       * g95.h, io.c (g95_st_label): Remove "length".
-       (g95_symtree): Remove "link".
-       (g95_case): Remove "code".
-       * arith.c, arith.h (g95_compare_string, g95_convert_integer,
-       g95_convert_real): Make an argument pointer to const.
-       * decl.c (colon_seen): Add a TODO.
-       * interface.c (g95_compare_types): Fix typo.
-       * interface.c (compare_interfaces): Preserve value of "p".
-       * intrinsic.c (sort_actual): Remove "i".
-       * match.c (g95_match_assign): Proper type in call to g95_match().
-       * parse.c (next_free): Avoid duplicate call due to macro.
-       * parse.c (check_statement_label): wrong type in call to g95_error.
-       * primary.c (match_real_constant): Add a TODO.
-       * resolve.c (resolve_select):  Remove useless conditional.
-       * simplify.c (g95_simplify_repeat): Proper assignment to
-       "value.character.string".
-       * simplify.c (g95_simplify_reshape): Wrong variable in call to
-       g95_error.
-
-2003-05-20  Canqun Yang  <canqun@yahoo.com.cn>
-
-       * trans-stmt.c: Remove unnecessary include file defaults.h.
-
-2003-05-19  Lifang Zeng  <zlf605@hotmail.com>
-
-       * trans-stmt.c (g95_trans_forall_loop): Handle FORALL with negative
-       stride.
-       (g95_trans_forall): Allow arbitrary number of FORALL indexes and
-       actual variables used as FORALL indexes.
-
-2003-05-15  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c (g95_trans_static_array_pointer): Use
-       null_pointer_node.
-       (g95_trans_deferred_array): Initialize static array pointers.
-       * trans-expr.c (g95_conv_function_call): Use formal arglist to
-       correctly pass POINTER and absent CHARACTER arguments.
-
-2003-05-14  Lifang Zeng  <zlf605@hotmail.com>
-
-       * resolve.c (g95_resolve_forall): Resolve FORALL construct/statement.
-       (g95_resolve_forall_body): Resolve FORALL body.
-       (g95_resolve_where_code_in_forall): Resolve WHERE inside FORALL.
-       (g95_resolve_assign_in_forall): Resolve assignment inside FORALL.
-       (g95_find_forall_index): Check whether the FORALL index appears in
-       the expression or not.
-       (resolve_code): Modified.
-
-2003-05-14  Paul Brook  <paul@nowt.org>
-
-       * iresolve.c (g95_resolve_spread): Convert ncopies to index_type.
-
-2003-05-13  Paul Brook  <paul@nowt.org>
-
-       * trans-types.c (g95_max_array_element_size): Now a tree node.
-       (g95_init_types): Work out max size properly.
-       (g95_get_dtype_cst): Modify to match.
-
-2003-05-11  Paul Brook  <paul@nowt.org>
-
-       * trans-io.c (add_case): Create a label decl for case labels.
-
-2003-05-11  Paul Brook  <paul@nowt.org>
-
-       * arith.c (g95_integer_index_kind): New variable.
-       * f95-lang.c (g95_init): Move frontend initialization here ...
-       (g95_post_options): ... from here.
-       * g95.h (g95_index_integer_kind, g95_resolve_index): Declare.
-       * intrinsic.c (add_functions): Use index kinds.
-       * iresolve.c: Convert to index_kind where needed.
-       * resolve.c (g95_resolve_index): Make public, use index_kind.
-       (resolve_array_ref): Adjust to match.
-       * trans-array.c: Rename g95_array_index_kind to g95_index_integer_kind.
-       * trans-stmt.c: Ditto.
-       * trans-types.c: Ditto.
-       * trans-types.h (g95_array_index_kind): Remove declaration.
-       * trans-expr.c (g95_conv_expr_present): Use null_pointer_node.
-
-2003-05-07  Paul Brook  <paul@nowt.org>
-
-       * trans-const.c (g95_conv_mpz_to_tree): Typecast constant.
-       * trans-intrinsic.c (g95_conv_intrinsic_bound): Convert type
-       of bound indices.
-
-2003-05-07  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c (trans_static_array_pointer,
-       g95_trans_array_constructor_value, g95_conv_array_initializer,
-       g95_conv_structure): CONSTRUCTOR nodes only have one operand.
-       (g95_add_loop_ss_code): Convert subscripts to the correct type.
-       * trans-stmt.c (g95_trans_character_select): Ditto.
-       * trans-types.c (g95_init_types): Ditto.
-
-2003-05-07  Steven Bosscher  <steven@gcc.gnu.org>
-
-       * f95-lang.c (expand_function_body): Use input_line, not lineno.
-       * trans-decl.c (g95_generate_function_code,
-       g95_generate_constructors): Likewise.
-       * trans.c (g95_trans_runtime_check, g95_add_block_to_block,
-       g95_get_backend_locus, g95_set_backend_locus, g95_trans_code):
-       Likewise.
-
-2003-05-07  Kejia Zhao  <kejia_zh@yahoo.com.cn>
-       * trans-types.c (g95_get_derived_type): Fix bug for DERIVED type
-       with components point to the DERIVED type itself, and two DERIVED
-       type with components point to each other.
-       * trans-expr.c (g95_conv_componet_ref): Modified
-
-2003-05-07  Kejia Zhao  <kejia_zh@yahoo.com.cn>
-       * trans-expr.c (g95_conv_expr): Translate EXPR_NULL into
-       null_pointer_node.
-       (g95_trans_pointer_assign): Implement Nullify.
-
-2003-05-01  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c (g95_walk_function_expr): Cope with NULL esym.
-       * trans-decl.c (g95_get_symbol_decl): Don't mangle dummy functions.
-
-2003-05-01  Paul Brook  <paul@nowr.org>
-
-       * trans-array.c, trans.c, trans-expr.c, trans-intrinsic.c,
-       trans-stmt.c: Replace empty_stmt_node with build_empty_stmt () and
-       IS_EMPTY_STMT.
-
-2003-05-01  Canqun Yang  <canqun@yahoo.com.cn>
-
-       * trans-stmt.c (g95_trans_integer_select): Add a parameter to build
-       CASE_LABEL_EXPR.
-
-2003-04-28  Paul Brook  <paul@nowt.org>
-
-       * iresolve.c (g95_resolve_transpose): COMPLEX types are twice as big
-       as their kind suggests.
-       (g95_resolve_reshape): Ditto.
-
-2003-04-28  Chun Huang  <compiler@sohu.com>
-
-       * trans-expr.c (g95_conv_substring_expr): New function.
-       (g95_conv_expr): Use it.
-
-2003-04-28  Paul Brook  <paul@nowt.org>
-
-       * iresolve.c (g95_resolve_transpose): Make it match the
-       implementation.
-       * trans-intrinsic.c (g95_is_intrinsic_libcall): Add TRANSPOSE.
-
-2003-04-18  Steven Bosscher  <steven@gcc.gnu.org>
-
-       * trans-types.c (g95_add_field_to_struct): New function to
-       add a field to a UNION_TYPE or RECORD_TYPE.
-       * trans-types.h (g95_add_field_to_struct): Prototype.
-       (g95_get_derived_type): Use g95_add_field_to_struct to add
-       components.
-       * trans-io.c (g95_add_field): Remove.
-       (ADD_FIELD): Use new g95_add_field_to_struct function.
-       (ADD_STRING): Likewise.
-       * trans-stmt.c (g95_trans_select): Likewise.
-       (g95_add_field): Remove duplicated function.
-
-2003-04-18  Canqun Yang  <canqun@yahoo.com.cn>
-
-       Port implementation for CHARACTER SELECT from Andy's tree.
-       * trans-stmt.c (g95_trans_character_select): Implement character
-       select. (g95_add_field): New function.
-       * trans-decl.c: Declare 'gfor_gndecl_select_string'.
-       (g95_build_builtin_function_decls): Add 'gfor_fndecl_select_string'.
-       * g95.h (struct g95_case): Add field 'int n'.
-       * trans.h: Declare 'gfor_fndecl_select_string'.
-
-2003-04-18  Steven Bosscher  <steven@gcc.gnu.org>
-
-       * bbt.c (duplicate_key, g95_insert_bbt_with_overlap): Remove.
-       (g95_insert_bbd): Die on duplicates.
-       * g95.h (g95_insert_bbt_with_overlap): Delete prototype.
-
-2003-04-14  Steven Bosscher  <steven@gcc.gnu.org>
-
-       * g95.texi: Require GMP 4.0 -- like we actually
-       do.  Explain the testsuite and what-goes-where.
-       Don't use undefined texinfo symbol.  Break very
-       long line.  Remove finished item from the list
-       of open projects.
-
-2003-04-11  Canqun Yang  <canqun@yahoo.com.cn>
-
-       * trans-stmt.c (g95_evaluate_where_mask): Give mask temporaries
-       LOGICAL type.
-
-2003-04-10  Canqun Yang  <canqun@yahoo.com.cn>
-
-       * trans-stmt.c (g95_trans_forall): Implement WHERE inside FORALL.
-       (g95_trans_forall_body): New function.
-
-2003-04-10  Canqun Yang  <canqun@yahoo.com.cn>
-
-       * resolve.c (resove_where): New function.
-       (resolve_where_shape): New function.
-       (resolve_code): Add call to 'resolve_where'
-       * trans-stmt.c (g95_trans_where): Modified.
-       (g95_trans_where_2): New function.
-       (g95_trans_where_assign): New function.
-       (g95_evaluate_where_mask): New function.
-       (g95_add_to_stmt_list): New function.
-       (g95_get_temp_expr): New function.
-       * trans.h (where_stmt_list): New structure.
-
-2003-04-10  Paul Brook  <paul@nowt.org>
-
-       * g95spec.c (DEFAULT_SWITCH_TAKES_ARG): Remove.
-       (DEFAULT_WORD_SWITCH_TAKES_ARG): Ditto.
-
-2003-04-10  Steven Bosscher  <steven@gcc.gnu.org>
-
-       Update after mainline -> tree-ssa-branch merge.
-       * f95-lang.c (g95_mark_addressable): Update put_var_into_stack
-       call.
-       (g95_init): Update for new lang_hooks definition.
-       (g95_post_options): New langhook.
-       (LANG_HOOK_POST_OPTIONS): Clear, then define to g95_post_options.
-       * scanner.c (g95_new_file): Comment update.
-
-2003-04-09  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
-
-       * g95.h, lang-options.h: Add -Wimplicit-interface.
-       * options.c (g95_init_options, g95_parse_arg): Set it.
-       * interface.c (check_intents): Warn about call with implicit
-       interface.
-       * resolve.c (resolve_unknown_f, resolve_unknown_s): Call
-       g95_procedure_use.
-
-2003-04-05  Paul Brook  <paul@nowt.org>
-
-       * iresolve.c (g95_resolve_spread): Don't resole based on type.
-       * trans-intrinsic.c (g95_is_intrinsic_libcall): Add G95_ISYM_SPREAD.
-
-2003-03-29  Paul Brook  <paul@nowt.org>
-
-       * iresolve.c (g95_resolve_pack): Don't bother resolving based on type.
-       (g95_resolve_unpack): Ditto.
-       * trans-intrinsic.c (g95_conv_intrinsic_merge): New Function.
-       (g95_conv_intrinsic_function): Use it.  Remove PACK and UNPACK.
-       (g95_is_intrinsic_libcall): Add PACK and UNPACK.
-
-2003-03-25  Paul Brook  <paul@nowt.org>
-
-       * arith.c (g95_unary_user, g95_user): Remove dead functions.
-       * arith.h: Ditto.
-       * array.c (g95_free_array_ref): Ditto.
-       * g95.h: Ditto.
-       * symbol.c (g95_use_derived_tree): Ditto.
-       * intrinsic.c (add_functions): Use simplification for SCALE.
-       * primary.c (g95_match_rvalue): Test sym, not symtree.
-
-2003-03-25  Paul Brook  <paul@nowt.org>
-
-       * trans-decl.c (build_function_decl): Add parameter before it gets
-       turned into a constant.
-       * iresolve.c (g95_resolve_eoshift): Resolve to a useful name.
-       * trans-intrinsic.c (g95_is_intrinsic_libcall): Add G95_ISYM_EOSHIFT.
-       * trans-decl.c (g95_create_module_variable): Don't pushdecl constants.
-
-2003-03-22  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c (g95_conv_array_initializer): Allow scalar
-       expressions.
-       * trans-decl.c (g95_finish_var_decl): Result variables are not
-       module variables.
-       * trans-intrinsic.c (g95_conv_intrinsic_transfer): New function.
-       (g95_conv_intrinsic_function): Use it.
-       * trans-types.h (g95_type_spec): Remove dead declaration.
-
-2003-03-21  Paul Brook  <paul@nowt.org>
-
-       * trans-decl.c (g95_build_function_decl): Mark string parameters.
-
-2003-03-20  Paul Brook  <paul@nowt.org>
-
-       * trans-decl.c (g95_build_function_decl): Put character length
-       parameters at the end of the function declaration.
-       * trans-expr.c (g95_conv_function_call): Ditto.
-       * trans-types.c (g95_get_function_type): Ditto.
-
-2003-03-20  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
-
-       * resolve.c (resolve_formal_arglist): Don't impose intent for
-       procedure arguments of pure functions.
-       (resolve_select): Remove redundant assignment.
-
-2003-03-19  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
-
-       * arith.c (validate_logical), g95.h, options.c (g95_init_options):
-       Remove option l1.
-       * g95.h, intrinsic.c(g95_get_intrinsic_sub_symbol): Add const.
-       * iresolve.c(g95_resolve_cpu_time, g95_resolve_random_number): Add
-       const.
-       * lang-options.h: Remove -finline-repack-arrays. Add -fg77-calls.
-       Order list.
-       * symbol.c (g95_add_type): Fix typo in comment.
-
-
-2003-03-16  Paul Brook  <paul@nowt.org>
-
-       * dump-parse-tree.c (g95_show_code_node): Print resolved sym name.
-       * expr.c (g95_build_call): Remove.
-       * f95-lang.c (puchdecl_top_level): New function.
-       * g95.h (g95_code): Store resolved symbol, not just the name.
-       * intrinsic.c (g95_intrinsic_namespace): New global namespace.
-       (g95_intirinsic_init_1, g95_intrinsic_done_1): Use it.
-       (g95_get_intrinsic_sub_symbol): New function.
-       * iresolve.c (g95_resolve_cpu_time): Use it.
-       (g95_resolve_random_number): Ditto.
-       * resolve.c: Set code->resolved_sym instead of code->sub_name.
-       * trans-decl.c (g95_get_extern_function_decl): Give external decls
-       the correct DECL_CONTEXT.  Add global symbold to the global scope.
-       * trans-stmt.c (g95_trans_code): Remove hacks now the fronted is
-       fixed.
-
-2003-03-16  Paul Brook  <paul@nowt.org>
-
-       * g95.h (g95_option_t): Add g77_calls. Remove inline_repack_arrays.
-       * options.c (g95_parse_arg): Ditto.
-       * module.c (mio_symbol_attribute): Handle the always_explicit bit.
-       * resolve.c (resolve_formal_arglist): The always_explicit sould be set
-       for the procedure, not the parameter.
-       * trans-array.c (g95_trans_g77_array): New function.
-       (g95_trans_assumed_size): Use it.
-       (g95_trans_dummy_array_bias): Ditto.
-       (g95_conv_array_parameter): Handle g77 arrays. Move existing body ...
-       (g95_conv_expr_descriptor): ... to here.  Update callers.
-       * trans-decl.c (g95_build_dummy_array_decl): Handle g77 arrays.
-       (g95_get_symbol_decl): Avoid processing g77 arrays multiple times.
-       * trans-expr.c (g95_conv_function_call): Handle g77 arrays.
-       * trans-intrinsic.c (g95_get_symbol_for_expr): Never use g77 arrays.
-       * trans-types.c (g95_is_nodesc_array): Handle g77 arrays.
-       (g95_sym_type): Ditto.
-
-2003-03-15  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c (g95_walk_elemental_function_args): Don't amputate the
-       first chain.
-       * trans-expr.c (g95_conv_function_call): Use the resolved symbol.
-
-2003-03-14  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c (g95_array_is_packed): Remove.
-       (g95_conv_array_base): Correctly handle all descriptorless cases.
-       (g95_conv_array_stride): Use descriptorless strides.
-       (g95_trans_dummy_array_bias): Don't always repack the array.
-       (g95_build_dummy_array_decl): Automatic dummy arrays are only partial
-       packed.
-       * trans-types.c (g95_get_nodesc_array_type): Differentiate between
-       dummy and non-dummy arrays...
-       (g95_sym_type, g95_get_derived_type): ... like these.
-       (g95_get_array_type_bounds): Allow discontiguous arrays.
-
-2003-03-12  Paul Brook  <paul@nowt.org>
-
-       * array.c (g95_resolve_array_spec): Fix comment.
-       * g95.h (symbol_attributes): New flag always_explicit.
-       * resolve.c (resolve_formal_arglist): Set it always_explicit.
-       * iresolve.c (g95_resolve_lbound, g95_resolve_ubound): Simplify.
-       * trans-array.c (g95_conv_descriptor_dimension): Remove dead assert.
-       (g95_trans_array_bounds): Allow assumed shape arrays.
-       (g95_trans_repack_array): Remove.
-       (g95_trans_dummy_array_bias): Rewite to use descriptorless arrays.
-       * trans-decl.c (g95_build_qualified_array): Only ignore absent
-       bounds for assumed size arrays.
-       (g95_build_dummy_array_decl): Use descriptorless arrays.
-       * trans-expr.c (g95_conv_expr_present): Allow descriptorless arrays.
-       (g95_trans_pointer_assign): Fix typo.
-       * trans-intrinsic.c (g95_conv_intrinsic_function_args): Remove dead
-       code.
-       (g95_conv_intrinsic_bound): Rewrite to handle descriptorless arrays.
-       * trans-types.c (g95_get_nodesc_array_type): Allow non-packed arrays.
-       Also modify callers.
-       * trans-types.h (g95_get_nodesc_array_type): Modify prototype.
-
-2003-03-08  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c (g95_walk_elemental_functions): Don't reverse the SS.
-       (g95_conv_array_ubound): Provide dummy value for assumed size arrays.
-       * resolve.c (compare_spec_to_ref): Allow full array sections.
-
-2003-03-08  Paul Brook  <paul@nowt.org>
-
-       * expr.c (g95_simplify_expr): Also simplify array index and
-       substring expressions.
-       * resolve.c (compare_spec_to_ref): Check for assumed size bounds.
-       * trans-array.c (g95_trans_array_bounds): New function.
-       (g95_trans_auto_array_allocation): Use it.
-       (g95_trans_assumed_size): Rewrite.
-       * trans-decl.c (gfor_fndecl_in_pack, gfor_fndecl_in_unpack): Declare.
-       (gfor_fndecl_repack): Remove.
-       (g95_build_qualified_array): Handle absent upper bounds.
-       (g95_build_dummy_array_decl): Assumed shape arrays are descriptorless.
-       (g95_get_symbol_decl): Update.
-       (g95_build_intrinsic_function_decls): Initialize new decls.
-       * trans.h (gfor_fndecl_in_pack, gfor_fndecl_in_unpack): Declare.
-       (gfor_fndecl_repack): Remove.
-       * trans-io.c (g95_build_io_library_fndecls): Correct prototypes.
-       * trans-types.c: (g95_build_array_type): Merge duplicated code..
-       (g95_get_nodesc_array_type): Handle absent bounds.
-       * trans-types.h (g95_get_nodesc_array_type): Declare.
-
-2003-03-04  Paul Brook  <paul@nowt.org>
-
-       * f95-lang.c (DEF_FUNCTION_TYPE_VAR_3): Define before including
-       builtin-types.def.
-
-2003-03-02  Paul Brook  <paul@nowt.org>
-
-       * options.c (g95_init_options): Drfault to 1.
-       (g95_pasrse_arg): Add -frepack-arrays, use strcmp.
-       * trans-array.c (g95_conv_array_data, g95_conv_array_base,
-       g95_conv_array_stride,g95_conv_array_lbound, g95_conv_array_ubound):
-       Handle non-constant size automatic arrays.
-       (g95_conv_section_upper_bound, g95_conv_section_startstride): Use
-       generic bound functions.
-       (g95_trans_auto_array_allocation): Don't create a descriptor.
-       (g95_trans_assumed_size): New function (broken).
-       (g95_trans_dummy_array_bias): Remove unused var.
-       * trans-array.h (g95_trans_assumed_size): Declare.
-       * trans-decl.c (create_index_var): New fuction.
-       (g95_build_qualified_array): New function.
-       (g95_get_symbol_decl): Use it.
-       (g95_trans_deferred_vars): Handle assumed shape seperately.
-       * trans-types.c (get_element_type): Handle heap allocated arrays.
-       (g95_is_nodesc_array): Include non-const size arrays.
-       (g95_get_nodesc_array_type): Ditto.
-
-2003-02-23  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c (g95_array_init_size): Should use stride, not size of
-       last dimension.
-
-2003-02-18  Paul Brook  <paul@nowt.org>
-
-       * trans-expr.c (g95_trans_arrayfunc_assign): Nove elemental check
-       after intrinsic function check.
-
-2003-02-18  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
-
-       * io.c (match_io): Fix missing return value and remove useless
-       assignment.
-       * match.c (g95_match): Remove useless assignment.
-       * module.c (parse_string):  Remove useless post increment.
-       * simplify.c (g95_simplify_verify): Remove useless assignment.
-
-2003-02-15  Paul Brook  <paul@nowt.org>
-
-       * expr.c (restricted_intrinsic): Handle bad values gracefully.
-       * g95.h (symbol_attribute): Add referenced member.
-       (g95_symbol): Add dummy_order member.
-       (g95_set_sym_referenced): Declare.
-       * match.c (g95_match_assignment, g95_match_call): Use it
-       * primary.c (match_actual_arg, g95_match_rvalue,
-       g95_match_variable): Ditto.
-       * symbol.c (next_dummy_order): New variable.
-       (g95_set_sym_referenced): New function.
-       (check_done): New function.
-       (g95_add_*): Use it.
-       * trans-decl.c: Make formatting conform to GCC standards.
-       (g95_defer_symbol_init): Add dummy variables in the right order.
-       (g95_get_symbol_decl): Only accept referenced variables.
-       (g95_create_module_variable): Module variables are always required.
-       (generatr_local_decls): New function.
-       (generate_local_vars): New function.
-       (g95_generate_function_code): Use it.
-
-2003-02-13  Paul Brook  <paul@nowt.org>
-
-       * trans-decl.c (g95_conv_struct_cons): Remove.
-       (g95_get_symbol_decl): Use g95_conv_expr for structure initializers.
-       * trans-expr.c (g95_conv_structure): New function.
-       (g95_conv_expr): Use it.
-
-2003-02-09  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c (g95_array_init_size): Don't evaluate the linit
-       expressions multiple times.
-       (g95_trans_auto_arry_allocation): Use pointer not tmp.
-
-2003-02-08  Paul Brook  <paul@nowt.org>
-
-       * module.c (mio_symtree_ref): Declare as static.
-       (mio_expr): Remove dead code.
-       (read_module): Set the symtree link for fixups.
-       * trans-intrinsic.c (g95_conv_intrinsic_round): Rename...
-       (build_round_expr): ... to this.
-       (g95_conv_intrinsic_aint): New function.
-       (g95_conv_intrinsic_function): Use it.
-
-2003-02-08  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c (g95_trans_array_constructor_value): Use the acutal
-       offset after modificaton, not the increment expression.
-       * dependency.c: Kill excess whitespace.
-
-2003-02-07  Sanjiv Gupta  <sanjivg@noida.hcltech.com>
-
-       * dependency.h: Remove some function declarations.
-       * dependency.c (get_no_of_elements): Change this function not to
-       return int.
-       * other: Add comments for all modified functions.
-
-2003-02-06  Paul Brook  <paul@nowt.org>
-
-       * g95spec.c (lang_specific_functions): Fix initializer warning.
-       * dump-parse-tree.c (g95_show_expr): Use typespec instead of symtree
-       for structure type names.
-       * trans-decl.c (g95_cons_structure_cons): New function.
-       (g95_get_symbol_decl): Use it.
-       * trans-expr.c (g95_conv_component_ref): Remove duplicate pointer
-       referencing code.
-
-2003-02-06  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
-
-       * resolve.c (compare_cases): Add const to casts.
-
-2003-01-30  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
-
-       * g95.h (g95_check_f): Change a1 to f1m.
-       * intrinsic.c (add_sym_1m, check_specific,
-       g95_intrinsic_func_interface): Use it.
-
-       * module.c (init_pi_tree): Remove useless cast.
-       (fp2): Fix argument type.
-
-       * parse.c (parse_select_block): Add comment.
-
-2003-02-05  Toon Moene  <toon@moene.indiv.nluug.nl>
-
-       * lang-options.h: Fix warning involving C90 concatenated
-       strings.
-
-2003-02-06  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-           Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
-
-       * io.c (format_asterisk): Complete initializer to kill warning.
-       * arith.c (DEF_G95_INTEGER_KIND, DEF_G95_LOGICAL_KIND,
-       DEF_G95_REAL_KIND, MPZ_NULL, MPF_NULL): New #defines.
-       (g95_integer_kinds, g95_logical_kinds, g95_real_kinds): Use the
-       new defines to complete initializers.  Kills all warnings.
-
-       * Make-lang.in: Comment cleanup.
-
-2003-02-05  Paul Brook  <paul@nowt.org>
-
-       * array.c (g95_free_constructor): Handle NULL expressions.
-       * resolve.c (resolve_structure_cons): Ditto.
-       * decl.c (g95_match_null): New Function.
-       (variable_decl): Use it.
-       * module.c (mio_expr): Don't bother saving symtree for EXPR_STRUCTURE.
-       * primary.c (g95_match_runtime): Don't use symtree for EXPR_STRUCTURE.
-       * trans-types.c (g95_set_decl_attributes): Remove empty function.
-
-2003-02-05  Paul Brook  <paul@nowt.org>
-
-       * trans.h (build1_v): New macro.
-       (build_v): Remove pointless and incorrect prototype.
-       * various: Use build1_v for GOTO_EXPR and LABEL_EXPRs.
-       * f95-lang.c (g95_init_builtin_decls): DEF_BUILTIN takes 10 args.
-
-2003-02-01  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * Make-lang.in (F95_OBJS): Remove one more dead file.
-
-2003-02-01  Paul Brook  <paul@nowt.org>
-
-       * lang-specs.h: Don't pass -ffixed-form to the linker.
-       * trans-decl.c (g95_generate_function_code): Clear saved decl chain.
-
-2003-02-01  Paul Brook  <paul@nowt.org>
-
-       * Make-lang.in (F95_OBJS): Remove dead files.
-       * trans-array.c (g95_array_init_size): Do the right thing when
-       ubound=NULL.
-       * trans-decl.c (g95_generate_function_code): Initialize deffered
-       symbol list before translating contained subroutines.
-       * trans-expr.c (g95_conv_expr, g95_conv_expr_reference): Substitute
-       scalar invariant values here...
-       (g95_conv_variable, g95_conv_function_call): ... instead of here ...
-       * trans-intrinsic.c (g95_conv_intrinsic_function_args): .. and here.
-
-2003-01-29  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c (g95_add_loop_code): Put pre code in the right block.
-       (g95_walk_elemental_function_args): Reverse chains before adding.
-       (g95_reverse_ss): Move about a bit.
-       * trans-expr.c (g95_conv_function_call): Handle scalar intrinsic
-       function arguments.
-
-2003-01-28  Paul Brook  <paul@nowt.org>
-
-       * intrinsic.c (resolve_intrinsic): Use correct union member.
-       * trans-array.c (g95_trans_dummy_array_bias): Don't touch absent
-       parameters.
-       * trans-decl.c (g95_get_symbol_decl): Don't translate initializers for
-       use associated variables.
-       * trans-intrinsic.c (g95_conv_intrinsic_present): Move body ...
-       * trans-expr.c (g95_conv_expr_present): ... to here.
-       * trans.h: Declare it.
-       * trans-types.c (g95_sym_type): Assume subroutine if not specified.
-
-2003-01-28  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
-
-       * array.c (expand_iterator): Suppress useless assignment.
-       * decl.c (match_char_spec): Ditto.
-       * io.c (match_io_iterator): Ditto.
-       * primary.c (match_real_constant): Ditto.
-       * interface.c (fold_unary, g95_free_interface, g95_extend_expr):
-       Ditto.  Also, use g95_intrinsic_op not int for intrinsic operators.
-       * matchexp.c (match_add_operand, match_level_5): Likewise.
-       * module.c (parse_atom, find_enum): Likewise.
-       * resolve.c: move #include <string.h>
-       (resolve_select): Fix serious typo.
-
-2003-01-28  Steven Bosscher  <s.bosscher@student.tudelft.n>
-
-       * Make-lang.in: Don't build with broken tree-ssa-pre.
-
-2003-01-28  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * resolve.c (resolve_index): Add a TODO.
-       * symbol.c: Remove useless "#include <ctype.h>".
-
-2003-01-27  Paul Brook  <paul@nowt.org>
-
-       * check.c (check_rest): Allow different type kinds as an extension.
-       * g95.h (g95_resolve_f): Add f1m.
-       * intrinsic.c (add_sym_1m, resolve_intrinsic): Use it.
-       * intrinsic.h: Chenge prototypes for MIN and MAX.
-       * iresolve.c (g95_resolve_minmax): New function.
-       (g95_resolve_min, g95_resolve_max): Use it.
-       * trans-intrinsic.c (g95_trans_intrinsic_minmax): Only evaluate
-       arguments once.
-       (g95_conv_intrinsic_present): Fix logic.
-
-2003-01-27  Steven Bossche  <s.bosscher@student.tudelft.nl>
-
-       * g95.h (g95_case): Don't be a tree, be a double linked list.
-       * match.c (match_case_selector): Remove redundant semantics check.
-       Clean up a few goto's to make it a tiny little bit faster.
-       * resolve.c (case_tree): Die.
-       (compare_cases): Accept and compare unbounded cases too.
-       (check_case_overlap): Don't build a tree.  Instead, merge-sort the
-       whole list of g95_cases passed from resolve_select.
-       (sane_logical_select): Die.
-       (check_case_expr): Return FAILURE if a CASE label is of the wrong
-       type kind.
-       (resolve_select): Fixup case expression for computed GOTOs, put it
-       in expr, not expr2, for easier handing in the parse tree dumper and
-       the code generator.  Rewrite the rest of the function: Kill
-       unreachable case labels and unreachable case blocks.
-       * dump-parse-tree.c (g95_show_code_node): Always dump expr for
-       an EXEC_SELECT, not case2 anymore.
-       * trans-const.c (g95_conv_constant_to_tree): New function.
-       (g95_conv_constant): Use it.
-       * trans-const.h: Declare prototype for the new function.
-       * trans-stmt.c (g95_trans_integer_select, g95_trans_logical_select,
-       g95_trans_character_select): New static functions.
-       (g95_trans_select): Rewrite.
-
-2003-01-26  Paul Brook  <paul@nowt.org>
-
-       * intrinsic.c (add_fnctions): Properly add dreal.
-       * trans-intrinsic.c (g95_conv_intrinsic_present): New function.
-       (g95_conv_intrinsic_function): Use it.
-       * trans-io.c (build_dt): Abort on internal files (unimplemented).
-
-2003-01-26  Paul Brook  <paul@nowt.org>
-
-       Widespread changes to the handling of symbols in expressions.  These
-       are now linked via g95_symtree nodes.
-       * parse.c (g95_fixup_sibling symbols): New function.
-       (parse_contained): Use it.
-       * g95.h (symbol_attribute): Add contained.  Indicates a symbol is a
-       contained procedure that has bee correctly fixed up.
-       (g95_code, g95_expr): Point to a g95_symtree, not a g95_symbol.
-
-2003-01-24  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c (g95_walk_expr): Function result attributes are in
-       sym->result.
-       * trans-expr.c (g95_conv_function_call,
-       g95_trans_arrayfunc_assign): Ditto.
-       * trans-decl.c (g95_get_symbol_for_expr): Set sym->result.
-
-2003-01-23  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * expr.c (check_restricted): Fix error message.
-       * symbol.c (free_st_labels): Plug memleak.
-
-2003-01-22  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * arith.c (reduce_unary, reduce_binary_ac, reduce_binary_ca,
-       reduce_binary_aa, reduce_binary, eval_intrinsic,
-       eval_intrinsic_f2): Use typesafe prototypes for eval functions.
-       * g95.h (g95_check_f, g95_simplify_f, g95_resolve_f): New unions
-       for typesafe intrinsics helper functions.
-       (g95_intrinsic_sym): Use them.
-       * intrinsic.c (do_check, add_sym, add_sym_0, add_sym_1,
-       add_sym_1s, add_sym_1m, add_sym_2, add_sym_3, add_sym_4,
-       add_sym_5, add_conv, resolve_intrinsic, do_simplify,
-       check_specific, g95_intrinsic_func_interface,
-       g95_intrinsic_sub_interface): Adjust all calls to intrinsics
-       helper functions.
-       * trans-decl.c (g95_get_extern_function_decl): Likewise.
-       * Make-lang.in: Don't disable warnings for strict prototypes
-       any longer, everything is typesafe now.
-
-2003-01-22  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * bbt.c (duplicate_node): Make static.
-       * module.c (module_name): Make static.
-       * scanner.c (include_dirs): Make static.
-
-2003-01-20  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       Hard coded _gfor_'s should not show up anymore.
-       * g95.h (PREFIX): New macro.
-       * iresolve.c (g95_resolve_cpu_time): Use PREFIX, not
-       hard-coded "_gfor".
-       (g95_resolve_random_number): Likewise.
-       * trans-decl.c (g95_build_intrinsic_function_decls): Likewise.
-       * trans-io.c: Remove 'prefix' macro.  Replace all uses with
-       the new PREFIX macro from g95.h.
-
-2003-01-20  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       The troubles of forking... Andy implemented this just now too.
-       Let's stick to that and keep the trees close.
-       * g95.h (g95_st_label): 'format' member is now a g95_expr.
-       * io.c: Revert previous changes.
-       (g95_match_format): Match the format string as a character
-       literal expression.
-       * match.h (g95_statement_label): Declare external.
-       * parse.c: Revert previous changes.
-       * symbol.c (g95_free_st_label): Free a g95_expr instead
-       if a 'char *'.
-       * trans-io.c: Revert previous changes.
-       (build_dt): Use set_string to set the format string.
-
-2003-01-20  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * io.c (format_string): Make non-static.
-       (g95_match_format): Remember the format string.
-       (terminate_io): Add I/O termination for empty I/O lists.
-       * match.h: Declare external format_string.
-       * parse.c (check_statement_label): Attack the format string
-       to a format label for FORMAT statements.
-       * trans-io.c (g95_add_field): Define prefix macro.  Replace
-       all uses of PREFIX define with a use of this macro.
-       (build_dt): Implement formatted I/O for format labels.
-
-2003-01-20  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * lang-options.h: Kill "-std=F".
-       * options.c: Remove unimplemented "-std=F".  Modify
-       web address.
-       * misc.c (g95_terminal_width): New function.
-       * error.c (g95_error_init_1): Use g95_terminal_width.
-       * g95.h: Add prototype for g95_terminal_width, remove
-       fmode flag.
-
-2003-01-19  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * Make-lang.in: Fix typo.
-
-2003-01-18  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * g95.h (struct g95_case): Remove unused cruft, new member
-       'where' to keep track of the locus of the default case.
-       * match.c (g95_match_case): Add locus to the current case.
-       (match_case_selector): Likewise.
-       * parse.c (parse_select_block): Move semantics check for
-       multiple DEFAULT cases out of here to...
-       * resolve.c (check_case_overlap): ...here.  Return sooner
-       when possible.
-       (check_case_expr): Take two g95_cases now, use to sure the
-       expression kinds are the same.
-       (resolve_select): Cleanup.
-
-2003-01-18  Paul Brook  <paul@nowt.org>
-
-       * trans-io.c: Fix typos in ported IO work (set_fla[tg]).
-       * trans-decl.c (g95_set_symbol_decl): Handle non-array result
-       variables.
-       (g95_get_extern_function_decl): Put decls in the correct context.
-
-2003-01-18  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * trans-io.c: Port changes from Andy to set ERR flag.
-
-2003-01-17  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c: Add various comments.
-       (g95_ss_terminator): Declare as const.
-       (g95_walk_expr): Remove first parameter and update all callers.
-       (g95_walk_op_expr): Initialize scalar SS properly.
-       * trans-array.h (g95_walk_expr): Update prototype.
-       * trans-expr.c: Update for new g95_walk_expr.
-       * trans-intrinsic.c: Ditto.
-       * trans-io.c: Ditto.
-       * trans.h: Various comments for SS chains.
-
-2003-01-17  Paul Brook  <paul@nowt.org>
-
-       * intrinsic.h (g95_generic_isym_id): Add G95_ISYM_S?_KIND, SPACING
-       and RRSPACING.
-       * intrinsic.c (add_functions): Use them.
-       * trans-intrinsic.c (g95_conv_intrinsic_function): Ditto.
-       * trans-expr.c (g95_conv_expr_lhs): Abort on impossible error.
-
-2003-01-17  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       Fallout of a small merge conflict:
-       * intrinsic.c: Un-revert lost patch (G95_ISYM_SCALE).
-
-2003-01-17  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * initrinsic.c: New add_sym_* functions for strong typing.
-       (add_conv): Make prototype strict.
-       * dump-parse-tree.c, dependency.c: Include config.h
-       * resolve.c, trans-io.c: Fix typos.
-
-2003-01-17  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * dump-parse-tree.c (g95_show_code_node): Show the
-       condition for a computed GOTO that was transformed
-       to a SELECT CASE construct.
-       * resolve.c (check_case_overlap): Revert previous switch
-       to treaps, it was too slow and didn't catch all trouble.
-       (resolve_symbol): Be more flexible about module procedures.
-       * symbol.c (check_conflict): Point to relevant section in
-       the standard for dubious conflict.  Allow procedure
-       dummy arguments to be optional again.
-       * trans-io (add_field): Rename to g95_add_field.  Change
-       all callers.
-       * trans-stmt (trans_select): Handle unbounded cases for
-       integer SELECT CASE constructs.  Fix/add more comment.
-
-2003-01-17  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * g95.h: Uses GCC's function attribute macros.
-       * error.c, module.c, parse.c, g95.h: More function attributes.
-
-2003-01-16  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-       Forgot a file...
-       * trans-decl.c (get_label_decl): Use TREE_LINENO instead
-       of DECL_SOURCE_LINE, and TREE_FILENAME instead of
-       DECL_SOURCE_FILE.
-
-2003-01-16  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * f95-lang.c (pushdecl): Use TREE_LINENO instead of
-       DECL_SOURCE_LINE.
-       * trans.c (g95_trans_code): Use annotate_all_with_file_line
-       instead of nowdead wrap_all_with_wfl.
-
-2003-01-14  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * parse.c (g95_parse_file): In verbose mode, dump the parse tree
-       before generating code, so we can still see it even if the code
-       generation phase dies.
-
-2003-01-14  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * decl.c (build_sym): Split out initialization expression parts...
-       (add_init_expr_to_sym): ...to here.
-       (variable_decl): Add the symbol following an attribute list to the
-       symbol tree before parsing the optional initialization expression
-       if the symbol is not of a derived type.
-       * primary.c (g95_match_rvalue): Don't assume a symbol always has
-       a value if it is a PARAMETER.
-
-2003-01-14  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * misc.c: Don't #include <mcheck.h>
-       * module.c: Ditto.  Kill uses of mtrace, muntrace.  If there
-       ever was a glibc bug, then either this was never reported to
-       glibc people, or it has been fixed for so long that there's
-       no information you can find about it, anywhere.
-
-2003-01-14  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       Fix warnings:
-       * module.c (attr_bits, bt_types, array_spec_types):
-       Switch 'const' and 'static'.
-       * iresolve.c (g95_resolve_reshape): Make __resolve0 non-'const'.
-
-       GNU'ify source code:
-       * trans-io.c: Numerous fixes, one fixed warning and a few
-       TODO markers so that we don't forget about them.
-
-2003-01-13  Paul Brook  <paul@nowt.org>
-
-       * intrinsic.c (add_functions): Add G95_ISYM_SCALE.
-       * intrinsic.h (g95_generic_isym_id): Remove bogus G95_ISYM_ANINIT.
-       Add G95_ISYM_SCALE.
-       * trans-intrinsic.c (g95_conv_intrinsic_function): Ditto
-       * match.c (g95_match_stop): Fix dumb == -> != error.
-
-2003-01-13  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * dump-parse-tree.c (show_indent): Add line breaks.  This
-       whole dumping process needs cleanups.
-       * f95-lang.c (g95_mark_addressable): Fix prototype to match
-       the langhook.  Fix 'return's accordingly.
-       * g95-support.h: Adjust prototype.
-       * g95.h: Add 'no_backend' member to 'g95_option_t' struct.
-       * lang-options.h: Add '-fsyntax-only'.
-       * options.c (g95_init_options): Init 'no_backend'.
-       (g95_parse_arg): Deal with '-fsyntax-only'.
-       * parse.c (g95_parse_file): Do not generate code if 'no_backend'
-       is set.
-
-2003-01-13  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-       Patch from Arnaud
-       * resolve.c (resolve_symbol): Assumed shape arrays must be dummy
-       arguments.  Also make sure that if a symbol is marked INTRINSIC,
-       an intrinsic with the symbol's name actually exists.
-       (check_conflict): Make EXTERNAL and DIMENSION attributes conflict.
-       Do not allow PROCEDURES to have the SAVE, POINTER, TARGET,
-       ALLOCATABLE, RESULT, IN_NAMESPACE, OPTIONAL or FUNCTION attribute.
-
-2003-01-13  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * resolve.c (resolve_contained_functions): Fix condition, don't
-       throw internal_error if a child namespace has no name.  Apparently
-       this can be the case?
-
-2003-01-11  Paul Brook  <paul@nowt.org>
-
-       Port changes from Andy's tree:
-       * g95.h (g95_code): Add stop_code.
-       * match.c (g95_match_stop): Detter syntax checking.
-       * resolve.c (resolve_generic_f0): Return match type.
-       (resolve_generic_f): Remove dead/duplicated code.
-       (resolve_specific_f): Ditto.
-       * dump-parse-tree.c (g95_show_code_node): Handle new STOP format.
-       * trans-decl.c (gfor_fndel_stop_*): New fndecl nodes.
-       * trans-stmt.c (g95_trans_stop): Handle new STOP format.
-
-2003-01-11  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c: Various documentation/comment changes.
-       * trans-stmt.c: Ditto.
-
-
-2003-01-10  Paul Brook  <paul@nowt.org>
-
-       * options.c/h: Add -fdump-parse-tree as alias of -v.
-
-2003-01-10  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * dump-parse-tree.c (g95_show_namespace): Fixed another
-       typo.  Sorry, it's Friday...
-
-2003-01-10  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       Spotted by Tobi:
-       * trans-array.c, trans-array.h, trans.c, trans-const.c,
-       trans-const.h, trans-decl.c, trans-expr.c, trans.h
-       trans-intrinsic.c, trans-io.c, trans-stmt.c, trans-stmt.h
-       trans-types.c: Fix bogus copyright years, add 2003.
-       * trans-types.h: Give copyright header.
-
-2003-01-10  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * dump-parse-tree.c (g95_show_namespace): Fixed typo.
-       * expr.c, options.c, scanner.c: Add some more 'const' markers.
-       * intrinsic.c: Some constant strings moved to read-only memory.
-       * io.c (format_asterisk): Move to...
-       * g95.h: ...here.
-
-2003-01-10  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * dump-parse-tree.c (g95_show_namespace): Dump implicit
-       types for ranges instead of per-letter.  Indent the
-       'CONTAINS' just like everything else.
-       * resolve.c (resolve_contained_functions): Clarify comment.
-       Explain non-obvious conditional expression.  Improve
-       diagnostics if tyoe cannot be resolved.
-       Port semi-fix from Andy's tree:
-       (was_declared): Move up before first use.
-       (generic_sym, specific_sym): New functions.  Code moved
-       out if procedure_kind.
-       (procedure_kind): Simplify using new functions.
-       (resolve_generic_f): Make sure the functions we find in
-       a parent namespace is generic.
-       (resolve_specific_f): Ditto for specific functions.
-
-2003-01-10  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * trans-stmt.c, trans.c: Fix some code style issues. Add
-       some more comment (but still not enough!).
-
-2003-01-10  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * symbol.c (flavors, procedures, intents, acces_types,
-       access_types, ifsrc_types): Make const.
-       * misc.c (g95_string2code): Make 'm' param 'const'.
-       * module.c (find_enum, write_atom, mio_name): Make
-       'm' param 'const'.
-       (attr_bits, bt_types, array_spec_types, array_ref_types,
-       ref_types, expr_types): Make const.
-       * g95.h: Adjust external decls.
-
-2003-01-09  Paul Brook  <paul@nowt.org>
-
-       * Testsuite: Add a load of new cases.
-
-2003-01-08  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * Make-file.in: Add dependency on back end header files;
-       a parallel build should work now.
-       * f95-lang-c (lang_identifier): Remove bogus comment.
-       (g95_be_parse_file): Fix prototype.
-       (g95_init): Make static.
-       (g95_finish): Make static.
-       * error.c (g95_syntax_error): Kill. Make define in...
-       * g95.h (g95_syntax_error): Define.
-       (g95.options): Make 'source' member 'const'.
-       * interface.c (g95_match_interface): Explain
-       hard-to-read condition.
-       (g95_match_end_interface): Ditto.
-       * trans_const.c (g95_build_string_const): Make 's' parameter
-       'const'.
-       * trans_const.h: Adjust protoype accordingly.
-       * trans-decl.c: Include tree-dump.h
-       (g95_generate_function_code): Build fixes for recent changes
-       in the tree-ssa branch.
-
-2003-01-08  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * format.c: Kill, move code from here...
-       * io.c: ...to here.
-       * Make-lang.in: Adjust.
-       * MANIFEST: Ditto.
-       * match.h: Ditto.
-       * BUGS: Mention where to submit bugs.  Move old content...
-       * TODO: ...to here.  New file.
-
-2003-01-08  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-       Fix most warnings, and suppress the ones we can't fix for now.
-       * Make-lang.in: Suppress warnings about bad proto's in g95.h,
-       these warnings just clutter the screen and there's not much
-       we can do about them for now anyway.
-       * check.c, iresolve.c: Mark unused function parameters.
-       * dump-parse-tree.c (g95_show_array_spec): Punt on AS_UNKNOWN,
-       they should be resolved before they get here.
-       * error.c: Remove unused FILE *status_out.
-       * f95-lang.c (g95_init): Remove bogus cast.
-       * Many files: Make things 'const' where required.
-       * g95.h: Fix prototypes for all modified functions above.
-       (g95_options): Remove 'object' member.
-
-2003-01-07  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * Make-file.in: Cleanup bogus targets.  Add more comment.
-       * lang-options.h: New option '-w'.
-       * g95.h: add no_options field to struct g95_options.
-       * options.c (g95_init_options): Default no_warnings to off.
-       (g95_parse_arg): Recognise the '-w' switch and its alias,
-       '-fno-warnings'.
-       * error.c (g95_warning, g95_warning_now): Don't emit warning if
-       no_warning option is set.
-       * iresolve.c (g95_resolve_shape): Fix warning.
-
-2003-01-07  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * primary.c (g95_next_string_char): Rename next_string_char, and
-       make static.  Adjust callers accordingly.
-       * resolve.c (resolve_generic_f0): Return try, not match.  Adjust
-       callers accordingly.
-       * g95.h: Split out all g95_match* functions to...
-       * match.h: ...here. New file.
-       * array.c, decl.c, expr.c, format.c, interface.c, io.c, match.c,
-       matchexp.c, module.c, parse.c, primary.c: Inlcude match.h
-
-2003-01-07  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * symbol.c (g95_clear_new_implicit, g95_add_new_implicit_range,
-       g95_merge_new_implicit): New functions.
-       (g95_match_implicit_none, g95_match_implicit): Move from here...
-       * match.c (g95_match_implicit_none, g95_match_implicit): ... to here.
-       Modify to use the new functions in symbol.c.
-       * g95.h: Add and move prototypes.
-
-2003-01-06  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * bbt.c (insert): Use a typedef'ed compare_fn prototype for the
-       node compare function.
-       (g95_insert_bbt): Likewise.
-       (g95_insert_bbt_with_overlap): Likewise.
-       (g95_delete_bbt): Likewise.
-       (delete_treap): Likewise. Also fix a potential bug when calling it.
-       * module.c (compare_pointers): Change proto to compare_fn.
-       (compare_integers): Likewise.
-       (compare_true_names): Likewise.
-       (find_true_name): Adjust call to compare_true_names to match proto.
-       (require_atom, write_atom, mio_name): Fix 'const' warnings.
-       (init_pi_tree): Make compare a compare_fn instead of (int *).
-       * resolve.c (compare_cases): Change proto to compare_fn.
-       * symbol.c (g95_compare_symtree): Change proto to compare_fn, make
-       it static, and rename to compare_symtree.
-       (delete_symtree, g95_undo_symbols, g95_new_symtree): Use renamed
-       function.
-       * g95.h: Kill g95_compare_symtree prototype. Adjust prototypes
-       of g95_insert_bbt, g95_insert_bbt_with_overlap, and g95_delete_bbt.
-
-2003-01-06  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-       * Make-lang.in: Fix spaces/tabs issues from previous patch.
-       * patch.options: Blow away Paul's checkin mistake :-)
-       * io.c (terminate_io): Fix memory leak (Arnaud).
-
-2003-01-06  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * Make-lang.in: Teach about building DVI, info manual.
-       * g95.texi: New file.
-
-2003-01-02  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c (g95_reverse_ss): Make static and don't use.
-       (g95_conv_ss_descriptor): Don't use g95_loopinfo
-       (g95_conv_array_parameters): Modify for pointer assignments.
-       (g95_walk_subexpr): New function.
-       (g95_walk_expr*): Use it.
-       * trans-array.h (g95_reverse_ss): Remove prototype.
-       * trans-expr.c (g95_trans_pointer_assign): Implement.
-       (Many): Set se.want_pointer before calling g95_conv_array_parameter.
-       * trans-intrinsic.c: Sync with scalarizer changes.
-       * trans-io.c: Ditto.
-
-2002-12-29  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c: Document calling convention for arrays.
-
-2002-12-19  Paul Brook  <paul@nowt.org>
-
-       * trans-intrinsic.c (g95_conv_intrsinsic_function): Remove incorrect
-       assertion. Remove intrinsic subroutine G95_ISYM_* cases. Always pass
-       optional parameters for some intrinsics.
-       (g95_is_intrinsic_libcall): Add G95_ISYM_RESHAPE.
-       * trans-expr.c (g95_conv_function_call): Pass NULL for absent
-       optional parameters.
-       * trans.h (g95_se): Add ignore_optional flag.
-
-2002-12-15  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c (g95_conv_array_parameter): Fix partial rank sections.
-       * trans-decl.c (g95_generate_function_code): Use TDI_original.
-
-2002-12-14  Paul Brook  <paul@nowt.org>
-
-       * trans-stmt.c (g95_trans_call): Use resolved symbol name.
-
-2002-12-12  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c (g95_trans_array_constructor_subarray): Fully
-       initialize the scalarizer.
-       (various): Update to new format of g95_expr->value.constructor.
-
-2002-12-08  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c (g95_put_offset_into_var): New function.
-       (g95_trans_array_constructor_subarray): New function.
-       (g95_trans_array_constructor_value): Use it.
-       (g95_array_cons_size): Don't abort() on array components.
-
-2002-12-08  Paul Brook  <paul@nowt.org>
-
-       * Make-lang.in (F95_ADDITIONAL_OBJS): Remove tree-dchain.o.
-       * support.c: Update #includes.
-       (statement_code_p, c_size_in_bytes, s_size_type_node): Remove.
-       * trans-array.c: Update #includes.
-       * trans.c: Ditto.
-       * trans-const.c: Ditto.
-       * trans-io.c: Ditto.
-       * trans-types.c: Ditto.
-       (g95_init_types): Set size_type_node.
-       * trans-decl.c: Update #includes.
-       (gfor_fndecl_adjust{l,r}): Declare and initialize.
-       * trans-stmt.c: Update #includes.
-       (g95_trans_do_while): Generate LABEL_EXPR, not GOTO_EXPR.
-       (g95_trans_select): Fix check for unbounded ranges.
-       * trans-expr.c: Update #includes.
-       (g95_conv_string_tmp): New function.
-       (g95_conv_concat_op): Use it.
-       * trans.h (g95_conv_string_tmp, gfor_fndecl_adjust{l,r}): Declare.
-       * Trans-intrisic.c: Update #includes.
-       (g95_conv_intrinsic_strcmp): New function.
-       (g95_conv_intrinsic_adjust): Ditto.
-       (g95_conv_intrinsic_function: Use them.
-
-2002-11-30  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c (g95_walk_function_expr): Handle non-array return by
-       reference.
-       * trans-dec.c (g95_build_function_decl): Handle character return
-       parammeters.
-       (g95_get_fake_result_decl): Ditto.
-       (g95_trans_deferred_vars): Ditto.
-       * trans-expr.c (g95_conv_function_call): Ditto.
-       (g95_trans_arrayfunc_assign) Limit to array valued functions.
-       * trans-intrinsic.c (g95_conv_intrinsic_char): New function.
-       (g95_conv_intrinsic_function): Use it.
-       * trans-types.c (g95_sym_type): Handle functions returning strings.
-       (g95_return_by_reference): Ditto.
-       (g95_get_function_type): Ditto.
-
-2002-11-18  Paul Brook  <paul@nowt.org>
-
-       * trans-stmt.c (g95_trans_if): Fix IF statements when the condition
-       requires a temporary.
-       (g95_trans_select): Handle computed gotos.
-       * trans-types.c (g95_build_array_type): Warn about non-functional
-       assumed shape arrays.
-       * trans-expr.c (g95_trans_scalar_assign): Correctly handle post
-       blocks.
-       * trans-intrinsic.c (g95_conv_intrinsic_round): New function.
-       (g95_conv_intrinsic_int): New function.
-       (g95_conv_intrinsic_mod): New function.
-       (g95_conv_intrinsic_ichar): New function.
-       (g95_conv_intrinsic_function): Use them.
-       (g95_conv_intrinsic_dim): Use g95_evaluate_now.
-
-2002-11-17  Toon Moene  <toon@moene.indiv.nluug.nl>
-
-       * trans-types.c (g95_build_array_type): Assumed
-       sized arrays can have rank > 1.
-       * trans.c (g95_trans_code): Remove erroneous
-       warning about CONTINUE.
-       * trans-expr.c (g95_conv_variable): Remove
-       erroneous assert.
-
-2002-11-15  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c (g95_conv_array_parameter): Check for NULL stride.
-
-2002-10-31  Paul Brook  <paul@nowt.org>
-
-       * f95-tree.c: Remove tree copying stuff that's now in gimple.c
-       * trans-expr.c (g95_conv_component_ref): Handle character string
-       components.
-       (g95_conv_string_parameter): Ditto.
-       * trans-types.c (g95_get_derived_type): Add length decl to caracter
-       string components.
-
-2002-10-10  Paul Brook  <paul@nowt.org>
-
-       * trans-decl.c (gfor_fndecl_size?): Declare and initialize.
-       * trans-expr.c (g95_conv_function_call): Remove unreliable return value
-       check.
-       * trans-intrinsic.c (g95_conv_intrinsic_size): New function.
-       (g95_conv_intrinsic_function): Handle size and shape intrinsics.
-       (g95_is_intrinsic_libcall): Add G95_ISYM_SHAPE.
-       * trans-types.c (pvoid_type_node): Declare and initialize.
-       * trans-array.c: Fix typo COMPONENT_REF->REF_COMPONENT
-       (g95_array_allocate): Fix when base==data.
-       (g95_conv_array_parameter): Correctly handle reduced rank sections.
-       * trans-io.c (g95_trans_write): Correctly handle string modifiers.
-
-2002-10-09  Paul Brook  <paul@nowt.org>
-
-       * (g95_conv_expr_reference): Handle character strings correctly.
-
-2002-10-07  Paul Brook  <paul@nowt.org>
-
-       (g95_expand_decl): Rename from f95_expand_decl_stmt and use as
-       langhook.
-       * trans-array.c (g95_build_array_initializer): Remove.
-       (g95_conv_array_initializer): New Function.
-       (g95_trans_auto_arry_allocation): Cleanup.
-       (g95_trans_init_character_array): Remove.
-       * g95spec.c: Link in libgforbegin.
-       * trans.c (g95_generate_code): Rename main function to MAIN__.
-       (g95_create_var): New function.
-       (g95_create_var_np): New function.
-       (g95_evaluate_now): New function.
-       (g95_start_block): New function.
-       (g95_finish_block): New function.
-       (g95_add_expr_to_block): New function.
-       (g95_add_block_to_block): New function.
-       * trans-expr.c (g95_conv_componen_ref): New function.
-       * Make-lang.in (F95_ADDITIONAL_OBJS): Add gimplify.o.
-       (F95_OBJS): Add dependency.o.
-       * f95-lang.c (g95_is_simple_stmt): Remove.
-       * f95-tree.c (mark_not_simple): New function.
-       (unshare_all_trees): New function.
-       (create_tmp_var, create_tmp_alias_var): Remove.
-       * support.c (declare_tmp_vars, tree_last_decl): Remove.
-       * trans*: Convert to new IR using GENERIC trees.  Don't bother about
-       SIMPLE/GIMPLE rules, this is now done by Lang-independant code.
-
-2002-10-01  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c: Add support for descriptorless arrays.
-       (g95_conv_array_data): New function.
-       (g95_conv_array_base): New function.
-       * trans-array.h: Declare these here.
-       * trans-decl.c(g95_create_mopdule_variable): Perform variable
-       initialization and creation here.
-       (g95_create_module_vars): Instead of here.
-       * trans.h (G95_TYPE_ARRAY_*: Rename from G95_TYPE_DESCRIPTOR_*.
-       * trans-intrinsic.c: Ditto.
-       * trans-types.c (g95_is_nodesc_array): New function.
-       (g95_get_nodesc_array_type): New function.
-       (g95_sym_type, g95_get_derived_type): Use them.
-       * trans-const.c (g95_conv_mpf_to_tree): Remove workaround.
-
-2002-09-28  Paul Brook  <paul@nowt.org>
-
-       * trans-const.c (g95_conv_mpf_to_tree): Work around backend bug.
-       * trans-intrinsic.c (g95_conv_intrinsic_abs): Correctly detect complex
-       parameters.
-
-2002-09-24  Paul Brook  <paul@nowt.org>
-
-       * f95-lang.c (listify): Remove declaration.
-       (expand_function_body): Use optimize >=1 instead of flag_tree_saa.
-       (listify)
-       * f95-tree.c (get_name): New function.
-       * trans.c (module_namespace): Remove.
-       * trans-decl.c: Use g95_chainon_list rather than chainon(listify()).
-       * trans-types.c: Ditto.
-
-2002-09-19  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c (g95_get_array_cons_size): New Function.
-       (g95_con_ss_startstride): Handle Array constructors.
-       (g95_conv_loop_setup): Ditto.
-       (g95_conv_array_parameter): Ditto.
-       * tras-decl.c (g95_finish_var_decl): Make initializes variables
-       static.
-
-2002-09-19  Paul Brook  <paul@nowt.org>
-
-       * trans.c (g95_simple_fold_tmp): Detect variables inside
-       NON_LVALUE_EXPR.
-       * trans-stmt.c (g95_trans_arithmetic_if): Implement this.
-
-2002-09-18  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * Make-lang.in (F95_ADDITIONAL_OBJS): Add tree-ssa-dce.o
-
-2002-09-14  Paul Brook  <paul@nowt.org>
-
-       * trans.c (g95_create_module_variable): Move to trans-decl.c.
-       * trans-const.c (g95_conv_string_init): New Function.
-       * trans-const.h: Declare it.
-       * trans-decl.c (g95_get_symbol_decl): Handle initializers for static
-       variables. Don't bail on intrinsic symbols.
-       (get_extern_function_decl): Handle specific intrinsic functions.
-       * trans-types.c (g95_sym_type): Dummy functions don't return
-       reference types.
-       * trans-array.c (g95_build_array_initializer): New Function.
-       (g95_trans_auto_array_allocation): Build initializer for static decls.
-       Don't use mpz_addmul, it's GMP4 only.
-
-2002-09-12  Paul Brook  <paul@nowt.org>
-
-       * trans-decl.c (g95_generate_code): Fix thinko with return variable.
-       (g95_get_extern_function_decl, g95_build_function_decl): Mangle
-       assembler names for module procedures.
-
-2002-09-11  Tobias Schlueter  <Tobias.Schlueter@physik.uni-muenchen.de>
-
-       * trans-array.c,h trans-expr.c, trans-stmt.c: Correct spelling of
-       dependency/
-
-2002-09-10  Paul Brook  <paul@nowt.org>
-
-       * trans-array.c: Change format of G95_SS_TEMP strictures.
-       (g95_check_fncall_dependancy): New function.
-       (trans_dummy_array_bias): stride[n], not stride[n-1]. for calculating
-       offsets.
-       * trans-decl.c (g95_get_symbol_decl): move assertion after handling of
-       result variables.
-       (g95_build_function_decl): Don't assume result arrays are packed.
-       (g95_trans-deferred-vars): Handle array result variables.
-       (g95_generate_fuction_code): Clear saved_function_decls.
-       * trans-expr.c (g95_conv_fnction_call): Handle direct array return by
-       reference.
-       (g95_trans_arrayfunc_assign): New function.
-       (g95_trans_assignment): Use it.
-       * trans.h (g95_ss): Add temp struct for G95_SS_TEMP.
-       (g95_se): Add direct_byref.
-       * trans-types.c: Use sym->result rather than sym where appropriate.
-       * trans-intrinsic.c (g95_conv_intrinsic_funcall): New function.
-       Update other functions to use this.
-       (g95_is_intrinsic_libcall): New function.
-       (g95_conv_intrinsic_function): Add MATMUL and PRODUCT intrinsics.
-       (g95_walk_intrinsic_function): Ditto.
-
-2002-09-08  Paul Brook  <paul@nowt.org>
-
-       * trans-types.c: Change rank field to dtype field in array descriptor.
-       * trans-array.c: Implement filling of dtype array descriptor field.
-       * trans-intrinsic.c: Fix broken LEN intrinsic.
-
-2002-09-07  Paul Brook  <paul@nowt.org>
-
-       * trans-intrinsic.c: Remove outdated todo intrinsic list.
-       (g95_get_symbol_for_expr): Remove hack for fortran based intrinsics.
-       (g95_walk_intrinsic_function): Add MINLOC and MAXLOC.
-
-2002-09-06  Paul Brook  <paul@nowt.org>
-
-       * Make-lang.in (F95_ADDITIONAL_OBJS): Add tree_alias_comon.o.
-       (gt-f95-trans-types.h): Add dependancy information.
-       * config-lang.in (gtfiles): Add trans-types.c
-       * f95-lang.c (g95_be_parse_file): Pass error and warning counts
-       back to top-level code.
-       * trans-array.c, trans-types.c: Change format of array descriptor.
-       (g95_conv_descriptor_dimension): New function.
-       * trans-types.h (g95_conv_descriptor_rank): define.
-       * trans-intrinsic.c: Implement PRODUCT, COUNT. MINLOC and MAXLOC
-       intrinsics.
-
-2002-09-02  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * trans-array.c, trans-types.c: Add rank information to descriptor.
-
-2002-09-06  Tobias Schlueter  <Tobias.Schlueter@physik.uni-muenchen.de>
-
-       * trans-stmt.c (g95_trans_allocate): Fix when ref==NULL.
-
-2002-09-04  Paul Brook  <paul@nowt.org>
-
-       * f95-lang.c (g95_create_decls): New function.
-       (g95_init):  Move initialization of external decls to above, and call
-       from g95_be_parse_file.
-       * trans.c (g95_finish_stmt): Don't amputate the decl chain.
-       * trans-types.c (g95_init_types): Always name integer and char types.
-       (g95_get_array_type_bounds): TYPE_NAME may be a TYPE_DECL.
-
-2002-09-02  Steven Bosscher  <s.bosscher@student.tudelft.nl>
-
-       * Make-lang.in: Add options.c to F95_PARSER_OBJS
-
-2002-09-02  Paul Brook  <paul@nowt.org>
-
-       * g95_generate_code: Clear the attr for __fortran_main.
-       * trans-types.c (g95_finish_type): New function.
-       * g95_init_io_state_type: Use g95_finish_type.
-       * g95_conv_intrinsic_anyall: Fix thinko in result initialization.
-
-2002-09-01  Paul Brook  <paul@nowt.org>
-
-       * README.backend: Warn about the dangers of extra config.h files.
-       Remove obsolete libgfor stuff.
-       * config-lang.in: Add target-libgfor dependancy.
-       * g95_conv_mpf_to_tree: Use & free allocated buffer p rather than buff.
-
-2002-09-01  Toon Moene  <toon@moene.indiv.nluug.nl>
-
-       * g95_conv_mpz_to_tree: Free storage pointed to by q,
-       not by buff.
-
-2002-08-30  Paul Brook  <paul@nowt.org>
-
-       * trans-intrinsic.c (g95_conv_intrinsic_function,
-       g95_walk_intrinsic_function): Added ANY and ALL.
-       (g95_conv_intrinsic_anyall): New function.
-       * iresolve.c (g95_resolve_any, g95_resolve_all): Include rank in
-       mangled name
+       * ChangeLog: Split previous years into ...
+       * ChangeLog-2002: here.
+       * ChangeLog-2003: here.
+       * ChangeLog-2004: here.
+       * ChangeLog-2005: here.
diff --git a/gcc/fortran/ChangeLog-2002 b/gcc/fortran/ChangeLog-2002
new file mode 100644 (file)
index 0000000..222dc0b
--- /dev/null
@@ -0,0 +1,333 @@
+2002-12-29  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c: Document calling convention for arrays.
+
+2002-12-19  Paul Brook  <paul@nowt.org>
+
+       * trans-intrinsic.c (g95_conv_intrsinsic_function): Remove incorrect
+       assertion. Remove intrinsic subroutine G95_ISYM_* cases. Always pass
+       optional parameters for some intrinsics.
+       (g95_is_intrinsic_libcall): Add G95_ISYM_RESHAPE.
+       * trans-expr.c (g95_conv_function_call): Pass NULL for absent
+       optional parameters.
+       * trans.h (g95_se): Add ignore_optional flag.
+
+2002-12-15  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c (g95_conv_array_parameter): Fix partial rank sections.
+       * trans-decl.c (g95_generate_function_code): Use TDI_original.
+
+2002-12-14  Paul Brook  <paul@nowt.org>
+
+       * trans-stmt.c (g95_trans_call): Use resolved symbol name.
+
+2002-12-12  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c (g95_trans_array_constructor_subarray): Fully
+       initialize the scalarizer.
+       (various): Update to new format of g95_expr->value.constructor.
+
+2002-12-08  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c (g95_put_offset_into_var): New function.
+       (g95_trans_array_constructor_subarray): New function.
+       (g95_trans_array_constructor_value): Use it.
+       (g95_array_cons_size): Don't abort() on array components.
+
+2002-12-08  Paul Brook  <paul@nowt.org>
+
+       * Make-lang.in (F95_ADDITIONAL_OBJS): Remove tree-dchain.o.
+       * support.c: Update #includes.
+       (statement_code_p, c_size_in_bytes, s_size_type_node): Remove.
+       * trans-array.c: Update #includes.
+       * trans.c: Ditto.
+       * trans-const.c: Ditto.
+       * trans-io.c: Ditto.
+       * trans-types.c: Ditto.
+       (g95_init_types): Set size_type_node.
+       * trans-decl.c: Update #includes.
+       (gfor_fndecl_adjust{l,r}): Declare and initialize.
+       * trans-stmt.c: Update #includes.
+       (g95_trans_do_while): Generate LABEL_EXPR, not GOTO_EXPR.
+       (g95_trans_select): Fix check for unbounded ranges.
+       * trans-expr.c: Update #includes.
+       (g95_conv_string_tmp): New function.
+       (g95_conv_concat_op): Use it.
+       * trans.h (g95_conv_string_tmp, gfor_fndecl_adjust{l,r}): Declare.
+       * Trans-intrisic.c: Update #includes.
+       (g95_conv_intrinsic_strcmp): New function.
+       (g95_conv_intrinsic_adjust): Ditto.
+       (g95_conv_intrinsic_function: Use them.
+
+2002-11-30  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c (g95_walk_function_expr): Handle non-array return by
+       reference.
+       * trans-dec.c (g95_build_function_decl): Handle character return
+       parammeters.
+       (g95_get_fake_result_decl): Ditto.
+       (g95_trans_deferred_vars): Ditto.
+       * trans-expr.c (g95_conv_function_call): Ditto.
+       (g95_trans_arrayfunc_assign) Limit to array valued functions.
+       * trans-intrinsic.c (g95_conv_intrinsic_char): New function.
+       (g95_conv_intrinsic_function): Use it.
+       * trans-types.c (g95_sym_type): Handle functions returning strings.
+       (g95_return_by_reference): Ditto.
+       (g95_get_function_type): Ditto.
+
+2002-11-18  Paul Brook  <paul@nowt.org>
+
+       * trans-stmt.c (g95_trans_if): Fix IF statements when the condition
+       requires a temporary.
+       (g95_trans_select): Handle computed gotos.
+       * trans-types.c (g95_build_array_type): Warn about non-functional
+       assumed shape arrays.
+       * trans-expr.c (g95_trans_scalar_assign): Correctly handle post
+       blocks.
+       * trans-intrinsic.c (g95_conv_intrinsic_round): New function.
+       (g95_conv_intrinsic_int): New function.
+       (g95_conv_intrinsic_mod): New function.
+       (g95_conv_intrinsic_ichar): New function.
+       (g95_conv_intrinsic_function): Use them.
+       (g95_conv_intrinsic_dim): Use g95_evaluate_now.
+
+2002-11-17  Toon Moene  <toon@moene.indiv.nluug.nl>
+
+       * trans-types.c (g95_build_array_type): Assumed
+       sized arrays can have rank > 1.
+       * trans.c (g95_trans_code): Remove erroneous
+       warning about CONTINUE.
+       * trans-expr.c (g95_conv_variable): Remove
+       erroneous assert.
+
+2002-11-15  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c (g95_conv_array_parameter): Check for NULL stride.
+
+2002-10-31  Paul Brook  <paul@nowt.org>
+
+       * f95-tree.c: Remove tree copying stuff that's now in gimple.c
+       * trans-expr.c (g95_conv_component_ref): Handle character string
+       components.
+       (g95_conv_string_parameter): Ditto.
+       * trans-types.c (g95_get_derived_type): Add length decl to caracter
+       string components.
+
+2002-10-10  Paul Brook  <paul@nowt.org>
+
+       * trans-decl.c (gfor_fndecl_size?): Declare and initialize.
+       * trans-expr.c (g95_conv_function_call): Remove unreliable return value
+       check.
+       * trans-intrinsic.c (g95_conv_intrinsic_size): New function.
+       (g95_conv_intrinsic_function): Handle size and shape intrinsics.
+       (g95_is_intrinsic_libcall): Add G95_ISYM_SHAPE.
+       * trans-types.c (pvoid_type_node): Declare and initialize.
+       * trans-array.c: Fix typo COMPONENT_REF->REF_COMPONENT
+       (g95_array_allocate): Fix when base==data.
+       (g95_conv_array_parameter): Correctly handle reduced rank sections.
+       * trans-io.c (g95_trans_write): Correctly handle string modifiers.
+
+2002-10-09  Paul Brook  <paul@nowt.org>
+
+       * (g95_conv_expr_reference): Handle character strings correctly.
+
+2002-10-07  Paul Brook  <paul@nowt.org>
+
+       (g95_expand_decl): Rename from f95_expand_decl_stmt and use as
+       langhook.
+       * trans-array.c (g95_build_array_initializer): Remove.
+       (g95_conv_array_initializer): New Function.
+       (g95_trans_auto_arry_allocation): Cleanup.
+       (g95_trans_init_character_array): Remove.
+       * g95spec.c: Link in libgforbegin.
+       * trans.c (g95_generate_code): Rename main function to MAIN__.
+       (g95_create_var): New function.
+       (g95_create_var_np): New function.
+       (g95_evaluate_now): New function.
+       (g95_start_block): New function.
+       (g95_finish_block): New function.
+       (g95_add_expr_to_block): New function.
+       (g95_add_block_to_block): New function.
+       * trans-expr.c (g95_conv_componen_ref): New function.
+       * Make-lang.in (F95_ADDITIONAL_OBJS): Add gimplify.o.
+       (F95_OBJS): Add dependency.o.
+       * f95-lang.c (g95_is_simple_stmt): Remove.
+       * f95-tree.c (mark_not_simple): New function.
+       (unshare_all_trees): New function.
+       (create_tmp_var, create_tmp_alias_var): Remove.
+       * support.c (declare_tmp_vars, tree_last_decl): Remove.
+       * trans*: Convert to new IR using GENERIC trees.  Don't bother about
+       SIMPLE/GIMPLE rules, this is now done by Lang-independant code.
+
+2002-10-01  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c: Add support for descriptorless arrays.
+       (g95_conv_array_data): New function.
+       (g95_conv_array_base): New function.
+       * trans-array.h: Declare these here.
+       * trans-decl.c(g95_create_mopdule_variable): Perform variable
+       initialization and creation here.
+       (g95_create_module_vars): Instead of here.
+       * trans.h (G95_TYPE_ARRAY_*: Rename from G95_TYPE_DESCRIPTOR_*.
+       * trans-intrinsic.c: Ditto.
+       * trans-types.c (g95_is_nodesc_array): New function.
+       (g95_get_nodesc_array_type): New function.
+       (g95_sym_type, g95_get_derived_type): Use them.
+       * trans-const.c (g95_conv_mpf_to_tree): Remove workaround.
+
+2002-09-28  Paul Brook  <paul@nowt.org>
+
+       * trans-const.c (g95_conv_mpf_to_tree): Work around backend bug.
+       * trans-intrinsic.c (g95_conv_intrinsic_abs): Correctly detect complex
+       parameters.
+
+2002-09-24  Paul Brook  <paul@nowt.org>
+
+       * f95-lang.c (listify): Remove declaration.
+       (expand_function_body): Use optimize >=1 instead of flag_tree_saa.
+       (listify)
+       * f95-tree.c (get_name): New function.
+       * trans.c (module_namespace): Remove.
+       * trans-decl.c: Use g95_chainon_list rather than chainon(listify()).
+       * trans-types.c: Ditto.
+
+2002-09-19  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c (g95_get_array_cons_size): New Function.
+       (g95_con_ss_startstride): Handle Array constructors.
+       (g95_conv_loop_setup): Ditto.
+       (g95_conv_array_parameter): Ditto.
+       * tras-decl.c (g95_finish_var_decl): Make initializes variables
+       static.
+
+2002-09-19  Paul Brook  <paul@nowt.org>
+
+       * trans.c (g95_simple_fold_tmp): Detect variables inside
+       NON_LVALUE_EXPR.
+       * trans-stmt.c (g95_trans_arithmetic_if): Implement this.
+
+2002-09-18  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * Make-lang.in (F95_ADDITIONAL_OBJS): Add tree-ssa-dce.o
+
+2002-09-14  Paul Brook  <paul@nowt.org>
+
+       * trans.c (g95_create_module_variable): Move to trans-decl.c.
+       * trans-const.c (g95_conv_string_init): New Function.
+       * trans-const.h: Declare it.
+       * trans-decl.c (g95_get_symbol_decl): Handle initializers for static
+       variables. Don't bail on intrinsic symbols.
+       (get_extern_function_decl): Handle specific intrinsic functions.
+       * trans-types.c (g95_sym_type): Dummy functions don't return
+       reference types.
+       * trans-array.c (g95_build_array_initializer): New Function.
+       (g95_trans_auto_array_allocation): Build initializer for static decls.
+       Don't use mpz_addmul, it's GMP4 only.
+
+2002-09-12  Paul Brook  <paul@nowt.org>
+
+       * trans-decl.c (g95_generate_code): Fix thinko with return variable.
+       (g95_get_extern_function_decl, g95_build_function_decl): Mangle
+       assembler names for module procedures.
+
+2002-09-11  Tobias Schlueter  <Tobias.Schlueter@physik.uni-muenchen.de>
+
+       * trans-array.c,h trans-expr.c, trans-stmt.c: Correct spelling of
+       dependency/
+
+2002-09-10  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c: Change format of G95_SS_TEMP strictures.
+       (g95_check_fncall_dependancy): New function.
+       (trans_dummy_array_bias): stride[n], not stride[n-1]. for calculating
+       offsets.
+       * trans-decl.c (g95_get_symbol_decl): move assertion after handling of
+       result variables.
+       (g95_build_function_decl): Don't assume result arrays are packed.
+       (g95_trans-deferred-vars): Handle array result variables.
+       (g95_generate_fuction_code): Clear saved_function_decls.
+       * trans-expr.c (g95_conv_fnction_call): Handle direct array return by
+       reference.
+       (g95_trans_arrayfunc_assign): New function.
+       (g95_trans_assignment): Use it.
+       * trans.h (g95_ss): Add temp struct for G95_SS_TEMP.
+       (g95_se): Add direct_byref.
+       * trans-types.c: Use sym->result rather than sym where appropriate.
+       * trans-intrinsic.c (g95_conv_intrinsic_funcall): New function.
+       Update other functions to use this.
+       (g95_is_intrinsic_libcall): New function.
+       (g95_conv_intrinsic_function): Add MATMUL and PRODUCT intrinsics.
+       (g95_walk_intrinsic_function): Ditto.
+
+2002-09-08  Paul Brook  <paul@nowt.org>
+
+       * trans-types.c: Change rank field to dtype field in array descriptor.
+       * trans-array.c: Implement filling of dtype array descriptor field.
+       * trans-intrinsic.c: Fix broken LEN intrinsic.
+
+2002-09-07  Paul Brook  <paul@nowt.org>
+
+       * trans-intrinsic.c: Remove outdated todo intrinsic list.
+       (g95_get_symbol_for_expr): Remove hack for fortran based intrinsics.
+       (g95_walk_intrinsic_function): Add MINLOC and MAXLOC.
+
+2002-09-06  Paul Brook  <paul@nowt.org>
+
+       * Make-lang.in (F95_ADDITIONAL_OBJS): Add tree_alias_comon.o.
+       (gt-f95-trans-types.h): Add dependancy information.
+       * config-lang.in (gtfiles): Add trans-types.c
+       * f95-lang.c (g95_be_parse_file): Pass error and warning counts
+       back to top-level code.
+       * trans-array.c, trans-types.c: Change format of array descriptor.
+       (g95_conv_descriptor_dimension): New function.
+       * trans-types.h (g95_conv_descriptor_rank): define.
+       * trans-intrinsic.c: Implement PRODUCT, COUNT. MINLOC and MAXLOC
+       intrinsics.
+
+2002-09-02  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * trans-array.c, trans-types.c: Add rank information to descriptor.
+
+2002-09-06  Tobias Schlueter  <Tobias.Schlueter@physik.uni-muenchen.de>
+
+       * trans-stmt.c (g95_trans_allocate): Fix when ref==NULL.
+
+2002-09-04  Paul Brook  <paul@nowt.org>
+
+       * f95-lang.c (g95_create_decls): New function.
+       (g95_init):  Move initialization of external decls to above, and call
+       from g95_be_parse_file.
+       * trans.c (g95_finish_stmt): Don't amputate the decl chain.
+       * trans-types.c (g95_init_types): Always name integer and char types.
+       (g95_get_array_type_bounds): TYPE_NAME may be a TYPE_DECL.
+
+2002-09-02  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * Make-lang.in: Add options.c to F95_PARSER_OBJS
+
+2002-09-02  Paul Brook  <paul@nowt.org>
+
+       * g95_generate_code: Clear the attr for __fortran_main.
+       * trans-types.c (g95_finish_type): New function.
+       * g95_init_io_state_type: Use g95_finish_type.
+       * g95_conv_intrinsic_anyall: Fix thinko in result initialization.
+
+2002-09-01  Paul Brook  <paul@nowt.org>
+
+       * README.backend: Warn about the dangers of extra config.h files.
+       Remove obsolete libgfor stuff.
+       * config-lang.in: Add target-libgfor dependancy.
+       * g95_conv_mpf_to_tree: Use & free allocated buffer p rather than buff.
+
+2002-09-01  Toon Moene  <toon@moene.indiv.nluug.nl>
+
+       * g95_conv_mpz_to_tree: Free storage pointed to by q,
+       not by buff.
+
+2002-08-30  Paul Brook  <paul@nowt.org>
+
+       * trans-intrinsic.c (g95_conv_intrinsic_function,
+       g95_walk_intrinsic_function): Added ANY and ALL.
+       (g95_conv_intrinsic_anyall): New function.
+       * iresolve.c (g95_resolve_any, g95_resolve_all): Include rank in
+       mangled name
diff --git a/gcc/fortran/ChangeLog-2003 b/gcc/fortran/ChangeLog-2003
new file mode 100644 (file)
index 0000000..127de31
--- /dev/null
@@ -0,0 +1,2339 @@
+2003-12-26  Feng Wang  <fengwang@nudt.edu.cn>
+
+       * dump-parse-tree.c (gfc_show_code_node): Add ASSIGN and ASSIGNED GOTO
+       dumping.
+       * gfortran.h (gfc_statement): New ST_LABEL_ASSIGNMENT.
+       (gfc_exec_op): New EXEC_LABEL_ASSIGN.
+       (symbol_attribute):New variable attribute: assign.
+       * io.c (resolve_tag):Integer variable is allowed.
+       (match_dt_format): Add ASSIGN statement. Set assign flag.
+       * match.c (gfc_match_if): Change ST_NONE to ST_LABEL_ASSIGNMENT.
+       (gfc_match_assign): Add ASSIGN statement. Set assign flag.
+       (gfc_match_goto): Add ASSIGNED GOTO statement. Set assign flag.
+       * parse.c (decode_statement): Add ST_LABEL_ASSIGNMENT.
+       (next_statement): Add ST_LABEL_ASSIGNMENT.
+       (gfc_ascii_statement): Add ST_LABEL_ASSIGNMENT.
+       * resolve.c (resolve_code): Resolve ASSIGN and ASSIGNED GOTO statement.
+       (resolve_blocks): Resolve ASSIGNED GOTO statement label list.
+       * st.c (gfc_free_statement): Add EXEC_LABEL_ASSIGN.
+       * trans-decl.c (gfc_get_symbol_decl): Create the shadow variable for
+       assign.  Put them into the stuct lang_decl.
+       * trans-io.c (set_string): Add the assign statement.
+       * trans-stmt.c (gfc_trans_label_assign): New function.
+       (gfc_trans_goto): Translate ASSIGNED GOTO statement.
+       * trans-stmt.h (gfc_trans_label_assign): Added function prototype.
+       * trans.c (gfc_trans_code): Add EXEC_LABEL_ASSIGN.
+       * trans.h (lang_decl):Add shadow variable decl tree needed by assign.
+       (GFC_DECL_ASSIGN_ADDR(node)): New macro to access this.
+       (GFC_DECL_ASSIGN(node)): New macro to access flag.
+
+2003-12-31  Huang Chun  <chunhuang73@hotmail.com>
+
+       PR fortran/13434
+       * trans-intrinsic.c (gfc_conv_intrinsic_minmaxval): Fixed bug in
+       minval/maxval.
+
+2003-12-22  Toon Moene  <toon@moene.indiv.nluug.nl>
+
+       * options.c (gfc_init_options): Set flag_argument_noalias to 2, to indicate
+       that arguments to subroutines/functions can't alias themselves, nor global
+       memory.
+
+2003-12-20  Steven Bosscher  <stevenb@suse.de>
+
+       * trans-expr.c (gfc_conv_expr_op): Fold the result expression.
+       * trans.c (gfc_add_modify_expr, gfc_add_expr_to_block): Likewise.
+
+2003-12-12  Huang Chun  <chunhuang73@hotmail.com>
+
+       * primary.c (match_substring): Fix substring bug for start point
+       or end point is NULL.
+       * trans-expr.c (gfc_conv_substring): Ditto
+       * trans-types.c (gfc_sym_type): Get correct type of scalar
+       character variables.
+       * trans-intrinsic.c (gfc_conv_intrinsic_len): Handle character in
+       derived type.
+
+2003-12-10  Richard Henderson  <rth@redhat.com>
+
+       * options.c (gfc_post_options): Don't ever use rtl inlining.
+
+2003-12-05  Canqun Yang  <canqun@nudt.edu.cn>
+
+       * trans-common.c: Re-implement COMMON blocks and EQUIVALENCE lists.
+       * trans-equivalence.c: Remove.
+       * trans-decl.c (gfc_get_symbol_decl): Update to match.
+       (gfc_generate_function_code): Ditto.
+       * trans-array.c (gfc_conv_array_parameter): Ditto.
+       * Make-lang.in (F95_OBJS): Remove fortran/trans-equivalence.o
+       (F95_ADDITIONAL_OBJS): Add stor-layout.o
+       * trans.h (gfc_trans_equivalence): Remove.
+       * gfortran.h (struct gfc_equiv): Add used field.
+       (struct gfc_symbol): Remove addr_base, addr_offset, equiv_ring,
+       equiv_offset fields.
+
+2003-12-05  Richard Henderson  <rth@redhat.com>
+
+       * trans.c (gfc_build_addr_expr): New.
+       (gfc_build_indirect_ref, gfc_build_array_ref): New.
+       * trans.h: Declare them.
+       * trans-array.c, trans-expr.c, trans-intrinsic.c, trans-io.c,
+       trans-stmt.c, trans.c (*): Use them.
+
+       * f95-lang.c (gfc_post_options): Remove dead prototype.
+       * trans-array.c (gfc_trans_deferred_vars): Remove unused variable.
+       * trans-stmt.c (gfc_evaluate_where_mask): Fix temporary_list
+       allocation size.
+
+2003-12-01  Feng Wang  <fengwang@nudt.edu.cn>
+
+       * io.c (gfc_match_format): Check for missing format label.
+
+2003-11-30 Huang Chun  <chunhuang73@hotmail.com>
+
+       PR fortran/13155
+       * trans-decl.c (gfc_sym_mangled_function_id): Don't mangle symbols
+       from interfaces in modules.
+
+2003-11-30  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c (gfc_trans_g77_array): Make non-static.
+       (gfc_trans_assumed_size): Remove.
+       (gfc_trans_dummy_array_bias): Explicitly free temporary.
+       * trans-array.h (gfc_trans_g77_array): Add prototype.
+       (gfc_trans_assumed_size): Remove.
+       * trans-decls.c (gfor_fndecl_push_context): Remove.
+       (gfor_fndecl_pop_context): Remove.
+       (gfc_build_function)decls): Don't create them.
+       (gfc_trans_deferred_vars): Update to match. Remove dead code.
+       * trans-stmt.c (gfc_trans_pointer_assign_need_temp): Free temp.
+
+2003-11-30  Kejia Zhao  <kejia_zh@nudt.edu.cn>
+
+       * trans-array.c (gfc_conv_array_parameter): Simplify
+       array argument passing for array name actual argument.
+       * trans-expr.c (gfc_conv_function_call): Ditto
+       * trans-types.c (gfc_is_nodesc_array):Ditto.
+
+2003-11-30  Paul Brook  <paul@nowt.org>
+
+       * f95-lang.c (gfc_post_options): Move ...
+       * options.c (gfc_post_options): .. to here.  Handle inlining options.
+       * gfortran.h (gfc_post_options): Add prototype.
+
+2003-11-28  Richard Henderson  <rth@redhat.com>
+
+       * trans.c (gfc_create_var_np): Use create_tmp_var_raw.
+
+2003-11-28 Huang Chun  <chunhuang73@hotmail.com>
+
+       * trans.h (has_alternate_specifier): New global variable.
+       * match.c (gfc_match_call): Handle actual arguments associated with
+       alternate return indicators.
+       * trans-expr.c (gfc_conv_function_call): Ditto
+       * trans-stmt.c (gfc_trans_call): Ditto
+       (gfc_trans_return): Handle return statement with value.
+       * trans-decl.c (gfc_generate_function_code): Handle functions with
+       asterisk dummy.
+       (gfc_get_fake_result_decl): Ditto
+       * trans-types.c (gfc_get_function_type): Ditto
+       * resolve.c (resolve_actual_arglist): Check alternate return indicators.
+       (resolve_formal_arglist): Check asterisk dummy.
+
+2003-11-27  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c (gfc_tran_allocate_array_storage): Use new memory
+       allocation interface.
+       (gfc_conv_ array_parameter): Ditto.
+       (gfc_trans_auto_array_allocation): Ditto. Also free the memory.
+       * trans-array.c: Update prototype.
+       * trans-decl.c (gfc_build_builtin_function_decls): Update prototypes.
+       (gfc_trans_auto_character_variable): Use new memory alloc interface.
+       * trans-expr.c (gfc_conv_string_tmp): Ditto.
+       (gfc_conv_function_call): Use gfc_conv_string_tmp.
+       * trans-stmt.c (gfc_do_allocate):  Use new memory alloc interface.
+       * trans-intrinsic.c (gfc_conv_intrinsic_trim): Ditto.
+       * trans.h (gfc_ss_info): Remove unused pdata field.
+       * trans.c (gfc_create_var_np): Change T to V.
+
+2003-11-26  Richard Henderson  <rth@redhat.com>
+
+       * mathbuiltins.def: Move acos, asin, cosh, log10, sinh, tanh from ...
+       * trans-intrinsic.c (gfc_intrinsic_map): ... here.  Add SCALE,
+       FRACTION, NEAREST, SET_EXPONENT.
+       (gfc_intrinsic_map_t): Add libm_name, complex_available, is_constant.
+       Fix GTY marking.  Remove unnecessary const's.
+       (LIBM_FUNCTION): Rename from I_LIB.
+       (LIBF_FUNCTION): New.
+       (gfc_get_intrinsic_lib_fndecl): Handle libm and libgfortran naming
+       conventions.  Assume the expr signature is correct.  Mark const.
+       (gfc_conv_intrinsic_exponent): Use library functions.
+       (gfc_conv_intrinsic_set_exponent): Remove.
+       (gfc_conv_intrinsic_scale): Remove.
+       (gfc_conv_intrinsic_nearest): Remove.
+       (gfc_conv_intrinsic_fraction): Remove.
+       (gfc_conv_intrinsic_function): Update.
+       * trans-decl.c (gfor_fndecl_math_exponent4): New.
+       (gfor_fndecl_math_exponent8): New.
+       (gfc_build_intrinsic_function_decls): Set them.
+       * trans.h: Declare them.
+
+2003-11-25  Canqun Yang  <canqun@nudt.edu.cn>
+
+       * trans-common.c (gfc_layout_global_equiv): Locate the error for
+       underflow COMMON block.
+       (gfc_trans_one_common): Fix bug for size of COMMON block containing
+       EQUIVALENCE object. Also fix typo in an error message.
+
+2003-11-25  Diego Novillo  <dnovillo@redhat.com>
+
+       * Make-lang.in: Add check-gfortran to lang_checks.
+       (check-f95): Alias for check-gfortran.
+
+2003-11-25  Jason Merrill  <jason@redhat.com>
+
+       * Make-lang.in (f95.tags): Create TAGS.sub files in each
+       directory and TAGS files that include them for each front end.
+
+2003-11-24  Paul Brook  <paul@nowt.org>
+
+       PR fortran/13154
+       * trans-decl.c (gfc_greate_module_variable): Skip COMMON blocks.
+
+2003-11-24  Paul Brook  <paul@nowt.org>
+
+       * expr.c (simplify_const_ref): Return SUCCESS for things we don't
+       handle.
+       * resolve.c (gfc_resolve_expr): Resolve contents before rank/shape.
+
+2003-11-24  Paul Brook  <paul@nowt.org>
+
+       PR fortran/13105
+       * array.c (gfc_array_ref_shape): Handle elemental dimensions.
+       * trans-array.c (gfc_trans_preloop_setup): Use correct dim lookup.
+
+2003-11-20  Richard Henderson  <rth@redhat.com>
+
+       * trans-array.c (gfc_trans_allocate_array_storage): Use convert.
+       (gfc_conv_array_base): Likewise.
+       * trans-decl.c (gfc_trans_auto_character_variable): Likewise.
+       * trans-expr.c (gfc_conv_string_tmp): Likewise.
+       * trans-intrinsic.c (gfc_conv_intrinsic_trim): Likewise.
+       * trans-stmt.c (gfc_trans_character_select): Likewise.
+
+2003-11-13  Paul Brook  <paul@nowt.org>
+
+       * trans-decl.c (gfc_sym_mangled_function_id): Dont mangle externals.
+
+2003-11-13  Canqun Yang  <canqun@nudt.edu.cn>
+
+       * resolve.c (gfc_resolve): Also resolve EQUIVALENCE objects.
+       (resolve_equivalence): New function.
+       (resolve_equivalence_derived): New function.
+
+2003-11-12  Richard Henderson  <rth@redhat.com>
+
+       * trans.c (gfc_trans_code): Use annotate_with_locus instead of
+       annotate_all_with_locus.
+
+2003-11-11  Canqun Yang  <canqun@nudt.edu.cn>
+
+       * options.c (gfc_init_options): Set flag_max_stack_var_size as 32768.
+       * trans-decl.c (gfc_finish_var_decl): Modified.
+
+2003-11-08  Paul Brook  <paul@nowt.org>
+
+       PR fortran/12704
+       * trans-intrinsic.c (gfc_conv_intrinsics_minmaxloc): Handle zero-size
+       arrays.
+
+2003-11-06  Paul Brook  <paul@nowt.org>
+
+       * trans-intrinsic.c (gfc_conv_intrinsics_minmaxloc): Initialize pos.
+
+2003-11-02  Canqun Yang  <canqun@nudt.edu.cn>
+
+       * match.c (gfc_match_stopcode): Assign '0' to stop_code.
+
+2003-10-27  Anthony Green  <green@redhat.com>
+
+       * Make-lang.in (f95.stageprofile): Use tabs, not spaces.
+       (f95.stagefeedback): Ditto.
+
+2003-10-27  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR fortran/12682
+       * Make-lang.in (f95.stageprofile): Add.
+       (f95.stagefeedback): Add.
+
+2003-10-23  Richard Henderson  <rth@redhat.com>
+
+       * f96-lang.c (gfc_gimplify_expr): Remove.
+       (LANG_HOOKS_GIMPLIFY_EXPR): Remove.
+       (LANG_HOOKS_GIMPLE_BEFORE_INLINING): New.
+
+2003-10-23  Richard Henderson  <rth@redhat.com>
+
+       * f95-lang.c (gfc_gimplify_expr): Return gimplify_status.
+
+2003-10-20  Paul Brook  <paul@nowt.org>
+
+       * trans-expr.c (gfc_conv_integer_power): Use boolean_type_node.
+       * trans-stmt.c (gfc_trans_do_while): Ditto.
+
+2003-10-17  Paul Brook  <paul@nowt.org>
+
+       * simplify.c (gfc_simplify_shape): Use gfc_array_dimen_size.
+
+2003-10-17  Paul Brook  <paul@nowt.org>
+
+       * trans-io.c (gfc_build_io_library_fndecls): Set TREE_PUBLIC.
+
+2003-10-17  Feng Wang  <wf_cs@yahoo.com>
+
+       * iresolve.c (gfc_resolve_maxloc): Change the result's kind and type.
+       (gfc_resolve_minloc): Ditto.
+       * trans-intrinsic.c (gfc_conv_intrinsic_minmaxloc): Use correct types.
+       Return the value after subtracting the lower bound.
+
+2003-10-16  Richard Henderson  <rth@redhat.com>
+
+       * f95-lang.c (expand_function_body): Don't check flag_disable_gimple.
+
+2003-10-16  Steven Bosscher  <steven@gcc.gnu.org>
+
+       * lang.c: Remove -M option for now, it's in the way for C.
+
+2003-10-14  Jason Merrill  <jason@redhat.com>
+
+       * Make-lang.in (f95.tags): New rule.
+
+2003-10-13  Richard Henderson  <rth@redhat.com>
+
+       * trans.c (gfc_trans_code): Use annotate_all_with_locus.
+
+2003-10-13  Paul Brook  <paul@nowt.org>
+
+       * trans-decl.c (generate_local_decl): Don't create junk variables.
+
+2003-10-13  Paul Brook  <paul@nowt.org>
+
+       * resolve.c (resolve_formal_arglist): Use function result decl in
+       preference to function decl.
+
+2003-10-12  Richard Henderson  <rth@redhat.com>
+
+       * f95-lang.c (gfc_define_builtin): New const_p argument.  Set
+       TREE_READONLY.  Update all callers.
+
+2003-10-12  Feng Wang  <wf_cs@yahoo.com>
+
+       * iresolve.c (gfc_resolve_cshift): Change to match implementation.
+       * trans-intrinsic.c (gfc_conv_intrinsic_function): Remove CSHIFT.
+       (gfc_is_intrinsic_libcall): Add CSHIFT.
+
+2003-10-12  Richard Henderson  <rth@redhat.com>
+
+       * trans-array.c (gfc_trans_static_array_pointer): Set TREE_INVARIANT.
+       (gfc_trans_array_constructor_value): Likewise.
+       (gfc_conv_array_initializer): Likewise.
+       * trans-stmt.c (gfc_trans_character_select): Likewise.
+
+2003-11-12  Kejia Zhao  <kejia_zh@yahoo.com.cn>
+
+       * trans-intrinsic.c (integer_kind_info, real_kind_info): Remove.
+
+2003-10-11  Huang Chun  <jiwang@mail.edu.cn>
+
+       * check.c (gfc_check_repeat): Check arguments are scalar.
+       (gfc_check_trim): New function.
+       * intrinsic.h (gfc_check_trim): Add prototype.
+       * intrinsic.c (add_functions): Use it.
+       * trans.h (gfor_fndecl_string_trim, gfor_fndecl_string_repeat):
+       Decalare.
+       * trans-decl.c: Ditto.
+       (gfc_build_intrinsic_fucntion_decls): Set them.
+       * trans-intrinsic.c (gfc_conv_intrinsic_len): Handle result vars.
+       (gfc_conv_intrinsic_trim): New function.
+       (gfc_conv_intrinsic_repeat): New function.
+       (gfc_conv_intrinsic_function): Use them.
+
+2003-10-11  Huang Chun  <jiwang@mail.edu.cn>
+
+       * trans-types.c (gfc_sym_type): Handle result variables.
+
+2003-10-11  Huang Chun  <jiwang@mail.edu.cn>
+
+       * trans-intrinsic.c (gfc_conv_intrinsic_char): Don't use
+       gfc_get_character_type.
+
+2003-10-11  Feng Wang  <wf_cs@yahoo.com>
+
+       * trans-expr.c (gfc_conv_variable): Check sym->ts, not the decl.
+
+2003-10-11  Paul Brook  <paul@nowt.org>
+
+       * iresolve.c (gfc_resolve_dint, gfc_resolve_dnint): New functions.
+       (gfc_resolve_dprod): New function.
+       (gfc_resolve_aint, gfc_resolve_anint): Only base name on arg type.
+       * intrinsic.h (gfc_resolve_dint, gfc_resolve_dnint): Declare.
+       (gfc_resolve_dprod): Declare.
+       * intrinsic.c (add_functions): Use them.
+       * trans-decl.c (gfc_get_extern_function_decl): Only pass one arg.
+
+2003-10-06  Richard Henderson  <rth@redhat.com>
+
+       * f95-lang.c (gfc_init_builtin_functions): Add clzll.
+       * trans-intrinsic.c (call_builtin_clz): Use it.
+
+2003-10-05  Paul Brook  <paul@nowt.org>
+
+       * f95-lang.c (expand_function_body): Call (push|pop)_function_context.
+       * trans-decl.c (gfc_generate_function_code): Set
+       cfun->function_end_locus.
+
+2003-09-24  Jason Merrill  <jason@redhat.com>
+
+       * f95-lang.c, trans-decl.c: Use DECL_SOURCE_LOCATION instead of
+       TREE_LOCUS.
+
+2003-09-21  Lifang Zeng  <zlf605@hotmail.com>
+       Paul Brook  <paul@nowt.org>
+
+       * Make-lang.in (F95_OBJS): Add fortran/data.o.
+       * array.c (gfc_inser_constructor): New function.
+       (gfc_get_constructor): New function.
+       (gfc_free_constructor): Initialize offset and repeat.
+       (iterator_stack): Remove.
+       (expand_info): Add offset, component and repeat fields.
+       (expand_constructor): Set them.
+       (expand): Set new fields.
+       (gfc_copy_constructor): Ditto. Avoid recursion.
+       * gfortran.h: Add prototypes for new functions.
+       (gfc_constructor): Add offset, component and repeat.
+       (iteratio_stack): Move to here.
+       * resolve.c (check_data_variable): Convert data values into variable
+       initializers.
+       (traverse_data_list): Build implicit loop chain.
+       (gfc_resolve): Ditto.
+       * trans-array.c (gfc_conv_array_intializer): Handle repeat count.
+       * trans-decl.c (gfc_get_symbol_decl): Use gfc_conv_structure.
+       * trans-expr.c (gfc_conv_structure): Handle array initializers.
+       (gfc_conv_expr): Update to match.
+       * trans.h (gfc_conv_structure): Declare.
+       * data.c: New file.
+
+2003-09-20  Kejia Zhao  <kejia_zh@yahoo.com.cn>
+
+       * trans.h: Add declarations for gfor_fndecl_si_kind and
+       gfor_fndecl_sr_kind.
+       * trans-decl.c (g95_build_intrinsic_function_decls): Build them.
+       * trans-intrinsic.c (g95_conv_intrinsic_si_kind): New function.
+       (g95_conv_intrinsic_sr_kind): New function.
+       (g95_conv_intrinsic_function): Add SELECTED_INT_KIND and
+       SELECTED_REAL_KIND.
+
+2003-09-17  Lars Segerlund  <Lars.Segerlund@comsys.se>
+
+       * iresolve.c (gfc_resolve_random_number): Generate _r4 & _r8
+       instead of _4 and _8 as postfix for libgfortran calls.
+
+2003-09-16  Paul Brook  <paul@nowt.org>
+
+       * array.c (compare_bounds): New function.
+       (gfc_compare_array_spec): Use it.
+
+2003-09-14  Paul Brook  <paul@nowt.org>
+
+       * primary.c (gfc_match_rvalue): Make sure sym->result is set.
+       * trans-expr.c (gfc_conv_string_parameter): Also allow PRAM_DECLs.
+
+2003-09-14  Paul Brook  <paul@nowt.org>
+
+       * check.c (dim_rank_check): Allow assumed bounds if requested.
+       (gfc_check_lbound): Call it.
+       (gfc_check_ubound): Ditto.
+       (gfc_check_size): Change to match.
+       * simplify.c (gfc_simplify_bound): New function.
+       (gfc_simplify_lbound): New function.
+       (gfc_simplify_ubound): New function.
+       * intrinsic.h: Declare them.
+       * intrinsic.c (add_functions): Use them.
+
+2003-09-14  Paul Brook  <paul@nowt.org>
+
+       * io.c (format_lex): Initialize negative_flag.
+       (check_format): Intialize repeat.
+       * trans-io.c (gfc_new_nml_name_expr): Declare static.
+       (gfc_new_var_expr): Ditto.
+
+2003-09-14  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c (gfc_conv_array_initializer): Handle derived types.
+       * trans-decl.c (gfc_get_symbol_decl): Only do local scalar values.
+
+2003-09-12  Paul Brook  <paul@nowt.org>
+
+       * trans-intrinsic.c (gfc_conv_intrinsic_sign): Call fold.
+
+2003-09-12  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
+
+       * fortran/trans.c (gfc_finish_block): Call rationalize_compound_expr
+       for a correct expression.
+
+2003-09-10  Kejia Zhao  <kejia_zh@yahoo.com.cn>
+
+       * trans-intrinsic.c (real_compnt_info): New struct.
+       (prepare_arg_info): New function.
+       (gfc_conv_intrinsic_set_exponent): New function.
+       (gfc_conv_intrinsic_scale): New function.
+       (gfc_conv_intrinsic_nearest): New function.
+       (gfc_conv_intrinsic_fraction): New function.
+       (gfc_conv_intrinsic_exponent): New function.
+       (gfc_conv_intrinsic_spacing): New function.
+       (gfc_conv_intrinsic_rrspacing): New function.
+       (gfc_conv_intrinsic_function): Use them.
+
+2003-08-24 XiaoQiang Zhang  (zhangapache@yahoo.com>
+
+       * trans-const.c (gfc_conv_mpz_to_tree): Fix bug, parameter for
+       build_int_2 changed from (high, low) to (low, high).
+       * trans-io.c (ioparm_namelist_name, ioparm_namelist_name_len,
+       ioparm_namelist_read_mode, iocall_set_nml_val_int,
+       iocall_set_nml_val_float, iocall_set_nml_val_char,
+       iocall_set_nml_val_complex, iocall_set_nml_val_log): New declaration.
+       (gfc_build_io_library_fndecls): Add variable initialization.
+       (gfc_new_nml_name_expr, get_new_var_expr): New function.
+       (build_dt): Add namelist support.
+       * io.c (value): New variable.
+       (check_format): Support FMT_H now.
+
+2003-09-07  Paul Brook  <paul@nowt.org>
+
+       * io.c (gfc_resolve_dt): Error if format label is not defined.
+
+2003-09-07  Kejia Zhao  <kejia_zh@yahoo.com.cn>
+
+       * trans-intrinsic.c (gfc_conv_intrinsic_aint): Fix two bugs. One is
+       about case_switch's break. The other is about building the condition
+       statement tree, which judges the argument in the range of the
+       corresponding integer type.
+       * trans-intrinsic.c (gfc_conv_intrinsic_mod): MOD and MODULO can work
+       for the large values.
+
+2003-09-05  Paul Brook  <paul@nowt.org>
+
+       * f95-lang.c (expand_function_body): Gimplify the function.
+
+2003-09-04  Jeff Law  <law@redhat.com>
+
+       * f95-lang.c (DEFINE_MATH_BUILTIN): C arrays start at
+       index zero!
+
+2003-09-04  Paul Brook  <paul@nowt.org>
+
+       * f95-lang.c (gfc_define_builtin): Also set implicit_built_in_decls.
+       (gfc_expand_stmt): New function.
+       (LANG_HOOKS_RTL_EXPAND_STMT): Define.
+       (expand_function_body): Use tree_rest_of_compilation.
+       * trans-decl.c (gfc_generate_function_code): Don't free cfun.
+
+2003-09-03  Jeff Law  <law@redhat.com>
+
+       * f95-lang.c (gfc_init_builtin_functions): C arrays start at
+       index zero!
+
+2003-08-30  Paul Brook  <paul@nowt.org>
+
+       * f95-lang.c (builtin_function): Remove #if 0 code.
+       (gfc_define_builtin): New function.
+       (gfc_init_builtin_functions): Use mathbuiltins.def not ../builtins.def.
+       * mathbuiltins.def: New file.
+       * trans-intrinsic.c (gfc_intrinsic_map_t): Add builtin code fields.
+       (gfc_intrinsic_map): Use mathbuiltins.def.
+       (gfc_intrinsic_builtin_t): Remove.
+       (gfc_build_intrinsic_lib_fndecls): Update.
+       * trans-types.c (gfc_init_types): Remove redundant initilaization of
+       signed_size_type_node.
+
+2003-08-29  Paul Brook  <paul@nowt.org>
+
+       * arith.c (gfc_real_kinds): Use correct minimum exponents.
+
+2003-08-22  Kejia Zhao  <kejia_zh@yahoo.com.cn>
+
+       * trans-instinsic.c (gfc_conv_intrinsic_mod): Also do MODULO.
+       (gfc_conv_intrinsic_function): Add MODULO.
+
+2003-08-22  Jason Merrill  <jason@redhat.com>
+
+       * trans-array.c (gfc_conv_expr_descriptor): Update use of predicates.
+
+2003-08-22  Andreas Jaeger  <aj@suse.de>
+
+       * Make-lang.in (f95.install-common): Add DESTDIR support.
+       * (f95.install-info): Likewise.
+       (f95.uninstall): Likewise.
+
+2003-08-19  Diego Novillo  <dnovillo@redhat.com>
+
+       * trans-types.c (gfc_init_types): Initialize
+       signed_size_type_node with size_type_node.
+
+2003-08-18  Paul Brook  <paul@nowt.org>
+
+       * dependency.c (gfc_dependency): New enum.
+       (check_another_array_ref): Remove.
+       (gfc_get_array_from_component): Remove.
+       (get_x): Remove.
+       (get_range): Remove.
+       (get_no_of_elements): Use mpz_t, not mpf_t.
+       (transform_sections): New function.
+       (gfc_check_range_range): Rename ...
+       (gfc_check_section_vs_section): ... to this.  Use new function.
+       (gfc_is_inside_range): Rewrite to match.
+       (gfc_check_element_vs_section): Ditto.
+       (gfc_check_element_vs_element): Ditto.
+       (get_deps): Ditto.
+       (gfc_dep_resolver): Ditto.  Remove unused parameter.
+       * Dependency.h (gfc_check_range_range, gfc_check_element_vs_section,
+       gfc_check_element_vs_element, gfc_is_inside_range,
+       gfc_get_array_from_component): Remove prototypes for static functions.
+       (gfc_dep_resolver): Update prototype.
+       * trans-array.c (gfc_conv_resolve_dependencies): Change to match.
+
+2003-08-15  Paul Brook  <paul@nowt.org>
+
+       * trans-decl.c (gfc_build_qualified_array): Don't add symbols for
+       return values to parent scope.
+       (gfc_build_dummy_array_decl): Ditto.
+
+2003-08-14  Paul Brook  <paul@nowt.org>
+
+       * trans-stmt.c (gfc_trans_allocate): Handle NULL refs. Allocate the
+       size of the type, not the pointer.
+       * resolve.c (resolve_symbol): Give more accurate error message.
+
+2003-08-10  Paul Brook  <paul@nowt.org>
+
+       * trans-decl.c (gfc_build_function_decl): Only mangle global symbols.
+
+2003-08-10  Paul Brook  <paul@nowt.org>
+
+       * trans-stmt.c (gfc_trans_allocate): Correctly handle non-array derived
+       type components.
+
+2003-08-10  Chun Huang  <compiler@sohu.com>
+
+       * resolve.c (resolve_formal_arglist): Resolve STATEMENT function.
+       (resolve_symbol): Ditto.
+       * trans-expr.c (gfc_conv_statement_function): New function.
+       (gfc_conv_function_expr): Use it.
+
+2003-08-10  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c (gfc_conv_ss_startstride): Handle functions.
+       (walk_function_expr): Set section rank.
+       * trans-intrinsic.c (gfc_walk_intrinsic_libfunc): Ditto.
+
+2003-08-10  Paul Brook  <paul@nowt.org>
+
+       * intrinsic.c (add_sym): Prefix names with correct string.
+       (add_sym_0s): New function.
+       (add_subroutines): Register abort.
+
+2003-08-10  Erik Schnetter  <schnetter@uni-tuebingen.de>
+
+       * gfortran.h: Introduce options to control the mangling.
+       * lang.opt: Likewise.
+       * options.c (gfc_init_options): Handle the options.
+       * trans-common.c (gfc_sym_mangled_common_id): New function.
+       (gfc_build_common_decl): Call it.
+       * trans-decl.c (gfc_sym_mangled_function_id): New function.
+       (gfc_get_extern_function_decl, gfc_build_function_decl): Call it.
+
+2003-08-09  Paul Brook  <paul@nowt.org>
+
+       * module.c (mio_symbol): Always ouput a namespace for formal args.
+       (load_needed): Namespace now belong to their proper symbol.
+       (gfc_dump_module): Change G95=>GFORTRAN.
+
+2003-08-05  Paul Brook  <paul@nowt.org>
+
+       * options.c: Force -fg77-calls.
+
+2003-08-02  Paul Brook  <paul@nowt.org>
+
+       * Makelang.in: Rename G95_* to GFORTRAN_*.
+       * All sources: Rename G95_* to GFC_*.
+
+2003-08-01  Paul Brook  <paul@nowt.org>
+
+       * fortran/Make-lang.in: Use GMPLIBS.
+       * fortran/config-lang.in: Set need_gmp.
+       * trans-expr.c (gfc_conv_variable): Remove incorrect assertion.
+
+2003-07-27  Andreas Jaeger  <aj@suse.de>
+
+       * trans-decl.c (gfc_generate_constructors): Convert prototype to
+       ISO C90.
+       * trans-const.c (gfc_init_constants): Likewise.
+       * trans-intrinsic.c (gfc_build_intrinsic_lib_fndecls): Likewise.
+
+       * gfortranspec.c: Convert to ISO C90.
+       (lang_specific_driver): Correct copyright, remove ALT_LIBM usage.
+
+2003-07-26  Paul Brook  <paul@nowt.org>
+
+       * lang.opt: Add -fdump-parse-tree.
+       * options.c (gfc_handle_option): Ditto.
+       * resolve.c (resolve_forall_iterators): Convert to proper type.
+       * trans-stmt.c (gfc_trans_forall_1): Create temp var with correct type.
+
+2003-07-26  Paul Brook  <paul@nowt.org>
+
+       * Makefile.in: Add build dependencies on files common with rest of gcc.
+
+2003-07-26  Lifang Zeng  <zlf605@hotmail.com>
+
+       * trans.h: Declare g95_trans_pointer_assignment.
+       * trans-expr.c (g95_trans_pointer_assignment): New function.
+       (g95_trans_pointer_assign): Use it.
+       * trans-stmt.c (g95_trans_forall_1): Handle pointer assignment.
+       (g95_trans_pointer_assign_need_temp): New function.
+
+2003-07-26  Paul Brook  <paul@nowt.org>
+
+       * gfortran.texi: Replace references to g95.
+
+2003-07-26  Paul Brook  <paul@nowt.org>
+
+       Rename g95_* to gfc_*.
+
+2003-07-25  Paul Brook  <paul@nowt.org>
+
+       * gfortran.h: Rename from g95.h.
+       * trans-types.c (boolean_type_node, booelan_true_node,
+       boolean_false_node): Remove.
+       * trans-types.h: Ditto.
+
+2003-07-25  Chun Huang  <compiler@sohu.com>
+
+       * parse.c (accept_statement): Implement BLOCK DATA statement.
+       * trans-expr.c (g95_conv_variable): Fix bug for dereference pointer
+       variables.
+
+2003-07-24  Lifang Zeng  <zlf605@hotmail.com>
+
+       * trans-stmt.c (temporary_list): Define.
+       (g95_trans_assign_need_temp): New function.
+       (g95_trans_forall_1): Modified for WHERE.
+       (g95_trans_where_assign): Modified.
+       (g95_trans_where_2): Modified.
+       (g95_evaluate_where_mask): Modified.
+       (g95_trans_where): Modified.
+       (g95_get_temp_expr): Removed.
+       (g95_add_to_where_stmt_list): Removed.
+       (compute_overall_iter_number): Modified for WHERE.
+       * trans.h: Remove where_stmt_list.
+
+2003-07-24  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
+
+       * lang.opt: Correct description of options -J and -M.
+
+2003-07-23  Steven Bosscher   <steven@gcc.gnu.org>
+
+       * lang.opt: Move help text to here.
+       * lang-options.h: Remove.
+
+2003-07-23  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
+       * iresolve.c (g95_resolve_transpose): Proper variable in switch.
+       * simplify.c (g95_simplify_nearest): Fix typo and use a correct test
+       on kind.
+
+2003-07-22  Steven Bosscher  <steven@gcc.gnu.org>
+       Paul Brook  <paul@nowt.org>
+
+       * check.c (check_rest): Use global pedantic flag.
+       * io.c (data_desc): Ditto.
+       * error.c (g95_warning, g95_warning_now): Use global flag.
+       * f95-lang.c (LANG_HOOKS_HANDLE_OPTION): Rename from DECODE.
+       (expand_function_body): Update to new prototypes.
+       (g95_init): Use new option names.
+       * g95.h (g95_option_t): Standardize names.
+       (g95_init_options, g95_handle_option): Update prototypes.
+       * interface.c: Use new option names.
+       * match.c: Ditto.
+       * module.c: Ditto.
+       * parse.c: Ditto.
+       * primary.c: Ditto.
+       * resolve.c: Ditto.
+       * scanner.c: Ditto.
+       * simplify.c: Ditto.
+       * symbol.c: Ditto.
+       * trans-array.c: Ditto.
+       * trans-expr.c: Ditto.
+       * trans-types.c: Ditto.
+       * trans-decl.c: Ditto.
+       (g95_build_library_function_decl): Remove obsolete VPARAMS.
+       * trans.h: Ditto.
+       * options.c (g95_display_help): Remove.
+       (g95_init_options): Convert to new scheme.
+       (set_Wall): Ditto
+       (g95module_option): Ditto, rename from g95_parse_arg.
+       (g95_handle_module_path_options): New function.
+       * trans-equivalence.c: Fix error message.
+       * lang.opt: Corrections.
+
+2003-07-21  Steven Bosscher  <steven@gcc.gnu.org>
+
+       * lang.opt: New file.
+
+2003-07-21  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
+
+       * decl.c (match_attr_spec): Set colon_seen.
+
+2003-07-14  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c: Update comment.
+       (g95_trans_array_constructor_subarray): Cleanup loopinfo data.
+       * trans-intrinsic.c (g95_conv_intrinsic_anyall,count,arith,
+       minmaxloc,minmaxval): Ditto.
+       * trans-io.c (g95_trans_transfer): Ditto.
+       * trans-stmt.c: Remove unneeded prototypes.
+       (generate_loop_for_lhs_to_rhs): Rename vars. Add loop post chain.
+       (generate_loop_for_rhs_to_temp): Rename vars. Don't share loopinfo.
+       (compute_inner_temp_size): Remove bits of dead code. Add comments.
+       Don't share loopinfo.
+       (compute_overall_iter_number): Declare as static.
+       (allocate_temp_for_forall_nest): Ditto.
+       (g95_trans_forall_1): Don't pass shared loopinfo.
+       * trans.c (g95_start_block): Expand comment.
+
+2003-07-12  Paul Brook  <paul@nowt.org>
+
+       * arith.c (g95_index_integer_kind): Remove unused initializer.
+       * trans-stmt.c (generate_loop_for_temp_to_lhs): Don't multiply array
+       index by size of element.
+       (generate_loop_for_rhs_to_temp): Ditto.
+       (allocate_temp_for_forall_nest): Use element size, not index size.
+
+2003-07-11  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
+
+       * arith.c (g95_index_integer_kind): Add a TODO.
+       * simplify.c (g95_simplify_nearest): Add a TODO.
+
+2003-07-09  Chun Huang  <compiler@sohu.com>
+
+       * trans.h: Add declarations for gfor_fndecl_string_scan and
+       gfor_fndecl_string_verify.
+       * trans-decl.c (g95_build_intrinsic_function_decls): Build them.
+       * trans-intrinsic.c (g95_conv_intrinsic_scan): New function.
+       (g95_conv_intrinsic_verify): New function.
+       (g95_conv_intrinsic_function): Add SCAN and VERIFY.
+       * simplify.c (g95_simplify_scan, g95_simplify_verify): Fix bug in case
+       of parameter 'BACK=.TRUE.'
+
+2003-07-05  Lifang Zeng  <zlf605@hotmail.com>
+
+       * trans-stmt.c (iter_info, forall_info): Define.
+       (g95_trans_forall_block): Remove.
+       (g95_trans_forall_loop): Use forall info blocks.
+       (g95_trans_nested_forall_loop): New function.
+       (g95_do_allocate): Handle things other than logical masks.
+       (generate_loop_for_temp_to_lhs): New function.
+       (generate_loop_for_rsh_to_temp): New function.
+       (compute_inner_temp_size): New function.
+       (compute_overall_iter_number): New function.
+       (allocate_temp_for_forall_nest): New function.
+       (g95_trans_forall): Move body ...
+       (g95_trans_forall_1): ... to here.  Handle loops with temporaries.
+
+2003-07-02  Paul Brook  <paul@nowt.org>
+
+       * trans-decl.c (create_index_var, g95_build_qualified_array): Put vars
+               in correct scope.  Change callers to match.
+       * trans-types.c (g95_get_dtype_cst): Allow rank 7 arrays.
+       * iresolve.c (g95_resolve_reshape): Only use constant shapes.
+
+2003-07-02  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c (g95_conv_loop_setup): Remove dead var.  Use
+       expression shape for all expressions.
+       * trans-decl.c (g95_symbol_init): Allow adding at very end of list.
+
+2003-07-03  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
+
+       * g95.h (g95_option_t), lang-options.h, options.c (g95_init_options,
+       g95_parse_arg), intrinsic.c (g95_convert_type): support of
+       -Wconversion.
+       * intrinsic.c, g95.h: Add g95_convert_type_warn,
+       * resolve.c (g95_resolve_index): Call it.
+
+2003-07-02  Paul Brook  <paul@nowt.org>
+
+       * iresolve.c (g95_resolve_reshape): Set expression shape.
+       (g95_resolve_shape): Ditto.
+       * simplify.c (g95_simplify_shape): Move common code outside condition.
+       * trans-array.c (g95_conv_array_initializer): Teach it how to count.
+
+2003-07-01  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
+
+       * array.c (g95_array_dimen_size): Deal with EXPR_ARRAY to improve
+       conformance checks.
+
+2003-06-29  Paul Brook  <paul@nowt.org>
+
+       * array.c (g95_simplify_iterator_var): Don't bother with return value.
+       * expr.c (find_array_element, find_component_ref): New functions.
+       (remove_subobject_ref): New function.
+       (simplify_const_ref): Use them.  Rename from simplify_component_ref.
+       (simplify_ref_chain): New function.
+       (g95_simplify_expr): Use it.  Simplify parameter variable subobjects.
+       (g95_specification_expr): Simplify the expression.
+       * resolve.c (resolve_operator): Check simplifications return code.
+       (g95_resolve_expr): Ditto.
+
+2003-06-26  Paul Brook  <paul@nowt.org>
+
+       * expr.c (simplify_component_ref): New function.
+       (g95_simplify_expr): Use it.
+       * resolve.c (resolve_structure_cons): Handle references.
+
+2003-06-25  Paul Brook  <paul@nowt.org>
+
+       * trans-io.c (build_dt): Handle internal units.
+
+2003-06-25  Canqun Yang  <canqun@yahoo.com.cn>
+
+       * trans-common.c (g95_build_common_decl): Array index range starts at 0.
+       (g95_build_common_decl, g95_layout_global_equiv, g95_trans_one_common):
+       Use g95_array_index_type instead of integer_type_node.
+       (g95_build_common_decl, g95_set_common_master_type): Use
+       g95_character1_type_node instead of char_type_node.
+       * trans-equivalence.c (g95_layout_local_equiv): As above.
+
+2003-06-24  Steven G. Kargl  <kargls@attbi.com>
+
+       * g95.h (g95_option_t), options.c (g95_init_options, g95_parse_arg):
+       remove last remains of -fquiet.
+
+2003-06-22  Paul Brook  <paul@nowt.org>
+
+       * resolve.c (resolve_operator): Don't fail if we can't simplify.
+       (g95_resolve_expr): Ditto.
+       (resolce_code): Mark as static.
+       * trans-stmt.c (g95_trans_chaaracter_select): Mark labels because the
+       gimplifer doesn't (yet).
+
+2003-06-20  Paul Brook  <paul@nowt.org>
+
+       * g95.h: Add ST_PAUSE and EXEC_PAUSE.
+       * match.c (g95_match_if): Add ST_PAUSE.
+       (g95_match_stopcode): New function.
+       (g95_match_pause, g95_match_stop): Use it.
+       * parse.c (g95_ascii_statement): Handle ST_PAUSE.
+       (decode_stmt, next_statement, parse_executable): Ditto.
+       * resolve.c (resolve_code): Ditto.
+       * st.c (g95_free_statement): Ditto.
+       * trans-stmt.c (g95_trans_pause): New function.
+       * trans-stmt.h: Declare it.
+       * trans.c (g95_trans_code): Use it.
+       * trans-decl.c (gfor_fndecl_pause_numeric, gfor_fndecl_pause_string):
+       Declare.
+       (g95_build_builtin_function_decls): Initialize them.
+       * trans.h: Ditto.
+       * dump-parse-tree.c (g95_show_code_node): Handle EXEC_PAUSE.
+
+2003-06-18  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
+
+       * io.c (g95_match_open , g95_match_close, g95_match_inquire,
+       match_filepos): Fix error handling.
+
+2003-06-18  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
+
+       * array.c (spec_dimen_size, ref_dimen_size, g95_array_dimen_size):
+       Add assertions on arguments.
+       * resolve.c (expression_shape): Remove useless &.
+       * simplify.c (get_kind, g95_simplify_bit_size, g95_simplify_digits,
+       g95_simplify_ibclr, g95_simplify_ibits, g95_simplify_ibset,
+       g95_simplify_ishft,g95_simplify_ishftc, g95_simplify_maxexponent,
+       g95_simplify_minexponent, g95_simplify_radix, g95_simplify_range
+       g95_simplify_rrspacing, g95_simplify_scale, g95_simplify_spacing,
+       g95_simplify_tan, g95_simplify_tiny): Clean predicates and assertions.
+       (g95_simplify_not, g95_simplify_scale): Add assertions.
+
+2003-06-15  Paul Brook  <paul@nowt.org>
+
+       Clean up stuff to work with the ssa optimizers.
+       * convert.c (convert): Handle BOOLEAN_TYPEs.
+       * f95-lang.c (g95_truthvalue_conversion): Implement.
+       * trans-array.c (g95_trans_array_constructor_value): Group multiple
+       scalar values.
+       * trans.h (g95_truthvalue_conversion): Declare.
+       * trans-intrinsic.c (g95_conv_intrinsic_anyall): Use bool constants.
+       * trans-stmt.c (g95_trans_character_select): Don't create array
+       assignments.  Mark labels as indirect jump targets.
+       * trans-types.h (g95_init_types): Use BOOLEAN_TYPE nodes.
+       (g95_get_dtype_cst): Handle LOGICAL types.
+
+2003-06-14  Paul Brook  <paul@nowt.org>
+
+       * f95-lang.c (g95_gimplify_expr): New function.
+       * trans-array.c (g95_trans_array_constructor_value): Don't create
+       array assignments.
+       (g95_conv_expr_descriptor): Rename simple->gimple.
+       * trans-expr.c (conv_expr_op): Use proper logical operators.
+       * trans-intrinsic.c (build_fixbound_expr): New function.
+       (build_fix_expr): Ditto.
+       (g95_conv_intinsic_aint): Use them. Use builtin functions.
+       (g95_conv_intrinsic_function): Add FLOOR and CEILING.
+
+2003-06-10  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
+
+       * array.c (g95_compare_array_spec): Remove unreachable code.
+       * expr.c (g95_copy_expr): Likewise.
+       * intrinsic.c (g95_convert_type): Likewise.
+       * misc.c (g95_code2string): Likewise.
+       * simplify.c (g95_simplify_ishft, g95_simplify_real,
+       g95_simplify_reshape, g95_simplify_sign, g95_simplify_sqrt): Likewise.
+       * trans-stmt.c (g95_trans_select): Likewise.
+       * primary.c (extend_ref): Add an assertion.
+       * simplify.c (g95_convert_constant): Add const.
+       * intrinsic.h: Remove g95_check_x_ni.
+       * f95-lang.c (g95_finish): Call g95_release_include_path.
+
+2003-06-10  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
+
+       * resolve.c (resolve_contained_functions): Fix typo introduced on
+       2003-01-13.
+
+2003-06-09  Paul Brook  <paul@nowt.org>
+
+       * g95.h: Include system.h not hwint.h.
+       * many: use safe-ctype.h not ctype.h.  Change isalpha -> ISALPHA, etc.
+       * misc.c (g95_getmem): Use xmalloc/memset instead of calloc.
+
+2003-06-09  Paul Brook  <paul@nowt.org>
+
+       * g95.h (g95_symbol): Add fields for COMMON and EQUIVALENCE variables.
+       * Make-lang.in (F95_OBJS): Add files for COMMON and EQUIVALENCE.
+       * trans-decl.c (g95_add_decl_to_functions): Make non-static.
+       (g95_get_symbol_decl): Handle COMMON and EQUIVALENCE objects.
+       (g95_generate_function_code): Translate COMMON and EQUIVALENCE
+       objects.
+       * trans.h (g95_trans_equivalence, g95_trans_common,
+       g95_add_decl_to_function): Declare.
+       * trans-common.c, trans-equivalence.c: New files.
+
+2003-06-08  Steven Bosscher  <steven@gcc.gnu.org>
+
+       * intrinsic.c (g95_intrinsic_extension): Remove.
+       (add_functions): Substitute g95_check_x for g95_check_x_ni
+       everywhere.
+       (g95_init_expr_extensions): New function.
+       (g95_intrinsic_func_interface): Use it.
+       * intrinsic.h: Remove extern decl for g95_intrinsic_extension.
+       * check.c (g95_check_digit, g95_check_huge, g95_check_kind,
+       g95_check_precision, g95_check_present, g95_check_radix,
+       g95_check_range, g95_check_selected_real_kind): Do not set
+       g95_intrinsic_extension.
+       (g95_check_x_ni): Remove now duplicate of g95_check_x.
+
+       * expr.c (check_inquiry): Add FIXME, fixup some code style.
+
+2003-06-06  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
+
+       * g95.h (ref_type): Name this type explicitly.
+       * module.c (MIO_NAME): Add specialisations of mio_name.
+       (mio_symbol_attribute, mio_typespec, mio_array_ref,
+       mio_array_spec, mio_ref, mio_expr, mio_symbol): Use them.
+       (ab_attribute): Name this type explicitly.
+       (mio_symbol_attribute, mio_expr): Add cast to call to find_enum.
+
+2003-06-05  Kejia Zhao  <kejia_zh@yahoo.com.cn>
+
+       * trans-intrinsic.c (g95_conv_allocated): New function.
+       (g95_conv_intrinsic_function): Make G95_ISYM_ALLOCATED work.
+
+2003-06-05  Steven Bosscher  <steven@gcc.gnu.org>
+
+       * f95-lang.c: Don't include g95-support.h
+       (g95_mark_addressable): Add prototype.
+       (g95_init_decl_processing): Remove C front end hack.
+       * f95-tree.c: Remove file.
+       * support.c: Remove file.
+       * g95-support.h: Remove file.
+       * trans-types.c (g95_init_types): Set up boolean
+       type related tree nodes.
+       * Make-lang.in: Remove rules for dead files and
+       dependencies on them.
+
+2003-06-05  Steven Bosscher  <steven@gcc.gnu.org>
+
+       * Make-lang.in (F95_ADDITIONAL_OBJS): Remove the final
+       C front end dependency.  Also, convert.c does not depend on
+       g95-support.h anymore.
+       * convert.c: Don't include c-common.h and g95-support.h
+       * f95-lang.c: Don't inlude c-common.h and c-common.def (3x).
+       (g95_stmt_tree, g95_scope_stmt_stack, anon_aggr_type_p,
+       stmts_are_full_exprs_p, current_stmt_tree,
+       current_scope_stmt_stack): Remove.
+       * g95-support.h (unsigned_conversion_warning): Kill proto.
+       (boolean_type_node, boolean_true_node, boolean_false_node):
+       Don't define here.  Instead, make then true tree nodes in
+       trans-types.
+       * support.c (c_global_trees): Die, C front end, die!!!
+       (g95_init_c_decl_hacks): Don't touch intmax_type_node,
+       uintmax_type_node, string_type_node and const_string_type_node.
+       (decl_constant_value, overflow_warning): Make static functions.
+       They are in death row too, though.
+       (default_conversion, c_expand_asm_operands): Remove.
+       * trans-array.c, trans-expr.c, trans-intrinsic.c, trans-stmt.c,
+       trans.c: Don't include c-common.h.
+       * trans-types.c (boolean_type_node, boolean_true_node,
+       boolean_false_node): Make them real tree nodes.
+       * trans-types.h (intmax_type_node, string_type_node,
+       const_string_type_node): Hack to work around C dependencies
+       in builtin-types.def.
+
+2003-06-04  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
+
+       * decl.c (decl_types): Add some iterators-like sentinels.
+       * decl.c (match_attr_spec): Use them.
+       Use "decl_types" instead of "int".
+       Add cast in call to g95_match_strings.
+       * dump-parse-tree.c (g95_show_namespace):  Use "g95_intrinsic_op"
+       instead of "int".
+       * g95.h (g95_intrinsic_op): Add some iterators-like sentinels.
+       (g95_interface_info): Use "g95_intrinsic_op".
+       * dump-parse-tree.c (g95_show_namespace): Use them.
+       * interface.c (g95_check_interfaces): Use them.
+       * module.c (read_module, write_module): Use them.
+       * symbol.c (g95_get_namespace, g95_free_namespace): Use them.
+       Use "g95_intrinsic_op".
+       * interface.c (check_operator_interface): Use "g95_intrinsic_op".
+       Add a default case in switch statement.
+       * intrinsic.h (g95_generic_isym_id): Moved to...
+       * g95.h (g95_generic_isym_id): here.
+       (g95_intrinsic_sym): Use "g95_generic_isym_id".
+       * intrinsic.c (make_generic): Use "g95_generice_isym_id".
+       * trans-intrinsic.c (g95_intrinsic_map_t,
+        g95_conv_intrinsic_lib_funtion): Use "g95_generice_isym_id".
+       * match.c (g95_match_intrinsic_op): Add cast in call to
+       g95_match_strings.
+
+2003-06-03  Steven Bosscher  <steven@gcc.gnu.org>
+
+       * support.c (skip_evaluation, warn_conversion, lvalue_p,
+       lvalue_or_else, pedantic_lvalue_warning, warn_for_assignment,
+       constant_fits_type_p, convert_and_check,
+       unsigned_conversion_warning): Remove these ugly remnants
+       we inherited from the C front end.
+       (function_types_compatible): Remove '#if 0'-edcode.
+       (build_modify_expr): Likewise.
+       (convert_for_assignment): Don't use the deceased functions.
+       The parameter fundecl is now unused.
+       (decl_constant_value): Always just return decl.  In fact
+       this function is not used at present, but it might be in
+       the future, when we start using the tree inliner.
+       (overflow_warning, default_conversion, c_expand_asm_operands):
+       Abort when these are called, they are part of the C type
+       checking implementation and therefore poison to Fortran.
+
+2003-06-04  Steven Bosscher  <steven@gcc.gnu.org>
+
+       * Make-lang.in (F95_ADDITIONAL_OBJS): Don't depend on
+       c-pretty-print.o and c-dump.o.  Add a comment on why we
+       depend on c-semantics.c.
+       * f95-lang.c (LANG_HOOKS_TREE_DUMP_DUMP_TREE_FN):
+       Don't use the C front end tree dumper hook to dump the
+       language specific tree representation -- we don't have
+       one.  So instead, inherit the default langhook.
+
+2003-06-02  Paul Brook  <paul@nowt.org>
+
+       * trans-expr.c (g95_conv_variable): Remove incorrent assertion.
+
+2003-06-02  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
+
+       * check.c (g95_check_associated): Use proper types.  Remove
+       extraneous argument in call to g95_error().
+
+2003-06-02  Kejia Zhao  <kejia_zh@yahoo.com.cn>
+
+       * resolve.c (resolve_operator): Make logical operands convert to the
+       type with higher kind.
+
+2003-06-02  Kejia Zhao  <kejia_zh@yahoo.com.cn>
+
+       * check.c (g95_check_associated): Make sure both pointer and target has
+       the same type and rank. Null pointer or array section with vector
+       subscript as target are not allowed.
+       * trans.h: Declare gfor_fndecl_associated.
+       * trans-decl.c: (g95_build_builtin_function_decls): Initialize
+       gfor_fndecl_associated.
+       * trans-intrinsic.c (g95_conv_associated): New function.
+       (g95_conv_intrinsic_function): Make G95_ISYM_ASSOCIATED work.
+
+2003-06-02  Kejia Zhao  <kejia_zh@yahoo.com.cn>
+
+       * trans-array.c (g95_conv_expr_descriptor): Set the base of POINTER
+       according to POINTER itself rather than TARGET.
+       (g95_conv_expr_descriptor): Make lbound start at 1.
+       * trans-expr.c (g95_trans_pointer_assign): Fix a bug for Nullify.
+
+2003-06-01  Paul Brook  <paul@nowt.org>
+
+       * expr.c (g95_type_convert_binary): Make it match the standard.
+       * g95.texi: Remove dead link.
+
+2003-06-01  Steven Bosscher  <steven@gcc.gnu.org>
+
+       * g95.texi: Cleanup somewhat in preparation for inclusion
+       in GCC CVS.
+
+2003-05-23  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
+           Canqun Yang  <canqun@yahoo.com.cn>
+
+       * resolve.c (compare_bound_int, resolve_where_shape): Proper return
+       type.
+       (g95_find_forall_index): Return proper value.
+       (g95_resolve_assign_in_forall, g95_resolve_forall): Use proper type to
+       compare the return value from g95_find_forall_index.
+
+2003-05-23  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
+       * g95.h, io.c (g95_st_label): Remove "length".
+       (g95_symtree): Remove "link".
+       (g95_case): Remove "code".
+       * arith.c, arith.h (g95_compare_string, g95_convert_integer,
+       g95_convert_real): Make an argument pointer to const.
+       * decl.c (colon_seen): Add a TODO.
+       * interface.c (g95_compare_types): Fix typo.
+       * interface.c (compare_interfaces): Preserve value of "p".
+       * intrinsic.c (sort_actual): Remove "i".
+       * match.c (g95_match_assign): Proper type in call to g95_match().
+       * parse.c (next_free): Avoid duplicate call due to macro.
+       * parse.c (check_statement_label): wrong type in call to g95_error.
+       * primary.c (match_real_constant): Add a TODO.
+       * resolve.c (resolve_select):  Remove useless conditional.
+       * simplify.c (g95_simplify_repeat): Proper assignment to
+       "value.character.string".
+       * simplify.c (g95_simplify_reshape): Wrong variable in call to
+       g95_error.
+
+2003-05-20  Canqun Yang  <canqun@yahoo.com.cn>
+
+       * trans-stmt.c: Remove unnecessary include file defaults.h.
+
+2003-05-19  Lifang Zeng  <zlf605@hotmail.com>
+
+       * trans-stmt.c (g95_trans_forall_loop): Handle FORALL with negative
+       stride.
+       (g95_trans_forall): Allow arbitrary number of FORALL indexes and
+       actual variables used as FORALL indexes.
+
+2003-05-15  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c (g95_trans_static_array_pointer): Use
+       null_pointer_node.
+       (g95_trans_deferred_array): Initialize static array pointers.
+       * trans-expr.c (g95_conv_function_call): Use formal arglist to
+       correctly pass POINTER and absent CHARACTER arguments.
+
+2003-05-14  Lifang Zeng  <zlf605@hotmail.com>
+
+       * resolve.c (g95_resolve_forall): Resolve FORALL construct/statement.
+       (g95_resolve_forall_body): Resolve FORALL body.
+       (g95_resolve_where_code_in_forall): Resolve WHERE inside FORALL.
+       (g95_resolve_assign_in_forall): Resolve assignment inside FORALL.
+       (g95_find_forall_index): Check whether the FORALL index appears in
+       the expression or not.
+       (resolve_code): Modified.
+
+2003-05-14  Paul Brook  <paul@nowt.org>
+
+       * iresolve.c (g95_resolve_spread): Convert ncopies to index_type.
+
+2003-05-13  Paul Brook  <paul@nowt.org>
+
+       * trans-types.c (g95_max_array_element_size): Now a tree node.
+       (g95_init_types): Work out max size properly.
+       (g95_get_dtype_cst): Modify to match.
+
+2003-05-11  Paul Brook  <paul@nowt.org>
+
+       * trans-io.c (add_case): Create a label decl for case labels.
+
+2003-05-11  Paul Brook  <paul@nowt.org>
+
+       * arith.c (g95_integer_index_kind): New variable.
+       * f95-lang.c (g95_init): Move frontend initialization here ...
+       (g95_post_options): ... from here.
+       * g95.h (g95_index_integer_kind, g95_resolve_index): Declare.
+       * intrinsic.c (add_functions): Use index kinds.
+       * iresolve.c: Convert to index_kind where needed.
+       * resolve.c (g95_resolve_index): Make public, use index_kind.
+       (resolve_array_ref): Adjust to match.
+       * trans-array.c: Rename g95_array_index_kind to g95_index_integer_kind.
+       * trans-stmt.c: Ditto.
+       * trans-types.c: Ditto.
+       * trans-types.h (g95_array_index_kind): Remove declaration.
+       * trans-expr.c (g95_conv_expr_present): Use null_pointer_node.
+
+2003-05-07  Paul Brook  <paul@nowt.org>
+
+       * trans-const.c (g95_conv_mpz_to_tree): Typecast constant.
+       * trans-intrinsic.c (g95_conv_intrinsic_bound): Convert type
+       of bound indices.
+
+2003-05-07  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c (trans_static_array_pointer,
+       g95_trans_array_constructor_value, g95_conv_array_initializer,
+       g95_conv_structure): CONSTRUCTOR nodes only have one operand.
+       (g95_add_loop_ss_code): Convert subscripts to the correct type.
+       * trans-stmt.c (g95_trans_character_select): Ditto.
+       * trans-types.c (g95_init_types): Ditto.
+
+2003-05-07  Steven Bosscher  <steven@gcc.gnu.org>
+
+       * f95-lang.c (expand_function_body): Use input_line, not lineno.
+       * trans-decl.c (g95_generate_function_code,
+       g95_generate_constructors): Likewise.
+       * trans.c (g95_trans_runtime_check, g95_add_block_to_block,
+       g95_get_backend_locus, g95_set_backend_locus, g95_trans_code):
+       Likewise.
+
+2003-05-07  Kejia Zhao  <kejia_zh@yahoo.com.cn>
+       * trans-types.c (g95_get_derived_type): Fix bug for DERIVED type
+       with components point to the DERIVED type itself, and two DERIVED
+       type with components point to each other.
+       * trans-expr.c (g95_conv_componet_ref): Modified
+
+2003-05-07  Kejia Zhao  <kejia_zh@yahoo.com.cn>
+       * trans-expr.c (g95_conv_expr): Translate EXPR_NULL into
+       null_pointer_node.
+       (g95_trans_pointer_assign): Implement Nullify.
+
+2003-05-01  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c (g95_walk_function_expr): Cope with NULL esym.
+       * trans-decl.c (g95_get_symbol_decl): Don't mangle dummy functions.
+
+2003-05-01  Paul Brook  <paul@nowr.org>
+
+       * trans-array.c, trans.c, trans-expr.c, trans-intrinsic.c,
+       trans-stmt.c: Replace empty_stmt_node with build_empty_stmt () and
+       IS_EMPTY_STMT.
+
+2003-05-01  Canqun Yang  <canqun@yahoo.com.cn>
+
+       * trans-stmt.c (g95_trans_integer_select): Add a parameter to build
+       CASE_LABEL_EXPR.
+
+2003-04-28  Paul Brook  <paul@nowt.org>
+
+       * iresolve.c (g95_resolve_transpose): COMPLEX types are twice as big
+       as their kind suggests.
+       (g95_resolve_reshape): Ditto.
+
+2003-04-28  Chun Huang  <compiler@sohu.com>
+
+       * trans-expr.c (g95_conv_substring_expr): New function.
+       (g95_conv_expr): Use it.
+
+2003-04-28  Paul Brook  <paul@nowt.org>
+
+       * iresolve.c (g95_resolve_transpose): Make it match the
+       implementation.
+       * trans-intrinsic.c (g95_is_intrinsic_libcall): Add TRANSPOSE.
+
+2003-04-18  Steven Bosscher  <steven@gcc.gnu.org>
+
+       * trans-types.c (g95_add_field_to_struct): New function to
+       add a field to a UNION_TYPE or RECORD_TYPE.
+       * trans-types.h (g95_add_field_to_struct): Prototype.
+       (g95_get_derived_type): Use g95_add_field_to_struct to add
+       components.
+       * trans-io.c (g95_add_field): Remove.
+       (ADD_FIELD): Use new g95_add_field_to_struct function.
+       (ADD_STRING): Likewise.
+       * trans-stmt.c (g95_trans_select): Likewise.
+       (g95_add_field): Remove duplicated function.
+
+2003-04-18  Canqun Yang  <canqun@yahoo.com.cn>
+
+       Port implementation for CHARACTER SELECT from Andy's tree.
+       * trans-stmt.c (g95_trans_character_select): Implement character
+       select. (g95_add_field): New function.
+       * trans-decl.c: Declare 'gfor_gndecl_select_string'.
+       (g95_build_builtin_function_decls): Add 'gfor_fndecl_select_string'.
+       * g95.h (struct g95_case): Add field 'int n'.
+       * trans.h: Declare 'gfor_fndecl_select_string'.
+
+2003-04-18  Steven Bosscher  <steven@gcc.gnu.org>
+
+       * bbt.c (duplicate_key, g95_insert_bbt_with_overlap): Remove.
+       (g95_insert_bbd): Die on duplicates.
+       * g95.h (g95_insert_bbt_with_overlap): Delete prototype.
+
+2003-04-14  Steven Bosscher  <steven@gcc.gnu.org>
+
+       * g95.texi: Require GMP 4.0 -- like we actually
+       do.  Explain the testsuite and what-goes-where.
+       Don't use undefined texinfo symbol.  Break very
+       long line.  Remove finished item from the list
+       of open projects.
+
+2003-04-11  Canqun Yang  <canqun@yahoo.com.cn>
+
+       * trans-stmt.c (g95_evaluate_where_mask): Give mask temporaries
+       LOGICAL type.
+
+2003-04-10  Canqun Yang  <canqun@yahoo.com.cn>
+
+       * trans-stmt.c (g95_trans_forall): Implement WHERE inside FORALL.
+       (g95_trans_forall_body): New function.
+
+2003-04-10  Canqun Yang  <canqun@yahoo.com.cn>
+
+       * resolve.c (resove_where): New function.
+       (resolve_where_shape): New function.
+       (resolve_code): Add call to 'resolve_where'
+       * trans-stmt.c (g95_trans_where): Modified.
+       (g95_trans_where_2): New function.
+       (g95_trans_where_assign): New function.
+       (g95_evaluate_where_mask): New function.
+       (g95_add_to_stmt_list): New function.
+       (g95_get_temp_expr): New function.
+       * trans.h (where_stmt_list): New structure.
+
+2003-04-10  Paul Brook  <paul@nowt.org>
+
+       * g95spec.c (DEFAULT_SWITCH_TAKES_ARG): Remove.
+       (DEFAULT_WORD_SWITCH_TAKES_ARG): Ditto.
+
+2003-04-10  Steven Bosscher  <steven@gcc.gnu.org>
+
+       Update after mainline -> tree-ssa-branch merge.
+       * f95-lang.c (g95_mark_addressable): Update put_var_into_stack
+       call.
+       (g95_init): Update for new lang_hooks definition.
+       (g95_post_options): New langhook.
+       (LANG_HOOK_POST_OPTIONS): Clear, then define to g95_post_options.
+       * scanner.c (g95_new_file): Comment update.
+
+2003-04-09  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
+
+       * g95.h, lang-options.h: Add -Wimplicit-interface.
+       * options.c (g95_init_options, g95_parse_arg): Set it.
+       * interface.c (check_intents): Warn about call with implicit
+       interface.
+       * resolve.c (resolve_unknown_f, resolve_unknown_s): Call
+       g95_procedure_use.
+
+2003-04-05  Paul Brook  <paul@nowt.org>
+
+       * iresolve.c (g95_resolve_spread): Don't resole based on type.
+       * trans-intrinsic.c (g95_is_intrinsic_libcall): Add G95_ISYM_SPREAD.
+
+2003-03-29  Paul Brook  <paul@nowt.org>
+
+       * iresolve.c (g95_resolve_pack): Don't bother resolving based on type.
+       (g95_resolve_unpack): Ditto.
+       * trans-intrinsic.c (g95_conv_intrinsic_merge): New Function.
+       (g95_conv_intrinsic_function): Use it.  Remove PACK and UNPACK.
+       (g95_is_intrinsic_libcall): Add PACK and UNPACK.
+
+2003-03-25  Paul Brook  <paul@nowt.org>
+
+       * arith.c (g95_unary_user, g95_user): Remove dead functions.
+       * arith.h: Ditto.
+       * array.c (g95_free_array_ref): Ditto.
+       * g95.h: Ditto.
+       * symbol.c (g95_use_derived_tree): Ditto.
+       * intrinsic.c (add_functions): Use simplification for SCALE.
+       * primary.c (g95_match_rvalue): Test sym, not symtree.
+
+2003-03-25  Paul Brook  <paul@nowt.org>
+
+       * trans-decl.c (build_function_decl): Add parameter before it gets
+       turned into a constant.
+       * iresolve.c (g95_resolve_eoshift): Resolve to a useful name.
+       * trans-intrinsic.c (g95_is_intrinsic_libcall): Add G95_ISYM_EOSHIFT.
+       * trans-decl.c (g95_create_module_variable): Don't pushdecl constants.
+
+2003-03-22  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c (g95_conv_array_initializer): Allow scalar
+       expressions.
+       * trans-decl.c (g95_finish_var_decl): Result variables are not
+       module variables.
+       * trans-intrinsic.c (g95_conv_intrinsic_transfer): New function.
+       (g95_conv_intrinsic_function): Use it.
+       * trans-types.h (g95_type_spec): Remove dead declaration.
+
+2003-03-21  Paul Brook  <paul@nowt.org>
+
+       * trans-decl.c (g95_build_function_decl): Mark string parameters.
+
+2003-03-20  Paul Brook  <paul@nowt.org>
+
+       * trans-decl.c (g95_build_function_decl): Put character length
+       parameters at the end of the function declaration.
+       * trans-expr.c (g95_conv_function_call): Ditto.
+       * trans-types.c (g95_get_function_type): Ditto.
+
+2003-03-20  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
+
+       * resolve.c (resolve_formal_arglist): Don't impose intent for
+       procedure arguments of pure functions.
+       (resolve_select): Remove redundant assignment.
+
+2003-03-19  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
+
+       * arith.c (validate_logical), g95.h, options.c (g95_init_options):
+       Remove option l1.
+       * g95.h, intrinsic.c(g95_get_intrinsic_sub_symbol): Add const.
+       * iresolve.c(g95_resolve_cpu_time, g95_resolve_random_number): Add
+       const.
+       * lang-options.h: Remove -finline-repack-arrays. Add -fg77-calls.
+       Order list.
+       * symbol.c (g95_add_type): Fix typo in comment.
+
+
+2003-03-16  Paul Brook  <paul@nowt.org>
+
+       * dump-parse-tree.c (g95_show_code_node): Print resolved sym name.
+       * expr.c (g95_build_call): Remove.
+       * f95-lang.c (puchdecl_top_level): New function.
+       * g95.h (g95_code): Store resolved symbol, not just the name.
+       * intrinsic.c (g95_intrinsic_namespace): New global namespace.
+       (g95_intirinsic_init_1, g95_intrinsic_done_1): Use it.
+       (g95_get_intrinsic_sub_symbol): New function.
+       * iresolve.c (g95_resolve_cpu_time): Use it.
+       (g95_resolve_random_number): Ditto.
+       * resolve.c: Set code->resolved_sym instead of code->sub_name.
+       * trans-decl.c (g95_get_extern_function_decl): Give external decls
+       the correct DECL_CONTEXT.  Add global symbold to the global scope.
+       * trans-stmt.c (g95_trans_code): Remove hacks now the fronted is
+       fixed.
+
+2003-03-16  Paul Brook  <paul@nowt.org>
+
+       * g95.h (g95_option_t): Add g77_calls. Remove inline_repack_arrays.
+       * options.c (g95_parse_arg): Ditto.
+       * module.c (mio_symbol_attribute): Handle the always_explicit bit.
+       * resolve.c (resolve_formal_arglist): The always_explicit sould be set
+       for the procedure, not the parameter.
+       * trans-array.c (g95_trans_g77_array): New function.
+       (g95_trans_assumed_size): Use it.
+       (g95_trans_dummy_array_bias): Ditto.
+       (g95_conv_array_parameter): Handle g77 arrays. Move existing body ...
+       (g95_conv_expr_descriptor): ... to here.  Update callers.
+       * trans-decl.c (g95_build_dummy_array_decl): Handle g77 arrays.
+       (g95_get_symbol_decl): Avoid processing g77 arrays multiple times.
+       * trans-expr.c (g95_conv_function_call): Handle g77 arrays.
+       * trans-intrinsic.c (g95_get_symbol_for_expr): Never use g77 arrays.
+       * trans-types.c (g95_is_nodesc_array): Handle g77 arrays.
+       (g95_sym_type): Ditto.
+
+2003-03-15  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c (g95_walk_elemental_function_args): Don't amputate the
+       first chain.
+       * trans-expr.c (g95_conv_function_call): Use the resolved symbol.
+
+2003-03-14  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c (g95_array_is_packed): Remove.
+       (g95_conv_array_base): Correctly handle all descriptorless cases.
+       (g95_conv_array_stride): Use descriptorless strides.
+       (g95_trans_dummy_array_bias): Don't always repack the array.
+       (g95_build_dummy_array_decl): Automatic dummy arrays are only partial
+       packed.
+       * trans-types.c (g95_get_nodesc_array_type): Differentiate between
+       dummy and non-dummy arrays...
+       (g95_sym_type, g95_get_derived_type): ... like these.
+       (g95_get_array_type_bounds): Allow discontiguous arrays.
+
+2003-03-12  Paul Brook  <paul@nowt.org>
+
+       * array.c (g95_resolve_array_spec): Fix comment.
+       * g95.h (symbol_attributes): New flag always_explicit.
+       * resolve.c (resolve_formal_arglist): Set it always_explicit.
+       * iresolve.c (g95_resolve_lbound, g95_resolve_ubound): Simplify.
+       * trans-array.c (g95_conv_descriptor_dimension): Remove dead assert.
+       (g95_trans_array_bounds): Allow assumed shape arrays.
+       (g95_trans_repack_array): Remove.
+       (g95_trans_dummy_array_bias): Rewite to use descriptorless arrays.
+       * trans-decl.c (g95_build_qualified_array): Only ignore absent
+       bounds for assumed size arrays.
+       (g95_build_dummy_array_decl): Use descriptorless arrays.
+       * trans-expr.c (g95_conv_expr_present): Allow descriptorless arrays.
+       (g95_trans_pointer_assign): Fix typo.
+       * trans-intrinsic.c (g95_conv_intrinsic_function_args): Remove dead
+       code.
+       (g95_conv_intrinsic_bound): Rewrite to handle descriptorless arrays.
+       * trans-types.c (g95_get_nodesc_array_type): Allow non-packed arrays.
+       Also modify callers.
+       * trans-types.h (g95_get_nodesc_array_type): Modify prototype.
+
+2003-03-08  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c (g95_walk_elemental_functions): Don't reverse the SS.
+       (g95_conv_array_ubound): Provide dummy value for assumed size arrays.
+       * resolve.c (compare_spec_to_ref): Allow full array sections.
+
+2003-03-08  Paul Brook  <paul@nowt.org>
+
+       * expr.c (g95_simplify_expr): Also simplify array index and
+       substring expressions.
+       * resolve.c (compare_spec_to_ref): Check for assumed size bounds.
+       * trans-array.c (g95_trans_array_bounds): New function.
+       (g95_trans_auto_array_allocation): Use it.
+       (g95_trans_assumed_size): Rewrite.
+       * trans-decl.c (gfor_fndecl_in_pack, gfor_fndecl_in_unpack): Declare.
+       (gfor_fndecl_repack): Remove.
+       (g95_build_qualified_array): Handle absent upper bounds.
+       (g95_build_dummy_array_decl): Assumed shape arrays are descriptorless.
+       (g95_get_symbol_decl): Update.
+       (g95_build_intrinsic_function_decls): Initialize new decls.
+       * trans.h (gfor_fndecl_in_pack, gfor_fndecl_in_unpack): Declare.
+       (gfor_fndecl_repack): Remove.
+       * trans-io.c (g95_build_io_library_fndecls): Correct prototypes.
+       * trans-types.c: (g95_build_array_type): Merge duplicated code..
+       (g95_get_nodesc_array_type): Handle absent bounds.
+       * trans-types.h (g95_get_nodesc_array_type): Declare.
+
+2003-03-04  Paul Brook  <paul@nowt.org>
+
+       * f95-lang.c (DEF_FUNCTION_TYPE_VAR_3): Define before including
+       builtin-types.def.
+
+2003-03-02  Paul Brook  <paul@nowt.org>
+
+       * options.c (g95_init_options): Drfault to 1.
+       (g95_pasrse_arg): Add -frepack-arrays, use strcmp.
+       * trans-array.c (g95_conv_array_data, g95_conv_array_base,
+       g95_conv_array_stride,g95_conv_array_lbound, g95_conv_array_ubound):
+       Handle non-constant size automatic arrays.
+       (g95_conv_section_upper_bound, g95_conv_section_startstride): Use
+       generic bound functions.
+       (g95_trans_auto_array_allocation): Don't create a descriptor.
+       (g95_trans_assumed_size): New function (broken).
+       (g95_trans_dummy_array_bias): Remove unused var.
+       * trans-array.h (g95_trans_assumed_size): Declare.
+       * trans-decl.c (create_index_var): New fuction.
+       (g95_build_qualified_array): New function.
+       (g95_get_symbol_decl): Use it.
+       (g95_trans_deferred_vars): Handle assumed shape seperately.
+       * trans-types.c (get_element_type): Handle heap allocated arrays.
+       (g95_is_nodesc_array): Include non-const size arrays.
+       (g95_get_nodesc_array_type): Ditto.
+
+2003-02-23  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c (g95_array_init_size): Should use stride, not size of
+       last dimension.
+
+2003-02-18  Paul Brook  <paul@nowt.org>
+
+       * trans-expr.c (g95_trans_arrayfunc_assign): Nove elemental check
+       after intrinsic function check.
+
+2003-02-18  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
+
+       * io.c (match_io): Fix missing return value and remove useless
+       assignment.
+       * match.c (g95_match): Remove useless assignment.
+       * module.c (parse_string):  Remove useless post increment.
+       * simplify.c (g95_simplify_verify): Remove useless assignment.
+
+2003-02-15  Paul Brook  <paul@nowt.org>
+
+       * expr.c (restricted_intrinsic): Handle bad values gracefully.
+       * g95.h (symbol_attribute): Add referenced member.
+       (g95_symbol): Add dummy_order member.
+       (g95_set_sym_referenced): Declare.
+       * match.c (g95_match_assignment, g95_match_call): Use it
+       * primary.c (match_actual_arg, g95_match_rvalue,
+       g95_match_variable): Ditto.
+       * symbol.c (next_dummy_order): New variable.
+       (g95_set_sym_referenced): New function.
+       (check_done): New function.
+       (g95_add_*): Use it.
+       * trans-decl.c: Make formatting conform to GCC standards.
+       (g95_defer_symbol_init): Add dummy variables in the right order.
+       (g95_get_symbol_decl): Only accept referenced variables.
+       (g95_create_module_variable): Module variables are always required.
+       (generatr_local_decls): New function.
+       (generate_local_vars): New function.
+       (g95_generate_function_code): Use it.
+
+2003-02-13  Paul Brook  <paul@nowt.org>
+
+       * trans-decl.c (g95_conv_struct_cons): Remove.
+       (g95_get_symbol_decl): Use g95_conv_expr for structure initializers.
+       * trans-expr.c (g95_conv_structure): New function.
+       (g95_conv_expr): Use it.
+
+2003-02-09  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c (g95_array_init_size): Don't evaluate the linit
+       expressions multiple times.
+       (g95_trans_auto_arry_allocation): Use pointer not tmp.
+
+2003-02-08  Paul Brook  <paul@nowt.org>
+
+       * module.c (mio_symtree_ref): Declare as static.
+       (mio_expr): Remove dead code.
+       (read_module): Set the symtree link for fixups.
+       * trans-intrinsic.c (g95_conv_intrinsic_round): Rename...
+       (build_round_expr): ... to this.
+       (g95_conv_intrinsic_aint): New function.
+       (g95_conv_intrinsic_function): Use it.
+
+2003-02-08  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c (g95_trans_array_constructor_value): Use the acutal
+       offset after modificaton, not the increment expression.
+       * dependency.c: Kill excess whitespace.
+
+2003-02-07  Sanjiv Gupta  <sanjivg@noida.hcltech.com>
+
+       * dependency.h: Remove some function declarations.
+       * dependency.c (get_no_of_elements): Change this function not to
+       return int.
+       * other: Add comments for all modified functions.
+
+2003-02-06  Paul Brook  <paul@nowt.org>
+
+       * g95spec.c (lang_specific_functions): Fix initializer warning.
+       * dump-parse-tree.c (g95_show_expr): Use typespec instead of symtree
+       for structure type names.
+       * trans-decl.c (g95_cons_structure_cons): New function.
+       (g95_get_symbol_decl): Use it.
+       * trans-expr.c (g95_conv_component_ref): Remove duplicate pointer
+       referencing code.
+
+2003-02-06  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
+
+       * resolve.c (compare_cases): Add const to casts.
+
+2003-01-30  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
+
+       * g95.h (g95_check_f): Change a1 to f1m.
+       * intrinsic.c (add_sym_1m, check_specific,
+       g95_intrinsic_func_interface): Use it.
+
+       * module.c (init_pi_tree): Remove useless cast.
+       (fp2): Fix argument type.
+
+       * parse.c (parse_select_block): Add comment.
+
+2003-02-05  Toon Moene  <toon@moene.indiv.nluug.nl>
+
+       * lang-options.h: Fix warning involving C90 concatenated
+       strings.
+
+2003-02-06  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+           Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
+
+       * io.c (format_asterisk): Complete initializer to kill warning.
+       * arith.c (DEF_G95_INTEGER_KIND, DEF_G95_LOGICAL_KIND,
+       DEF_G95_REAL_KIND, MPZ_NULL, MPF_NULL): New #defines.
+       (g95_integer_kinds, g95_logical_kinds, g95_real_kinds): Use the
+       new defines to complete initializers.  Kills all warnings.
+
+       * Make-lang.in: Comment cleanup.
+
+2003-02-05  Paul Brook  <paul@nowt.org>
+
+       * array.c (g95_free_constructor): Handle NULL expressions.
+       * resolve.c (resolve_structure_cons): Ditto.
+       * decl.c (g95_match_null): New Function.
+       (variable_decl): Use it.
+       * module.c (mio_expr): Don't bother saving symtree for EXPR_STRUCTURE.
+       * primary.c (g95_match_runtime): Don't use symtree for EXPR_STRUCTURE.
+       * trans-types.c (g95_set_decl_attributes): Remove empty function.
+
+2003-02-05  Paul Brook  <paul@nowt.org>
+
+       * trans.h (build1_v): New macro.
+       (build_v): Remove pointless and incorrect prototype.
+       * various: Use build1_v for GOTO_EXPR and LABEL_EXPRs.
+       * f95-lang.c (g95_init_builtin_decls): DEF_BUILTIN takes 10 args.
+
+2003-02-01  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * Make-lang.in (F95_OBJS): Remove one more dead file.
+
+2003-02-01  Paul Brook  <paul@nowt.org>
+
+       * lang-specs.h: Don't pass -ffixed-form to the linker.
+       * trans-decl.c (g95_generate_function_code): Clear saved decl chain.
+
+2003-02-01  Paul Brook  <paul@nowt.org>
+
+       * Make-lang.in (F95_OBJS): Remove dead files.
+       * trans-array.c (g95_array_init_size): Do the right thing when
+       ubound=NULL.
+       * trans-decl.c (g95_generate_function_code): Initialize deffered
+       symbol list before translating contained subroutines.
+       * trans-expr.c (g95_conv_expr, g95_conv_expr_reference): Substitute
+       scalar invariant values here...
+       (g95_conv_variable, g95_conv_function_call): ... instead of here ...
+       * trans-intrinsic.c (g95_conv_intrinsic_function_args): .. and here.
+
+2003-01-29  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c (g95_add_loop_code): Put pre code in the right block.
+       (g95_walk_elemental_function_args): Reverse chains before adding.
+       (g95_reverse_ss): Move about a bit.
+       * trans-expr.c (g95_conv_function_call): Handle scalar intrinsic
+       function arguments.
+
+2003-01-28  Paul Brook  <paul@nowt.org>
+
+       * intrinsic.c (resolve_intrinsic): Use correct union member.
+       * trans-array.c (g95_trans_dummy_array_bias): Don't touch absent
+       parameters.
+       * trans-decl.c (g95_get_symbol_decl): Don't translate initializers for
+       use associated variables.
+       * trans-intrinsic.c (g95_conv_intrinsic_present): Move body ...
+       * trans-expr.c (g95_conv_expr_present): ... to here.
+       * trans.h: Declare it.
+       * trans-types.c (g95_sym_type): Assume subroutine if not specified.
+
+2003-01-28  Arnaud Desitter  <arnaud.desitter@geography.oxford.ac.uk>
+
+       * array.c (expand_iterator): Suppress useless assignment.
+       * decl.c (match_char_spec): Ditto.
+       * io.c (match_io_iterator): Ditto.
+       * primary.c (match_real_constant): Ditto.
+       * interface.c (fold_unary, g95_free_interface, g95_extend_expr):
+       Ditto.  Also, use g95_intrinsic_op not int for intrinsic operators.
+       * matchexp.c (match_add_operand, match_level_5): Likewise.
+       * module.c (parse_atom, find_enum): Likewise.
+       * resolve.c: move #include <string.h>
+       (resolve_select): Fix serious typo.
+
+2003-01-28  Steven Bosscher  <s.bosscher@student.tudelft.n>
+
+       * Make-lang.in: Don't build with broken tree-ssa-pre.
+
+2003-01-28  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * resolve.c (resolve_index): Add a TODO.
+       * symbol.c: Remove useless "#include <ctype.h>".
+
+2003-01-27  Paul Brook  <paul@nowt.org>
+
+       * check.c (check_rest): Allow different type kinds as an extension.
+       * g95.h (g95_resolve_f): Add f1m.
+       * intrinsic.c (add_sym_1m, resolve_intrinsic): Use it.
+       * intrinsic.h: Chenge prototypes for MIN and MAX.
+       * iresolve.c (g95_resolve_minmax): New function.
+       (g95_resolve_min, g95_resolve_max): Use it.
+       * trans-intrinsic.c (g95_trans_intrinsic_minmax): Only evaluate
+       arguments once.
+       (g95_conv_intrinsic_present): Fix logic.
+
+2003-01-27  Steven Bossche  <s.bosscher@student.tudelft.nl>
+
+       * g95.h (g95_case): Don't be a tree, be a double linked list.
+       * match.c (match_case_selector): Remove redundant semantics check.
+       Clean up a few goto's to make it a tiny little bit faster.
+       * resolve.c (case_tree): Die.
+       (compare_cases): Accept and compare unbounded cases too.
+       (check_case_overlap): Don't build a tree.  Instead, merge-sort the
+       whole list of g95_cases passed from resolve_select.
+       (sane_logical_select): Die.
+       (check_case_expr): Return FAILURE if a CASE label is of the wrong
+       type kind.
+       (resolve_select): Fixup case expression for computed GOTOs, put it
+       in expr, not expr2, for easier handing in the parse tree dumper and
+       the code generator.  Rewrite the rest of the function: Kill
+       unreachable case labels and unreachable case blocks.
+       * dump-parse-tree.c (g95_show_code_node): Always dump expr for
+       an EXEC_SELECT, not case2 anymore.
+       * trans-const.c (g95_conv_constant_to_tree): New function.
+       (g95_conv_constant): Use it.
+       * trans-const.h: Declare prototype for the new function.
+       * trans-stmt.c (g95_trans_integer_select, g95_trans_logical_select,
+       g95_trans_character_select): New static functions.
+       (g95_trans_select): Rewrite.
+
+2003-01-26  Paul Brook  <paul@nowt.org>
+
+       * intrinsic.c (add_fnctions): Properly add dreal.
+       * trans-intrinsic.c (g95_conv_intrinsic_present): New function.
+       (g95_conv_intrinsic_function): Use it.
+       * trans-io.c (build_dt): Abort on internal files (unimplemented).
+
+2003-01-26  Paul Brook  <paul@nowt.org>
+
+       Widespread changes to the handling of symbols in expressions.  These
+       are now linked via g95_symtree nodes.
+       * parse.c (g95_fixup_sibling symbols): New function.
+       (parse_contained): Use it.
+       * g95.h (symbol_attribute): Add contained.  Indicates a symbol is a
+       contained procedure that has bee correctly fixed up.
+       (g95_code, g95_expr): Point to a g95_symtree, not a g95_symbol.
+
+2003-01-24  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c (g95_walk_expr): Function result attributes are in
+       sym->result.
+       * trans-expr.c (g95_conv_function_call,
+       g95_trans_arrayfunc_assign): Ditto.
+       * trans-decl.c (g95_get_symbol_for_expr): Set sym->result.
+
+2003-01-23  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * expr.c (check_restricted): Fix error message.
+       * symbol.c (free_st_labels): Plug memleak.
+
+2003-01-22  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * arith.c (reduce_unary, reduce_binary_ac, reduce_binary_ca,
+       reduce_binary_aa, reduce_binary, eval_intrinsic,
+       eval_intrinsic_f2): Use typesafe prototypes for eval functions.
+       * g95.h (g95_check_f, g95_simplify_f, g95_resolve_f): New unions
+       for typesafe intrinsics helper functions.
+       (g95_intrinsic_sym): Use them.
+       * intrinsic.c (do_check, add_sym, add_sym_0, add_sym_1,
+       add_sym_1s, add_sym_1m, add_sym_2, add_sym_3, add_sym_4,
+       add_sym_5, add_conv, resolve_intrinsic, do_simplify,
+       check_specific, g95_intrinsic_func_interface,
+       g95_intrinsic_sub_interface): Adjust all calls to intrinsics
+       helper functions.
+       * trans-decl.c (g95_get_extern_function_decl): Likewise.
+       * Make-lang.in: Don't disable warnings for strict prototypes
+       any longer, everything is typesafe now.
+
+2003-01-22  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * bbt.c (duplicate_node): Make static.
+       * module.c (module_name): Make static.
+       * scanner.c (include_dirs): Make static.
+
+2003-01-20  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       Hard coded _gfor_'s should not show up anymore.
+       * g95.h (PREFIX): New macro.
+       * iresolve.c (g95_resolve_cpu_time): Use PREFIX, not
+       hard-coded "_gfor".
+       (g95_resolve_random_number): Likewise.
+       * trans-decl.c (g95_build_intrinsic_function_decls): Likewise.
+       * trans-io.c: Remove 'prefix' macro.  Replace all uses with
+       the new PREFIX macro from g95.h.
+
+2003-01-20  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       The troubles of forking... Andy implemented this just now too.
+       Let's stick to that and keep the trees close.
+       * g95.h (g95_st_label): 'format' member is now a g95_expr.
+       * io.c: Revert previous changes.
+       (g95_match_format): Match the format string as a character
+       literal expression.
+       * match.h (g95_statement_label): Declare external.
+       * parse.c: Revert previous changes.
+       * symbol.c (g95_free_st_label): Free a g95_expr instead
+       if a 'char *'.
+       * trans-io.c: Revert previous changes.
+       (build_dt): Use set_string to set the format string.
+
+2003-01-20  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * io.c (format_string): Make non-static.
+       (g95_match_format): Remember the format string.
+       (terminate_io): Add I/O termination for empty I/O lists.
+       * match.h: Declare external format_string.
+       * parse.c (check_statement_label): Attack the format string
+       to a format label for FORMAT statements.
+       * trans-io.c (g95_add_field): Define prefix macro.  Replace
+       all uses of PREFIX define with a use of this macro.
+       (build_dt): Implement formatted I/O for format labels.
+
+2003-01-20  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * lang-options.h: Kill "-std=F".
+       * options.c: Remove unimplemented "-std=F".  Modify
+       web address.
+       * misc.c (g95_terminal_width): New function.
+       * error.c (g95_error_init_1): Use g95_terminal_width.
+       * g95.h: Add prototype for g95_terminal_width, remove
+       fmode flag.
+
+2003-01-19  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * Make-lang.in: Fix typo.
+
+2003-01-18  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * g95.h (struct g95_case): Remove unused cruft, new member
+       'where' to keep track of the locus of the default case.
+       * match.c (g95_match_case): Add locus to the current case.
+       (match_case_selector): Likewise.
+       * parse.c (parse_select_block): Move semantics check for
+       multiple DEFAULT cases out of here to...
+       * resolve.c (check_case_overlap): ...here.  Return sooner
+       when possible.
+       (check_case_expr): Take two g95_cases now, use to sure the
+       expression kinds are the same.
+       (resolve_select): Cleanup.
+
+2003-01-18  Paul Brook  <paul@nowt.org>
+
+       * trans-io.c: Fix typos in ported IO work (set_fla[tg]).
+       * trans-decl.c (g95_set_symbol_decl): Handle non-array result
+       variables.
+       (g95_get_extern_function_decl): Put decls in the correct context.
+
+2003-01-18  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * trans-io.c: Port changes from Andy to set ERR flag.
+
+2003-01-17  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c: Add various comments.
+       (g95_ss_terminator): Declare as const.
+       (g95_walk_expr): Remove first parameter and update all callers.
+       (g95_walk_op_expr): Initialize scalar SS properly.
+       * trans-array.h (g95_walk_expr): Update prototype.
+       * trans-expr.c: Update for new g95_walk_expr.
+       * trans-intrinsic.c: Ditto.
+       * trans-io.c: Ditto.
+       * trans.h: Various comments for SS chains.
+
+2003-01-17  Paul Brook  <paul@nowt.org>
+
+       * intrinsic.h (g95_generic_isym_id): Add G95_ISYM_S?_KIND, SPACING
+       and RRSPACING.
+       * intrinsic.c (add_functions): Use them.
+       * trans-intrinsic.c (g95_conv_intrinsic_function): Ditto.
+       * trans-expr.c (g95_conv_expr_lhs): Abort on impossible error.
+
+2003-01-17  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       Fallout of a small merge conflict:
+       * intrinsic.c: Un-revert lost patch (G95_ISYM_SCALE).
+
+2003-01-17  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * initrinsic.c: New add_sym_* functions for strong typing.
+       (add_conv): Make prototype strict.
+       * dump-parse-tree.c, dependency.c: Include config.h
+       * resolve.c, trans-io.c: Fix typos.
+
+2003-01-17  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * dump-parse-tree.c (g95_show_code_node): Show the
+       condition for a computed GOTO that was transformed
+       to a SELECT CASE construct.
+       * resolve.c (check_case_overlap): Revert previous switch
+       to treaps, it was too slow and didn't catch all trouble.
+       (resolve_symbol): Be more flexible about module procedures.
+       * symbol.c (check_conflict): Point to relevant section in
+       the standard for dubious conflict.  Allow procedure
+       dummy arguments to be optional again.
+       * trans-io (add_field): Rename to g95_add_field.  Change
+       all callers.
+       * trans-stmt (trans_select): Handle unbounded cases for
+       integer SELECT CASE constructs.  Fix/add more comment.
+
+2003-01-17  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * g95.h: Uses GCC's function attribute macros.
+       * error.c, module.c, parse.c, g95.h: More function attributes.
+
+2003-01-16  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+       Forgot a file...
+       * trans-decl.c (get_label_decl): Use TREE_LINENO instead
+       of DECL_SOURCE_LINE, and TREE_FILENAME instead of
+       DECL_SOURCE_FILE.
+
+2003-01-16  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * f95-lang.c (pushdecl): Use TREE_LINENO instead of
+       DECL_SOURCE_LINE.
+       * trans.c (g95_trans_code): Use annotate_all_with_file_line
+       instead of nowdead wrap_all_with_wfl.
+
+2003-01-14  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * parse.c (g95_parse_file): In verbose mode, dump the parse tree
+       before generating code, so we can still see it even if the code
+       generation phase dies.
+
+2003-01-14  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * decl.c (build_sym): Split out initialization expression parts...
+       (add_init_expr_to_sym): ...to here.
+       (variable_decl): Add the symbol following an attribute list to the
+       symbol tree before parsing the optional initialization expression
+       if the symbol is not of a derived type.
+       * primary.c (g95_match_rvalue): Don't assume a symbol always has
+       a value if it is a PARAMETER.
+
+2003-01-14  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * misc.c: Don't #include <mcheck.h>
+       * module.c: Ditto.  Kill uses of mtrace, muntrace.  If there
+       ever was a glibc bug, then either this was never reported to
+       glibc people, or it has been fixed for so long that there's
+       no information you can find about it, anywhere.
+
+2003-01-14  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       Fix warnings:
+       * module.c (attr_bits, bt_types, array_spec_types):
+       Switch 'const' and 'static'.
+       * iresolve.c (g95_resolve_reshape): Make __resolve0 non-'const'.
+
+       GNU'ify source code:
+       * trans-io.c: Numerous fixes, one fixed warning and a few
+       TODO markers so that we don't forget about them.
+
+2003-01-13  Paul Brook  <paul@nowt.org>
+
+       * intrinsic.c (add_functions): Add G95_ISYM_SCALE.
+       * intrinsic.h (g95_generic_isym_id): Remove bogus G95_ISYM_ANINIT.
+       Add G95_ISYM_SCALE.
+       * trans-intrinsic.c (g95_conv_intrinsic_function): Ditto
+       * match.c (g95_match_stop): Fix dumb == -> != error.
+
+2003-01-13  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * dump-parse-tree.c (show_indent): Add line breaks.  This
+       whole dumping process needs cleanups.
+       * f95-lang.c (g95_mark_addressable): Fix prototype to match
+       the langhook.  Fix 'return's accordingly.
+       * g95-support.h: Adjust prototype.
+       * g95.h: Add 'no_backend' member to 'g95_option_t' struct.
+       * lang-options.h: Add '-fsyntax-only'.
+       * options.c (g95_init_options): Init 'no_backend'.
+       (g95_parse_arg): Deal with '-fsyntax-only'.
+       * parse.c (g95_parse_file): Do not generate code if 'no_backend'
+       is set.
+
+2003-01-13  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+       Patch from Arnaud
+       * resolve.c (resolve_symbol): Assumed shape arrays must be dummy
+       arguments.  Also make sure that if a symbol is marked INTRINSIC,
+       an intrinsic with the symbol's name actually exists.
+       (check_conflict): Make EXTERNAL and DIMENSION attributes conflict.
+       Do not allow PROCEDURES to have the SAVE, POINTER, TARGET,
+       ALLOCATABLE, RESULT, IN_NAMESPACE, OPTIONAL or FUNCTION attribute.
+
+2003-01-13  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * resolve.c (resolve_contained_functions): Fix condition, don't
+       throw internal_error if a child namespace has no name.  Apparently
+       this can be the case?
+
+2003-01-11  Paul Brook  <paul@nowt.org>
+
+       Port changes from Andy's tree:
+       * g95.h (g95_code): Add stop_code.
+       * match.c (g95_match_stop): Detter syntax checking.
+       * resolve.c (resolve_generic_f0): Return match type.
+       (resolve_generic_f): Remove dead/duplicated code.
+       (resolve_specific_f): Ditto.
+       * dump-parse-tree.c (g95_show_code_node): Handle new STOP format.
+       * trans-decl.c (gfor_fndel_stop_*): New fndecl nodes.
+       * trans-stmt.c (g95_trans_stop): Handle new STOP format.
+
+2003-01-11  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c: Various documentation/comment changes.
+       * trans-stmt.c: Ditto.
+
+
+2003-01-10  Paul Brook  <paul@nowt.org>
+
+       * options.c/h: Add -fdump-parse-tree as alias of -v.
+
+2003-01-10  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * dump-parse-tree.c (g95_show_namespace): Fixed another
+       typo.  Sorry, it's Friday...
+
+2003-01-10  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       Spotted by Tobi:
+       * trans-array.c, trans-array.h, trans.c, trans-const.c,
+       trans-const.h, trans-decl.c, trans-expr.c, trans.h
+       trans-intrinsic.c, trans-io.c, trans-stmt.c, trans-stmt.h
+       trans-types.c: Fix bogus copyright years, add 2003.
+       * trans-types.h: Give copyright header.
+
+2003-01-10  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * dump-parse-tree.c (g95_show_namespace): Fixed typo.
+       * expr.c, options.c, scanner.c: Add some more 'const' markers.
+       * intrinsic.c: Some constant strings moved to read-only memory.
+       * io.c (format_asterisk): Move to...
+       * g95.h: ...here.
+
+2003-01-10  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * dump-parse-tree.c (g95_show_namespace): Dump implicit
+       types for ranges instead of per-letter.  Indent the
+       'CONTAINS' just like everything else.
+       * resolve.c (resolve_contained_functions): Clarify comment.
+       Explain non-obvious conditional expression.  Improve
+       diagnostics if tyoe cannot be resolved.
+       Port semi-fix from Andy's tree:
+       (was_declared): Move up before first use.
+       (generic_sym, specific_sym): New functions.  Code moved
+       out if procedure_kind.
+       (procedure_kind): Simplify using new functions.
+       (resolve_generic_f): Make sure the functions we find in
+       a parent namespace is generic.
+       (resolve_specific_f): Ditto for specific functions.
+
+2003-01-10  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * trans-stmt.c, trans.c: Fix some code style issues. Add
+       some more comment (but still not enough!).
+
+2003-01-10  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * symbol.c (flavors, procedures, intents, acces_types,
+       access_types, ifsrc_types): Make const.
+       * misc.c (g95_string2code): Make 'm' param 'const'.
+       * module.c (find_enum, write_atom, mio_name): Make
+       'm' param 'const'.
+       (attr_bits, bt_types, array_spec_types, array_ref_types,
+       ref_types, expr_types): Make const.
+       * g95.h: Adjust external decls.
+
+2003-01-09  Paul Brook  <paul@nowt.org>
+
+       * Testsuite: Add a load of new cases.
+
+2003-01-08  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * Make-file.in: Add dependency on back end header files;
+       a parallel build should work now.
+       * f95-lang-c (lang_identifier): Remove bogus comment.
+       (g95_be_parse_file): Fix prototype.
+       (g95_init): Make static.
+       (g95_finish): Make static.
+       * error.c (g95_syntax_error): Kill. Make define in...
+       * g95.h (g95_syntax_error): Define.
+       (g95.options): Make 'source' member 'const'.
+       * interface.c (g95_match_interface): Explain
+       hard-to-read condition.
+       (g95_match_end_interface): Ditto.
+       * trans_const.c (g95_build_string_const): Make 's' parameter
+       'const'.
+       * trans_const.h: Adjust protoype accordingly.
+       * trans-decl.c: Include tree-dump.h
+       (g95_generate_function_code): Build fixes for recent changes
+       in the tree-ssa branch.
+
+2003-01-08  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * format.c: Kill, move code from here...
+       * io.c: ...to here.
+       * Make-lang.in: Adjust.
+       * MANIFEST: Ditto.
+       * match.h: Ditto.
+       * BUGS: Mention where to submit bugs.  Move old content...
+       * TODO: ...to here.  New file.
+
+2003-01-08  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+       Fix most warnings, and suppress the ones we can't fix for now.
+       * Make-lang.in: Suppress warnings about bad proto's in g95.h,
+       these warnings just clutter the screen and there's not much
+       we can do about them for now anyway.
+       * check.c, iresolve.c: Mark unused function parameters.
+       * dump-parse-tree.c (g95_show_array_spec): Punt on AS_UNKNOWN,
+       they should be resolved before they get here.
+       * error.c: Remove unused FILE *status_out.
+       * f95-lang.c (g95_init): Remove bogus cast.
+       * Many files: Make things 'const' where required.
+       * g95.h: Fix prototypes for all modified functions above.
+       (g95_options): Remove 'object' member.
+
+2003-01-07  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * Make-file.in: Cleanup bogus targets.  Add more comment.
+       * lang-options.h: New option '-w'.
+       * g95.h: add no_options field to struct g95_options.
+       * options.c (g95_init_options): Default no_warnings to off.
+       (g95_parse_arg): Recognise the '-w' switch and its alias,
+       '-fno-warnings'.
+       * error.c (g95_warning, g95_warning_now): Don't emit warning if
+       no_warning option is set.
+       * iresolve.c (g95_resolve_shape): Fix warning.
+
+2003-01-07  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * primary.c (g95_next_string_char): Rename next_string_char, and
+       make static.  Adjust callers accordingly.
+       * resolve.c (resolve_generic_f0): Return try, not match.  Adjust
+       callers accordingly.
+       * g95.h: Split out all g95_match* functions to...
+       * match.h: ...here. New file.
+       * array.c, decl.c, expr.c, format.c, interface.c, io.c, match.c,
+       matchexp.c, module.c, parse.c, primary.c: Inlcude match.h
+
+2003-01-07  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * symbol.c (g95_clear_new_implicit, g95_add_new_implicit_range,
+       g95_merge_new_implicit): New functions.
+       (g95_match_implicit_none, g95_match_implicit): Move from here...
+       * match.c (g95_match_implicit_none, g95_match_implicit): ... to here.
+       Modify to use the new functions in symbol.c.
+       * g95.h: Add and move prototypes.
+
+2003-01-06  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * bbt.c (insert): Use a typedef'ed compare_fn prototype for the
+       node compare function.
+       (g95_insert_bbt): Likewise.
+       (g95_insert_bbt_with_overlap): Likewise.
+       (g95_delete_bbt): Likewise.
+       (delete_treap): Likewise. Also fix a potential bug when calling it.
+       * module.c (compare_pointers): Change proto to compare_fn.
+       (compare_integers): Likewise.
+       (compare_true_names): Likewise.
+       (find_true_name): Adjust call to compare_true_names to match proto.
+       (require_atom, write_atom, mio_name): Fix 'const' warnings.
+       (init_pi_tree): Make compare a compare_fn instead of (int *).
+       * resolve.c (compare_cases): Change proto to compare_fn.
+       * symbol.c (g95_compare_symtree): Change proto to compare_fn, make
+       it static, and rename to compare_symtree.
+       (delete_symtree, g95_undo_symbols, g95_new_symtree): Use renamed
+       function.
+       * g95.h: Kill g95_compare_symtree prototype. Adjust prototypes
+       of g95_insert_bbt, g95_insert_bbt_with_overlap, and g95_delete_bbt.
+
+2003-01-06  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+       * Make-lang.in: Fix spaces/tabs issues from previous patch.
+       * patch.options: Blow away Paul's checkin mistake :-)
+       * io.c (terminate_io): Fix memory leak (Arnaud).
+
+2003-01-06  Steven Bosscher  <s.bosscher@student.tudelft.nl>
+
+       * Make-lang.in: Teach about building DVI, info manual.
+       * g95.texi: New file.
+
+2003-01-02  Paul Brook  <paul@nowt.org>
+
+       * trans-array.c (g95_reverse_ss): Make static and don't use.
+       (g95_conv_ss_descriptor): Don't use g95_loopinfo
+       (g95_conv_array_parameters): Modify for pointer assignments.
+       (g95_walk_subexpr): New function.
+       (g95_walk_expr*): Use it.
+       * trans-array.h (g95_reverse_ss): Remove prototype.
+       * trans-expr.c (g95_trans_pointer_assign): Implement.
+       (Many): Set se.want_pointer before calling g95_conv_array_parameter.
+       * trans-intrinsic.c: Sync with scalarizer changes.
+       * trans-io.c: Ditto.
diff --git a/gcc/fortran/ChangeLog-2004 b/gcc/fortran/ChangeLog-2004
new file mode 100644 (file)
index 0000000..209ff5a
--- /dev/null
@@ -0,0 +1,2846 @@
+2004-12-29  Steven G. Kargl  <kargls@comcast.net>
+
+       * gfortran.h (gfc_case): fix typo in comment.
+
+2004-12-27  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-intrinsic.c (gfc_conv_intrinsic_ishft): Change to
+       logical shift.  Call fold.  Remove 0-bit shift shortcut.
+       (gfc_conv_intrinsic_ishftc): Convert first argument to at least
+       4 bytes bits.  Convert 2nd and 3rd argument to 4 bytes.  Convert
+       result if width(arg 1) < 4 bytes.  Call fold.
+
+       PR fortran/19032
+       * trans-intrinsic.c (gfc_conv_intrinsic_mod): Update comment
+       in front of function to match the standard.  Correct handling
+       of MODULO.
+
+2004-12-27  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       * trans-expr.c (gfc_conv_cst_int_power): Only check for
+       flag_unsafe_math_optimizations if we have a float type.
+
+2004-12-23  Steven G. Kargl  <kargls@comcast.net>
+
+       * gfortran.texi: Fix typo.
+
+2004-12-16  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-intrinsic.c (build_fixbound_expr): Clarify comment, fix
+       comment typo.
+
+2004-12-15  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/18993
+       * match.c (gfc_match_if): Don't explicitly skip optional whitespace.
+       (gfc_match_nullify): Make sure that ')' is in front of the end of
+       statement.
+
+       * scanner.c (skip_fixed_comments): Fix typo in comment preceding
+       function.
+
+2004-12-14  Richard Henderson  <rth@redhat.com>
+
+       * gfortran.h (gfc_expr.function.name): Make const.
+       (gfc_iresolve_init_1, gfc_iresolve_done_1): Remove.
+       (gfc_get_string): Update prototype.
+       * iresolve.c: Include tree.h.
+       (string_node, HASH_SIZE, string_head, hash): Remove.
+       (gfc_get_string): Use vsnprintf, get_identifier.
+       (free_strings, gfc_iresolve_init_1, gfc_iresolve_done_1): Remove.
+       * misc.c (gfc_init_1): Don't call gfc_iresolve_init_1.
+       (gfc_done_1): Don't call gfc_iresolve_done_1.
+       * module.c (mio_allocated_string): Take and return const char *,
+       instead of modifying char**.
+       (mio_expr): Update to match.
+       * resolve.c (pure_function): Constify name argument.
+       (resolve_function): Constify name.
+       * trans-intrinsic.c (gfc_conv_intrinsic_function): Likewise.
+
+2004-12-12  Richard Henderson  <rth@redhat.com>
+
+       * iresolve.c (gfc_resolve_all, gfc_resolve_any, gfc_resolve_count,
+       gfc_resolve_cshift, gfc_resolve_dot_product, gfc_resolve_eoshift,
+       gfc_resolve_matmul, gfc_resolve_maxloc, gfc_resolve_maxval,
+       gfc_resolve_minloc, gfc_resolve_minval, gfc_resolve_pack,
+       gfc_resolve_product, gfc_resolve_reshape, gfc_resolve_shape,
+       gfc_resolve_spread, gfc_resolve_sum, gfc_resolve_transpose,
+       gfc_resolve_unpack: Use PREFIX.
+
+2004-12-12  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/18869
+       * match.c (gfc_match_common): Skip whitespace.
+
+2004-12-12  Steven G. Kargl  <kargls@comcast.net>
+
+       PR fortran/16581
+       * check.c (gfc_check_iand, gfc_check_ibclr, gfc_check_ibits,
+       gfc_check_ibset, gfc_check_ieor, gfc_check_ior): Remove default
+       integer kind check; Issue error for -std=f95 when needed.
+       * intrinsic.c (add_functions): Change ieor from GFC_STD_GNU to
+       GFC_STD_F95.
+       * iresolve.c (gfc_resolve_iand, gfc_resolve_ieor, gfc_resolve_ior):
+       Promote arguments to same kind.
+
+2004-12-12  Steven G. Kargl  <kargls@comcast.net>
+       Paul Brook  <paul@codesourcery.com>
+
+       PR fortran/16222
+       * resolve.c (gfc_resolve_iterator_expr): New function.
+       (gfc_resolve_iterator): Use it.  Add real_ok argument.  Convert
+       start, end and stride to correct type.
+       (resolve_code): Pass extra argument.
+       * array.c (resolve_array_list): Pass extra argument.
+       * gfortran.h (gfc_resolve): Add prototype.
+       * trans-stmt.c (gfc_trans_do): Remove redundant type conversions.
+       Handle real type iterators.
+
+2004-12-11  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/17175
+       * iresolve.c (gfc_resolve_scale): Convert 'I' argument if not of
+       same kind as C's 'int'.
+       (gfc_resolve_set_exponent): Convert 'I' argument if not of kind 4.
+
+2004-12-08  Richard Henderson  <rth@redhat.com>
+
+       * intrinsic.c (gfc_convert_type_warn): Propagate the input shape
+       to the output expression.
+       * iresolve.c (gfc_resolve_cshift, gfc_resolve_eoshift): Suppress
+       warning conversion.
+       (gfc_resolve_reshape): Force convert SHAPE and ORDER parameters
+       to index kind.
+
+2004-12-08  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/18826
+       * resolve.c (resolve_code): Impose correct restrictions on
+       assigned variable.
+
+       * decl.c (gfc_match_end): Use locus of END when eos is an error.
+
+2004-12-02  Steven G. Kargl  <kargls@comcast.net>
+       Paul Brook  <paul@codesourcery.com>
+
+       * check.c (gfc_check_flush, gfc_check_fnum): New functions.
+       (gfc_check_fstat, gfc_check_fstat_sub): New functions.
+       (gfc_check_stat, gfc_check_stat_sub): New functions.
+       * gfortran.h (GFC_ISYM_FNUM,GFC_ISYM_FSTAT,GFC_ISYM_STAT): New symbols
+       * intrinsic.c (add_functions,add_subroutines): Add flush, fnum,
+       fstat, and stat to intrinsics symbol tables.
+       * intrinsic.h (gfc_check_flush, gfc_resolve_stat_sub): Add prototypes.
+       (gfc_resolve_fstat_sub, gfc_resolve_stat): Ditto.
+       * iresolve.c (gfc_resolve_fnum, gfc_resolve_fstat): New functions.
+       (gfc_resolve_stat, gfc_resolve_flush): New functions.
+       (gfc_resolve_stat_sub,gfc_resolve_fstat_sub): New functions
+       * trans-intrinsic.c (gfc_conv_intrinsic_function): Add new intrinsics.
+
+2004-12-02  Steven G. Kargl  <kargls@comcast.net>
+
+       * intrinsic.c: Fix and add comments, fix function declarations
+       (OPTIONAL,REQUIRED): New symbols
+       (add_functions,add_subroutines): Use symbols
+       (gmp.h): Remove unused include
+
+2004-11-25  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * f95-lang.c, gfortranspec.c, trans-decl.c: Avoid ` as left quote
+       in diagnostics.
+
+2004-11-24  Steven Bosscher  <stevenb@suse.de>
+
+       * options.c (gfc_post_options): Don't clear flag_inline_functions.
+
+2004-11-20  Steven G. Kargl  <kargls@comcast.net>
+
+       * check.c (gfc_check_getcwd_sub): Fix seg fault.
+
+       * check.c (gfc_check_exit,gfc_check_umask,gfc_check_umask_sub,
+       gfc_check_unlink,gfc_check_unlink_sub): New functions
+       * gfortran.h (GFC_ISYM_UMASK,GFC_ISYM_UNLINK): New symbols
+       * intrinsic.c (add_functions,add_subroutines): Add umask, unlink,
+       exit to intrinsics symbol tables.
+       * intrinsic.h (gfc_check_umask,gfc_check_unlink,gfc_check_exit,
+       gfc_check_umask_sub,gfc_check_unlink_sub,gfc_resolve_umask,
+       gfc_resolve_unlink,gfc_resolve_exit,gfc_resolve_umask_sub,
+       gfc_resolve_unlink_sub): Add and sort prototypes.
+       * iresolve.c (gfc_resolve_umask,gfc_resolve_unlink,gfc_resolve_exit,
+       gfc_resolve_umask_sub,gfc_resolve_unlink_sub): New functions
+       * trans-intrinsic.c (gfc_conv_intrinsic_function): Use symbols
+
+2004-11-16  Paul Brook  <paul@codesourcery.com>
+
+       PR fortran/13010
+       * trans-array.c (gfc_trans_allocate_temp_array): Use gfc_get_dtype.
+       (gfc_array_init_size, gfc_conv_expr_descriptor): Ditto.
+       * trans-types.c (gfc_get_dtype): Accept array type rather than element
+       type.
+       (gfc_get_nodesc_array_type): Don't set GFC_TYPE_ARRAY_DTYPE.
+       (gfc_get_array_type_bounds): Ditto.
+       (gfc_get_derived_type): Recurse into derived type pointers.
+       * trans-types.h (gfc_get_dtype): Add prototype.
+       * trans.h (GFC_TYPE_ARRAY_DTYPE): Add comment.
+
+2004-11-15  Paul Brook  <paul@codesourcery.com>
+
+       * trans-types.c (gfc_get_dtype): Remove obsolete TODO.
+
+2004-11-10  Paul Brook  <paul@codesourcery.com>
+
+       PR fortran/18375
+       * trans-expr.c (gfc_trans_subarray_assign): Free shape before ss.
+       * trans-io.c (transfer_array_component): Ditto.
+
+2004-11-10  Paul Brook  <paul@codesourcery.com>
+
+       * invoke.texi: Fix typo.
+
+2004-11-08  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * arith.c, array.c, decl.c, expr.c, f95-lang.c, gfortran.h,
+       gfortranspec.c, interface.c, intrinsic.c, iresolve.c, match.c,
+       module.c, parse.c, parse.h, primary.c, resolve.c, scanner.c,
+       trans-array.c, trans-array.h, trans-expr.c, trans-intrinsic.c,
+       trans-io.c, trans-stmt.c, trans.h: Fix comment formatting.
+
+2004-11-06  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/18023
+       * io.c (resolve_tag): Tighten up exception for assigned FORMAT.
+
+2004-11-06  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * gfortranspec.c: Replace GNU CC with GCC.
+
+2004-11-05  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * gfortranspec.c (lang_specific_driver): Change year to 2004.
+
+2004-11-05  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/18111
+       *  trans-decl.c (create_function_arglist): Set DECL_ARTIFICIAL for
+       hidden parameters.
+
+2004-11-05  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/15164
+       * trans-decl.c (gfc_finish_var_decl): Don't declare arguments to
+       module procedures as if they were module variables.
+
+2004-11-03  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/17535
+       PR fortran/17583
+       PR fortran/17713
+       * module.c (write_symbol1): Set module_name for dummy arguments.
+
+2004-11-02  Paul Brook  <paul@codesourcery.com>
+
+       * intrinsic.c (check_intrinsic_standard): Include error locus.
+       Remove VLA.
+       (gfc_intrinsic_func_interface, gfc_intrinsic_sub_interface): Pass
+       locus to check_intrinsic_standard.
+
+2004-10-31  Janne Blomqvist  <jblomqvi@cc.hut.fi>
+
+       PR fortran/17590
+       * gfortran.h: Change GFC_STD_* flags to more appropriate
+       ones. (struct gfc_intrinsic_isym): Add field for standard. (struct
+       gfc_option_t): Add field for warning about use of nonstandard
+       intrinsics.
+       * intrinsic.c (add_sym): Add parameter for standard version, check
+       this against current standard.
+       (add_sym_0): Pass standard parameter to add_sym.
+       (add_sym_1, add_sym_0s, add_sym_1s, add_sym_1m, add_sym_2): Ditto.
+       (add_sym_2s, add_sym_3, add_sym_3ml, add_sym_3red, add_sym_3s): Ditto.
+       (add_sym_4, add_sym_4s, add_sym_5, add_sym_5s): Ditto.
+       (make_generic): Add parameter for standard, check this
+       against currently selected standard.
+       (add_functions, add_subroutines): Add parameter to tell which
+       standard an intrinsic belongs to.
+       (check_intrinsic_standard): New function.
+       (gfc_intrinsic_func_interface): Add call to check_intrinsic_standard.
+       (gfc_intrinsic_sub_interface): Ditto.
+       * lang.opt: Add Wnonstd-intrinsics option.
+       * options.c (gfc_init_options): Change to use new GFC_STD_* flags,
+       init new warning.
+       (set_Wall): Add warning about nonstd intrinsics.
+       (gfc_handle_option): Change to use new GFC_STD_* flags,
+       handle new warning.
+       * invoke.texi: Update manual to include -Wnonstd-intrinsics.
+
+2004-10-30  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       * f95-lang.c (lang_tree_node): Add chain_next to be the TREE_CHAIN.
+
+2004-10-30  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * simplify.c (twos_complement): Calculate mask in GMP arithmetic.
+
+2004-10-30  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans.c (gfc_trans_code): Set global locus after recursing. Fix
+       comment typo.
+
+2004-10-30  Canqun Yang  <canqun@nudt.edu.cn>
+
+       * check.c (gfc_check_rand): Allow missing optional argument.
+       (gfc_check_irand): Ditto.
+       * intrinsic.c (add_functions): Set arg optional flag for {i,}rand.
+
+2004-10-28  Scott Robert Ladd  <scott.ladd@coyotegulch.com>
+
+       PR fortran/13490, PR fortran/17912
+       * gcc/fortran/gfortran.h: Added pedantic_min_int to gfc_integer_info
+       * gcc/fortran/gfortran.h: Added ARITH_ASYMMETRIC to arith
+       * gcc/fortran/arith.c: Added support for an "asymmetric integer"
+       warning when compiling with pedantic.
+       * gcc/fortran/arith.c: Set minimum integer values to reflect
+       realities of two's complement signed integers. Added
+       pedantic minimum.
+
+2004-10-17  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       * Make-lang.in (F95_ADDITIONAL_OBJS): Kill.
+       (f951): Do not depend on F95_ADDITIONAL_OBJS and don't
+       link it in.
+
+2004-10-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-decl.c (generate_local_decl): Simplify logic, fix comment
+       typo.
+       (gfc_generate_function_code): Fix formatting issue.
+
+2004-10-10  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * module.c: Fix formatting issues.
+
+2004-10-09  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * module.c (mio_interface_rest): Set where member of interface
+       while loading.
+
+2004-10-08  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR fortran/17901
+       * options.c (gfc_handle_option): Add break after handing the
+       J/M option.
+
+2004-10-08  Tobias Schlueter  <tobias.shclueter@physik.uni-muenchen.de>
+
+       * arith.c: Fix formatting issues.
+
+2004-10-07  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/17676
+       * resolve.c (resolve_operator): Use correct operator name in message.
+
+2004-10-07  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * primary.c (match_boz_constant): Allow kind parameter suffixes.
+       Move standard warning further to the front.
+
+2004-10-07  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * trans-stmt.c: Fix a comment typo.
+
+2004-10-07  Paul Brook  <paul@codesourcery.com>
+
+       PR fortran/17678
+       * trans-array.c (gfc_trans_deferred_array): Leave use associated
+       variables alone.
+
+2004-10-06  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/17568
+       * simplify.c (twos_complement): New function.
+       (gfc_simplify_ishft, gfc_simplify_ishftc): Revise.
+
+       * simplify.c (gfc_simplify_abs): Use mpfr_hypot for CABS.
+
+2004-10-06  Paul Brook  <paul@codesourcery.com>
+
+       * trans-stmt.c (gfc_trans_simple_do): New function.
+       (gfc_trans_do): Use it.  Evaluate iteration bounds before entering
+       loop.  Update comments.
+
+2004-10-04  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/17283
+       * iresolve.c (gfc_resolve_pack): Choose function depending if mask
+       is scalar.
+
+       PR fortran/17631
+       * intrinsic.c (add_sym_5): Remove.
+       (add_subroutines): Add resolution function for MVBITS.
+       * intrinsic.h (gfc_resolve_mvbits): Declare resolution function for
+       MVBITS
+       * iresolve.c (gfc_resolve_mvbits): New function.
+       (gfc_resolve_random_number): Remove empty line at end of function.
+
+       * trans-const.c (gfc_build_cstring_const): New function.
+       (gfc_init_cst): Use new function.
+       * trans-const.h (gfc_build_cstring_const): Add prototype.
+       * trans-io.c (set_string, set_error_locus): Use new function.
+       * trans-stmt.c (gfc_trans_goto): Use new function.
+
+       PR fortran/17708
+       * parse.c (accept_statement): Don't treat END DO like END IF and
+       END SELECT.
+       (parse_do_block): Generate possible END DO label inside END DO
+       block.
+
+       PR fortran/17776
+       * check.c (gfc_check_system_sub): New function.
+       * gfortran.h (gfc_generic_isym_id): Add GFC_ISYM_SYSTEM.
+       * intrinsic.c (add_functions): Add 'system'.
+       (add_subroutines): Add 'system'.
+       * intrinsic.h (gfc_check_etime_sub, gfc_check_getcwd_sub):
+       Move prototypes to other suborutines.
+       (gfc_check_system_sub, gfc_resolve_system, gfc_resolve_system_sub):
+       Add prototype.
+       (gfc_resolve_system_clock): Fix formatting of prototype.
+       * iresolve.c (gfc_resolve_system, gfc_resolve_system_sub): New
+       functions.
+       * trans-intrinsic.c (gfc_conv_intrinsic_function): Deal with
+       GFC_ISYM_SYSTEM.
+
+2004-10-04  Erik Schnetter  <schnetter@aei.mpg.de>
+
+       * scanner.c (preprocessor_line): Accept preprocessor lines without
+       file names.  Check file names for closing quotes.  Handle escaped
+       quotes in file names.
+
+2004-10-04  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+       Paul Brook  <paul@codesourcery.com>
+
+       * trans-array.c (gfc_conv_expr_descriptor): Check for substriungs.
+       Use gfc_get_expr_charlen.
+       * trans-expr.c (gfc_get_expr_charlen): New function.
+       * trans.h (gfc_get_expr_charlen): Add prototype.
+
+2004-10-04  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * trans-intrinsic.c: Fix a comment typo.
+
+2004-10-03  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * simplify.c (range_check): Remove blank line at beginning of function.
+       (gfc_simplify_dint): Same at end of function.
+       (gfc_simplify_exponent, gfc_simplify_fraction): Simplify calculations.
+       (gfc_simplify_bound): Fix indentation.
+       (gfc_simplify_log10): Simplify calculation.
+       (gfc_simplify_min, gfc_simplify_max): Remove blank line at beginning
+       of function.
+       (gfc_simplify_nearest): Same at end of function.
+       (gfc_simplify_nint, gfc_simplify_idnint): Same at beginning of
+       function.
+       (gfc_simplify_rrspacing, gfc_simplify_set_exponent,
+       gfc_simplify_spacing): Simplify calulations.
+
+2004-10-03  Feng Wang  <fengwang@nudt.edu.cn>
+
+       * trans-intrinsic.c: Fix comments on spacing and rrspacing
+       (gfc_conv_intrinsic_rrspacing): Add fold on constant trees.
+
+2004-10-01  Jan Hubicka  <jh@suse.cz>
+
+       * f95-lang.c (gfc_expand_function): Update call of
+       tree_rest_of_compilation.
+       * trans-decl.c (gfc_generate_constructors): Likewise.
+
+2004-09-26  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-intrinsic.c: Comment fixes.
+
+2004-09-25  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * decl.c (add_init_expr_to_sym, variable_decl): Comment fixes.
+
+2004-09-24  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-types.c (gfc_return_by_reference): Remove superfluous
+       assertion.
+
+       * intrinsic.h (gfc_resolve_getcwd): Update prototype.
+       * iresolve.c (gfc_resolve_getcwd): Add second argument to function.
+
+       PR fortran/17615
+       * trans-expr.c (gfc_trans_arrayfunc_assign): Look at resolved
+       function to determine return type.
+
+2004-09-20  Jan Hubicka  <jh@suse.cz>
+
+       * trans-decl.c (build_entry_thunks): Finalize the function; do not lower
+       tree.
+       (gfc_generate_function_code): Likewise.
+
+2004-09-20  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/15957
+       * simplify.c (gfc_simplify_reshape): Set shape of return value
+       correctly.
+
+2004-09-17  Jeffrey D. Oldham  <oldham@codesourcery.com>
+           Zack Weinberg  <zack@codesourcery.com>
+
+       * f95-lang.c, trans-expr.c, trans.c: Update for new tree-class
+       enumeration constants.
+
+2004-09-17  Paul Brook  <paul@codesourcery.com>
+
+       * gfortran.h (struct gfc_linebuf): Don't use C99 empty arrays.
+       (gfc_linebuf_header_size): Define.
+       * scanner.c (load_file): Use it.
+
+2004-09-16  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * array.c, data.c, decl.c, dependency.c, error.c, f95-lang.c,
+       interface.c, intrinsic.c, io.c, misc.c, module.c, parse.h,
+       resolve.c, scanner.c, trans-array.c, trans-array.h,
+       trans-common.c, trans-const.h, trans-decl.c, trans-expr.c,
+       trans-intrinsic.c, trans-stmt.c, trans-types.c, trans.c,
+       trans.h: Fix comment typos.  Follow spelling conventions.
+
+2004-09-16  Victor Leikehman  <lei@il.ibm.com>
+
+       PR/15364
+       * trans-io.c (transfer_array_component): New function.
+       (transfer_expr): For array fields, call transfer_array_component.
+
+2004-09-16  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * gfortran.texi: Fix a typo.
+
+2004-09-15  Aaron W. LaFramboise  <aaronavay62@aaronwl.com>
+
+       * parse.c (eof_buf): Rename eof to eof_buf.
+       (unexpected_eof): Same.
+       (gfc_parse_file): Same.
+
+2004-09-15  Steven G. Kargl  <kargls@comcast.net>
+
+       * check.c (gfc_check_getcwd_sub): New function.
+       * gfortran.h (GFC_ISYM_GETCWD): New symbol.
+       * intrinsic.c (add_functions): Add function definition;
+       Use symbol.
+       * intrinsic.c (add_subroutines): Add subroutine definitions.
+       * intrinsic.h: Add prototypes.
+       * iresolve.c (gfc_resolve_getcwd, gfc_resolve_getcwd_sub):
+       New functions.
+       * trans-intrinsic.c (gfc_conv_intrinsic_function): Use symbol.
+
+2004-09-15  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/16485
+       * module.c (write_symbol): Don't fill in module name here.
+       (write_symbol0): Fill in here instead.
+
+2004-09-14  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * data.c, decl.c, f95-lang.c, gfortran.h, match.c,
+       trans-array.c, trans-common.c, trans-expr.c,
+       trans-intrinsic.c, trans-stmt.c, trans-types.c, trans.h: Fix
+       comment typos.  Follow spelling conventions.
+
+2004-09-09  Paul Brook  <paul@codesourcery.com>
+
+       * scanner.c (get_file): Add ATTRIBUTE_UNUSED.
+
+2004-09-08  Paul Brook  <paul@codesourcery.com>
+
+       * array.c: Don't include assert.h.
+       * data.c: Don't include assert.h.  Replace assert and abort with
+       gcc_assert and gcc_unreachable.
+       * dependency.c: Ditto.
+       * f95-lang.c: Ditto.
+       * iresolve.c: Ditto.
+       * resolve.c: Ditto.
+       * simplify.c: Ditto.
+       * symbol.c: Ditto.
+       * trans-array.c: Ditto.
+       * trans-common.c: Ditto.
+       * trans-const.c: Ditto.
+       * trans-decl.c: Ditto.
+       * trans-expr.c: Ditto.
+       * trans-intrinsic.c: Ditto.
+       * trans-io.c: Ditto.
+       * trans-stmt.c: Ditto.
+       * trans-types.c: Ditto.
+       * trans.c: Ditto.
+
+2004-09-07  Per Bothner  <per@bothner.com>
+       Paul Brook  <paul@codesourcery.com>
+
+       * error.c (show_locus): Handle mapped locations.
+       * f95-lang.c (gfc_be_parse_file): Initialize mapped locations.
+       * gfortran.h: Include input.h.
+       (struct gfc_linebuf): Use source_location.
+       * scanner.c (get_file): Initialize linemap.
+       (preprocessor_line): Pass extra argument to get_file.
+       (load_file): Ditto.  Setup linemap.
+       (gfc_new_file): Handle mapped locations.
+       * trans-common.c (build_field, build_equiv_decl, build_common_decl):
+       Set decl source locations.
+       (gfc_trans_common): Set blank common block location.
+       * trans-decl.c (gfc_set_decl_location): New function.
+       (gfc_get_label_decl, gfc_get_symbol_decl): Use it.
+       (trans_function_start): Move call to gfc_set_backend_locus..
+       (build_function_decl): ... to here.
+       (build_entry_thunks): Set and restore the backend locus.
+       (gfc_generate_constructors): Remove excess arguments to
+       init_function_start.
+       (gfc_generate_block_data): Add comments.  Set the decl locus.
+       * trans-io.c (set_error_locus): Handle mapped locations.
+       * trans.c (gfc_get_backend_locus, gfc_get_backend_locus): Ditto.
+       (gfc_trans_code): Use SET_EXPR_LOCATION.
+       (gfc_generate_code): Override the location of the new symbol.
+       * trans.h (gfc_set_decl_location): Add prototype.
+
+2004-08-31  Paul Brook  <paul@codesourcery.com>
+
+       * trans-types.c (gfc_type_for_mode): Return NULL for unknown modes.
+
+2004-09-01  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/15327
+       * trans-intrinsic.c (gfc_conv_intrinsic_merge): Do the right thing for
+       strings.
+
+2004-09-01  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/16400
+       PR fortran/16404
+       (port from g95)
+       * resolve.c (resolve_transfer): New function.
+       (resolve_code): Call resolve_transfer in case of EXEC_TRANSFER.
+
+2004-08-31  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/16579
+       * trans-types.c (gfc_init_types): Make gfc_character1_type_node an
+       unsigned char.
+
+2004-08-31  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * CONTRIB, NEWS, README, TODO: Remove obsolete files.
+
+2004-08-31  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/17244
+       * trans-types.c (gfc_return_by_reference): Remove TODO error,
+       add comment pointing out possible issue WRT compatibility with g77.
+
+2004-08-31  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-decl.c, trans-expr.c, trans-io.c, trans-types.c: Replace
+       all occurences of 'gfc_strlen_type_node' by
+       'gfc_charlen_type_node'.
+       * trans-types.h: Same. Also update comment accordingly.
+
+2004-08-31  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * primary.c: Update copyright boilerplate to say GCC.
+       * f95-lang.c: Change initial comment to say gfortran.
+
+2004-08-31  Paul Brook  <paul@codesourcery.com>
+
+       * trans-types.h: Add comments.
+       (intmax_type_node, string_type_node, const_string_type_node): Remove.
+
+2004-08-30  Richard Henderson  <rth@redhat.com>
+
+       * Make-lang.in (fortran/f95-lang.o): Update dependencies.
+       (fortran/trans-decl.o, fortran/trans-types.o): Likewise.
+       * gfortran.h (gfc_integer_info): Add c_char, c_short, c_int,
+       c_long, c_long_long.
+       (gfc_logical_info): Add c_bool.
+       (gfc_real_info): Add mode_precision, c_float, c_double, c_long_double.
+       * trans-array.c (gfc_array_allocate): Use TYPE_PRECISION
+       rather than gfc_int[48]_type_node for allocate choice.
+       * trans-decl.c (gfc_build_intrinsic_function_decls): Cache
+       local copies of some kind type nodes.
+       (gfc_build_builtin_function_decls): Likewise.
+       * trans-expr.c (gfc_conv_power_op): Likewise.
+       * trans-intrinsic.c (gfc_conv_intrinsic_index,
+       gfc_conv_intrinsic_scan, gfc_conv_intrinsic_verify,
+       gfc_conv_intrinsic_trim, gfc_conv_intrinsic_repeat): Likewise.
+       * trans-stmt.c (gfc_trans_pause, gfc_trans_stop,
+       gfc_trans_character_select, gfc_trans_allocate): Likewise.
+       * trans-io.c (gfc_pint4_type_node): Move into ...
+       (gfc_build_io_library_fndecls): ... here.  Cache local copies of
+       some kind type nodes.
+       * trans-types.c (gfc_type_nodes): Remove.
+       (gfc_character1_type_node, gfc_strlen_type_node): New.
+       (gfc_integer_types, gfc_logical_types): New.
+       (gfc_real_types, gfc_complex_types): New.
+       (gfc_init_kinds): Fill in real mode_precision.
+       (gfc_build_int_type, gfc_build_real_type): New.
+       (gfc_build_complex_type, gfc_build_logical_type): New.
+       (c_size_t_size): New.
+       (gfc_init_types): Loop over kinds.
+       (gfc_get_int_type, gfc_get_real_type): Use gfc_validate_kind.
+       (gfc_get_complex_type, gfc_get_logical_type): Likewise.
+       (gfc_get_character_type_len): Likewise.
+       (gfc_type_for_size): Loop over kinds; use a reduced set of
+       unsigned type nodes.
+       (gfc_type_for_mode): Loop over kinds.
+       (gfc_signed_or_unsigned_type): Use gfc_type_for_size.
+       (gfc_unsigned_type, gfc_signed_type): Use gfc_signed_or_unsigned_type.
+       * trans-types.h (F95_INT1_TYPE, F95_INT2_TYPE, F95_INT4_TYPE,
+       F95_INT8_TYPE, F95_INT16_TYPE, F95_REAL4_TYPE, F95_REAL8_TYPE,
+       F95_REAl16_TYPE, F95_COMPLEX4_TYPE, F95_COMPLEX8_TYPE,
+       F95_COMPLEX16_TYPE, F95_LOGICAL1_TYPE, F95_LOGICAL2_TYPE,
+       F95_LOGICAL4_TYPE, F95_LOGICAL8_TYPE, F95_LOGICAL16_TYPE,
+       F95_CHARACTER1_TYPE, NUM_F95_TYPES, gfc_type_nodes,
+       gfc_int1_type_node, gfc_int2_type_node, gfc_int4_type_node,
+       gfc_int8_type_node, gfc_int16_type_node, gfc_real4_type_node,
+       gfc_real8_type_node, gfc_real16_type_node, gfc_complex4_type_node,
+       gfc_complex8_type_node, gfc_complex16_type_node,
+       gfc_logical1_type_node, gfc_logical2_type_node,
+       gfc_logical4_type_node, gfc_logical8_type_node,
+       gfc_logical16_type_node, gfc_strlen_kind): Remove.
+       (gfc_character1_type_node): Turn in to a variable.
+       (gfc_strlen_type_node): Likewise.
+
+2004-08-30  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * gfortran.h (gfc_namespace): Add new field is_block_data.
+       * parse.c (accept_statement): Remove special handling for BLOCK DATA.
+       (parse_block_data): Record BLOCK DATA name, set is_block_data field.
+       * trans.c (gfc_generate_code): Handle BLOCK DATA units.
+       * trans.h (gfc_generate_block_data): Add prototype.
+       * trans-decl.c (gfc_generate_block_data): New function.
+
+2004-08-29  Richard Henderson  <rth@redhat.com>
+
+       * trans-const.c (gfc_conv_mpz_to_tree): Use mpz_export.
+       * trans-types.c (gfc_init_kinds): Reject integer kinds larger
+       than two HOST_WIDE_INT.
+
+2004-08-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/13910
+       * decl.c (free_variable, free_value, gfc_free_data, var_list,
+       var_element, top_var_list, match_data_constant, top_val_list,
+       gfc_match_data): Move here from match.c.
+       (match_old_style_init): New function.
+       (variable_decl): Match old-style initialization.
+       * expr.c (gfc_get_variable_expr): New function.
+       * gfortran.h (gfc_get_variable_expr): Add prototype.
+       * gfortran.texi: Start documentation for supported extensions.
+       * match.c: Remove the functions moved to decl.c.
+       * match.h (gfc_match_data): Move prototype to under decl.c.
+       * symbol.c (gfc_find_sym_tree, gfc_find_symbol): Add/correct
+       comments.
+
+2004-08-29  Steven G. Kargl  <kargls@comcast.net>
+       Paul Brook  <paul@codesourcery.com>
+
+       * check.c (gfc_check_besn, gfc_check_g77_math1): New functions.
+       * f95-lang.c (DO_DEFINE_MATH_BUILTIN): Define.
+       (DEFINE_MATH_BUILTIN, DEFINE_MATH_BUILTIN_C): Use it.
+       (build_builtin_fntypes): New function.
+       (gfc_init_builtin_functions): Use it.
+       * gfortran.h (enum gfc_generic_isym_id): Add GFC_ISYM_{J,Y}{0,1,N}
+       and GFC_ISYM_ERF{,C}.
+       (gfc_c_int_kind): Declare.
+       * intrinsic.c (add_functions): Add [d]bes* and [d]erf*.
+       * intrinsic.h (gfc_check_besn, gfc_check_g77_math1, gfc_resolve_besn,
+       gfc_resolve_g77_math1): Add prototypes.
+       * resolve.c (gfc_resolve_besn, gfc_resolve_g77_math1): New functions.
+       * mathbuiltins.def: Add comment.  Change third argument.  Use
+       DEFINE_MATH_BUILTIN_C.  Add bessel and error functions.
+       * trans-intrinsic.c (BUILT_IN_FUNCTION): Define.
+       (DEFINE_MATH_BUILTIN, DEFINE_MATH_BUILTIN_C): Use it.
+       * trans-types.c (gfc_c_int_kind): Declare.
+       (gfc_init_kinds): Set it.
+
+2004-08-29  Steven G. Kargl  <kargls@comcast.net>
+       Paul Brook  <paul@codesourcery.com>
+
+       * gfortran.h (enum gfc_generic_isym_id): Add GFC_ISYM_GET?ID.
+       (gfc_check_f, gfc_simplify_f): Add f0.
+       * intrinsic.c (do_check): Call f0.  Flatten.
+       (add_sym_0): Fix prototype.  Set f0.
+       (add_functions): Add getgid, getgid and getuid.
+       (resolve_intrinsic): Remove obsolete comment.
+       (do_simplify): Call f0.
+       * intrinsic.h (gfc_resolve_getgid, gfc_resolve_getpid,
+       gfc_resolve_getuid): Add prototypes.
+       * iresolve.c (gfc_resolve_getgid, gfc_resolve_getpid,
+       gfc_resolve_getuid): New functions.
+       * trans-intrinsic.c (gfc_conv_intrinsic_function): Handle
+       GFC_ISYM_GET?ID.
+
+2004-08-28  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * error.c (gfc_error_init_1): Remove blank line in front of
+       function body. Add missing blank.
+       (gfc_buffer_error, error_char, error_string): Remove blank line in
+       front of function body.
+       (show_locus): Add comma in comment.
+       (gfc_clear_warning, gfc_warning_check, gfc_clear_error,
+       gfc_push_error, gfc_pop_error): Remove blank line in front of
+       function body.
+       (gfc_get_errors): Typo fix in comment in front of function. Remove
+       blank line in front of function body.
+
+2004-08-27  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * gfortran.h (gfc_default_*_kind): Remove prototypes, add extern
+       variable declaration of same name.
+       * arith.c, check.c, decl.c, dump_parse_tree.c, expr.c,
+       intrinsic.c, io.c, iresolve.c, match.c, options.c, primary.c,
+       resolve.c, simplify.c, symbol.c, trans-const.c, trans-io.c:
+       Replace all calls to gfc_default_*_kind with variable accesses.
+       * trans-types.c: Same as above.
+       (gfc_default_*_kind_1): Rename to gfc_default_*_kind, remove
+       static qualifier. Replace all occurences.
+       (gfc_default_*_kind): Remove functions.
+
+2004-08-26  Richard Henderson  <rth@redhat.com>
+
+       * arith.c: Include system.h, not real system headers.
+       (MPZ_NULL, MPF_NULL, DEF_GFC_INTEGER_KIND, DEF_GFC_LOGICAL_KIND,
+       DEF_GFC_REAL_KIND, GFC_SP_KIND, GFC_SP_PREC, GFC_SP_EMIN, GFC_SP_EMAX,
+       GFC_DP_KIND, GFC_DP_PREC, GFC_DP_EMIN, GFC_DP_EMAX, GFC_QP_KIND,
+       GFC_QP_PREC, GFC_QP_EMIN, GFC_QP_EMAX): Remove.
+       (gfc_integer_kinds, gfc_logical_kinds, gfc_real_kinds,
+       gfc_index_integer_kind, gfc_default_integer_kind,
+       gfc_default_real_kind,gfc_default_double_kind,
+       gfc_default_character_kind, gfc_default_logical_kind,
+       gfc_default_complex_kind, validate_integer, validate_real,
+       validate_logical, validate_character,
+       gfc_validate_kind): Move to trans-types.c.
+       (gfc_set_model_kind): Use gfc_validate_kind.
+       (gfc_set_model): Just copy the current precision to default.
+       (gfc_arith_init_1): Use mpfr precision 128 for integer setup.
+       * f95-lang.c (gfc_init_decl_processing): Invoke gfc_init_kinds.
+       * gfortran.h: Update file commentary.
+       * trans-types.c (MAX_INT_KINDS, MAX_REAL_KINDS): New.
+       (gfc_default_integer_kind_1, gfc_default_real_kind_1,
+       gfc_default_double_kind_1, gfc_default_character_kind_1,
+       gfc_default_logical_kind_1, gfc_default_complex_kind_1): New.
+       (gfc_init_kinds): New.
+       (gfc_init_types): Don't set gfc_index_integer_kind here.
+       * trans-types.h (gfc_init_kinds): Declare.
+       * doc/invoke.texi: Clarify DOUBLE PRECISION behaviour wrt -r8.
+
+2004-08-26  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * check.c (gfc_check_atan2): New function.
+       * intrinsic.c (add_functions): Use gfc_check_atan2 for ATAN2
+       * intrinsic.h (gfc_check_atan2): Add prototype.
+
+2004-08-25  Richard Henderson  <rth@redhat.com>
+
+       * arith.c (gfc_validate_kind): Add may_fail argument; abort if
+       false and we don't validate the kind.
+       (gfc_check_integer_range, gfc_check_real_range): Update to match.
+       * check.c (kind_check): Likewise.
+       * decl.c (gfc_match_old_kind_spec, gfc_match_kind_spec): Likewise.
+       (match_char_spec, match_logical_spec): Likewise.
+       * gfortran.h (gfc_validate_kind): Likewise.
+       * options.c (gfc_handle_option): Likewise.
+       * primary.c (match_integer_constant, match_real_constant,
+       match_string_constant, match_logical_constant,
+       match_const_complex_part): Likewise.
+       * simplify.c (get_kind, gfc_simplify_bit_size, gfc_simplify_digits,
+       gfc_simplify_epsilon, gfc_simplify_huge, gfc_simplify_ibclr,
+       gfc_simplify_ibset, gfc_simplify_ishft, gfc_simplify_ishftc,
+       gfc_simplify_maxexponent, gfc_simplify_minexponent,
+       gfc_simplify_nearest, gfc_simplify_not, gfc_simplify_precision,
+       gfc_simplify_radix, gfc_simplify_range, gfc_simplify_rrspacing,
+       gfc_simplify_scale, gfc_simplify_spacing, gfc_simplify_tan,
+       gfc_simplify_tiny): Likewise.
+       * trans-intrinsic.c (gfc_conv_intrinsic_aint, gfc_conv_intrinsic_mod,
+       gfc_conv_intrinsic_minmaxloc, gfc_conv_intrinsic_minmaxval,
+       prepare_arg_info): Likewise.
+
+2004-08-25  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * expr.c (gfc_check_assign): Add comment. Add new warning.
+       * trans-expr.c (gfc_conv_function_call): Correctly dereference
+       result of pointer valued function when not in pointer assignment.
+
+2004-08-25  Paul Brook  <paul@codesourcery.com>
+
+       * config-lang.in: Remove dead commented line.
+       * module.c: Replace g95 with gfortran in comment.
+
+2004-08-25  Paul Brook  <paul@codesourcery.com>
+
+       PR fortran/17190
+       * arith.c (gfc_mpfr_to_mpz): Workaround mpfr bug.
+
+2004-08-25  Paul Brook  <paul@codesourcery.com>
+
+       PR fortran/17144
+       * trans-array.c (gfc_trans_allocate_temp_array): Remove
+       string_length argument.
+       (gfc_trans_array_ctor_element): New function.
+       (gfc_trans_array_constructor_subarray): Use it.
+       (gfc_trans_array_constructor_value): Ditto.  Handle constant
+       character arrays.
+       (get_array_ctor_var_strlen, get_array_ctor_strlen): New functions.
+       (gfc_trans_array_constructor): Use them.
+       (gfc_add_loop_ss_code): Update to new gfc_ss layout.
+       (gfc_conv_ss_descriptor): Remember section string length.
+       (gfc_conv_scalarized_array_ref): Ditto.  Remove dead code.
+       (gfc_conv_resolve_dependencies): Update to new gfc_ss layout.
+       (gfc_conv_expr_descriptor): Ditto.
+       (gfc_conv_loop_setup): Ditto.  Spelling fixes.
+       * trans-array.h (gfc_trans_allocate_temp_array): Update prototype.
+       * trans-const.c (gfc_conv_constant):  Update to new gfc_ss layout.
+       * trans-expr.c (gfc_conv_component_ref): Turn error into ICE.
+       (gfc_conv_variable): Set string_length from section.
+       (gfc_conv_function_call): Remove extra argument.
+       (gfc_conv_expr, gfc_conv_expr_reference): Update to new gfc_ss layout.
+       * trans-types.c (gfc_get_character_type_len): New function.
+       (gfc_get_character_type): Use it.
+       (gfc_get_dtype): Return zero for internal types.
+       * trans-types.h (gfc_get_character_type_len): Add prototype.
+       * trans.h (struct gfc_ss): Move string_length out of union.
+
+2004-08-25  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans.h (build2_v, build3_v): New macros.
+       (build_v): Remove.
+       * f95-lang.c (gfc_truthvalue_conversion): Use build2 instead of
+       build.
+       * trans-array.c (gfc_conv_descriptor_data,
+       gfc_conv_descriptor_offset, gfc_conv_descriptor_dimension,
+       gfc_conv_descriptor_stride, gfc_conv_descriptor_lbound,
+       gfc_conv_descriptor_ubound, gfc_trans_allocate_array_storage,
+       gfc_trans_allocate_temp_array,
+       gfc_trans_array_constructor_subarray,
+       gfc_trans_array_constructor_value, gfc_conv_array_index_ref,
+       gfc_trans_array_bound_check, gfc_conv_array_index_offset,
+       gfc_conv_scalarized_array_ref, gfc_conv_array_ref,
+       gfc_conv_array_ref, gfc_trans_preloop_setup,
+       gfc_trans_scalarized_loop_end, gfc_conv_ss_startstride,
+       gfc_conv_loop_setup, gfc_array_init_size,
+       gfc_conv_array_initializer, gfc_trans_array_bounds,
+       gfc_trans_auto_array_allocation, gfc_trans_dummy_array_bias,
+       gfc_conv_expr_descriptor, gfc_conv_array_parameter,
+       gfc_trans_deferred_array): Use buildN and buildN_v macros instead
+       of build and build_v as appropriate.
+       * trans-common.c (create_common): Same.
+       * trans-decl.c (gfc_trans_auto_character_variable,
+       gfc_trans_entry_master_switch, gfc_generate_function_code): Same.
+       * trans-expr.c (gfc_conv_expr_present, gfc_conv_substring,
+       gfc_conv_component_ref, gfc_conv_unary_op, gfc_conv_powi,
+       gfc_conv_cst_int_power, gfc_conv_string_tmp, gfc_conv_concat_op,
+       gfc_conv_expr_op, gfc_conv_function_call,
+       gfc_trans_structure_assign): Same.
+       * trans-intrinsic.c (build_fixbound_expr, build_round_expr,
+       gfc_conv_intrinsic_aint, gfc_conv_intrinsic_bound,
+       gfc_conv_intrinsic_cmplx, gfc_conv_intrinsic_mod,
+       gfc_conv_intrinsic_dim, gfc_conv_intrinsic_sign,
+       gfc_conv_intrinsic_dprod, gfc_conv_intrinsic_minmax,
+       gfc_conv_intrinsic_anyall, gfc_conv_intrinsic_count,
+       gfc_conv_intrinsic_arith, gfc_conv_intrinsic_minmaxloc,
+       gfc_conv_intrinsic_minmaxval, gfc_conv_intrinsic_btest,
+       gfc_conv_intrinsic_bitop, gfc_conv_intrinsic_singlebitop,
+       gfc_conv_intrinsic_ibits, gfc_conv_intrinsic_ishft,
+       gfc_conv_intrinsic_merge, gfc_conv_intrinsic_strcmp,
+       gfc_conv_allocated, gfc_conv_associated, prepare_arg_info,
+       gfc_conv_intrinsic_spacing, gfc_conv_intrinsic_rrspacing,
+       gfc_conv_intrinsic_trim, gfc_conv_intrinsic_repeat,
+       gfc_conv_intrinsic_iargc): Same.
+       * trans-io.c (set_parameter_value, set_parameter_ref, set_string,
+       set_flag, add_case, io_result, transfer_namelist_element,
+       transfer_expr): Same.
+       * trans-stmt.c (gfc_trans_goto, gfc_trans_return, gfc_trans_if_1,
+       gfc_trans_arithmetic_if, gfc_trans_do, gfc_trans_do_while,
+       gfc_trans_integer_select, gfc_trans_logical_select,
+       gfc_trans_character_select, gfc_trans_forall_loop,
+       gfc_trans_nested_forall_loop, gfc_do_allocate,
+       generate_loop_for_temp_to_lhs, generate_loop_for_rhs_to_temp,
+       compute_inner_temp_size, compute_overall_iter_number,
+       allocate_temp_for_forall_nest, gfc_trans_pointer_assign_need_temp,
+       gfc_trans_forall_1, gfc_evaluate_where_mask,
+       gfc_trans_where_assign, gfc_trans_allocate): Same.
+       * trans-types.c (gfc_get_dtype, gfc_get_array_type_bounds): Same.
+       * trans.c (gfc_add_modify_expr, gfc_finish_block,
+       gfc_build_array_ref, gfc_build_function_call,
+       gfc_trans_runtime_check): Same.
+
+2004-08-25  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-const.c (gfc_conv_mpz_to_tree): Change call to
+       build_int_cst to build_int_cst_wide in accordance to Nathan's
+       previous patch.
+
+2004-08-25  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * trans-array.c (gfc_trans_array_constructor_value): Adjust
+       build_int_cst calls.
+       * trans-const.c (gfc_build_string_const, gfc_init_constants,
+       gfc_conv_mpz_to_tree, gfc_conv_constant_to_tree): Likewise.
+       * trans-decl.c (gfc_get_symbol_decl, build_entry_thunks,
+       gfc_trans_entry_master_switch): Likewise.
+       * trans-intrinsic.c (gfc_conv_intrinsic_ibits,
+       gfc_conv_intrinsic_len, prepare_arg_info): Likewise.
+       * trans-io.c (add_case, set_error_locus,
+       transfer_namelist_element, transfer_expr): Likewise.
+       * trans-stmt.c (gfc_trans_label_assign, gfc_trans_pause,
+       gfc_trans_stop, gfc_trans_character_select): Likewise.
+       * trans-types.c (gfc_init_types, gfc_get_dtype): Likewise.
+       * trans.c (gfc_trans_runtime_check): Likewise.
+
+2004-08-24  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-decl.c, trans-types.c: Add and remove blank lines as
+       required.
+
+2004-08-24  Richard Henderson  <rth@redhat.com>
+
+       * trans-const.c (gfc_conv_mpz_to_tree): Fix 64-bit shift warning.
+
+2004-08-24  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * resolve.c (merge_argument_lists): Revert unintentionally
+       committed change.
+
+2004-08-24  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-decl.c (build_function_decl): Fix spelling in comment.
+       (build_entry_thunks): Remove code with no function.
+       (gfc_build_intrinsic_function_decls): Remove empty line.
+
+       * resolve.c (resolve_entries): Fix a bunch of comment typos.
+
+2004-08-24  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * f95-lang.c (gfc_init_decl_processing): Adjust
+       build_common_tree_nodes call.
+
+2004-08-24  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-types.c: Spelling and formatting fixes.
+
+2004-08-23  Richard Henderson  <rth@redhat.com>
+
+       * trans-const.c (gfc_conv_mpz_to_tree): Use mpz_getlimbn instead
+       of going through an intermediate string.  Fix 32/64 int/long bug.
+
+2004-08-23  Eric Christopher  <echristo@redhat.com>
+
+       * trans-types.c (gfc_type_for_mode): Remove VECTOR_TYPE_SUPPORTED_P
+       usage. Use build_vector_type_for_mode for vector types.
+
+2004-08-22  Richard Henderson  <rth@redhat.com>
+
+       PR 13465
+       * data.c (find_con_by_offset): Search ordered list; handle
+       elements with repeat counts.
+       (gfc_assign_data_value_range): New.
+       * gfortran.h (struct gfc_data_value): Make repeat unsigned.
+       (gfc_assign_data_value_range): Declare.
+       * match.c (top_val_list): Extract repeat count into a temporary.
+       * resolve.c (values): Make left unsigned.
+       (next_data_value): Don't decrement left.
+       (check_data_variable): Use gfc_assign_data_value_range.
+
+2004-08-22  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-const.c, trans-decl.c, trans-expr.c: Spelling fixes.
+
+2004-08-22  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * check.c (gfc_check_reduction): Rename to ...
+       (check_reduction): ... this. Make static. Don't check type of
+       first argument.
+       (gfc_check_minval_maxval, gfc_check_prodcut_sum): New functions.
+       * intrinsic.c (add_functions): Change MAXVAL, MINVAL, PRODUCT and
+       SUM to use new check functions.
+       (check_specific): Change logic to call new functions.
+       * intrinsic.h (gfc_check_minval_maxval, gfc_check_product_sum):
+       Add prototypes.
+       (gfc_check_reduction): Remove prototype.
+
+2004-08-20  Paul Brook  <paul@codesourcery.com>
+       Canqun Yang  <canqun@nudt.edu.cn>
+
+       PR fortran/17077
+       * trans-array.c (gfc_conv_array_parameter): Pass correct pointer
+       for automatic arrays.
+       * trans-types.c (gfc_get_nodesc_array_type): Add comment.
+
+2004-08-19  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+       (Port from g95)
+
+       PR fortran/17074
+       * match.c (match_simple_forall, match_simple_where): Forward-declare.
+       (gfc_match_if): Order statement list alphabetically, add WHERE and
+       FORALL, remove double PAUSE.
+       (gfc_match_simple_where, match_forall_header,
+       gfc_match_simple_forall): New functions.
+       (gfc_match_forall): Use match_forall_header.
+
+2004-08-19  Paul Brook  <paul@codesourcery.com>
+
+       PR fortran/17091
+       * gfortran.h (gfc_access): Give ACCESS_UNKNOWN value 0.
+       * symbol.c (gfc_clear_attr): Use memset.
+
+2004-08-19  Paul Brook  <paul@codesourcery.com>
+
+       PR fortran/14976
+       PR fortran/16228
+       * data.c (assign_substring_data_value): Remove.
+       (create_character_intializer): New function.
+       (gfc_assign_data_value): Track the typespec for the current
+       subobject.  Use create_character_intializer.
+
+2004-08-19  Erik Schnetter  <schnetter@aei.mpg.de>
+
+       PR fortran/16946
+       * check.c (gfc_check_reduction): New function.
+       (gfc_check_minval_maxval): Removed.
+       (gfc_check_product): Removed.
+       (gfc_check_sum): Removed.
+       * intrinsic.h: Add/remove declarations for these.
+       * gfortran.h: Add field f3red to union gfc_check_f.
+       * intrinsic.c (add_sym_3red): New function.
+       (add_functions): Register maxval, minval, product, and sum intrinsics
+       through add_sym_3red.
+       (check_specific): Handle f3red union field.
+       * iresolve.c: Whitespace change.
+
+2004-08-18  Paul Brook  <paul@codesourcery.com>
+
+       * trans-types.c (gfc_sym_type): Use pointer types for optional args.
+
+2004-08-18  Victor Leikehman  <lei@il.ibm.com>
+
+       PR fortran/13278
+       * trans-io.c (transfer_namelist_element): New. Recursively handle
+       derived-type variables.  Pass string lengths.
+       (build_dt): Code moved to build_namelist, with some
+       changes and additions.
+       (gfc_build_io_library_fndecls): Declare the fifth
+       argument in st_set_nml_var_char -- string_length.
+
+2004-08-17  Paul Brook  <paul@codesourcery.com>
+       Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/13082
+       * decl.c (get_proc_name): Update mystery comment.
+       (gfc_match_entry): Check for errors earlier.  Add entry point to list.
+       * dump-parse-tree.c (gfc_show_code_node): Print EXEC_ENTRY nodes.
+       * gfortran.h (symbol_attribute): Add entry_master.  Document entry.
+       (struct gfc_entry_list): Define.
+       (gfc_get_entry_list): Define.
+       (struct gfc_namespace): Add refs and entries.
+       (enum gfc_exec_op): Add EXEC_ENTRY.
+       (struct gfc_code): Add ext.entry.
+       * module.c (ab_attribute, attr_bits): Remove AB_ENTRY.
+       (mio_symbol_attribute): Don't save/reture addr->entry.
+       (mio_namespace_ref): Refcount namespaces.
+       * parse.c (accept_statement): Handle ST_ENTRY.
+       (gfc_fixup_sibling_symbols): Mark symbol as referenced.
+       (parse_contained): Fixup sibling references to entry points
+       after parsing the procedure body.
+       * resolve.c (resolve_contained_fntype): New function.
+       (merge_argument_lists, resolve_entries): New functions.
+       (resolve_contained_functions): Use them.
+       (resolve_code): Handle EXEC_ENTRY.
+       (gfc_resolve): Call resolve_entries.
+       * st.c (gfc_free_statement): Handle EXEC_ENTRY.
+       * symbol.c (gfc_get_namespace): Refcount namespaces.
+       (gfc_free_namespace): Ditto.
+       * trans-array.c (gfc_trans_dummy_array_bias): Treat all args as
+       optional when multiple entry points are present.
+       * trans-decl.c (gfc_get_symbol_decl): Remove incorrect check.
+       (gfc_get_extern_function_decl): Add assertion.  Fix coment.
+       (create_function_arglist, trans_function_start, build_entry_thunks):
+       New functions.
+       (gfc_build_function_decl): Rename ...
+       (build_function_decl): ... to this.
+       (gfc_create_function_decl): New function.
+       (gfc_generate_contained_functions): Use it.
+       (gfc_trans_entry_master_switch): New function.
+       (gfc_generate_function_code): Use new functions.
+       * trans-stmt.c (gfc_trans_entry): New function.
+       * trans-stmt.h (gfc_trans_entry): Add prototype.
+       * trans-types.c (gfc_get_function_type): Add entry point argument.
+       * trans.c (gfc_trans_code): Handle EXEC_ENTRY.
+       (gfc_generate_module_code): Call gfc_create_function_decl.
+       * trans.h (gfc_build_function_decl): Remove.
+       (gfc_create_function_decl): Add prototype.
+
+2004-08-15  Andrew Pinski  <apinski@apple.com>
+
+       PR fortran/17030
+       * f95-lang.c (gfc_init_builtin_functions): Initialize the builtins
+       for cabs{,f} and copysign{,f}.
+       * trans-decl.c (gfor_fndecl_math_cabsf): Delete.
+       (gfor_fndecl_math_cabs): Delete.
+       (gfor_fndecl_math_sign4): Delete.
+       (gfor_fndecl_math_sign8): Delete.
+       (gfc_build_intrinsic_function_decls): Remove the
+       initializing of cabs{,f} and copysign{,f} functions.
+       * trans-intrinsic.c (gfc_conv_intrinsic_abs): Use the builtins
+       instead of the functions definitions.
+       (gfc_conv_intrinsic_sign): Likewise.
+       * trans.h (gfor_fndecl_math_cabsf): Delete.
+       (gfor_fndecl_math_cabs): Delete.
+       (gfor_fndecl_math_sign4): Delete.
+       (gfor_fndecl_math_sign8): Delete.
+
+2004-08-15  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * trans-array.c (gfc_trans_array_constructor_value): Use
+       build_int_cst.
+       * trans-const.c (gfc_build_string_const,
+       gfc_init_constants, gfc_conv_mpz_to_tree,
+       gfc_conv_constant_to_tree): Likewise.
+       * trans-decl.c (gfc_get_symbol_decl): Likewise.
+       * trans-intrinsic.c (gfc_conv_intrinsic_ibits,
+       gfc_conv_intrinsic_len, prepare_arg_info): Likewise.
+       * trans-io.c (add_case, set_error_locus, build_dt,
+       transfer_expr): Likewise.
+       * trans-stmt.c (gfc_trans_label_assign, gfc_trans_pause,
+       gfc_trans_stop, gfc_trans_character_select): Likewise.
+       * trans-types.c (gfc_init_types, gfc_get_dtype): Likewise.
+       * trans.c (gfc_trans_runtime_check): Likewise.
+
+2004-08-14  Paul Brook  <paul@codesourcery.com>
+
+       * trans-decl.c (gfc_build_function_decl): Remove dead code.
+
+2004-08-14  Paul Brook  <paul@codesourcery.com>
+
+       * trans-arry.c (gfc_trans_auto_array_allocation): Remove unused var.
+
+2004-08-13  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * gfortran.h: Add comments.
+       * parse.c (parse_contained): Fix comment typo.
+       * resolve.c (was_declared): Ditto.
+       * symbol.c: Ditto.
+
+2004-08-11  Paul Brook  <paul@codeourcery.com>
+
+       PR fortran/16917
+       * intrinsic.c (add_functions): Add dfloat as an alias for dble.
+
+2004-08-10  Richard Henderson  <rth@redhat.com>
+
+       * f95-lang.c (gfc_init_builtin_functions): Remove
+        __builtin_stack_alloc, add __builtin_alloca.
+       * trans-array.c (gfc_trans_auto_array_allocation): Use DECL_EXPR.
+       * trans-decl.c (gfc_trans_auto_character_variable): Likewise.
+
+2004-08-10  Paul Brook  <paul@codesourcery.com>
+
+       * trans-io.c (transfer_expr): Handle pointters.
+
+2004-08-10  Paul Brook  <paul@codesourcery.com>
+
+       PR fortran/16919
+       * trans-array.c (gfc_add_loop_ss_code): Handle GFC_SS_COMPONENT.
+       (gfc_conv_array_index_offset): Allow "temporary" with nonzero delta.
+       (gfc_trans_preloop_setup, gfc_trans_scalarized_loop_boundary):
+       Handle GFC_SS_COMPONENT.
+       (gfc_conv_ss_startstride): Ditto.  Set ss->shape.
+       (gfc_conv_loop_setup): Tweak commends. Remove dead code.
+       Use ss->shape.
+       (gfc_conv_array_initializer): Call specific initializer routines.
+       * trans-expr.c (gfc_trans_structure_assign): New function.
+       (gfc_trans_subarray_assign): New function.
+       (gfc_trans_subcomponent_assign): New fucntion
+       (gfc_conv_structure): Use them.
+       * trans.h (gfc_ss_type): Add GFC_SS_COMPONENT.
+       (gfc_ss): Add shape.
+
+2004-08-08  Victor Leikehman  <lei@il.ibm.com>
+
+       * simplify.c (gfc_simplify_shape): Bugfix.
+       * expr.c (gfc_copy_shape_excluding): New function.
+       * gfortran.h (gfc_get_shape): Bugfix.
+       (gfc_copy_shape_excluding): Added declaration.
+       * iresolve.c (gfc_resolve_all, gfc_resolve_any, gfc_resolve_count,
+       gfc_resolve_cshift, gfc_resolve_eoshift, gfc_resolve_lbound,
+       gfc_resolve_ubound, gfc_resolve_transpose): Added compile
+       time resolution of shape.
+
+2004-08-06  Janne Blomqvist  <jblomqvi@cc.hut.fi>
+
+       * intrinsic.c (add_subroutines): Add getenv and
+       get_environment_variable. (add_sym_5s): New function.
+       * intrinsic.h (gfc_resolve_get_environment_variable): Add
+       prototype.
+       * iresolve.c (gfc_resolve_get_environment_variable): New
+       function.
+
+2004-08-06  Feng Wang  <fengwang@nudt.edu.cn>
+
+       * f95-lang.c (gfc_init_builtin_functions): Fix the number of
+       __builtin_pow[f] arguments.
+
+2004-08-06  Steven G. Kargl  <kargls@comcast.net>
+
+       * arith.c: Add #define for model numbers.  Remove global GMP variables.
+       (natural_logarithm,common_logarithm,exponential,sine,
+       cosine,arctangent,hypercos,hypersine ): Remove.
+       (gfc_mpfr_to_mpz,gfc_set_model_kind,gfc_set_model): New functions.
+       (arctangent2,gfc_arith_init_1,gfc_arith_done_1
+       gfc_check_real_range, gfc_constant_result, gfc_range_check,
+       gfc_arith_uminus,gfc_arith_plus, gfc_arith_minus, gfc_arith_times,
+       gfc_arith_divide,complex_reciprocal,complex_pow_ui,
+       gfc_arith_power,gfc_compare_expr,compare_complex,gfc_convert_real,
+       gfc_convert_complex,gfc_int2real,gfc_int2complex,
+       gfc_real2int,gfc_real2real,gfc_real2complex,
+       gfc_complex2int,gfc_complex2real,gfc_complex2complex): Convert GMP
+       to MPFR, use new functions.
+       * arith.h: Remove extern global variables.
+       (natural_logarithm,common_logarithm,exponential, sine, cosine,
+       arctangent,hypercos,hypersine): Remove prototypes.
+       (arctangent2): Update prototype from GMP to MPFR.
+       (gfc_mpfr_to_mpz, gfc_set_model_kind,gfc_set_model): Add prototypes.
+       * dump-parse-tree.c (gfc_show_expr): Convert GMP to MPFR.
+       * expr.c (free_expr0,gfc_copy_expr): Convert GMP to MPFR.
+       * gfortran.h (GFC_REAL_BITS): Remove.
+       (arith): Add ARITH_NAN.
+       Include mpfr.h.  Define GFC_RND_MODE.
+       Rename GCC_GFORTRAN_H GFC_GFC_H.
+       (gfc_expr): Convert GMP to MPFR.
+       * module.c: Add arith.h, correct type in comment.
+       (mio_gmp_real): Convert GMP to MPFR.
+       (mio_expr):  Use gfc_set_model_kind().
+       * primary.c:  Update copyright date with 2004.
+       (match_real_constant,match_const_complex_part): Convert GMP to MPFR.
+       * simplify.c: Remove global GMP variables
+       (gfc_simplify_abs,gfc_simplify_acos,gfc_simplify_aimag,
+       gfc_simplify_aint,gfc_simplify_dint,gfc_simplify_anint,
+       gfc_simplify_dnint,gfc_simplify_asin,gfc_simplify_atan,
+       gfc_simplify_atan2,gfc_simplify_ceiling,simplify_cmplx,
+       gfc_simplify_conjg,gfc_simplify_cos,gfc_simplify_cosh,
+       gfc_simplify_dim,gfc_simplify_dprod,gfc_simplify_epsilon,
+       gfc_simplify_exp,gfc_simplify_exponent,gfc_simplify_floor,
+       gfc_simplify_fraction,gfc_simplify_huge,gfc_simplify_int,
+       gfc_simplify_ifix,gfc_simplify_idint,gfc_simplify_log,
+       gfc_simplify_log10,simplify_min_max,gfc_simplify_mod,
+       gfc_simplify_modulo,gfc_simplify_nearest,simplify_nint,
+       gfc_simplify_rrspacing,gfc_simplify_scale,
+       gfc_simplify_set_exponent,gfc_simplify_sign,gfc_simplify_sin,
+       gfc_simplify_sinh,gfc_simplify_spacing,gfc_simplify_sqrt,
+       gfc_simplify_tan,gfc_simplify_tanh,gfc_simplify_tiny,
+       gfc_simplify_init_1,gfc_simplify_done_1):  Convert GMP to MPFR.
+       Use new functions.
+       * trans-const.c (gfc_conv_mpfr_to_tree): Rename from
+       gfc_conv_mpf_to_tree.  Convert it to use MPFR
+       (gfc_conv_constant_to_tree): Use it.
+       * trans-const.h: Update prototype for gfc_conv_mpfr_to_tree().
+       * trans-intrinsic.c: Add arith.h, remove gmp.h
+       (gfc_conv_intrinsic_aint,gfc_conv_intrinsic_mod): Convert GMP to MPFR.
+
+2004-08-06  Victor Leikehman  <lei@il.ibm.com>
+       Paul Brook  <paul@codesourcery.com>
+
+       * trans-array.c (gfc_trans_allocate_array_storage,
+       gfc_trans_allocate_temp_array, gfc_add_loop_ss_code,
+       gfc_conv_loop_setup): For functions, if the shape of the result
+       is not known in compile-time, generate an empty array descriptor for
+       the result and let the callee to allocate the memory.
+       (gfc_trans_dummy_array_bias): Do nothing for pointers.
+       (gfc_conv_expr_descriptor): Use function return values directly.
+       * trans-expr.c (gfc_conv_function_call): Always add byref call
+       insn to pre chain.
+       (gfc_trans_pointer_assignment): Add comments.
+       (gfc_trans_arrayfunc_assign): Don't chain on expression.
+
+2004-08-01  Roger Sayle  <roger@eyesopen.com>
+
+       * options.c (gfc_init_options): Don't warn about the use GNU
+       extensions by default.
+       (gfc_post_options): Warn about GNU extensions with -pedantic.
+       (gfc_handle_option): Don't warn about GNU extensions with -std=gnu.
+
+2004-07-30  Richard Henderson  <rth@redhat.com>
+
+       * trans-expr.c (gfc_conv_expr_reference): Create a CONST_DECL
+       for TREE_CONSTANTs.
+
+2004-07-25  Richard Henderson  <rth@redhat.com>
+
+       * trans-decl.c (gfc_build_function_decl): Set DECL_ARTIFICIAL
+       and DECL_IGNORED_P on RESULT_DECL.
+       (gfc_generate_constructors): Likewise.
+
+2004-07-18  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/16465
+       * lang.opt (ffixed-line-length-none, ffixed-line-length-): New
+       options.
+       (ffixed-line-length-80, ffixed-line-length-132): Remove.
+       * options.c (gfc_handle_options): Deal with changed options.
+       * scanner.c (load_line): Change second arg to 'char **',
+       allocate if pointing to NULL. Keep track of buffer's length.
+       Adapt buffer size to overlong lines. Pad lines to full length
+       in fixed form.
+       (load_file): Adapt to new interface of load_line.
+
+2004-07-17  Joseph S. Myers  <jsm@polyomino.org.uk>
+
+       * trans.h (builtin_function): Declare.
+
+2004-07-16  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/16404
+       (parts ported from g95)
+       * parse.h (gfc_state_data): New field do_variable.
+       (gfc_check_do_variable): Add prototype.
+       * parse.c (push_state): Initialize field 'do_variable'.
+       (gfc_check_do_variable): New function.
+       (parse_do_block): Remember do iterator variable.
+       (parse_file): Initialize field 'do_variable'.
+       * match.c (gfc_match_assignment, gfc_match_do,
+       gfc_match_allocate, gfc_match_nullify, gfc_match_deallocate):
+       Add previously missing checks.
+       (gfc_match_return): Reformat error message.
+       * io.c (match_out_tag): New function.
+       (match_open_element, match_close_element,
+       match_file_element, match_dt_element): Call match_out_tag
+       instead of match_vtag where appropriate.
+       (match_io_iterator, match_io_element): Add missing check.
+       (match_io): Reformat error message.
+       (match_inquire_element): Call match_out_tag where appropriate.
+
+       * parse.c (gfc_check_do_variable): Fix error locus.
+
+2004-07-15  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/15129
+       * trans-decl.c (gfc_build_function_decl): Create a new chardecl
+       for every assumed length character dummy argument.
+
+       PR fortran/15140
+       * trans-decl.c (gfc_trans_deferred_vars): Remove bogus assertion.
+
+       PR fortran/13792
+       * simplify.c (gfc_simplify_bound): Copy the bound expression.
+
+2004-07-15  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/15324
+       * trans-array.c gfc_trans_g77_array,
+       gfc_trans_dummy_array_bias): Don't call gfc_trans_string_init
+       for assumed length characters.
+       (gfc_conv_expr_descriptor): Set se->string_length if dealing
+       with a character expression.
+       (gfc_cvonv_array_parameter): Pass string length when passing
+       character array according to g77 conventions.
+
+2004-07-12  Paul Brook  <paul@codesourcery.com>
+
+       * expr.c (gfc_check_assign_symbol): Handle pointer assignments.
+       * trans-array.c (gfc_trans_auto_array_allocation): Remove
+       initialization code.
+       * trans-common.c (create_common): Use gfc_conv_initializer.
+       * trans-decl.c (gfc_get_symbol_decl): Use gfc_conv_initializer.
+       * trans-expr.c (gfc_conv_initializer): New function.
+       (gfc_conv_structure): Use it.
+       * trans.h (gfc_conv_initializer): Add prototype.
+
+2004-07-11  Paul Brook  <paul@codesourcery.com>
+
+       PR fortran/15986
+       * parse.c (gfc_fixup_sibling_symbols): Also look for untyped
+       variables.
+       (parse_contained): Mark contained symbols as referenced.
+
+2004-07-11  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/16455
+       * module.c (gfc_dump_module, gfc_use_module): Print locus
+       when opening of module file fails.
+
+       PR fortran/16404
+       * io.c (match_io): Flag 'WRITE(...), ...' as extension.
+
+       PR fortran/16404
+       * match.c (gfc_match_program): A program name is obligatory.
+       (gfc_match_return): RETURN in main program is an extension.
+       (gfc_match_block_data): A space is required before a block data
+       name.
+
+       PR fortran/16433
+       * primary.c (match_boz_constant): Call gfc_notify_std only if
+       we actually have a non-standard boz-literal-constant.
+
+       PR fortran/15754
+       * expr.c (gfc_check_assign): Print ranks if incompatible. Issue
+       warning if assigning NULL().
+
+2004-07-11  Joseph S. Myers  <jsm@polyomino.org.uk>
+
+       * f95-lang.c (set_block): Remove.
+       (gfc_clear_binding_stack): New.
+       (LANG_HOOKS_CLEAR_BINDING_STACK): Define.
+       (struct binding_level): Remove block_created_by_back_end.
+       (clear_binding_level): Likewise.
+       (poplevel): Don't handle block_created_by_back_end.
+
+2004-07-10  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-decl.c (gfc_create_module_variable): Nothing to do if
+       symbol is in common, because we ...
+       (gfc_generate_module_vars): Call gfc_trans_common.
+
+2004-07-10  Paul Brook  <paul@codesourcery.com>
+
+       * trans-array.c (gfc_build_null_descriptor): New function.
+       (gfc_trans_static_array_pointer): Use it.
+       * trans-array.h (gfc_build_null_descriptor): Add prototype.
+       * trans-expr.c (gfc_conv_structure): Handle array pointers.
+
+2004-07-10  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/16336
+       * decl.c (gfc_match_save): Use-associated common block
+       doesn't collide.
+       * gfortran.h (gfc_common_head): Add new field 'name'.
+       Fix typo in comment after #endif.
+       * match.c (gfc_get_common): Add new argument from_common,
+       mangle name if flag is set, fill in new field in structure
+       gfc_common_head.
+       (match_common): Set new arg in call to gfc_get_common,
+       use-associated common block doesn't collide.
+       * match.h (gfc_get_common): Adapt prototype.
+       * module.c (load_commons): Set new arg in call to
+       gfc_get_common.
+       * symbol.c (free_common_tree): New function.
+       (gfc_free_namespace): Call new function.
+       * trans-common.c (several functions): Remove argument
+       'name', use name from gfc_common_head instead.
+
+2004-07-10  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * expr.c (gfc_check_pointer_assign): Verify that rank of the LHS
+       and RHS match. Return early if the RHS is NULL().
+
+       PR fortran/16336
+       * match.c (match_common): Fix error reporting for used common.
+
+       PR fortran/15969
+       * trans-expr.c (gfc_conv_structure): Handle initialization
+       of scalar pointer components.
+
+       * parse.c (decode_statement): Fix matching of BLOCK DATA.
+
+       * trans-decl.c (generate_local_decl): Remove workaround obsoleted
+       by fix for PR 15481.
+
+2004-07-10  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-common.c: Fix whitespace issues, make variable names
+       more readable.
+       (create_common): Additionally, make loop logic more obvious.
+
+2004-07-10  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+       Paul Brook  <paul@codesourcery.com>
+
+       PR fortran/13415
+       * trans-common.c (calculate_length): Remove ...
+       (get_segment_info): Merge into here.  Save field type.
+       (build_field): Use saved type.
+       (create_common, new_condition, new_segment, finish_equivalences):
+       Use new get_segment_info.
+       * trans-types.c: Update comment.
+
+2004-07-09  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/14077
+       * moduele.c (mio_symbol): Don't I/O initial values unless
+       symbol is a parameter.
+
+2004-07-09  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/13201
+       * resolve.c (resolve_symbol): Verify that the shape of a
+       parameter array is not only explicit, but also constant.
+       * array.c (gfc_is_compile_time_shape): New function.
+       * gfortran.h (gfc_is_compile_time_shape): Add prototype.
+
+2004-07-09  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/15481
+       PR fortran/13372
+       PR fortran/13575
+       PR fortran/15978
+       * module.c (write_symbol, write_symtree): Remove workaround.
+       * primary.c (match_actual_arglist): Enhance comment.
+       (gfc_match_rvalue): Handle function call with first argument
+       a keyword argument correctly.
+       * resolve.c (resolve_symbol): Change call to
+       gfc_set_default_type to issue error if no implicit type
+       can be found.
+       * trans-decl.c (gfc_create_module_variable): Remove workaround.
+
+2004-07-08  Paul Brook  <paul@codesourcery.com>
+
+       * intrinsic.c (add_sym_4s): New function.
+       (add_subroutines): Change gfc_add_sym_? to gfc_add_sym_?s.
+
+2004-07-04  Janne Blomqvist  <jblomqvi@cc.hut.fi>
+       Paul Brook  <paul@codesourcery.com>
+
+       PR fortran/15280
+       PR fortran/15665
+       * gfortran.h (enum gfc_generic_isym_id): Add GFC_ISYM_IARGC and
+       GFC_ISYM_COMMAND_ARGUMENT_COUNT.
+       * intrinsic.c (add_functions):  Identify iargc.  Add
+       command_argument_count.
+       (add_subroutines): Resolve getarg.  Add get_command and
+       get_command_argument.
+       * intrinsic.h (gfc_resolve_getarg, gfc_resolve_get_command,
+       gfc_resolve_get_command_argument): Add prototypes.
+       * iresolve.c (gfc_resolve_getarg, gfc_resolve_get_command,
+       gfc_resolve_get_command_argument): New functions.
+       * trans-decl.c (gfor_fndecl_iargc): New variable.
+       (gfc_build_intrinsic_function_decls): Set it.
+       * trans-intrinsic.c (gfc_conv_intrinsic_iargc): New function.
+       (gfc_conv_intrinsic_function): Use it.
+       * trans.h (gfor_fndecl_iargc): Declare.
+
+2004-07-04  Matthias Klose  <doko@debian.org>
+
+       * Make-lang.in: Generate and install gfortran man page.
+       * invoke.texi: Remove extra '@c man end'.
+
+2004-07-04  Richard Henderson  <rth@redhat.com>
+
+       * f95-lang.c (gfc_mark_addressable): Don't put_var_into_stack.
+
+2004-07-04  Paul Brook  <paul@codesourcery.com>
+
+       * decl.c (gfc_match_implicit_range): Don't use typespec.
+       (gfc_match_implicit): Handle character selectors.
+       * gfortran.h (gfc_set_implicit): Remove prototype.
+       (gfc_add_new_implicit_range, gfc_merge_new_implicit): Update.
+       * parse.c (accept_statement): Don't call gfc_set_implicit.
+       * symbol.c (new_ts): Remove.
+       (gfc_set_implicit_none): Use same loop bounds as other functions.
+       (gfc_set_implicit): Remove.
+       (gfc_clear_new_implicit, gfc_add_new_implicit_range): Only set flags.
+       (gfc_merge_new_implicit): Combine with gfc_set_implicit.
+
+2004-06-30  Richard Henderson  <rth@redhat.com>
+
+       * match.c (var_element): Remove unused variable.
+
+       * trans-decl.c (gfc_generate_function_code): Don't set
+       x_whole_function_mode_p.
+       (gfc_generate_constructors): Likewise.
+
+2004-06-30  Richard Henderson  <rth@redhat.com>
+
+       * trans-decl.c (gfc_generate_function_code): Don't set
+       immediate_size_expand.
+       (gfc_generate_constructors): Likewise.
+
+2004-06-30  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/16161
+       * decl.c (gfc_match_type_spec): Rename second argument to
+       'implicit_flag', reverse meaning. Don't match_char_spec if
+       'implicit_flag' is set. Rename to ...
+       (match_type_spec): ... this.
+       (gfc_match_implicit_none, match_implicit_range): Move here
+       from match.c.
+       (gfc_match_implicit): Move here from match.c, try to
+       match_char_len if match_implicit_range doesn't succeed for
+       CHARACTER implicits. Call renamed fucntion match_type_spec.
+       (gfc_match_data_decl, match_prefix): Call renamed function
+       match_type_spec.
+       * match.c (gfc_match_implicit_none, match_implicit_range,
+       gfc_match_implicit): Move to decl.c.
+       * match.h (gfc_match_implicit_none, gfc_match_implicit):
+       Move protoypes to section 'decl.c'.
+       (gfc_match_type_spec): Remove prototype.
+
+2004-06-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * decl.c, interface.c, symbol.c, trans-common.c: Add 2004 to
+       copyright years.
+
+2004-06-29  Steven Bosscher  <stevenb@suse.de>
+
+       Make sure types in assignments are compatible.  Mostly mechanical.
+       * trans-const.h (gfc_index_one_node): New define.
+       * trans-array.c (gfc_trans_allocate_array_storage,
+       gfc_trans_allocate_temp_array, gfc_trans_array_constructor_subarray,
+       gfc_trans_array_constructor_value, gfc_trans_array_constructor,
+       gfc_conv_array_ubound, gfc_conv_array_ref,
+       gfc_trans_scalarized_loop_end, gfc_conv_section_startstride,
+       gfc_conv_ss_startstride, gfc_conv_loop_setup, gfc_array_init_size,
+       gfc_trans_array_bounds, gfc_trans_dummy_array_bias,
+       gfc_conv_expr_descriptor, gfc_trans_deferred_array): Use the correct
+       types in assignments, conversions and conditionals for expressions.
+       * trans-expr.c (gfc_conv_expr_present, gfc_conv_substring,
+       gfc_conv_unary_op, gfc_conv_cst_int_power, gfc_conv_string_tmp,
+       gfc_conv_function_call, gfc_trans_pointer_assignment,
+       gfc_trans_scalar_assign): Likewise.
+       * trans-intrinsic.c (build_fixbound_expr, gfc_conv_intrinsic_bound,
+       gfc_conv_intrinsic_anyall, gfc_conv_intrinsic_count,
+       gfc_conv_intrinsic_minmaxloc, gfc_conv_intrinsic_btest,
+       gfc_conv_intrinsic_singlebitop, gfc_conv_intrinsic_ishft,
+       gfc_conv_intrinsic_ishftc, gfc_conv_intrinsic_strcmp,
+       gfc_conv_allocated, gfc_conv_associated,
+       gfc_conv_intrinsic_rrspacing, gfc_conv_intrinsic_trim): Likewise.
+       * trans-io.c (set_string): Likewise.
+       * trans-stmt.c (gfc_trans_do, gfc_trans_forall_loop,
+       gfc_do_allocate, generate_loop_for_temp_to_lhs,
+       generate_loop_for_rhs_to_temp, compute_inner_temp_size,
+       compute_overall_iter_number, gfc_trans_assign_need_temp,
+       gfc_trans_pointer_assign_need_temp, gfc_trans_forall_1,
+       gfc_evaluate_where_mask, gfc_trans_where_assign,
+       gfc_trans_where_2): Likewise.
+       * trans-types.c (gfc_get_character_type, gfc_build_array_type,
+       gfc_get_nodesc_array_type, gfc_get_array_type_bounds): Likewise.
+
+       * trans.c (gfc_add_modify_expr): Add sanity check that types
+       for the lhs and rhs are the same for scalar assignments.
+
+2004-06-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * dump-parse-tree.c (show_common): New function.
+       (gfc_show_namespace): Show commons.
+
+2004-06-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+       Andrew Vaught  <andyv@firstinter.net>
+
+       PR fortran/13249
+       PR fortran/15481
+       * decl.c (gfc_match_save): Adapt to new common structures,
+       don't allow saving USE-associated common.
+       * dump-parse-tree (gfc_show_attr): (saved_)common are not
+       symbol attributes any longer.
+       (gfc_show_symbol): Don't show old-style commons any longer.
+       (gfc_show_namespace): Adapt call to gfc_traverse_symtree to new
+       interface.
+       * gfortran.h (symbol_attribute): Remove common and saved_common
+       attributes.
+       (gfc_symbol): Remove common_head element.
+       (gfc_common_head): New struct.
+       (gfc_get_common_head): New macro.
+       (gfc_symtree): Add field 'common' to union.
+       (gfc_namespace): Add field 'common_root'; change type of field
+       'blank_common' to blank_common.
+       (gfc_add_data): New prototype.
+       (gfc_traverse_symtree): Expect a symtree as first argument
+       instead of namespace.
+       * match.c (gfc_get_common): New function.
+       (match_common_name): Change to take char * as argument, adapt,
+       fix bug with empty name.
+       (gfc_match_common): Adapt to new data structures. Disallow
+       redeclaration of USE-associated COMMON-block. Fix bug with
+       empty common.
+       (var_element): Adapt to new common structures.
+       * match.h (gfc_get_common): Declare.
+       * module.c: Add 2004 to copyright years, add commons to module
+       file layout description.
+       (ab_attribute, attr_bits, mio_symbol_attributes): Remove code
+       for removed attributes.
+       (mio_symbol): Adapt to new way of storing common relations.
+       (load_commons): New function.
+       (read_module): Skip common list on first pass, load_commons at
+       second.
+       (write_commons): New function.
+       (write_module): Call write_commons().
+       * symbol.c (gfc_add_saved_comon, gfc_add_common): Remove
+       functions related to removed attributes.
+       (gfc_add_data): New function.
+       (gfc_clear_attr): Don't set removed attributes.
+       (gfc_copy_attr): Don't copy removed attributes.
+       (traverse_symtree): Remove.
+       (gfc_traverse_symtree): Don't traverse symbol
+       tree of the passed namespace, but require a symtree to be passed
+       instead. Unify with traverse_symtree.
+       (gfc_traverse_ns): Call gfc_traverse_symtree according to new
+       interface.
+       (save_symbol): Remove setting of removed attribute.
+       * trans-common.c (gfc_sym_mangled_common_id): Change to
+       take 'char *' argument instead of 'gfc_symbol'.
+       (build_common_decl, new_segment, translate_common): Adapt to new
+       data structures, add new
+       argument name.
+       (create_common): Adapt to new data structures, add new
+       argument name. Fix typo in intialization of derived types.
+       (finish_equivalences): Add second argument in call to
+       create_common.
+       (named_common): take 'gfc_symtree' instead of 'gfc_symbol'.
+       (gfc_trans_common): Adapt to new data structures.
+       * trans-decl.c (gfc_create_module_variables): Remove test for
+       removed attribute.
+
+2004-06-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * io.c: Add 2004 to copyright years.
+
+2004-06-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+       Andrew Vaught  <andyv@firstinter.net>
+
+       * gfortran.h (gfc_gsymbol): New typedef.
+       (gfc_gsym_root): New variable.
+       (gfc_get_gsymbol, gfc_find_gsym): New prototypes.
+       * parse.c (global_used): New function.
+       (parse_block_data): Check for double empty BLOCK DATA,
+       use global symbol table.
+       (parse_module): Use global symbol table.
+       (add_global_procedure, add_global_program): New functions.
+       (gfc_parse_file): Use global symbol table.
+       * symbol.c (gfc_gsym_root): New variable.
+       (gfc_find_gsym, gsym_compare, gfc_get_gsymbol): New
+       functions.
+
+2004-06-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * module.c (mio_gmp_real): Correct writing of negative numbers.
+
+2004-06-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/15963
+       * expr.c (check_intrinsic_op): Allow comparison of characters.
+       Make logic easier.
+
+2004-06-26  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+       Andrew Vaught  <andyv@firstinter.net>
+
+       * decl.c (contained_procedure): New function.
+       (match_end): Verify correctness of END STATEMENT in
+       all cases.
+
+2004-06-26  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+       Andrew Vaught  <andyv@firstinter.net>
+
+       PR fortran/15190
+       * decl.c (gfc_match_type_spec), io.c (match_io), parse.c
+       (decode_statement): Enforce required space in free-form.
+
+2004-06-22  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * f95-lang.c (LANG_HOOKS_GIMPLE_BEFORE_INLINING): Deleted.
+       * trans-array.c (gfc_conv_descriptor_data): Add operand
+       for COMPONENT_REF.
+       (gfc_conv_descriptor_offset, gfc_conv_descriptor_dtype): Likewise.
+       (gfc_conv_descriptor_dimension, gfc_conv_descriptor_stride): Likewise.
+       (gfc_conv_descriptor_lbound, gfc_conv_descriptor_ubound): Likewise.
+       * trans-common.c (create_common): Likewise.
+       * trans-expr.c (gfc_conv_component_ref): Likewise.
+       * trans-io.c (set_parameter_value): Likewise.
+       (set_parameter_ref, set_string, set_flag, io_result): Likewise.
+       (transfer_expr): Likewise.
+       * trans-decl.c (gfc_trans_auto_character_variable):
+       Set up to get DECL_SIZE and DECL_SIZE_UNIT gimplified.
+       (gfc_gimplify_function): New function.
+       (gfc_generate_function-code): Properly handle nested functions.
+       * trans.c (gfc_build_array_ref): Add two new operands for ARRAY_REF.
+
+2004-06-22  Janne Blomqvist  <jblomqvi@cc.hut.fi>
+
+       PR fortran/15750
+       * io.c (gfc_match_inquire): Bugfix for iolength related stuff.
+       (gfc_resolve_inquire): Resolve the iolength tag.  Return
+       SUCCESS at end of function if no failure has occured.
+       * resolve.c (resolve_code): Resolve if iolength is encountered.
+       * trans-io.c: (ioparm_iolength, iocall_iolength,
+       iocall_iolength_done): New variables.
+       (last_dt): Add IOLENGTH.
+       (gfc_build_io_library_fndecls ): Set iolength related variables.
+       (gfc_trans_iolength): Implement.
+       (gfc_trans_dt_end): Treat iolength as a third form of data transfer.
+
+2004-06-21  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de
+
+       PR fortran/15511
+       * scanner.c (load_line): Don't truncate preprocessor lines.
+       Reformat error message.
+       (preprocessor_line): Issue warning in case of malformed
+       preprocessor line.
+
+2004-06-21  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * resolve.c (resolve_symbol): Add comment in function body.
+       (check_data_variable): Change type of mark to ar_type, adapt code
+       accordingly.
+
+2004-06-21  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * array.c (gfc_insert_constructor): Avoid redundant call to
+       mpz_comp. Add 2004 to copyright years.
+
+2004-06-21  Joseph S. Myers  <jsm@polyomino.org.uk>
+
+       * trans.h (stmtblock_t): Change has_scope to unsigned int.
+
+2004-06-20  Steven G. Kargl  <kargls@comcast.net>
+
+       * arith.c (gfc_range_check): correct complex underflow.
+
+2004-06-15  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/15962
+       * match.c (match_case_selector): Call gfc_match_init_expr
+       instead of gfc_match_expr.
+       * resolve.c (validate_case_label_expr): No need to check for
+       constant, since it wouldn't have been matched with the fix to
+       match.c.
+
+2004-06-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/15211
+       * trans-intrinsic.c (gfc_conv_intrinsic_len): Deal with arrays
+       of strings.
+
+2004-06-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/15510
+       * trans-deecl.c (generate_local_decl): Do not issue warning for
+       unused variables if they're use associated.
+
+2004-06-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+       Andrew Vaught  <andyv@firstinter.net>
+
+       PR fortran/14928
+       * gfortran.h (gfc_check_f): Add new field f3ml.
+       * check.c (gfc_check_minloc_maxloc): Take argument list instead
+       of individual arguments, reorder if necessary.
+       * intrinsic.h (gfc_check_minloc_maxloc): ... adapt prototype.
+       * intrinsic.c (add_sym_3ml): New function.
+       (add_functions): Change to add_sym_3ml for MINLOC, MAXLOC.
+       (check_specific): Catch special case MINLOC, MAXLOC.
+
+2004-06-14  Paul Brook  <paul@codesourcery.com>
+
+       * intrinsic.c (add_sym_2s): Use correct function types.
+
+2004-06-12  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * Make-lang.in (F95_OBJS, F95_PARSER_OBJS): Alphabetize.  Move data.c
+       * data.c (gfc_get_section_index):  Remove dependency on trans.h.
+
+2004-06-12  Steven G. Kargl  <kargls@comcast.net>
+
+       * check.c (gfc_check_second_sub, gfc_check_irand, gfc_check_rand
+       gfc_check_srand, gfc_check_etime, gfc_check_etime_sub): New functions.
+       * gfortran.h (gfc_generic_isym_id): New symbols GFC_ISYM_ETIME,
+       GFC_ISYM_IRAND, GFC_ISYM_RAND, GFC_ISYM_SECOND.
+       * trans-intrinsic.c:  Use symbols.
+       * intrinsic.c (add_sym_2s): New function.
+       * intrinsic.c: Add etime, dtime, irand, rand, second, srand.
+       * intrinsic.h: Function prototypes.
+       * iresolve.c (gfc_resolve_etime_sub, gfc_resolve_second_sub
+       gfc_resolve_srand):  New functions.
+
+2004-06-12  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/14957
+       * decl.c (gfc_match_end): Require END {SUBROUTINE|FUNCTION} for
+       contained procedure.
+
+2004-06-12  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/12841
+       * interface.c (compare_parameter, compare_actual_formal): Don't
+       check types and array shapes for NULL()
+       * trans-expr.c (conv_function_call): No double indirection for
+       NULL()
+
+2004-06-09  Toon Moene  <toon@moene.indiv.nluug.nl>
+
+       * trans-expr.c (gfc_conv_cst_int_power): Compute
+       x**(-n) by converting it to (1/x)**n instead of
+       1/x**n.
+
+2004-06-09  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/13372
+       * module.c (write_symbol, write_symtree): Don't write symbols
+       wrongly added to namespace.
+       * trans-decl.c (gfc_create_module_variable): Don't create a
+       backend decl for a symbol incorrectly added to namespace.
+
+2004-06-09  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/13201
+       * resolve.c (resolve_symbol): Verify that parameter array has an
+       explicit shape. Fix typos and coding style issues in surrounding
+       lines.
+
+2004-06-05  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/15478
+       * gfortran.texi: The documentation doesn't contain infomration on
+       how to report bugs, and shouldn't, so remove the line which
+       says it does.
+
+2004-06-05  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * intrinsic.c (sort_actual): Keep track of type of missing
+       arguments. (Missing from previous commit.)
+
+2004-06-03  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * gfortran.h (gfc_actual_arglist): New field missing_arg_type.
+       * interface.c (compare_actual_formal): Keep type of omitted
+       optional arguments.
+       * trans-expr.c (gfc_conv_function_call): Add string length
+       argument for omitted string argument.
+
+2004-06-03  Paul Brook  <paul@codesourcery.com>
+
+       * trans.c (gfc_finish_block, gfc_add_expr_to_block): Build statement
+       lists instead of compound expr chains.
+       (gfc_trans_code): Annotate statement lists.
+
+2004-06-03  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-array.c: Fix spelling in comments.
+
+2004-06-02  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/15557
+       * data.c (assign_substring_data_value): New function.
+       (gfc_assign_data_value): Call the new function if we're dealing
+       with a substring LHS.
+
+2004-06-01  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/15477
+       * gfortran.h (GFC_VERSION): Remove.
+       * gfortran.texi (version-gfortran): Remove, replace by version-GCC
+       where used.
+
+2004-05-31  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-types.c: Fix spelling & layout in comments.
+
+2004-05-30  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/14067
+       * trans-const.c (gfc_conv_string_init): Allow variable string
+       length lower than initialization string length.
+
+2004-05-30  Paul Brook  <paul@codesourcery.com>
+
+       PR fortran/15620
+       * trans-decl.c (gfc_shadow_sym, gfc_restore_sym): New functions.
+       * trans-expr.c (gfc_trans_string_copy): New function.
+       (gfc_conv_statement_function): Use them.  Create temp vars.  Enforce
+       character lengths.
+       (gfc_conv_string_parameter): Use gfc_trans_string_copy.
+       * trans-stmt.c (gfc_trans_forall_1): Use gfc_{shadow,restore}_sym.
+       * trans.h (struct gfc_saved_var): Define.
+       (gfc_shadow_sym, gfc_restore_sym): Add prototypes.
+
+2004-05-30  Steven G. Kargl  <kargls@comcast.net>
+
+       * iresolve.c (gfc_resolve_random_number): Clean up conditional.
+
+2004-05-29  Steven G. Kargl  <kargls@comcast.net>
+
+       * simplify.c (gfc_simplify_log): Remove useless line of code.
+
+2004-05-29  Paul Brook  <paul@codesourcery.com>
+
+       * trans-common.c (find_equivalence): Find multiple rules.
+
+2004-05-27  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * gfortran.h (gfc_current_locus, gfc_set_locus): Remove.
+       (gfc_current_locus): Declare new global variable.
+       * scanner.c (gfc_current_locus, gfc_set_locus): Remove.
+       (gfc_current_locus1): Rename ...
+       (gfc_current_locus): ... to this.
+       (gfc_at_eof, gfc_at_bol, gfc_at_eol, gfc_advance_line, next_char,
+       skip_fixed_comments, skip_free_comments, gfc_next_char_literal,
+       gfc_peek_char, gfc_gobble_whitespace, gfc_new_file): Use
+       gfc_current_locus instead of gfc_current_locus1, gfc_set_locus()
+       and gfc_current_locus(), respectively.
+       * array.c (match_subscript, gfc_match_array_ref, match_array_list,
+       match_array_cons_element, gfc_match_array_constructor):
+       Read/modify gfc_current_locus instead of calling gfc_set_locus()
+       and gfc_current_locus().
+       * decl.c (gfc_match_null, variable_decl, gfc_match_kind_spec,
+       match_attr_spec, gfc_match_function_decl, gfc_match_end,
+       attr_decl1, gfc_match_save): Likewise.
+       * error.c (error_print, gfc_internal_error): Likewise.
+       * expr.c (gfc_int_expr, gfc_default_logical_kind): Likewise.
+       * interface.c (gfc_add_interface): Likewise.
+       * io.c (gfc_match_format, match_dt_format, match_dt_element,
+       match_io_iterator, match_io): Likewise.
+       * match.c (gfc_match_space, gfc_match_eos,
+       gfc_match_small_literal_int, gfc_match_st_label,
+       gfc_match_strings, gfc_match_name, gfc_match_iterator,
+       gfc_match_char, gfc_match, gfc_match_assignment,
+       gfc_match_pointer_assignment, gfc_match_if, gfc_match_do,
+       gfc_match_nullify, gfc_match_call, match_implicit_range,
+       gfc_match_implicit, gfc_match_data, match_case_selector,
+       gfc_match_case, match_forall_iterator): Likewise.
+       * matchexp.c (gfc_match_defined_op_name, next_operator,
+       match_level_1, match_mult_operand, match_ext_mult_operand,
+       match_add_operand, match_ext_add_operand, match_level_2,
+       match_level_3, match_level_4, match_and_operand, match_or_operand,
+       match_equiv_operand, match_level_5, gfc_match_expr): Likewise.
+       * module.c (gfc_match_use, mio_array_ref, mio_expr): Likewise.
+       * parse.c (match_word, decode_statement, next_free, next_fixed,
+       add_statement, verify_st_order, parse_if_block, gfc_parse_file):
+       Likewise.
+       * primary.c (match_digits, match_integer_constant,
+       match_boz_constant, match_real_constant, match_substring,
+       next_string_char, match_charkind_name, match_string_constant,
+       match_logical_constant, match_const_complex_part,
+       match_complex_constant, match_actual_arg, match_keyword_arg,
+       gfc_match_actual_arglist, gfc_match_structure_constructor,
+       gfc_match_rvalue, gfc_match_variable): Likewise.
+       * st.c (gfc_get_code): Likewise.
+       * symbol.c (check_conflict, check_used, check_done,
+       duplicate_attr, add_flavor, gfc_add_procedure, gfc_add_intent,
+       gfc_add_access, gfc_add_explicit_interface, gfc_add_type,
+       gfc_add_component, gfc_reference_st_label, gfc_new_symbol): Likewise.
+
+2004-05-26  Roger Sayle  <roger@eyesopen.com>
+
+       * io.c (format_asterisk): Silence compiler warnings by correcting
+       the number of elements of a "locus" initializer.
+
+2004-05-25  Roger Sayle  <roger@eyesopen.com>
+
+       PR fortran/13912
+       * matchexp.c: Allow unary operators after arithmetic operators
+       as a GNU extension.
+       (match_ext_mult_operand, match_ext_add_operand): New functions.
+       (match_mult_operand): Tweak to call match_ext_mult_operand.
+       (match_add_operand): Tweak to call match_ext_mult_operand.
+       (match_level_2): Rearrange to call match_ext_add_operand.
+
+2004-05-25  Paul Brook  <paul@codesourcery.com>
+
+       * expr.c (check_inquiry): Remove bogus tests.
+
+2004-05-23  Paul Brook  <paul@codesourcery.com>
+
+       PR fortran/13773
+       * expr.c (restricted_args): Remove redundant checks/argument.
+       (external_spec_function): Update to match.
+       (restricted_intrinsic): Rewrite.
+
+2004-05-23  Paul Brook  <paul@codesourcery.com>
+       Victor Leikehman  <lei@haifasphere.co.il>
+
+       * gfortran.h (struct gfc_symbol): Add equiv_built.
+       * trans-common.c: Change int to HOST_WIDE_INT.  Capitalize error
+       messages.
+       (current_length): Remove.
+       (add_segments): New function.
+       (build_equiv_decl): Create initialized common blocks.
+       (build_common_decl): Always add decl to bindings.
+       (create_common): Create initializers.
+       (find_segment_info): Reformat to match coding conventions.
+       (new_condition): Use add_segments.
+       (add_condition, find_equivalence, add_equivalences): Move iteration
+       inside functions.  Only process each segment once.
+       (new_segment, finish_equivalences, translate_common): Simplify.
+
+2004-05-23  Steven G. Kargl  <kargls@comcast.net>
+
+       * check.c (gfc_check_random_seed): Issue for too many arguments.
+
+2004-05-22  Steven G. Kargl  <kargls@comcast.net>
+
+       * intrinsic.c (add_subroutines): Use add_sym_3s for random_seed.
+
+2004-05-22  Paul Brook  <paul@codesourcery.com>
+
+       * dump-parse-tree.c (gfc_show_equiv): New function.
+       (gfc_show_namespace): Use it.
+
+2004-05-22  Victor Leikehman  <lei@haifasphere.co.il>
+
+       PR fortran/13249
+       * symbol.c (gfc_add_common): Disable checks to work around other more
+       fundamental inadequacies.
+
+2004-05-22  Tobias Schlüter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-decl.c (gfc_get_extern_function_decl): Set DECL_IS_PURE
+       only for functions.
+       (gfc_build_function_decl): Likewise.
+
+2004-05-22  Steven G. Kargl  <kargls@comcast.net>
+
+       * check.c (gfc_check_system_clock): New function.
+       * intrinsic.c (add_sym_3s): New function.
+       (add_subroutines): Use it.
+       * intrinsic.h (gfc_check_system_clock, gfc_resolve_system_clock):
+       Add prototypes.
+       * iresolve.c (gfc_resolve_system_clock): New function.
+
+2004-05-22  Steven G. Kargl  <kargls@comcast.net>
+
+       * invoke.texi: Document -Wunderflow and spell check.
+       * lang.opt: Add Wunderflow.
+       * gfortran.h (gfc_option_t): Add warn_underflow option.
+       * options.c (gfc_init_options, set_Wall): Use it.
+       * primary.c (match_real_constant): Explicitly handle UNDERFLOW.
+       * arith.c (gfc_arith_uminus, gfc_arith_plus, gfc_arith_minus,
+       gfc_arith_times, gfc_arith_divide, gfc_arith_power, gfc_real2real,
+       gfc_real2complex, gfc_complex2real, gfc_complex2complex): Ditto.
+       * arith.c (common_logarithm): Fix typo in comment.
+
+2004-05-21  Roger Sayle  <roger@eyesopen.com>
+
+       * io.c (check_format): As a GNU extension, allow the comma after a
+       string literal to be optional in a format.  Use gfc_notify_std to
+       issue an error/warning as appropriate.
+
+2004-05-21  Roger Sayle  <roger@eyesopen.com>
+
+       * io.c (check_format): Use gfc_notify_std to determine whether to
+       issue an error/warning for omitting the digits from the X format.
+
+2004-05-20  Roger Sayle  <roger@eyesopen.com>
+
+       * io.c (check_format): Allow the number before the X format to
+       be optional when not -pedantic.
+
+2004-05-18  Feng Wang  <fengwang@nudt.edu.cn>
+       Paul Brook  <paul@codesourcery.com>
+
+       * f95-lang.c (gfc_init_builtin_functions): Use vold_list_node.
+       Create decls for __builtin_pow{,f}.
+       * gfortran.h (PREFIX_LEN): Define.
+       * trans-decl.c (gfor_fndecl_math_powi): Add.
+       (gfor_fndecl_math_powf, gfor_fndecl_math_pow): Remove.
+       (gfc_build_intrinsic_function_decls): Create decls for powi.
+       * trans-expr.c (powi_table): Add.
+       (gfc_conv_integer_power): Remove.
+       (gfc_conv_powi): New function.
+       (gfc_conv_cst_int_power): New function.
+       (gfc_conv_power_op): Use new powi routines.
+       * trans.h (struct gfc_powdecl_list): Add.
+       (gfor_fndecl_math_powi): Add.
+       (gfor_fndecl_math_powf, gfor_fndecl_math_pow): Remove.
+
+2004-05-18  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans.c, trans-decl.c: Fix comment typos.
+
+2004-05-18  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-const.c (gfc_conv_mpf_to_tree): Fix typo.
+
+2004-05-18  Steve Kargl  <kargls@comcast.net>
+
+       * arith.c (gfc_int2complex): Fix incorrect range checking.
+
+2004-05-18  Paul Brook  <paul@codesourcery.com>
+
+       PR fortran/13930
+       * decl.c (add_init_expr_to_sym): Remove incorrect check.
+       (default_initializer): Move to expr.c.
+       (variable_decl): Don't assign default initializer to variables.
+       * expr.c (gfc_default_initializer): Move to here.
+       * gfortran.h (gfc_default_initializer): Add prototype.
+       * resolve.c (resolve_symbol): Check for illegal initializers.
+       Assign default initializer.
+
+2004-05-17  Steve Kargl  <kargls@comcast.net>
+
+       * arith.c (gfc_arith_power): Complex number raised to 0 power is 1.
+
+2004-05-17  Steve Kargl  <kargls@comcast.net>
+
+       * arith.c (gfc_real2complex): Range checking wrong part of complex
+       number.
+
+2004-05-16  Paul Brook  <paul@codesourcery.com>
+
+       * options.c (gfc_handle_module_path_options): Fix buffer overrun.
+
+2004-05-16  Paul Brook  <paul@codesourcery.com>
+
+       * arith.c (gfc_range_check): Fix logic error.
+
+2004-05-16  Steve Kargl  <sgk@troutmask.apl.washington.edu>
+
+       * arith.c: Fix comment typos.
+
+2004-05-15  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/13742
+       * decl.c (add_init_expr_to_sym): Verify that COMMON variable is
+       not initialized in a disallowed fashion.
+       * match.c (gfc_match_common): Likewise.
+       (var_element): Verify that variable is not in the blank COMMON,
+       if it is in a common.
+
+2004-05-15  Joseph S. Myers  <jsm@polyomino.org.uk>
+
+       * Make-lang.in (f95.generated-manpages): Remove.
+       (f95.srcextra): New.
+       (f95.info, fortran/gfortran.info, fortran/gfortran.dvi,
+       f95.maintainer-clean): Generate info and dvi files in objdir/doc.
+       (f95.dvi): Remove.
+       (dvi): New.
+       (f95.install-info): Remove.
+       (install-info): New.
+
+2004-05-15  Victor Leikehman  <lei@haifasphere.co.il>
+
+       * decl.c (add_init_expr_to_sym): Check for variable size arrays.
+
+2004-05-15  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * primary.c (match_boz_constant): Use gfc_notify_std() for
+       issuing a warning or an error.
+
+2004-05-15  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/13826
+       * primary.c (match_structure_constructor): Rename ...
+       (gfc_match_structure_constructor): ... to this. Make non-static.
+       (gfc_match_rvalue): Call renamed function.
+       * match.h (gfc_match_structure_constructor): Declare.
+       * match.c (gfc_match_data_constant): Handle structure
+       constructor.
+
+2004-05-15  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/13702
+       (Port from g95)
+       * gfortran.h (gfc_linebuf): New typedef.
+       (linebuf): Remove.
+       (gfc_file): Revamped, use new gfc_linebuf.
+       (locus): Revamped, use new types.
+       (gfc_current_file): Remove.
+       (gfc_current_form, gfc_source_file): New global variables.
+       * match.c (gfc_match_space, gfc_match_strings): Use
+       gfc_current_form to find source form.
+       * module.c (gfc_dump_module): Use gfc_source_file when printing
+       module header.
+       * error.c (show_locus, show_loci) Use new data structures to print
+       locus.
+       * scanner.c (first_file, first_duplicated_file, gfc_current_file):
+       Remove.
+       (file_head, current_file, gfc_current_form, line_head, line_tail,
+       gfc_current_locus1, gfc_source_file): New global variables.
+       (gfc_scanner_init1): Set new global variables.
+       (gfc_scanner_done1): Free new data structures.
+       (gfc_current_locus): Return pointer to gfc_current_locus1.
+       (gfc_set_locus): Set gfc_current_locus1.
+       (gfc_at_eof): Set new variables.
+       (gfc_at_bol, gfc_at_eol, gfc_advance_line, gfc_next_char): Adapt
+       to new locus structure.
+       (gfc_check_include): Remove.
+       (skip_free_comments, skip_fixed_comments): Use gfc_current_locus1.
+       (gfc_skip_comments): Use gfc_current_form, find locus with
+       gfc_current_locus1.
+       (gfc_next_char): Use gfc_current_form.
+       (gfc_peek_char, gfc_gobble_whitespace): Use gfc_current_locus1.
+       (load_line): Use gfc_current_form. Recognize ^Z as EOF. Fix
+       comment formatting.
+       (get_file): New function.
+       (preprocessor_line, include_line): New functions.
+       (load_file): Move down, rewrite to match new data structures.
+       (gfc_new_file): Rewrite to match new data structures.
+       * parse.c (next_statement): Remove code which is now useless. Use
+       gfc_source_form and gfc_source_file where appropriate.
+       * trans-decl.c (gfc_get_label_decl): adapt to new data structures
+       when determining locus of frontend code.
+       * trans-io.c (set_error_locus): Same.
+       * trans.c (gfc_get_backend_locus, gfc_set_backend_locus): Likewise.
+       * lang-specs.h (@f77-cpp-input, @f95-cpp-input): Remove '-P' from
+       preprocessor flags.
+       (all): Add missing initializers.
+
+2004-05-15  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * Make-lang.in (trans-common.o): Remove redundant dependency.
+       (data.c): Replace object file name ...
+       (data.o): ... by the correct one.
+
+2004-05-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * dump-parse-tree.c (gfc_show_array_ref): Print colon only
+       for ranges when dumping array references.
+
+2004-05-14  Victor Leikehman  <lei@haifasphere.co.il>
+
+       * decl.c (variable_decl): Always apply default initializer.
+
+2004-05-08  Tobias Schlüter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/15206
+       * trans-intrinsic.c (gfc_conv_intrinsic_rrspacing): Fixed to
+       handle zero correctly.
+
+2004-05-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * match.c (gfc_match): Eliminate dead code.
+
+2004-05-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * parse.c (gfc_statement_next_fixed): (Change from Andy's tree)
+       Detect bad continuation line in fixed form sources.
+
+2004-05-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/15205
+       * iresolve.c (gfc_resolve_nearest): Add new function.
+       * intrinsic.h: ... declare it here.
+       * intrinsic.c (add_functions): ... add it as resolving function
+       for NEAREST.
+
+2004-05-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/14066
+       * match.c (gfc_match_do): Allow infinite loops with
+       label-do-stmt. Do not enforce space after comma.
+
+2004-05-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/15051
+       * parse.c (parse_interface): Allow empty INTERFACE, remove
+       seen_body.
+
+2004-05-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * Make-lang.in, arith.c, arith.h, array.c, bbt.c, check.c,
+       decl.c, dependency.c, dependency.h, dump-parse-tree.c, error.c,
+       expr.c, f95-lang.c, gfortran.h, interface.c, intrinsic.c,
+       intrinsic.h, io.c, iresolve.c, lang-specs.h, match.c, match.h,
+       matchexp.c, misc.c, module.c, options.c, parse.c, parse.h,
+       primary.c, resolve.c, scanner.c, simplify.c, st.c, symbol.c,
+       trans-array.c, trans-array.h, trans-common.c, trans-const.c,
+       trans-const.h, trans-decl.c, trans-expr.c, trans-intrinsic.c,
+       trans-io.c, trans-stmt.c, trans-stmt.h, trans-types.c,
+       trans-types.h, trans.c, trans.h: Update copyright years and
+       boilerplate.
+       * data.c: Likewise, also removed two whitespace-only lines.
+       * gfortranspec.c, lang.opt: Update copyright years.
+
+2004-05-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/14568
+       * trans-decl.c (generate_local_decl): Don't warn for unused
+       variables which are in common blocks.
+
+2004-05-13  Diego Novillo  <dnovillo@redhat.com>
+
+       * Make-lang.in, f95-lang.c, trans-array.c, trans-decl.c,
+       trans-expr.c, trans-intrinsic.c, trans-io.c, trans-stmt.c,
+       trans.c: Rename tree-simple.[ch] to tree-gimple.[ch].
+
+2004-05-13  Victor Leikehman  <lei@haifasphere.co.il>
+
+       PR fortran/15314
+       * trans-expr.c (gfc_conv_structure): Use field type, not expr type.
+
+2004-05-13  Joseph S. Myers  <jsm@polyomino.org.uk>
+
+       * gfortran.texi: Use @table @emph instead of @itemize @emph.
+       Remove "set DEVELOPMENT".
+       (Compiling GFORTRAN): Remove.
+
+2004-05-09  Tobias Schlüter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * array.c (match_subscript, match_array_ref): Add comments
+       explaining argument 'init'.
+       * decl.c, f95-lang.c, match.c, resolve.c, trans-array.c,
+       trans-expr.c, trans.c: Fix some typos in comments.
+       * dump-parse-tree.c (gfc_show_expr): Remove wrong comment.
+       * primary.c (match_digits, match_integer_constant): Add comment
+       explaining signflag.
+
+2004-05-01  Tobias Schlüter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/13940
+       * primary.c: Include system.h and flags.h, needed for pedantic.
+       (match_boz_constant): Allow "x" for hexadecimal constants, warn if
+       pedantic is set.
+
+2004-05-01  Tobias Schlüter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/13940
+       * match.c (match_data_constant): Handle case where
+       gfc_find_symbol sets sym to NULL
+
+2004-04-28  Tobias Schlüter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * Make-lang.in (f95-lang.o, trans-intrinsic.o): Add missing
+       dependency on mathbuiltins.def
+
+2004-04-24  Victor Leikehman  <lei@il.ibm.com>
+
+       * trans-io.c (transfer_expr): Implemented recursive printing
+       of derived types.
+
+2004-04-24  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       * gfortranspec.c: Do not include multilib.h.
+
+2004-04-24  Tobias Schlüter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-intrinsic.c: Fix comment, this is not trans-expr.c. Add
+       2004 to copyright years.
+       * trans-expr.c, trans-decl.c: Comment update, we now generate
+       GENERIC, not SIMPLE. Add 2004 to copyright years.
+
+2004-04-24  Paul Brook  <paul@codesourcery.com>
+
+       * Make-lang.in (gfortranspec.o): Add dependency on $(TM_H).
+
+2004-04-24  Feng Wang  <fengwang@nudt.edu.cn>
+
+       PR 14817
+       * arith.c (gfc_arith_divide): Fix complex divide.
+
+2004-04-23  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       * gfortranspec.c: Include the target headers.
+
+2004-04-18  Feng Wang  <fengwang@nudt.edu.cn>
+
+       PR fortran/14921
+       PR fortran/14540
+       * arith.c (arctangent2): New function.
+       * arith.h (arctangent2): Add function prototype.
+       * simplify.c (gfc_simplify_atan2): Use it.
+       (gfc_simplify_log): Use it.
+
+2004-04-12  Diego Novillo  <dnovillo@redhat.com>
+
+       * fortran/f95-lang.c (gfc_expand_stmt): Remove.
+       (LANG_HOOKS_RTL_EXPAND_STMT): Remove.
+
+2004-04-11  Bud Davis  <bdavis9659@comcast.net>
+
+       PR fortran/14872
+       * trans-io.c (build_dt): Change REC to value.
+
+2004-04-11  Feng Wang  <fengwang@nudt.edu.cn>
+
+       PR 14394
+       * trans-const.c (gfc_conv_mpf_to_tree): Loosen the maximum digits of
+       the real value when converting mpf to string.
+
+2004-04-11  Feng Wang  <fengwang@nudt.edu.cn>
+
+       PR 14395
+       * trans-intrinsic.c (gfc_conv_intrinsic_cmplx): Fix the imag part of
+       the result.
+
+2004-04-11  Feng Wang  <fengwang@nudt.edu.cn>
+
+       PR fortran/14377
+       * simplify.c (simplify_min_max): Convert the type of the result.
+
+2004-04-11  Paul Brook  <paul@codesourcery.com>
+
+       * gfortran.texi: Use full target triplet.
+
+2004-04-11  Paul Brook  <paul@codesourcery.com>
+
+       * Make-lang.in (GFORTRAN_TEXI): Set it.
+       (fortran/dfortran.dvi): Use it.  Add fortran to include paths.
+       (fortran/gfortran.info): Ditto.
+       * gfortran.texi: Major update.
+       * invoke.texi: New file.
+
+2004-04-10  Paul Brook  <paul@codesourcery.com>
+
+       * trans-array.c (gfc_trans_allocate_temp_array,
+       gfc_conv_tmp_array_ref): Don't use GFC_DECL_STRING.
+       * trans-decl.c (gfc_build_dummy_array_decl,
+       gfc_get_symbol_decl, gfc_build_function_decl,
+       gfc_create_module_variable): Ditto.
+       * trans-expr.c (gfc_conv_variable): Ditto.
+       * trans-intrinsic.c (gfc_conv_intrinsic_len): Ditto.
+       * trans.h (GFC_DECL_STRING): Remove.
+       (GFC_DECL_PACKED_ARRAY, GFC_DECL_PARTIAL_PACKED_ARRAY,
+       GFC_DECL_ASSIGN): Renumber flags.
+
+2004-04-05  Paul Brook  <paul@codesourcery.com>
+
+       PR 13252
+       PR 14081
+       * f95-lang.c (gfc_init_builtin_functions): Add stack_alloc, stack_save
+       and stack_restore.
+       * gfortran.h (struct gfc_charlen): Add backend_decl.
+       * trans-array.c (gfc_trans_allocate_temp_array,
+       gfc_conv_temp_array_ref, gfc_conv_resolve_dependencies,
+       (gfc_conv_loop_setup, gfc_array_allocate, gfc_conv_array_init_size):
+       Remove old, broken string handling.
+       (gfc_trans_auto_array_allocation, gfc_trans_g77_array,
+       gfc_trans_dummy_array_bias, gfc_conv_expr_descriptor,
+       gfc_trans_deferred_array): Handle character arrays.
+       * trans-const.c (gfc_conv_const_charlen): New function.
+       * trans-const.h (gfc_conv_const_charlen): Add prototype.
+       * trans-decl.c (gfc_finish_var_decl): Don't mark automatic variables
+       as static.
+       (gfc_build_dummy_array_decl): Handle arrays with unknown element size.
+       (gfc_create_string_length): New function.
+       (gfc_get_symbol_decl): Create lengths for character variables.
+       (gfc_get_fake_result_decl): Ditto.
+       (gfc_build_function_decl): Only set length for assumed length
+       character arguments.
+       (gfc_trans_dummy_character): New function.
+       (gfc_trans_auto_character_variable): Rewrite.
+       (gfc_trans_deferred_vars): Handle more types of character variable.
+       (gfc_create_module_variable): String lengths have moved.
+       (gfc_generate_function_code): Initialize deferred var chain earlier.
+       * trans-expr.c (gfc_conv_init_string_length): Rename ...
+       (gfc_trans_init_string_length):  ... to this.
+       (gfc_conv_component_ref, gfc_conv_variable, gfc_conv_concat_op,
+       gfc_conv_function_call): Update to new format for character variables.
+       (gfc_conv_string_length): Remove.
+       (gfc_conv_string_parameter): Update assertion.
+       * trans-intrinsic.c (gfc_conv_intrinsic_len): Use new location.
+       * trans-io.c (set_string): Use new macro names.
+       * trans-stmt.c (gfc_trans_label_assign. gfc_trans_goto): Ditto.
+       * trans-types.c (gfc_get_character_type): Use existing length expr.
+       (gfc_is_nodesc_array): Make public.
+       (gfc_get_dtype_cst): Rename ...
+       (gfc_get_dtype): ... to this.  Handle unknown size arrays.
+       (gfc_get_nodesc_array_type): Use new name.
+       (gfc_sym_type): New character variable code.
+       (gfc_get_derived_type): Ditto.
+       (gfc_get_function_type): Evaluate character variable lengths.
+       * trans-types.h (gfc_strlen_kind): Define.
+       (gfc_is_nodesc_array): Add prototype.
+       * trans.h: Update prototypes.
+       (struct lang_type): Update comments.
+       (GFC_DECL_STRING_LEN): New name for GFC_DECL_STRING_LENGTH.
+       (GFC_KNOWN_SIZE_STRING_TYPE): Remove.
+
+2004-04-04  Paul Brook  <paul@codesourcery.com>
+
+       * gfortran.h (struct gfc_option_t): Remove flag_g77_calls.
+       * options.c (gfc_init.options, gfc_handle_option): Ditto.
+       * trans-expr.c (gfc_conv_function_call): Ditto.
+       * trans-types.c (gfc_is_nodesc_array): Ditto
+       * lang.opt (fg77-calls): Remove.
+
+2004-04-04  Paul Brook  <paul@codesourcery.com>
+
+       * trans-array.c (OFFSET_FIELD): Rename from BASE_FIELD.
+       (gfc_conv_descriptor_base): Rename ...
+       (gfc_conv_descriptor_offset): ... to this.
+       (gfc_trans_allocate_array_storage): Set offset to zero.
+       (gfc_conv_array_base): Rename ...
+       (gfc_conv_array_offset): ... to this.
+       (gfc_conv_array_index_ref): Add offset parameter.
+       (gfc_conv_array_ref): Include offset.
+       (gfc_trans_preloop_setup): Use existing offset.
+       (gfc_trans_allocate_temp_array,  gfc_array_allocate,
+       gfc_trans_auto_array_allocation, gfc_trans_g77_array,
+       gfc_trans_dummy_array_bias, gfc_conv_expr_descriptor,
+       gfc_conf_ss_descriptor): Set offset.
+       * trans-array.h: Rename prototypes.
+       * trans-const.h (gfc_index_zero_node): Define.
+       * trans-decl.c (gfc_build_qualified_array): Change base to offset.
+       * trans-types.c (gfc_get_array_type_bounds): Ditto.
+       (gfc_get_nodesc_array_type): Calculate offset before upper bound.
+
+2004-03-25  Diego Novillo  <dnovillo@redhat.com>
+
+       * convert.c (convert): Don't handle WITH_RECORD_EXPR.
+
+2004-03-24  Bud Davis  <bdavis9659@comcast.net>
+
+       PR 14055
+       * arith.c (gfc_convert_integer,gfc_convert_real):  Removed leading '+'
+       before conversion by gmp library call.
+
+2004-03-24  Bud Davis  <bdavis9659@comcast.net>
+
+       PR 12921
+       * trans-io.c (gfc_trans_open): Change RECL= to a value parameter.
+
+2004-02-24  Richard Henderson  <rth@redhat.com>
+
+       * trans-array.c (gfc_trans_dummy_array_bias): Fix typo.
+
+2004-02-19  Loren J. Rittle  <ljrittle@acm.org>
+
+       * Make-lang.in ($(srcdir)/fortran/gfortran.info): Move...
+       (fortran/gfortran.info): ... to here.
+       (f95.srcinfo): New.
+
+2004-02-16  Richard Henderson  <rth@redhat.com>
+
+       * Make-lang.in (f95-lang.o, trans-decl.o): Depend on cgraph.h.
+       * f95-lang.c (LANG_HOOKS_EXPAND_DECL): Remove.
+       (LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): New.
+       (gfc_expand_function): Rename from expand_function_body, make static,
+       don't do anything except invoke tree_rest_of_compilation.
+       (gfc_be_parse_file): Invoke cgraph.
+       (gfc_expand_decl): Remove.
+       (gfc_init_builtin_functions): Add __builtin_init_trampoline and
+       __builtin_adjust_trampoline.
+       * trans-decl.c (gfc_get_extern_function_decl): Don't set DECL_CONTEXT.
+       (gfc_finalize): New.
+       (gfc_generate_function_code): Use it.  Lower nested functions.
+       * trans-expr.c (gfc_conv_function_call): Add static chain operand
+       to call_expr.
+       * trans.c (gfc_build_function_call): Likewise.
+       * trans.h (expand_function_body): Remove.
+
+2004-02-15  Victor Leikehman  <lei@il.ibm.com>
+
+       PR gfortran/13433
+       * trans-decl.c (gfc_build_function_decl) For functions
+       returning CHARACTER pass an extra length argument,
+       following g77 calling conventions.
+       * trans-types.c (gfc_get_function_type) Ditto.
+       * trans-expr.c (gfc_conv_function_call) Ditto.
+
+2004-02-14  Paul Brook  <paul@codesourcery.com>
+
+       * f95-lang.c (gfc_init_builtin_functions): Build chain properly.
+
+2004-02-12  Paul Brook  <paul@nowt.org>
+
+       * BUGS: Remove.
+
+2004-02-08  Steve Kargl  <sgk@troutmask.apl.washington.edu>
+
+       * gfortran.texi: Fix typos.
+
+2004-02-07  Bud Davis  <bdavis9659@comcast.net>
+
+       PR gfortran/13909
+       * intrinsic.c (add_conversions) Use logical conversion instead
+       of real.
+       * trans-types.c (gfc_get_logical_type) implemented logical*1
+       and logical*2.
+
+2004-01-17  Paul Brook  <paul@codesourcery.com>
+
+       * lang-specs.h: Remove %<fixed-form.
+
+2004-01-15  Toon Moene  <toon@moene.indiv.nluug.nl>
+
+       * lang-specs.h: Enable preprocessing of source files
+       ending in .F, .fpp, .FPP, .F90 and .F95.
+
+2004-01-13  Toon Moene  <toon@moene.indiv.nluug.nl>
+
+       PR fortran/12912
+       * lang-specs.h: Enable compilation of files ending
+       in .f, .for and .FOR.
+
+2004-01-11  Paul Brook  <paul@codesourcery.com>
+
+       * trans-stmt.c (gfc_trans_if_1): New function.
+       (gfc_trans_if): Use it.
+
+2004-01-11  Erik Schnetter  <schnetter@uni-tuebingen.de>
+
+       * gfortran.h (GFC_MAX_SYMBOL_LEN): Increase.
+       (gfc_option_t): Add max_identifier_length.
+       * lang.opt: Add fmax-identifier-length.
+       * match.c (parse_name): Use limit.
+       * options.c (gfc_init_options): Set max_identifier_length.
+       (gfc_handle_option): Ditto.
+
+2004-01-11  Feng Wang  <fengwang@nudt.edu.cn>
+
+       * intrinsic.c (add_functions): Add resolve function to dcmplx.
+       * intrinsic.h (gfc_resolve_dcmplx): Add prototype.
+       * iresolve.c (gfc_resolve_dcmplx): New function.
+
+2004-01-10  Paul Brook  <paul@codesourcery.com>
+
+       * trans-decl.c (gfc_get_symbol_decl): Don't set subroutine attr.
+       * trans-types.c (gfc_sym_type): Handle external dummy procedures.
+       (gfc_return_by_reference): Correct condition.
+       (gfc_get_function_type): Ditto.
+
+2004-01-10  Paul Brook  <paul@codesourcery.com>
+
+       * trans-intrinsic.c (gfc_conv_intrinsic_minmax): Convert mismatched
+       types.
+
+2004-01-10  Huang Chun  <chunhuang73@hotmail.com>
+
+       * iresolve.c: Use correct kind.
+
+2004-01-10  Huang Chun  <chunhuang73@hotmail.com>
+
+       PR fortran/13467
+       * trans-decl.c (gfc_create_module_variable):  Output array valued
+       parameters.
+
+2004-01-10  Paul Brook  <paul@codesourcery.com>
+
+       * resolve.c (resolve_branch): Get error message right way round.
+
+2004-01-10  Canqun Yang  <canqun@nudt.edu.cn>
+
+       * trans-array (gfc_conv_loop_setup): Adjust comment to track
+       reality.
+       (gfc_array_allocate): Don't count size of element twice.
+
+2004-01-04  Paul Brook  <paul@codesourcery.com>
+
+       * lang.opt (i8, r8, std=*): Remove RejectNegative.
+
+2004-01-04  Paul Brook  <paul@codesourcery.com>
+
+       * error.c (gfc_notify_std): New function.
+       * gfortran.h (gfc_notify_std): Declare.
+       (GFC_STD_*): Define.
+       (gfc_option_t): Add warn_std and allow_std.
+       * intrinsic.c (gfc_init_expr_extensions): Fix logic.
+       (gfc_intrinsic_func_interface): Use gfc_notify_std.
+       * check.c (check_rest): Use gfc_notify_std.
+       * match.c (gfc_match_pause): Ditto.
+       (gfc_match_assign): Ditto.
+       (gfc_match_goto): Ditto.
+       * resolve.c (resolve_branch): Ditto.
+       * lang.opt: Add std=<foo> and w.
+       * options.c (gfc_init_options): Set allow_std and warn_std.
+       (gfc_handle_option): Handle OPT_std_* and OPT_w.
+
+2004-01-01  Paul Brook  <paul@codesourcery.com>
+
+       * array.c (gfc_append_constructor): Take constructor, not expression.
+       * data.c (struct gfc_expr_stack): Remove.
+       (expr_stack): Remove.
+       (find_con_by_offset): Rename from find_expr_in_con.
+       (find_con_by_component): Rename from find_component_in_con.
+       (gfc_get_expr_stack): Remove.
+       (gfc_assign_data_value): Rewrite.
+       (gfc_expr_push): Remove.
+       (gfc_expr_pop): Remove.
+       (gfc_advance_section): Rename from
+       gfc_modify_index_and_calculate_offset.  Handle unbounded sections.
+       (gfc_get_section_index): Handle unbounded sections.
+       * gfortran.h: Update prototypes.
+       * resolve.c (check_data_variable): Array section maight not be the
+       last ref.
+
+2004-01-01  Paul Brook  <paul@codesourcery.com>
+
+       PR fortran/13432
+       * resolve.c (resolve_symbol): Allow assumed length function results.
+
+2004-01-01  Steve Kargl  <sgk@troutmask.apl.washington.edu>
+
+       * match.c (gfc_match_pause): Fix spelling.
+
+2004-01-01  Steven Bosscher  <stevenb@suse.de>
+
+       PR fortran/13251
+       * trans-expr.c (gfc_conv_variable): Take the type kind of a substring
+       reference from the expression.
diff --git a/gcc/fortran/ChangeLog-2005 b/gcc/fortran/ChangeLog-2005
new file mode 100644 (file)
index 0000000..2a0f26d
--- /dev/null
@@ -0,0 +1,3723 @@
+2005-12-30  Erik Edelmann  <eedelman@gcc.gnu.org>
+
+       PR fortran/22607
+       * trans-decl.c(gfc_get_extern_function_decl): Don't set
+       DECL_IS_PURE (fndecl) = 1 for return-by-reference
+       functions.
+
+       fortran/PR 25396
+       * interface.c (gfc_extend_expr): Initialize
+       e->value.function.name to NULL.
+
+2005-12-29  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/25532
+       * trans-types.c (copy_dt_decls_ifequal): Copy declarations for
+       components of derived type components by recursing into
+       gfc_get_derived_type.
+
+2005-12-28  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR fortran/25587
+       * trans-io.c (gfc_build_st_parameter): Correct off by one error.
+
+2005-12-28  Rafael Ávila de Espíndola  <rafael.espindola@gmail.com>
+
+       * Make-lang.in: Remove distdir from comment.
+
+2005-12-24  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/25029
+       PR fortran/21256
+       * resolve.c (check_assumed_size_reference, resolve_assumed_size_actual):
+       Remove because of regressions caused by patch.
+       (resolve_function, resolve_call, resolve_variable): Remove assumed size
+       checks because of regressionscaused by patch.
+
+2005-12-23  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/25029
+       PR fortran/21256
+       *resolve.c(resolve_function): Remove assumed size checking for SIZE
+       and UBOUND and rely on their built-in checking.
+
+2005-12-22  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/18990
+       * gfortran.h (gfc_charlen): Add resolved field.
+       * expr.c (gfc_specification_expr): Accept NULL argument.
+       * resolve.c (gfc_resolve_charlen, gfc_resolve_derived): New.
+       (gfc_resolve_symbol): Resolve derived type definitions.  Use
+       resolve_charlen to resolve character lengths.
+
+2005-12-22  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/20889
+       *resolve.c(resolve_structure_cons): Do not attempt to convert
+       the type of mismatched pointer type components, except when
+       the constructor component is BT_UNKNOWN; emit error instead.
+
+       PR fortran/25029
+       PR fortran/21256
+       *resolve.c(check_assumed_size_reference): New function to check for upper
+       bound in assumed size array references.
+       (resolve_assumed_size_actual): New function to do a very restricted scan
+       of actual argument expressions of those procedures for which incomplete
+       assumed size array references are not allowed.
+       (resolve_function, resolve_call): Switch off assumed size checking of
+       actual arguments, except for elemental procedures and array valued
+       intrinsics; excepting LBOUND.
+       (resolve_variable): Call check_assumed_size_reference.
+
+       PR fortran/19362
+       PR fortran/20244
+       PR fortran/20864
+       PR fortran/25391
+       *interface.c(gfc_compare_types): Broken into two.
+       (gfc_compare_derived_types): Second half of gfc_compare_types with
+       corrections for a missing check that module name is non-NULL and
+       a check for private components.
+       *symbol.c(gfc_free_dt_list): New function.
+       (gfc_free_namespace): Call gfc_free_dt_list.
+       *resolve.c(resolve_symbol): Build the list of derived types in the
+       symbols namespace.
+       *gfortran.h: Define the structure type gfc_dt_list.  Add a new field,
+       derived_types to gfc_namespace.  Provide a prototye for the new
+       function gfc_compare_derived_types.
+       *trans_types.c(gfc_get_derived_type): Test for the derived type being
+       available in the host namespace. In this case, the host backend
+       declaration is used for the structure and its components.  If an
+       unbuilt, equal structure that is not use associated is found in the
+       host namespace, build it there and then.  On exit,traverse the
+       namespace of the derived type to see if there are equal but unbuilt.
+       If so, copy the structure and its component declarations.
+       (copy_dt_decls_ifequal): New functions to copy declarations to other
+       equal structure types.
+
+       PR fortran/20862
+       * io.c (gfc_match_format): Make the appearance of a format statement
+       in a module specification block an error.
+
+       PR fortran/23152
+       * match.c (gfc_match_namelist): Set assumed shape arrays in
+       namelists as std=GFC_STD_GNU and assumed size arrays as an
+       unconditional error.
+
+       PR fortran/25069
+       * match.c (gfc_match_namelist): Set the respecification of a USE
+       associated namelist group as std=GFC_STD_GNU.  Permit the concatenation
+       on no error.
+
+       PR fortran/25053
+       PR fortran/25063
+       PR fortran/25064
+       PR fortran/25066
+       PR fortran/25067
+       PR fortran/25068
+       PR fortran/25307
+       * io.c (resolve_tag): Change std on IOSTAT != default integer to
+       GFC_STD_GNU and change message accordingly.  Add same error for
+       SIZE.
+       (match_dt_element, gfortran.h): Add field err_where to gfc_dt and
+       set it when tags are being matched.
+       (gfc_resolve_dt): Remove tests that can be done before resolution
+       and add some of the new ones here.
+       (check_io_constraints): New function that checks for most of the
+       data transfer constraints. Some of these were previously done in
+       match_io, from where this function is called, and some were done
+       in gfc_resolve_dt.
+       (match_io): Remove most of the tests of constraints and add the
+       call to check_io_constraints.
+
+2005-12-21  Erik Edelmann  <eedelman@gcc.gnu.org>
+
+       PR fortran/25423
+       * parse.c (parse_where_block): break instead of "fall
+       through" after parsing nested WHERE construct.
+
+2005-12-18  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/25018
+       *expr.c(check_inquiry): Return FAILURE if there is no symtree to
+       provide a name. Error/warning for assumed character length argument
+       to LEN for an initialization expression, using GFC_GNU_STD. Add an
+       argument to flag that the expression is not restricted.
+       (check_init_expr): Improve the message for a failing variable.
+       (gfc_match_init_expr): Call check_enquiry again to make sure that
+       unsimplified expressions are not causing unnecessary errors.
+
+2005-12-17  Steven G. Kargl  <kargls@comcast.net>
+           Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/25458
+       * simplify.c (gfc_simplify_ibset, gfc_simplify_not): Add call to
+       twos_complement.
+
+2005-12-17  Steven G. Kargl  <kargls@comcast.net>
+
+       * decl.c (gfc_match_old_kind_spec,match_type_spec): Use gfc_std_notify
+       to report nonstandard intrinsic type declarations.
+
+2005-12-16  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       PR fortran/24268
+       * io.c (format_lex): Allow whitespace within text of format specifier.
+
+2005-12-16  Steven G. Kargl <kargls@comcast.net>
+       PR fortran/25106
+       PR fortran/25055
+       * match.c (gfc_match_small_literal_int): Add cnt argument;
+       (gfc_match_st_label,gfc_match_stopcode): Account for cnt argument.
+       * match.h (gfc_match_small_literal_int): Update prototype.
+       * decl.c (match_char_length,gfc_match_old_kind_spec): Account for cnt.
+       * parse.c (next_free): Ditto.
+       * primary.c (match_kind_param): Ditto.
+
+2005-12-16  Richard Guenther  <rguenther@suse.de>
+
+       * trans.h (tree): Remove declaration of gfc_build_function_call.
+       * trans.c (gfc_build_function_call): Remove.
+       (gfc_build_array_ref): Use build_function_call_expr.
+       (gfc_trans_runtime_check): Likewise.
+       * trans-array.c (gfc_trans_allocate_array_storage): Likewise.
+       (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.
+       * trans-expr.c (gfc_conv_power_op): Likewise.
+       (gfc_conv_string_tmp): Likewise.
+       (gfc_conv_concat_op): Likewise.
+       (gfc_conv_expr_op): Likewise.
+       (gfc_trans_string_copy): Likewise.
+       * trans-decl.c (build_entry_thunks): Likewise.
+       (gfc_generate_function_code): Likewise.
+       (gfc_generate_constructors): Likewise.
+       * trans-io.c (gfc_trans_open): Likewise.
+       (gfc_trans_close): Likewise.
+       (build_filepos): Likewise.
+       (gfc_trans_inquire): Likewise.
+       (transfer_namelist_element): Likewise.
+       (build_dt): Likewise.
+       (gfc_trans_dt_end): Likewise.
+       (transfer_expr): Likewise.
+       (transfer_array_desc): Likewise.
+       * trans-stmt.c (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): Likewise.
+       (gfc_trans_allocate): Likewise.
+       (gfc_trans_deallocate): Likewise.
+       * trans-intrinsic.c (gfc_conv_intrinsic_aint): Likewise.
+       (gfc_conv_intrinsic_lib_function): Likewise.
+       (gfc_conv_intrinsic_exponent): Likewise.
+       (gfc_conv_intrinsic_abs): Likewise.
+       (gfc_conv_intrinsic_sign): Likewise.
+       (gfc_conv_intrinsic_ctime): Likewise.
+       (gfc_conv_intrinsic_fdate): Likewise.
+       (gfc_conv_intrinsic_ttynam): Likewise.
+       (gfc_conv_intrinsic_ishftc): Likewise.
+       (gfc_conv_intrinsic_len_trim): Likewise.
+       (gfc_conv_intrinsic_index): Likewise.
+       (gfc_conv_intrinsic_size): Likewise.
+       (gfc_conv_intrinsic_strcmp): Likewise.
+       (gfc_conv_intrinsic_adjust): Likewise.
+       (gfc_conv_associated): Likewise.
+       (gfc_conv_intrinsic_scan): Likewise.
+       (gfc_conv_intrinsic_verify): Likewise.
+       (call_builtin_clz): Likewise.
+       (gfc_conv_intrinsic_si_kind): Likewise.
+       (gfc_conv_intrinsic_sr_kind): Likewise.
+       (gfc_conv_intrinsic_trim): Likewise.
+       (gfc_conv_intrinsic_repeat): Likewise.
+       (gfc_conv_intrinsic_iargc): Likewise.
+
+2005-12-16  Richard Guenther  <rguenther@suse.de>
+
+       * trans.h (gfc_build_indirect_ref): Remove declaration.
+       * trans.c (gfc_build_indirect_ref): Remove.
+       * trans-array.c (gfc_trans_array_ctor_element): Use
+       build_fold_indirect_ref instead of gfc_build_indirect_ref.
+       (gfc_trans_array_constructor_value): Likewise.
+       (gfc_conv_array_index_offset): Likewise.
+       (gfc_conv_scalarized_array_ref): Likewise.
+       (gfc_conv_array_ref): Likewise.
+       (gfc_trans_dummy_array_bias): Likewise.
+       (gfc_conv_expr_descriptor): Likewise.
+       (gfc_conv_array_parameter): Likewise.
+       * trans-decl.c (gfc_finish_cray_pointee): Likewise.
+       (gfc_get_symbol_decl): Likewise.
+       * trans-expr.c (gfc_conv_substring): Likewise.
+       (gfc_conv_component_ref): Likewise.
+       (gfc_conv_variable): Likewise.
+       (gfc_add_interface_mapping): Likewise.
+       (gfc_conv_function_call): Likewise.
+       * trans-intrinsic.c (gfc_conv_intrinsic_ichar): Likewise.
+       (gfc_conv_intrinsic_transfer): Likewise.
+       * trans-io.c (nml_get_addr_expr): Likewise.
+       (transfer_namelist_element): Likewise.
+       (transfer_expr): Likewise.
+       * trans-stmt.c (gfc_trans_nested_forall_loop): Likewise.
+       (allocate_temp_for_forall_nest_1): Likewise.
+       (gfc_trans_forall_1): Likewise.
+
+2005-12-16  Richard Guenther  <rguenther@suse.de>
+
+       * trans-array.c (gfc_conv_descriptor_data_addr): Use
+       build_fold_addr_expr where appropriate.
+       (gfc_trans_allocate_array_storage): Likewise.
+       (gfc_trans_array_constructor_value): Likewise.
+       (gfc_conv_array_data): Likewise.
+       (gfc_conv_expr_descriptor): Likewise.
+       (gfc_conv_array_parameter): Likewise.
+       * trans-expr.c (gfc_conv_variable): Likewise.
+       (gfc_conv_function_val): Likewise.
+       (gfc_conv_function_call): Likewise.
+       (gfc_conv_expr_reference): Likewise.
+       * trans-intrinsic.c (gfc_conv_intrinsic_ctime): Likewise.
+       (gfc_conv_intrinsic_fdate): Likewise.
+       (gfc_conv_intrinsic_ttynam): Likewise.
+       (gfc_conv_intrinsic_si_kind): Likewise.
+       (gfc_conv_intrinsic_trim): Likewise.
+       * trans-io.c (set_parameter_ref): Likewise.
+       (gfc_convert_array_to_string): Likewise.
+       (gfc_trans_open): Likewise.
+       (gfc_trans_close): Likewise.
+       (build_filepos): Likewise.
+       (gfc_trans_inquire): Likewise.
+       (nml_get_addr_expr): Likewise.
+       (transfer_namelist_element): Likewise.
+       (build_dt): Likewise.
+       (gfc_trans_dt_end): Likewise.
+       (transfer_array_component): Likewise.
+       (transfer_expr): Likewise.
+       (transfer_array_desc): Likewise.
+       (gfc_trans_transfer): Likewise.
+       * trans-stmt.c (gfc_trans_allocate): Likewise.
+       (gfc_trans_deallocate): Likewise.
+
+2005-12-16  Kazu Hirata  <kazu@codesourcery.com>
+
+       * dependency.c, resolve.c, trans-array.c: Fix comment typos.
+       * gfortran.texi: Fix typos.
+
+2005-12-14  Erik Edelmann  <eedelman@gcc.gnu.org>
+
+       PR fortran/18197
+       * resolve.c (resolve_formal_arglist): Remove code to set
+       the type of a function symbol from it's result symbol.
+
+2005-12-13  Richard Guenther  <rguenther@suse.de>
+
+       * trans-expr.c (gfc_conv_substring): Use fold_build2 and
+       build_int_cst.
+
+2005-12-13  Richard Sandiford  <richard@codesourcery.com>
+
+       * Make-lang.in (fortran/trans-resolve.o): Depend on
+       fortran/dependency.h.
+       * gfortran.h (gfc_expr): Add an "inline_noncopying_intrinsic" flag.
+       * dependency.h (gfc_get_noncopying_intrinsic_argument): Declare.
+       (gfc_check_fncall_dependency): Change prototype.
+       * dependency.c (gfc_get_noncopying_intrinsic_argument): New function.
+       (gfc_check_argument_var_dependency): New function, split from
+       gfc_check_fncall_dependency.
+       (gfc_check_argument_dependency): New function.
+       (gfc_check_fncall_dependency): Replace the expression parameter with
+       separate symbol and argument list parameters.  Generalize the function
+       to handle dependencies for any type of expression, not just variables.
+       Accept a further argument giving the intent of the expression being
+       tested.  Ignore intent(in) arguments if that expression is also
+       intent(in).
+       * resolve.c: Include dependency.h.
+       (find_noncopying_intrinsics): New function.
+       (resolve_function, resolve_call): Call it on success.
+       * trans-array.h (gfc_conv_array_transpose): Declare.
+       (gfc_check_fncall_dependency): Remove prototype.
+       * trans-array.c (gfc_conv_array_transpose): New function.
+       * trans-intrinsic.c (gfc_conv_intrinsic_function): Don't use the
+       libcall handling if the expression is to be evaluated inline.
+       Add a case for handling inline transpose()s.
+       * trans-expr.c (gfc_trans_arrayfunc_assign): Adjust for the new
+       interface provided by gfc_check_fncall_dependency.
+
+2005-12-12  Steven G. Kargl  <kargls@comcast.net>
+
+       PR fortran/25078
+       * match.c (gfc_match_equivalence):  Count number of objects.
+
+2005-12-11  Aldy Hernandez  <aldyh@redhat.com>
+
+        * lang.opt: Add RejectNegative to ffixed-form and ffree-form.
+
+2005-12-10  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       PR fortran/25068
+       * io.c (resolve_tag): Add correct diagnostic for F2003 feature.
+
+2005-12-10  Thomas Koenig  <Thomas.Koenig@online.de>
+
+       PR fortran/23815
+       * io.c (top level):  Add convert to io_tag.
+       (resolve_tag):  convert is GFC_STD_GNU.
+       (match_open_element):  Add convert.
+       (gfc_free_open):  Likewise.
+       (gfc_resolve_open):  Likewise.
+       (gfc_free_inquire):  Likewise.
+       (match_inquire_element):  Likewise.
+       * dump-parse-tree.c (gfc_show_code_node):  Add
+       convet for open and inquire.
+       gfortran.h: Add convert to gfc_open and gfc_inquire.
+       * trans-io.c (gfc_trans_open):  Add convert.
+       (gfc_trans_inquire):  Likewise.
+       * ioparm.def:  Add convert to open and inquire.
+       * gfortran.texi:  Document CONVERT.
+
+2005-12-09  Roger Sayle  <roger@eyesopen.com>
+
+       PR fortran/22527
+       * f95-lang.c (gfc_truthvalue_conversion): Use a zero of the correct
+       integer type when building an inequality.
+
+2005-12-09  Richard Guenther  <rguenther@suse.de>
+
+       * f95-lang.c (build_builtin_fntypes): Use correct
+       return types, as indicated by comments.
+
+2005-12-08  Erik Edelmann  <eedelman@gcc.gnu.org>
+
+       PR fortran/25292
+       * check.c (gfc_check_associated): Allow function results
+       as actual arguments to ASSOCIATED.  Moved a misplaced
+       comment.
+
+2005-12-07  Rafael Ávila de Espíndola  <rafael.espindola@gmail.com>
+
+       * Make-lang.in (fortran.all.build, fortran.install-normal): Remove.
+
+2005-12-07  Rafael Ávila de Espíndola  <rafael.espindola@gmail.com>
+
+       * Make-lang.in: Remove all dependencies on s-gtype, except for
+       gt-fortran-trans.h.
+
+2005-12-03  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       PR fortran/25106
+       * parse.c (next_free): Use new prototype for gfc_match_st_label.
+       Correctly emit hard error if a label is zero.
+       * match.c (gfc_match_st_label): Never allow zero as a valid
+       label.
+       (gfc_match, gfc_match_do, gfc_match_goto): Use new prototype for
+       gfc_match_st_label.
+       * primary.c (): Use new prototype for gfc_match_st_label.
+       * io.c (): Likewise.
+       * match.h: Likewise.
+
+2005-12-02  Richard Guenther  <rguenther@suse.de>
+
+       * trans.h (build1_v): Use build1, not build to build the
+       void typed tree.
+
+2005-12-01  Erik Schnetter  <schnetter@aei.mpg.de>
+
+       * decl.c (gfc_match_old_kind_spec):  Improve handling of old style
+       COMPLEX*N
+
+2005-12-01  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/24789
+       * trans-decl.c (gfc_get_symbol_decl):  Move the expression for
+       unit size of automatic character length, dummy pointer array
+       elements down a few lines from the version that fixed PR15809.
+
+2005-11-30  Bernhard Fischer <rep.nop@aon.at>
+
+       PR fortran/21302
+       * lang.opt: New options -ffree-line-length- and -ffree-line-length-none.
+       * gfortran.h: Add free_line_length and add description of
+       free_line_length and fixed_line_length.
+       * options.c (gfc_init_options, gfc_handle_option): Initialize
+       and set free_line_length and fixed_line_length.
+       * scanner.c (load_line): Set free_line_length to 132 and
+       fixed_line_length to 72 or user requested values.
+       * scanner.c: Typo in comment.
+       * invoke.texi: Document -ffree-line-length- and
+       -ffree-line-length-none
+
+2005-11-30  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/15809
+       * trans-decl.c (gfc_get_symbol_decl):  In the case of automatic
+       character length, dummy pointer arrays, build an expression for
+       unit size of the array elements, to be picked up and used in the
+       descriptor dtype.
+       * trans-io.c (gfc_trans_transfer):  Modify the detection of
+       components of derived type arrays to use the gfc_expr references
+       instead of the array descriptor dtype.  This allows the latter
+       to contain expressions.
+
+2005-11-30  Erik Edelmann  <erik.edelmann@iki.fi>
+
+       PR fortran/15809
+       * trans-array.c (gfc_trans_deferred_array):  Allow PARM_DECLs past
+       in addition to VAR_DECLs.
+
+2005-11-29  Jakub Jelinek  <jakub@redhat.com>
+
+       * io.c (gfc_resolve_open): RESOLVE_TAG access field as well.
+
+2005-11-27 Bernhard Fischer <rep.nop@aon.at>
+
+       * gfortran.h: remove superfluous whitespace and use GNU
+       comment-style for the documentation of backend_decl.
+
+2005-11-27  Steven G. Kargl  <kargls@comcast.net>
+
+       PR fortran/24917
+       * primary.c (match_boz_constant):  Implement postfix BOZ constants;
+       (match_string_constant): Peek for b, o, z, and x
+
+2005-11-27  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       PR fortran/23912
+       * iresolve.c (gfc_resolve_dim, gfc_resolve_mod,
+       gfc_resolve_modulo): When arguments have different kinds, fold
+       the lower one to the largest kind.
+       * check.c (gfc_check_a_p): Arguments of different kinds is not
+       a hard error, but an extension.
+       * simplify.c (gfc_simplify_dim, gfc_simplify_mod,
+       gfc_simplify_modulo): When arguments have different kinds, fold
+       the lower one to the largest kind.
+
+2005-11-21  Jakub Jelinek  <jakub@redhat.com>
+
+       PR fortran/14943
+       PR fortran/21647
+       * Make-lang.in (fortran/trans-io.o): Depend on fortran/ioparm.def.
+       * dump-parse-tree.c (gfc_show_code_node): Dump c->block for
+       EXEC_{READ,WRITE,IOLENGTH} nodes.
+       * io.c (terminate_io, match_io, gfc_match_inquire): Put data
+       transfer commands into EXEC_{READ,WRITE,IOLENGTH}'s code->block.
+       * resolve.c (resolve_blocks): Handle EXEC_{READ,WRITE,IOLENGTH}.
+       * trans-io.c (ioparm_unit, ioparm_err, ioparm_end, ioparm_eor,
+       ioparm_list_format, ioparm_library_return, ioparm_iostat,
+       ioparm_exist, ioparm_opened, ioparm_number, ioparm_named,
+       ioparm_rec, ioparm_nextrec, ioparm_size, ioparm_recl_in,
+       ioparm_recl_out, ioparm_iolength, ioparm_file, ioparm_file_len,
+       ioparm_status, ioparm_status_len, ioparm_access, ioparm_access_len,
+       ioparm_form, ioparm_form_len, ioparm_blank, ioparm_blank_len,
+       ioparm_position, ioparm_position_len, ioparm_action,
+       ioparm_action_len, ioparm_delim, ioparm_delim_len, ioparm_pad,
+       ioparm_pad_len, ioparm_format, ioparm_format_len, ioparm_advance,
+       ioparm_advance_len, ioparm_name, ioparm_name_len,
+       ioparm_internal_unit, ioparm_internal_unit_len,
+       ioparm_internal_unit_desc, ioparm_sequential, ioparm_sequential_len,
+       ioparm_direct, ioparm_direct_len, ioparm_formatted,
+       ioparm_formatted_len, ioparm_unformatted, ioparm_unformatted_len,
+       ioparm_read, ioparm_read_len, ioparm_write, ioparm_write_len,
+       ioparm_readwrite, ioparm_readwrite_len, ioparm_namelist_name,
+       ioparm_namelist_name_len, ioparm_namelist_read_mode, ioparm_iomsg,
+       ioparm_iomsg_len, ioparm_var): Remove.
+       (enum ioparam_type, enum iofield_type, enum iofield,
+       enum iocall): New enums.
+       (gfc_st_parameter_field, gfc_st_parameter): New typedefs.
+       (st_parameter, st_parameter_field, iocall): New variables.
+       (ADD_FIELD, ADD_STRING): Remove.
+       (dt_parm, dt_post_end_block): New variables.
+       (gfc_build_st_parameter): New function.
+       (gfc_build_io_library_fndecls): Use it.  Initialize iocall
+       array rather than ioparm_*, add extra first arguments to
+       the function types.
+       (set_parameter_const): New function.
+       (set_parameter_value): Add type argument, return a bitmask.
+       Changed to set a field in automatic structure variable rather
+       than set a field in a global _gfortran_ioparm variable.
+       (set_parameter_ref): Likewise.  If requested var has different
+       size than what field should point to, call with a temporary and
+       then copy into the user variable.  Add postblock argument.
+       (set_string): Remove var_len argument, add type argument, return
+       a bitmask.  Changed to set fields in automatic structure variable
+       rather than set a field in a global _gfortran_ioparm variable.
+       (set_internal_unit): Remove iunit, iunit_len, iunit_desc arguments,
+       add var argument.  Return a bitmask.  Changed to set fields in
+       automatic structure variable rather than set a field in a global
+       _gfortran_ioparm variable.
+       (set_flag): Removed.
+       (io_result): Add var argument.  Changed to read common.flags field
+       from automatic structure variable and bitwise AND it with 3.
+       (set_error_locus): Add var argument.  Changed to set fields in
+       automatic structure variable rather than set a field in a global
+       _gfortran_{filename,line} variables.
+       (gfc_trans_open): Use gfc_start_block rather than gfc_init_block.
+       Create a temporary st_parameter_* structure.  Adjust callers of
+       all above mentioned functions.  Pass address of the temporary
+       variable as first argument to the generated function call.
+       Use iocall array rather than ioparm_* separate variables.
+       (gfc_trans_close, build_filepos, gfc_trans_inquire): Likewise.
+       (build_dt): Likewise.  Change first argument to tree from tree *.
+       Don't dereference code->ext.dt if last_dt == INQUIRE.  Emit
+       IOLENGTH argument setup here.  Set dt_parm/dt_post_end_block
+       variables and gfc_trans_code the nested data transfer commands
+       in code->block.
+       (gfc_trans_iolength): Just set last_dt and call build_dt immediately.
+       (transfer_namelist_element): Pass address of dt_parm variable
+       to generated functions.  Use iocall array rather than ioparm_*
+       separate variables.
+       (gfc_trans_backspace, gfc_trans_endfile, gfc_trans_rewind,
+       gfc_trans_flush, gfc_trans_read, gfc_trans_write): Use iocall array
+       rather than ioparm_* separate variables.
+       (gfc_trans_dt_end): Likewise.  Pass address of dt_parm variable
+       as first argument to generated function.  Adjust io_result caller.
+       Prepend dt_post_end_block before io_result code.
+       (transfer_expr): Use iocall array rather than ioparm_* separate
+       variables.  Pass address of dt_parm variables as first argument
+       to generated functions.
+       * ioparm.def: New file.
+
+2005-11-21  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/24223
+       * resolve.c (resolve_contained_fntype) Error if an internal
+       function is assumed character length.
+
+       PR fortran/24705
+       * trans-decl.c (gfc_create_module_variable) Skip ICE in
+       when backend decl has been built and the symbol is marked
+       as being in an equivalence statement.
+
+2005-11-20  Toon Moene  <toon@moene.indiv.nluug.nl>
+
+       * invoke.texi: Remove superfluous @item.
+
+2005-11-19  Janne Blomqvist  <jb@gcc.gnu.org>
+
+       PR fortran/24862
+       * trans-io.c (gfc_trans_transfer): Handle arrays of derived type.
+
+2005-11-17  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       PR fortran/20811
+       * scanner.c (gfc_open_included_file): Add an extra include_cwd
+       argument. Only include files in the current working directory if
+       its value is true.
+       * gfortran.h: Change prototype for gfc_open_included_file.
+       (load_file): Don't search for include files in the current working
+       directory.
+       * options.c (gfc_post_options): Add the directory of the source file
+       to the list of paths for included files.
+       * module.c (gfc_use_module): Look for module files in the current
+       directory.
+
+2005-11-16  Alan Modra  <amodra@bigpond.net.au>
+
+       PR fortran/24096
+       * trans-types.c (gfc_init_kinds): Use one less for max_exponent
+       of IBM extended double format.
+
+2005-11-13  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       * intrinsic.c (add_functions): Add COMPLEX, FTELL, FGETC, FGET,
+       FPUTC, FPUT, AND, XOR and OR intrinsic functions.
+       (add_subroutines): Add FGETC, FGET, FPUTC, FPUT and FTELL intrinsic
+       subroutines.
+       * gfortran.h: Add GFC_ISYM_AND, GFC_ISYM_COMPLEX, GFC_ISYM_FGET,
+       GFC_ISYM_FGETC, GFC_ISYM_FPUT, GFC_ISYM_FPUTC, GFC_ISYM_FTELL,
+       GFC_ISYM_OR, GFC_ISYM_XOR.
+       * iresolve.c (gfc_resolve_and, gfc_resolve_complex,
+       gfc_resolve_or, gfc_resolve_fgetc, gfc_resolve_fget,
+       gfc_resolve_fputc, gfc_resolve_fput, gfc_resolve_ftell,
+       gfc_resolve_xor, gfc_resolve_fgetc_sub, gfc_resolve_fget_sub,
+       gfc_resolve_fputc_sub, gfc_resolve_fput_sub, gfc_resolve_ftell_sub):
+       New functions.
+       * check.c (gfc_check_complex, gfc_check_fgetputc_sub,
+       gfc_check_fgetputc, gfc_check_fgetput_sub, gfc_check_fgetput,
+       gfc_check_ftell, gfc_check_ftell_sub, gfc_check_and): New functions.
+       * simplify.c (gfc_simplify_and, gfc_simplify_complex, gfc_simplify_or,
+       gfc_simplify_xor): New functions.
+       * trans-intrinsic.c (gfc_conv_intrinsic_function): Add cases for
+       GFC_ISYM_AND, GFC_ISYM_COMPLEX, GFC_ISYM_FGET, GFC_ISYM_FGETC,
+       GFC_ISYM_FPUT, GFC_ISYM_FPUTC, GFC_ISYM_FTELL, GFC_ISYM_OR and
+       GFC_ISYM_XOR.
+       * intrinsic.h: Add prototypes for all functions added to iresolve.c,
+       simplify.c and check.c.
+
+2005-11-10  Paul Thomas  <pault@gcc.gnu.org>
+           Steven G. Kargl <kargls@comcast.net>
+
+       PR fortran/15976
+       * resolve.c (resolve_symbol): Disallow automatic arrays in module scope.
+
+2005-11-10  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/24655
+       PR fortran/24755
+       * match.c (recursive_stmt_fcn): Add checks that symtree exists
+       for the expression to weed out inline intrinsic functions and
+       parameters.
+
+       PR fortran/24409
+       * module.c (mio_symtree_ref): Correct the patch of 0923 so that
+       a symbol is not substituted for by a the symbol for the module
+       itself and to prevent the promotion of a formal argument.
+
+2005-11-10  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/24643
+       * primary.c (match_varspec): Check for implicitly typed CHARACTER
+       variables before matching substrings.
+
+2005-11-09  Steven G. Kargl  <kargls@comcast.net>
+
+       * trans-intrinsic.c: Typo in comment.
+
+2005-11-09  Erik Edelmann  <eedelman@gcc.gnu.org>
+
+       PR fortran/22607
+       * trans-decl.c(build_function_decl): Don't set
+       DECL_IS_PURE (fndecl) = 1 for return-by-reference
+       functions.
+
+2005-11-08  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * dump-parse-tree.c: Fix comment typo, add a few blank lines.
+
+2005-11-07  Steven G. Kargl  <kargls@comcast.net>
+
+       * error.c: Use flag_fatal_error.
+       * invoke.texi:  Remove -Werror from list of options.
+
+2005-11-06  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/24534
+       * resolve.c (resolve_symbol): Exclude case of PRIVATE declared
+       within derived type from error associated with PRIVATE type
+       components within derived type.
+
+       PR fortran/20838
+       PR fortran/20840
+       * gfortran.h: Add prototype for gfc_has_vector_index.
+       * io.c (gfc_resolve_dt): Error if internal unit has a vector index.
+       * expr.c (gfc_has_vector_index): New function to check if any of
+       the array references of an expression have vector inidices.
+       (gfc_check_pointer_assign): Error if internal unit has a vector index.
+
+       PR fortran/17737
+       * data.c (gfc_assign_data_value): Remove gcc_assert that caused the ICE
+       and replace by a standard dependent warning/error if overwriting an
+       existing initialization.
+       * decl.c (gfc_data_variable): Remove old error for already initialized
+       variable and the unused error check for common block variables.  Add
+       error for hots associated variable and standard dependent error for
+       common block variables, outside of blockdata.
+       * symbol.c (check_conflict): Add constraints for DATA statement.
+
+2005-11-06  Janne Blomqvist <jb@gcc.gnu.org>
+
+       PR fortran/24174
+       PR fortran/24305
+       * fortran/trans-io.c (gfc_build_io_library_fndecls): Add kind
+       argument to transfer_array.
+       (transfer_array_desc): Add kind argument.
+
+2005-11-06  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       * intrinsic.c (add_functions): Add ctime and fdate intrinsics.
+       (add_subroutines): Likewise.
+       * intrinsic.h: Prototypes for gfc_check_ctime,
+       gfc_check_ctime_sub, gfc_check_fdate_sub, gfc_resolve_ctime,
+       gfc_resolve_fdate, gfc_resolve_ctime_sub, gfc_resolve_fdate_sub.
+       * gfortran.h: Add GFC_ISYM_CTIME and GFC_ISYM_FDATE.
+       * iresolve.c (gfc_resolve_ctime, gfc_resolve_fdate,
+       gfc_resolve_ctime_sub, gfc_resolve_fdate_sub): New functions.
+       * trans-decl.c (gfc_build_intrinsic_function_decls): Add
+       gfor_fndecl_fdate and gfor_fndecl_ctime.
+       * check.c (gfc_check_ctime, gfc_check_ctime_sub,
+       gfc_check_fdate_sub): New functions.
+       * trans-intrinsic.c (gfc_conv_intrinsic_ctime,
+       gfc_conv_intrinsic_fdate): New functions.
+       (gfc_conv_intrinsic_function): Add cases for GFC_ISYM_CTIME
+       and GFC_ISYM_FDATE.
+       * intrinsic.texi: Documentation for the new CTIME and FDATE
+       intrinsics.
+       * trans.h: Declarations for gfor_fndecl_ctime and gfor_fndecl_fdate.
+
+2005-11-05  Kazu Hirata  <kazu@codesourcery.com>
+
+       * decl.c, trans-decl.c: Fix comment typos.
+       * gfortran.texi: Fix a typo.
+
+2005-11-05  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       * intrinsic.c (add_functions): Add function version of TTYNAM.
+       * intrinsic.h: Add prototypes for gfc_check_ttynam and
+       gfc_resolve_ttynam.
+       * gfortran.h: Add case for GFC_ISYM_TTYNAM.
+       * iresolve.c (gfc_resolve_ttynam): New function.
+       * trans-decl.c (gfc_build_intrinsic_function_decls): Add a tree
+       for function call to library ttynam.
+       * check.c (gfc_check_ttynam): New function.
+       * trans-intrinsic.c (gfc_conv_intrinsic_ttynam): New function.
+       (): Call gfc_conv_intrinsic_ttynam.
+       * trans.h: Add prototype for gfor_fndecl_ttynam.
+
+2005-11-04  Steven G. Kargl <kargls@comcast.net>
+
+       PR fortran/24636
+       * match.c (gfc_match_stopcode):  Set stop_code = -1.
+
+2005-11-04  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       PR fortran/18452
+       * lang-specs.h: Pass -lang-fortran to the preprocessor.
+
+2005-11-02  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR fortran/18157
+       * trans-array.c (gfc_conv_resolve_dependencies): Use the correct
+       type for the temporary array.
+       * trans-expr.c (gfc_trans_assignment): Pass lss
+       instead of lss_section
+       to gfc_conv_resolve_dependencies to get the
+       correct type.
+
+2005-11-02  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * decl.c (gfc_match_entry): Function entries don't need an argument
+       list if there's no RESULT clause.
+
+2005-11-01  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/24008
+       * decl.c (gfc_match_entry): Function entries need an argument list.
+
+2005-11-01  Erik Edelmann  <eedelman@gcc.gnu.org>
+
+       PR 24245
+       * trans.c (gfc_generate_code): Move code to create a main
+       program symbol from here ...
+       * parse.c (main_program_symbol): ... to this new
+       function, setting the locus from gfc_current_locus
+       instead of ns->code->loc.
+       (gfc_parse_file):  Call main_program_symbol for main programs.
+
+2005-11-01  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/24404
+       * resolve.c (resolve_symbol): Output symbol names in more error
+       messages, clarify error message.
+
+2005-11-01  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * dump-parse-tree.c (show_symtree): Revert change unintentionally
+       committed in r106246.
+
+2005-11-01  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/21565
+       * symbol.c (check_conflict): An object cannot be in a namelist and in
+       block data.
+
+       PR fortran/18737
+       * resolve.c (resolve_symbol): Set the error flag to
+       gfc_set_default_type, in the case of an external symbol, so that
+       an error message is emitted if IMPLICIT NONE is set.
+
+       PR fortran/14994
+       * gfortran.h (gfc_generic_isym_id): Add GFC_ISYM_SECNDS to enum.
+       * check.c (gfc_check_secnds): New function.
+       * intrinsic.c (add_functions): Add call to secnds.
+       * iresolve.c (gfc_resolve_secnds): New function.
+       * trans-intrinsic (gfc_conv_intrinsic_function): Add call to
+       secnds via case GFC_ISYM_SECNDS.
+       * intrinsic.texi: Add documentation for secnds.
+
+2005-10-31  Andreas Schwab  <schwab@suse.de>
+
+       * Make-lang.in (GFORTRAN_TARGET_INSTALL_NAME): Define.
+       (GFORTRAN_CROSS_NAME): Remove.
+       (fortran.install-common): Correctly install a cross compiler.
+       (fortran.uninstall): Use GFORTRAN_TARGET_INSTALL_NAME instead of
+       GFORTRAN_CROSS_NAME.
+
+2005-10-30  Erik Edelmann  <eedelman@gcc.gnu.org>
+
+       * gfortran.texi: Update contributors.
+
+2005-10-30  Erik Edelmann  <eedelman@gcc.gnu.org>
+
+       PR fortran/18883
+       * trans-decl.c (gfc_finish_var_decl): Add decl to the
+       current function, rather than the parent.  Make
+       assertion accept fake result variables.
+       * trans-expr.c (gfc_conv_variable): If the character
+       length of an ENTRY isn't set, get the length from
+       the master function instead.
+
+2005-10-30  Thomas Koenig  <Thomas.Koenig@online.de>
+
+       * gfortran.texi:  Remove reservations about I/O usability.  Document
+       that array intrinsics mostly work.
+
+2005-10-30  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * gfortran.texi: Move license stuff to back.  Add information
+       on ENUM and ENUMERATOR.
+       * invoke.texi: Document -fshort-enums.
+
+2005-10-30  Gaurav Gautam  <gauravga@noida.hcltech.com>
+           Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * arith.c (gfc_enum_initializer): New function.
+       (gfc_check_integer_range): Made extern.
+       * decl.c (enumerator_history): New typedef.
+       (last_initializer, enum_history, max_enum): New variables.
+       (create_enum_history, gfc_free_enum_history): New functions.
+       (add_init_expr_to_sym): Call create_enum_history if parsing ENUM.
+       (variable_decl): Modified to parse enumerator definition.
+       (match_attr_spec): Add PARAMETER attribute to ENUMERATORs.
+       (gfc_match_data_decl): Issues error, if match_type_spec do not
+       return desired return values.
+       (set_enum_kind, gfc_match_enum, gfc_match_enumerator_def): New
+       functions.
+       (gfc_match_end): Deal with END ENUM.
+       * gfortran.h (gfc_statement): ST_ENUM, ST_ENUMERATOR, ST_END_ENUM
+       added.
+       (symbol_attribute): Bit field for enumerator added.
+       (gfc_options): Add fshort_enums.
+       (gfc_enum_initializer, gfc_check_integer_range): Add prototypes.
+       * options.c: Include target.h
+       (gfc_init_options): Initialize fshort_enums.
+       (gfc_handle_option): Deal with fshort_enums.
+       * parse.c (decode_statement): Match ENUM and ENUMERATOR statement.
+       (gfc_ascii_statement): Deal with the enumerator statements.
+       (parse_enum): New function to parse enum construct.
+       (parse_spec): Added case ST_ENUM.
+       * parse.h (gfc_compile_state): COMP_ENUM added.
+       (gfc_match_enum, gfc_match_enumerator_def, gfc_free_enum_history):
+       Prototype added.
+       * symbol.c (gfc_copy_attr): Copy enumeration attribute.
+       * lang.opt (fshort-enums): Option added.
+
+2005-10-30  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       * check.c (gfc_check_malloc, gfc_check_free): New functions.
+       * gfortran.h (gfc_generic_isym_id): Add GFC_ISYM_MALLOC.
+       * intrinsic.c (add_functions): Add symbols for MALLOC function.
+       (add_subroutines): Add symbol for FREE subroutine.
+       * intrinsic.h: Prototypes for gfc_check_malloc, gfc_check_free,
+       gfc_resolve_malloc and gfc_resolve_free.
+       * intrinsic.texi: Add doc for FREE and MALLOC intrinsics.
+       * iresolve.c (gfc_resolve_malloc, gfc_resolve_free): New
+       functions.
+       * trans-intrinsic.c (gfc_conv_intrinsic_function): Add case for
+       GFC_ISYM_MALLOC.
+
+2005-10-30  Steven Bosscher  <stevenb@suse.de>
+
+       * gfortran.texi: Update contributors.
+
+2005-10-29  Steven Bosscher  <stevenb@suse.de>
+
+       * interface.c: Fix previous checkin (an incomplete patch
+       was commited for me).
+
+2005-10-29  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * intrinsic.texi: Remove empty @cindex line.
+
+2005-10-28  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       * check.c (gfc_check_alarm_sub, gfc_check_signal,
+       gfc_check_signal_sub): New functions.
+       * gfortran.h (gfc_generic_isym_id): Add GFC_ISYM_SIGNAL.
+       * intrinsic.c (add_functions): Add signal intrinsic.
+       (add_subroutines): Add signal and alarm intrinsics.
+       * intrinsic.texi: Document the new intrinsics.
+       * iresolve.c (gfc_resolve_signal, gfc_resolve_alarm_sub,
+       gfc_resolve_signal_sub): New functions.
+       * trans-intrinsic.c (gfc_conv_intrinsic_function): Add case
+       for GFC_ISYM_SIGNAL.
+       * intrinsic.h: Add prototypes for gfc_check_alarm_sub,
+       gfc_check_signal, gfc_check_signal_sub, gfc_resolve_signal,
+       gfc_resolve_alarm_sub, gfc_resolve_signal_sub.
+
+2005-10-28  Steven Bosscher  <stevenb@suse.de>
+
+       PR fortran/24545
+       * interface.c (gfc_match_end_interface): Fix typo in 
+       INTERFACE_USER_OP case.
+
+2005-10-26  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       PR fortran/15586
+       * resolve.c (resolve_symbol): Remove the use of whynot, so that
+       error messages are not built from pieces.
+
+2005-10-26  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/24158
+       * decl.c (gfc_match_data_decl): Correct broken bit of code
+       that prevents undefined derived types from being used as
+       components of another derived type.
+       * resolve.c (resolve_symbol): Add backstop error when derived
+       type variables arrive here with a type that has no components.
+
+2005-10-25  Jakub Jelinek  <jakub@redhat.com>
+
+       * trans.h (gfc_conv_cray_pointee): Remove.
+       * trans-expr.c (gfc_conv_variable): Revert 2005-10-24 change.
+       * trans-array.c (gfc_conv_array_parameter): Likewise.
+       * trans-decl.c (gfc_conv_cray_pointee): Remove.
+       (gfc_finish_cray_pointee): New function.
+       (gfc_finish_var_decl): Use it.  Don't return early for Cray
+       pointees.
+       (gfc_create_module_variable): Revert 2005-10-24 change.
+       * decl.c (cray_pointer_decl): Update comment.
+       * gfortran.texi: Don't mention Cray pointees aren't visible in the
+       debugger.
+
+       * symbol.c (check_conflict): Add conflict between cray_pointee
+       and in_common resp. in_equivalence.
+       * resolve.c (resolve_equivalence): Revert 2005-10-24 change.
+
+       * module.c (ab_attribute): Add AB_CRAY_POINTER and AB_CRAY_POINTEE.
+       (attr_bits): Likewise.
+       (mio_symbol_attribute): Save and restore cray_pointe{r,e} attributes.
+       (mio_symbol): For cray_pointee write/read cp_pointer reference.
+
+2005-10-25  Feng Wang  <fengwang@nudt.edu.cn>
+
+       PR fortran/22290
+       * trans-decl.c (gfc_add_assign_aux_vars): New function. Add two
+       auxiliary variables.
+       (gfc_get_symbol_decl): Use it when a variable, including dummy
+       argument, is assigned a label.
+       (gfc_trans_assign_aux_var): New function. Set initial value of
+       the auxiliary variable explicitly.
+       (gfc_trans_deferred_vars): Use it.
+       * trans-stmt.c (gfc_conv_label_variable): Handle dummy argument.
+
+2005-10-24  Asher Langton  <langton2@llnl.gov>
+
+       PR fortran/17031
+       PR fortran/22282
+       * check.c (gfc_check_loc): New function.
+       * decl.c (variable_decl): New variables cp_as and sym.  Added a
+       check for variables that have already been declared as Cray
+       Pointers, so we can get the necessary attributes without adding
+       a new symbol.
+       (attr_decl1): Added code to catch pointee symbols and "fix"
+       their array specs.
+       (cray_pointer_decl): New method.
+       (gfc_match_pointer): Added Cray pointer parsing code.
+       (gfc_mod_pointee_as): New method.
+       * expr.c (gfc_check_assign): Added a check to catch vector-type
+       assignments to pointees with an unspecified final dimension.
+       * gfortran.h: (GFC_ISYM_LOC): New.
+       (symbol_attribute): Added cray_pointer and cray_pointee bits.
+       (gfc_array_spec): Added cray_pointee and cp_was_assumed bools.
+       (gfc_symbol): Added gfc_symbol *cp_pointer.
+       (gfc_option): Added flag_cray_pointer.
+       (gfc_add_cray_pointee): Declare.
+       (gfc_add_cray_pointer ): Declare.
+       (gfc_mod_pointee_as): Declare.
+       * intrinsic.c (add_functions): Add code for loc() intrinsic.
+       * intrinsic.h (gfc_check_loc): Declare.
+       (gfc_resolve_loc): Declare.
+       * iresolve.c (gfc_resolve_loc): New.
+       * lang.opt: Added fcray-pointer flag.
+       * options.c (gfc_init_options): Initialized.
+       gfc_match_option.flag_cray_pointer.
+       (gfc_handle_option): Deal with -fcray-pointer.
+       * parse.c:(resolve_equivalence): Added code prohibiting Cray
+       pointees in equivalence statements.
+       * resolve.c (resolve_array_ref): Added code to prevent bounds
+       checking for Cray Pointee arrays.
+       (resolve_equivalence): Prohibited pointees in equivalence
+       statements.
+       * symbol.c (check_conflict): Added Cray pointer/pointee
+       attribute checking.
+       (gfc_add_cray_pointer): New.
+       (gfc_add_cray_pointee): New.
+       (gfc_copy_attr): New code for Cray pointers and pointees.
+       * trans-array.c (gfc_trans_auto_array_allocation): Added code to
+       prevent space from being allocated for pointees.
+       (gfc_conv_array_parameter): Added code to catch pointees and
+       correctly set their base address.
+       * trans-decl.c (gfc_finish_var_decl): Added code to prevent
+       pointee declarations from making it to the back end.
+       (gfc_create_module_variable): Same.
+       * trans-expr.c (gfc_conv_variable): Added code to detect and
+       translate pointees.
+       (gfc_conv_cray_pointee): New.
+       * trans-intrinsic.c (gfc_conv_intrinsic_loc): New.
+       (gfc_conv_intrinsic_function): Added entry point for loc
+       translation.
+       * trans.h (gfc_conv_cray_pointee): Declare.
+
+       * gfortran.texi: Added section on Cray pointers, removed Cray
+       pointers from list of proposed extensions.
+       * intrinsic.texi: Added documentation for loc intrinsic.
+       * invoke.texi: Documented -fcray-pointer flag.
+
+2005-10-24  Asher Langton  <langton2@llnl.gov>
+
+       * decl.c (gfc_match_save): Changed duplicate SAVE errors to
+       warnings in the absence of strict standard conformance
+       * symbol.c (gfc_add_save): Same.
+
+2005-10-24  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       PR fortran/15586
+       * arith.c (gfc_arith_error): Change message to include locus.
+       (check_result, eval_intrinsic, gfc_int2int, gfc_real2real,
+       gfc_real2complex, gfc_complex2real, gfc_complex2complex): Use
+       the new gfc_arith_error.
+       (arith_error): Rewrite full error messages instead of building
+       them from pieces.
+       * check.c (must_be): Removed.
+       (type_check, numeric_check, int_or_real_check, real_or_complex_check,
+       kind_check, double_check, logical_array_check, array_check,
+       scalar_check, same_type_check, rank_check, kind_value_check,
+       variable_check, gfc_check_allocated, gfc_check_associated,
+       gfc_check_cmplx, gfc_check_dcmplx, gfc_check_dot_product,
+       gfc_check_index, gfc_check_kind, gfc_check_matmul, gfc_check_null,
+       gfc_check_pack, gfc_check_precision, gfc_check_present,
+       gfc_check_spread): Rewrite full error messages instead of
+       building them from pieces.
+       * decl.c (gfc_match_entry): Rewrite full error messages instead
+       of building them from pieces.
+       * parse.c (gfc_state_name): Remove.
+       * parse.h: Remove prototype for gfc_state_name.
+
+2005-10-23  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR fortran/23635
+       * check.c (gfc_check_ichar_iachar): Move the code around so
+       that the check on the length is after check for
+       references.
+
+2005-10-23  Asher Langton  <langton2@llnl.gov>
+
+       * decl.c (match_type_spec): Add a BYTE type as an extension.
+
+2005-10-23  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/18022
+       * trans-expr.c (gfc_trans_arrayfunc_assign): Return NULL
+       if there is a component ref during an array ref to force
+       use of temporary in assignment.
+
+       PR fortran/24311
+       PR fortran/24384
+       * fortran/iresolve.c (check_charlen_present): New function to
+       add a charlen to the typespec, in the case of constant
+       expressions.
+       (gfc_resolve_merge, gfc_resolve_spread): Call.the above.
+       (gfc_resolve_spread): Make calls to library functions that
+       handle the case of the spread intrinsic with a scalar source.
+
+2005-10-22  Erik Edelmann  <eedelman@gcc.gnu.org>
+
+       PR fortran/24426
+       * decl.c (variable_decl): Don't assign default initializers to
+       pointers.
+
+2005-10-21  Jakub Jelinek  <jakub@redhat.com>
+
+       * interface.c (compare_actual_formal): Issue error when attempting
+       to pass an assumed-size array as assumed-shape array argument.
+
+2005-10-20  Erik Edelmann  <erik.edelmann@iki.fi>
+
+       PR fortran/21625
+       * resolve.c (expr_to_initialize): New function.
+       (resolve_allocate_expr): Take current statement as new
+       argument. Add default initializers to variables of
+       derived types, if they need it.
+       (resolve_code): Provide current statement as argument to
+       resolve_allocate_expr().
+
+2005-10-19  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/24440
+       * resolve.c (resolve_symbol): Correct error in check for
+       assumed size array with default initializer by testing
+       for arrayspec before dereferencing it.
+
+2005-10-17  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/23446
+       * gfortran.h: Primitive for gfc_is_formal_arg.
+       * resolve.c(gfc_is_formal_arg): New function to signal across
+       several function calls that formal argument lists are being
+       processed.
+       (resolve_formal_arglist): Set/reset the flag for gfc_is_formal_arg.
+       *expr.c(check_restricted): Add check, via gfc_is_formal_arg, if
+       symbol is part of an formal argument declaration.
+
+       PR fortran/21459
+       * decl.c (add_init_expr_to_sym): Make a new character
+       length for each variable, when the expression is NULL
+       and link to cl_list.
+
+       PR fortran/20866
+       * match.c (recursive_stmt_fcn): New function that tests if
+       a statement function resurses through itself or other other
+       statement functions.
+       (gfc_match_st_function): Call recursive_stmt_fcn to check
+       if this is recursive and to raise error if so.
+
+       PR fortran/20849
+       PR fortran/20853
+       * resolve.c (resolve_symbol): Errors for assumed size arrays
+       with default initializer and for external objects with an
+       initializer.
+
+       PR fortran/20837
+       * decl.c (match_attr_spec): Prevent PUBLIC from being used
+       outside a module.
+
+2005-10-16  Erik Edelmann  <erik.edelmann@iki.fi>
+
+       PR 22273
+       * expr.c (check_inquiry): Add "len" to inquiry_function.
+
+2005-10-14  Jakub Jelinek  <jakub@redhat.com>
+
+       * primary.c (match_boz_constant): Add missing break after gfc_error.
+
+2005-10-12  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/24092
+       * trans-types.c (gfc_get_derived_type): Insert code to obtain backend
+       declaration for derived types, building if necessary.  Return the
+       derived type if the fields have been built by this process.  Otherwise,
+       continue as before but using the already obtained backend_decls for the
+       derived type components.  Change the gcc_assert to act on the field.
+
+2005-10-12  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/18082
+       * decl.c (variable_decl): Make a new copy of the character
+       length for each variable, when the expression is not a
+       constant.
+
+2005-10-12  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       * gfortran.h: Add bitmasks for different FPE traps. Add fpe
+       member to options_t.
+       * invoke.texi: Document the new -ffpe-trap option.
+       * lang.opt: Add -ffpe-trap option.
+       * options.c (gfc_init_options): Initialize the FPE option.
+       (gfc_handle_fpe_trap_option): New function to parse the argument
+       of the -ffpe-trap option.
+       (gfc_handle_option): Add case for -ffpe-trap.
+       * trans-decl.c: Declare a tree for the set_fpe library function.
+       (gfc_build_builtin_function_decls): Build this tree.
+       (gfc_generate_function_code): Generate a call to set_fpe at
+       the beginning of the main program.
+       * trans.h: New tree for the set_fpe library function.
+
+2005-10-12  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/20847
+       PR fortran/20856
+       * symbol.c (check_conflict): Prevent common variables and
+       function results from having the SAVE attribute,as required
+       by the standard.
+
+2005-10-12  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/24207
+       * resolve.c (resolve_symbol): Exclude use and host associated
+       symbols from the test for private objects in a public namelist.
+
+2005-10-12  Jakub Jelinek  <jakub@redhat.com>
+
+       * trans-common.c (build_field): Fix comment typo.
+       (create_common): Set backend_decl of COMMON or EQUIVALENCEd
+       variables to a VAR_DECL with the COMPONENT_REF in
+       DECL_HAS_VALUE_EXPR rather than COMPONENT_REF directly.
+       * f95-lang.c (gfc_expand_function): Emit debug info for
+       EQUIVALENCEd variables if the equiv union is going to be output.
+
+2005-10-11  Steven G. Kargl  <kargls@comcast.net>
+
+       PR fortran/20786
+       * iresolve.c (gfc_resolve_aint, gfc_resolve_anint): Type conversion
+       of the argument.
+
+2005-10-11  Jakub Jelinek  <jakub@redhat.com>
+
+       * f95-lang.c (gfc_init_decl_processing): Initialize
+       void_list_node.
+
+2005-10-07  Erik Edelmann  <erik.edelmann@iki.fi>
+
+       PR 18568
+       * resolve.c (find_array_spec): Search through the list of
+       components in the symbol of the type instead of the symbol of the
+       variable.
+
+2005-10-05  Richard Guenther  <rguenther@suse.de>
+
+       PR fortran/24176
+       * parse.c (gfc_parse_file): Exit early for empty files.
+
+2005-10-03  Steve Ellcey  <sje@cup.hp.com>
+
+       * fortran/trans-types.c (gfc_init_kinds): Only pass float, double,
+       and long double floating point types through to Fortran compiler.
+
+2005-10-03  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       PR fortran/20120
+       * f95-lang.c (DO_DEFINE_MATH_BUILTIN): Add support for long
+       double builtin function.
+       (gfc_init_builtin_functions): Add mfunc_longdouble,
+       mfunc_clongdouble and func_clongdouble_longdouble trees. Build
+       them for round, trunc, cabs, copysign and pow functions.
+       * iresolve.c (gfc_resolve_reshape, gfc_resolve_transpose): Add
+       case for kind 10 and 16.
+       * trans-decl.c: Add trees for cpowl10, cpowl16, ishftc16,
+       exponent10 and exponent16.
+       (gfc_build_intrinsic_function_decls): Build nodes for int16,
+       real10, real16, complex10 and complex16 types. Build all possible
+       combinations for function _gfortran_pow_?n_?n. Build function
+       calls cpowl10, cpowl16, ishftc16, exponent10 and exponent16.
+       * trans-expr.c (gfc_conv_power_op): Add case for integer(16),
+       real(10) and real(16).
+       * trans-intrinsic.c: Add suppport for long double builtin
+       functions in BUILT_IN_FUNCTION, LIBM_FUNCTION and LIBF_FUNCTION
+       macros.
+       (gfc_conv_intrinsic_aint): Add case for integer(16), real(10) and
+       real(16) kinds.
+       (gfc_build_intrinsic_lib_fndecls): Add support for real10_decl
+       and real16_decl in library functions.
+       (gfc_get_intrinsic_lib_fndecl): Add cases for real and complex
+       kinds 10 and 16.
+       (gfc_conv_intrinsic_exponent): Add cases for real(10) and real(16)
+       kinds.
+       (gfc_conv_intrinsic_sign): Likewise.
+       (gfc_conv_intrinsic_ishftc): Add case for integer(16) kind.
+       * trans-types.c (gfc_get_int_type, gfc_get_real_type,
+       gfc_get_complex_type, gfc_get_logical_type): Doesn't error out in
+       the case of kinds not available.
+       * trans.h: Declare trees for cpowl10, cpowl16, ishftc16,
+       exponent10 and exponent16.
+
+2005-10-01  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/16404
+       PR fortran/20835
+       PR fortran/20890
+       PR fortran/20899
+       PR fortran/20900
+       PR fortran/20901
+       PR fortran/20902
+       * gfortran.h: Prototype for gfc_add_in_equivalence.
+       * match.c (gfc_match_equivalence): Make a structure component
+       an explicit,rather than a syntax, error in an equivalence
+       group.  Call gfc_add_in_equivalence to add the constraints
+       imposed in check_conflict.
+       * resolve.c (resolve_symbol): Add constraints: No public
+       structures with private-type components and no public
+       procedures with private-type dummy arguments.
+       (resolve_equivalence_derived): Add constraint that prevents
+       a structure equivalence member from having a default
+       initializer.
+       (sequence_type): New static function to determine whether an
+       object is default numeric, default character, non-default
+       or mixed sequence. Add corresponding enum typespec.
+       (resolve_equivalence): Add constraints to equivalence groups
+       or their members: No more than one initialized member and
+       that different types are not equivalenced for std=f95.  All
+       the simple constraints have been moved to check_conflict.
+       * symbol.c (check_conflict): Simple equivalence constraints
+       added, including those removed from resolve_symbol.
+       (gfc_add_in_equivalence): New function to interface calls
+       match_equivalence to check_conflict.
+
+2005-09-27  Jakub Jelinek  <jakub@redhat.com>
+
+       PR fortran/18518
+       * trans-common.c (build_equiv_decl): Add IS_SAVED argument.
+       If it is true, set TREE_STATIC on the decl.
+       (create_common): If any symbol in equivalence has SAVE attribute,
+       pass true as last argument to build_equiv_decl.
+
+2005-09-24  Janne Blomqvist  <jblomqvi@cc.hut.fi>
+
+       * trans-io.c (gfc_build_io_library_fndecls): Add entry
+       iocall_x_array for transfer_array.
+       (transfer_array_desc): New function.
+       (gfc_trans_transfer): Add code to call transfer_array_desc.
+
+2005-09-26  Jakub Jelinek  <jakub@redhat.com>
+
+       PR fortran/23677
+       * symbol.c (gfc_is_var_automatic): Return true if character length
+       is non-constant rather than constant.
+       * resolve.c (gfc_resolve): Don't handle !gfc_option.flag_automatic
+       here.
+       * options.c (gfc_post_options): Set gfc_option.flag_max_stack_var_size
+       to 0 for -fno-automatic.
+
+2005-09-23  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/16861
+       * module.c (mio_component_ref): Return if the symbol is NULL
+       and wait for another iteration during module reads.
+       (mio_symtree_ref): Suppress the writing of contained symbols,
+       when a symbol is available in the main namespace.
+       (read_module): Restrict scope of special treatment of contained
+       symbols to variables only and suppress redundant call to
+       find_true_name.
+
+2005-09-22  Steven G. Kargl  <kargls@comcast.net>
+
+       PR fortran/24005
+       * interface.c (check_interface1): Fix NULL dereference.
+
+2005-09-22  Erik Edelmann  <erik.edelmann@iki.fi>
+
+       PR fortran/23843
+       * resolve.c (derived_inaccessible): New function.
+       (resolve_transfer): Use it to check for private
+       components.
+
+2005-09-22  Steven G. Kargl  <kargls@comcast.net>
+
+       PR fortran/23516
+       * intrinsic.c (add_function): Add IMAG, IMAGPART, and REALPART
+       intrinsics.
+       * intrinsic.h: Prototypes for gfc_simplify_realpart and
+       gfc_resolve_realpart.
+       * intrinsic.texi: Document intrinsic procedures.
+       * simplify.c (gfc_simplify_realpart): New function.
+       * irseolve.c (gfc_resolve_realpart): New function.
+
+2005-09-21  Erik Edelmann  <erik.edelmann@iki.fi>
+
+       PR fortran/19929
+       * trans-stmt.c (gfc_trans_deallocate): Check if the
+       object to be deallocated is an array by looking at
+       expr->rank instead of expr->symtree->n.sym->attr.dimension.
+
+2005-09-20  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/23420
+       * io.c (resolve_tag): Don't allow non-CHARACTER constants as formats.
+       (match_io): Fix usage of gfc_find_symbol.
+
+2005-09-20  Jakub Jelinek  <jakub@redhat.com>
+
+       PR fortran/23663
+       * primary.c (match_actual_arg): Handle ENTRY the same way
+       as FUNCTION.
+
+2005-09-18  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       * Make-lang.in: Make check-fortran alias for check-gfortran.
+
+2005-09-18  Andreas Jaeger  <aj@suse.de>
+
+       * module.c (read_module): Add missed line from last patch.
+
+2005-09-18  Erik Edelmann  <erik.edelmann@iki.fi>
+
+       PR fortran/15975
+       * resolve.c (resolve_symbol): Don't assign default
+       initializer to pointers.
+
+2005-09-18  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/16861
+       * module.c (read_module): Give symbols from module procedures
+       different true_name entries to those from the module proper.
+
+2005-09-17  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       PR fortran/15586
+       * arith.c (gfc_arith_error): Add translation support for error
+       messages.
+       * array.c (gfc_match_array_ref): Likewise.
+       (gfc_match_array_spec): Likewise.
+       * check.c (must_be): Add msgid convention to third argument.
+       (same_type_check): Add translation support for error message.
+       (rank_check): Likewise.
+       (kind_value_check): Likewise.
+       (gfc_check_associated): Correct typo.
+       (gfc_check_reshape): Add translation support for error message.
+       (gfc_check_spread): Likewise.
+       * error.c (error_printf): Add nocmsgid convention to argument.
+       (gfc_warning, gfc_notify_std, gfc_warning_now, gfc_warning_check)
+       (gfc_error, gfc_error_now): Likewise.
+       (gfc_status): Add cmsgid convention to argument.
+       * expr.c (gfc_extract_int): Add translation support for error
+       messages.
+       (gfc_check_conformance): Add msgid convention to argument.
+       (gfc_check_pointer_assign): Correct tabbing.
+       * gfortran.h: Include intl.h header. Remove prototype for gfc_article.
+       * gfortranspec.c: Include intl.h header.
+       (lang_specific_driver): Add translation support for --version.
+       * io.c (check_format): Add translation support for error message.
+       (format_item_1): Likewise.
+       (data_desc): Likewise.
+       * matchexp.c: Likewise.
+       * misc.c (gfc_article): Remove function.
+       * module.c (bad_module): Use msgid convention. Add translation support
+       for error messages.
+       (require_atom): Add translation support for error messages.
+       * parse.c (gfc_ascii_statement): Likewise.
+       (gfc_state_name): Likewise.
+       * primary.c (match_boz_constant): Reorganise error messages for
+       translations.
+       * resolve.c (resolve_entries): Likewise.
+       (resolve_operator): Add translation support for error messages.
+       (gfc_resolve_expr): Use msgid convention. Reorganise error messages
+       for translations.
+       (resolve_symbol): Add translation support for error messages.
+       * symbol.c (gfc_add_procedure): Remove use of gfc_article function.
+       * trans-const.c (gfc_build_string_const): Use msgid convention.
+
+2005-09-16  Paul Brook  <paul@codesourcery.com>
+
+       PR fortran/23906
+       * dependency.c (transform_sections): Divide by correct value.
+       Elaborate comment.
+
+2005-09-14  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/21875 Internal Unit Array I/O, NIST
+       * fortran/trans-io.c (gfc_build_io_library_fndecls): Add field for
+       array descriptor to IOPARM structure.
+       * fortran/trans-io.c (set_internal_unit): New function to generate code
+       to store the character (array) and the character length for an internal
+       unit.
+       * fortran/trans-io (build_dt): Use the new function set_internal_unit.
+
+2005-09-14  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/19358
+       * trans-array.c (gfc_trans_dummy_array_bias): correct the typo
+       which uses dim[i].upper for lbound, rather than dim[i].lower.
+
+2005-09-13  Erik Edelmann  <erik.edelmann@iki.fi>
+
+       PR fortran/17740
+       * trans-expr.c (gfc_trans_arrayfunc_assign): Check value
+       of attr.elemental for specific function instead of generic name.
+
+2005-09-13  Richard Sandiford  <richard@codesourcery.com>
+
+       PR fortran/18899
+       * trans-intrinsic.c (gfc_conv_intrinsic_bound): Move initialization
+       of argse.  Remove now-redundant want_pointer assignment.
+       * trans-array.c (gfc_conv_expr_descriptor): When not assigning to
+       a pointer, keep the original bounds of a full array reference.
+
+2005-09-13  Richard Sandiford  <richard@codesourcery.com>
+
+       PR target/19269
+       * iresolve.c (gfc_resolve_cshift, gfc_resolve_eoshift)
+       (gfc_resolve_pack, gfc_resolve_reshape, gfc_resolve_spread)
+       (gfc_resolve_transpose, gfc_resolve_unpack): Add "_char" to the name
+       for character-based operations.
+       (gfc_resolve_pack): Remove ATTRIBUTE_UNUSED from array argument.
+       (gfc_resolve_unpack): Copy the whole typespec from the vector.
+       * trans-array.c (gfc_conv_expr_descriptor): In the EXPR_FUNCTION
+       case, get the string length from the scalarization state.
+
+2005-09-14  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       * Make-lang.in: Change targets prefixes from f95 to fortran.
+       * config-lang.in: Change language name to "fortran".
+       * lang.opt: Change language name to "fortran".
+       * options.c: Change CL_F95 to CL_Fortran.
+
+2005-09-09  Thomas Koenig  <Thomas.Koenig@online.de>
+
+       gfortran.texi:  Document IOSTAT= specifier.
+
+2005-09-09  Thomas Koenig  <Thomas.Koenig@online.de>
+
+       * gfortran.h:  Add iomsg to gfc_open, gfc_close, gfc_filepos,
+       gfc_inquire and gfc_dt.
+       * dump-parse-tree.c (gfc_show_code_node):  Add iomsg
+       for open, close, file positioning, inquire and namelist.
+       * io.c (io_tag):  Add tag_iomsg.
+       (resolve_tag): Add standards warning for iomsg.
+       (match_open_element):  Add iomsg.
+       (gfc_free_open):  Add iomsg.
+       (gfc_resolve_open):  Add iomsg.
+       (gfc_free_close):  Add iomsg.
+       (match_close_element):  Add iomsg.
+       (gfc_resolve_close):  Add iomsg.
+       (gfc_free_filepos):  Add iomsg.
+       (match_file_element):  Add iomsg.
+       (gfc_resolve_filepos):  Add iostat and iomsg.
+       (match-dt_element):  Add iomsg.
+       (gfc_free_dt):  Add iomsg.
+       (gfc_resolve_dt):  Add iomsg.
+       (gfc_free_inquire):  Add iomsg.
+       (match_inquire_element):  Add iomsg.
+       (gfc_resolve_inquire):  Add iomsg.
+       * trans_io.c:  Add ioparm_iomsg and ioparm_iomsg_len.
+       (gfc_build_io_library_fndecls):  Add iomsg as last field.
+       (gfc_trans_open):  Add iomsg.
+       (gfc_trans_close):  Add iomsg.
+       (build_fileos):  Call set_string for iomsg.
+       (gfc_trans_inquire):  Add iomsg.
+       (build_dt):  Add iomsg.
+
+2005-09-09  Richard Sandiford  <richard@codesourcery.com>
+
+       * match.h (gfc_match_equiv_variable): Declare.
+
+2005-09-09  Richard Sandiford  <richard@codesourcery.com>
+
+       PR fortran/19239
+       * Makefile.in (fortran/trans-expr.o): Depend on dependency.h.
+       * dependency.h (gfc_ref_needs_temporary_p): Declare.
+       * dependency.c (gfc_ref_needs_temporary_p): New function.
+       (gfc_check_fncall_dependency): Use it instead of inlined check.
+       By so doing, take advantage of the fact that character substrings
+       within an array reference also need a temporary.
+       * trans.h (GFC_SS_VECTOR): Adjust comment.
+       * trans-array.c (gfc_free_ss): Remove GFC_SS_VECTOR case.
+       (gfc_set_vector_loop_bounds): New function.
+       (gfc_add_loop_ss_code): Call it after evaluating the subscripts of
+       a GFC_SS_SECTION.  Deal with the GFC_SS_VECTOR case by evaluating
+       the vector expression and caching its descriptor for use within
+       the loop.
+       (gfc_conv_array_index_ref, gfc_conv_vector_array_index): Delete.
+       (gfc_conv_array_index_offset): Handle scalar, vector and range
+       dimensions as separate cases of a switch statement.  In the vector
+       case, use the loop variable to calculate a vector index and use the
+       referenced element as the dimension's index.  Perform bounds checking
+       on this final index.
+       (gfc_conv_section_upper_bound): Return null for vector indexes.
+       (gfc_conv_section_startstride): Give vector indexes a start value
+       of 0 and a stride of 1.
+       (gfc_conv_ss_startstride): Adjust for new GFC_SS_VECTOR representation.
+       (gfc_conv_expr_descriptor): Expand comments.  Generalize the
+       handling of the !want_pointer && !direct_byref case.  Use
+       gfc_ref_needs_temporary_p to decide whether the variable case
+       needs a temporary.
+       (gfc_walk_variable_expr): Handle DIMEN_VECTOR by creating a
+       GFC_SS_VECTOR index.
+       * trans-expr.c: Include dependency.h.
+       (gfc_trans_arrayfunc_assign): Fail if the target needs a temporary.
+
+2005-09-09  Richard Sandiford  <richard@codesourcery.com>
+
+       PR fortran/21104
+       * trans.h (gfc_interface_sym_mapping, gfc_interface_mapping): Moved
+       from trans-expr.c.
+       (gfc_init_interface_mapping, gfc_free_interface_mapping)
+       (gfc_add_interface_mapping, gfc_finish_interface_mapping)
+       (gfc_apply_interface_mapping): Declare.
+       * trans-array.h (gfc_set_loop_bounds_from_array_spec): Declare.
+       (gfc_trans_allocate_temp_array): Add pre and post block arguments.
+       * trans-array.c (gfc_set_loop_bounds_from_array_spec): New function.
+       (gfc_trans_allocate_array_storage): Replace loop argument with
+       separate pre and post blocks.
+       (gfc_trans_allocate_temp_array): Add pre and post block arguments.
+       Update call to gfc_trans_allocate_array_storage.
+       (gfc_trans_array_constructor, gfc_conv_loop_setup): Adjust for new
+       interface to gfc_trans_allocate_temp_array.
+       * trans-expr.c (gfc_interface_sym_mapping, gfc_interface_mapping):
+       Moved to trans.h.
+       (gfc_init_interface_mapping, gfc_free_interface_mapping)
+       (gfc_add_interface_mapping, gfc_finish_interface_mapping)
+       (gfc_apply_interface_mapping): Make extern.
+       (gfc_conv_function_call): Build an interface mapping for array
+       return values too.  Call gfc_set_loop_bounds_from_array_spec.
+       Adjust call to gfc_trans_allocate_temp_array so that code is
+       added to SE rather than LOOP.
+
+2005-09-09  Richard Sandiford  <richard@codesourcery.com>
+
+       PR fortran/12840
+       * trans.h (gfor_fndecl_internal_realloc): Declare.
+       (gfor_fndecl_internal_realloc64): Declare.
+       * trans-decl.c (gfor_fndecl_internal_realloc): New variable.
+       (gfor_fndecl_internal_realloc64): New variable.
+       (gfc_build_builtin_function_decls): Initialize them.
+       * trans-array.h (gfc_trans_allocate_temp_array): Add a fourth argument.
+       * trans-array.c (gfc_trans_allocate_array_storage): Add an argument
+       to say whether the array can grow later.  Don't allocate the array
+       on the stack if so.  Don't call malloc for zero-sized arrays.
+       (gfc_trans_allocate_temp_array): Add a similar argument here.
+       Pass it along to gfc_trans_allocate_array_storage.
+       (gfc_get_iteration_count, gfc_grow_array): New functions.
+       (gfc_iterator_has_dynamic_bounds): New function.
+       (gfc_get_array_constructor_element_size): New function.
+       (gfc_get_array_constructor_size): New function.
+       (gfc_trans_array_ctor_element): Replace pointer argument with
+       a descriptor tree.
+       (gfc_trans_array_constructor_subarray): Likewise.  Take an extra
+       argument to say whether the variable-sized part of the constructor
+       must be allocated using realloc.  Grow the array when this
+       argument is true.
+       (gfc_trans_array_constructor_value): Likewise.
+       (gfc_get_array_cons_size): Delete.
+       (gfc_trans_array_constructor): If the loop bound has not been set,
+       split the allocation into a static part and a dynamic part.  Set
+       loop->to to the bounds for static part before allocating the
+       temporary.  Adjust call to gfc_trans_array_constructor_value.
+       (gfc_conv_loop_setup): Allow any constructor to determine the
+       loop bounds.  Check whether the constructor has a dynamic size
+       and prefer to use something else if so.  Expect the loop bound
+       to be set later.  Adjust call to gfc_trans_allocate_temp_array.
+       * trans-expr.c (gfc_conv_function_call): Adjust another call here.
+
+2005-09-09  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/18878
+       * module.c (find_use_name_n): Based on original
+       find_use_name. Either counts number of use names for a
+       given real name or returns use name n.
+       (find_use_name, number_use_names): Interfaces to the
+       function find_use_name_n.
+       (read_module): Add the logic and calls to these functions,
+       so that mutiple reuses of the same real name are loaded.
+
+2005-09-09  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/22304
+       PR fortran/23270
+       PR fortran/18870
+       PR fortran/16511
+       PR fortran/17917
+       * gfortran.h: Move definition of BLANK_COMMON_NAME from trans-
+       common.c so that it is accessible to module.c. Add common_head
+       field to gfc_symbol structure. Add field for the equivalence
+       name AND new attr field, in_equivalence.
+       * match.c (gfc_match_common, gfc_match_equivalence): In loops
+       that flag common block equivalences, emit an error if the
+       common blocks are different, using sym->common_head as the
+       common block identifier. Ensure that symbols that are equivalence
+       associated with a common block are marked as being in_common.
+       * module.c (write_blank_common): New.
+       (write_common): Use unmangled common block name.
+       (load_equiv): New function ported from g95.
+       (read_module): Call load_equiv.
+       (write_equiv): New function ported from g95. Correct
+       string referencing for gfc functions. Give module
+       equivalences a unique name.
+       (write_module): Call write_equiv and write_blank_common.
+       * primary.c (match_variable) Old gfc_match_variable, made
+       static and third argument provided to indicate if parent
+       namespace to be visited or not.
+       (gfc_match_variable) New. Interface to match_variable.
+       (gfc_match_equiv_variable) New. Interface to match_variable.
+       * trans-common.c (finish_equivalences): Provide the call
+       to create_common with a gfc_common_header so that
+       module equivalences are made external, rather than local.
+       (find_equivalences): Ensure that all members in common block
+       equivalences are marked as used. This prevents the subsequent
+       call to this function from making local unions.
+       * trans-decl.c (gfc_generate_function_code): Move the call to
+       gfc_generate_contained_functions to after the call to
+       gfc_trans_common so the use-associated, contained common
+       blocks produce the correct references.
+       (gfc_create_module_variable): Return for equivalenced symbols
+       with existing backend declaration.
+
+2005-09-08  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/23765
+       * match.c (gfc_match_common): Remove unnecessary / wrong special
+       cases for end-of-statement.
+
+2005-09-08  Janne Blomqvist  <jblomqvi@cc.hut.fi>
+
+       * gfortran.texi: Add section about implemented F2003 features.
+
+2005-09-08  Richard Sandiford  <richard@codesourcery.com>
+
+       PR fortran/15326
+       * trans-array.c (gfc_add_loop_ss_code): Set ss->string_length in
+       the GFC_SS_FUNCTION case too.
+       * trans-expr.c (gfc_conv_function_val): Allow symbols to be bound
+       to function pointers as well as function decls.
+       (gfc_interface_sym_mapping, gfc_interface_mapping): New structures.
+       (gfc_init_interface_mapping, gfc_free_interface_mapping)
+       (gfc_get_interface_mapping_charlen, gfc_get_interface_mapping_array)
+       (gfc_set_interface_mapping_bounds, gfc_add_interface_mapping)
+       (gfc_finish_interface_mapping, gfc_apply_interface_mapping_to_cons)
+       (gfc_apply_interface_mapping_to_ref)
+       (gfc_apply_interface_mapping_to_expr)
+       (gfc_apply_interface_mapping): New functions.
+       (gfc_conv_function_call): Evaluate the arguments before working
+       out where the result should go.  Make the null pointer case provide
+       the string length in parmse.string_length.  Cope with non-constant
+       string lengths, using the above functions to evaluate such lengths.
+       Use a temporary typespec; don't assign to sym->cl->backend_decl.
+       Don't assign to se->string_length when returning a cached array
+       descriptor.
+
+2005-09-08  Richard Sandiford  <richard@codesourcery.com>
+
+       PR fortran/19928
+       * trans-array.c (gfc_conv_array_ref): Call gfc_advance_se_ss_chain
+       after handling scalarized references.  Make "indexse" inherit from
+       "se" when handling AR_ELEMENTs.
+       (gfc_walk_variable_expr): Add GFC_SS_SCALAR entries for each
+       substring or scalar reference that follows an array section.
+       * trans-expr.c (gfc_conv_variable): When called from within a
+       scalarization loop, start out with "ref" pointing to the scalarized
+       part of the reference.  Don't call gfc_advance_se_ss_chain here.
+
+2005-09-07  Richard Sandiford  <richard@codesourcery.com>
+
+       PR fortran/23373
+       * trans-expr.c (gfc_trans_pointer_assignment): Assign to a temporary
+       descriptor if the rhs is not a null pointer or variable.
+
+2005-09-07  Thomas Koenig  <Thomas.Koenig@online.de>
+
+       PR fortran/20848
+       * symbol.c(check_conflict):  Add conflict for parameter/save,
+
+2005-09-06  Richard Sandiford  <richard@codesourcery.com>
+
+       PR fortran/19269
+       * simplify.c (gfc_simplify_transpose): Set the result's typespec from
+       the source, not the first element of the return value.
+
+2005-09-04  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/23661
+       * io.c (match_io): Correctly backup if PRINT followed by
+       symbol which is not a namelist.  Force blank between PRINT
+       and namelist in free form.
+
+2005-08-31  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       PR fortran/20592
+       * gfortran.h (gfc_option_t): Add flag_automatic.
+       * invoke.texi: Document the -fno-automatic option.
+       * lang.opt: Add a -fautomatic option.
+       * options.c (gfc_init_options): Default for -fautomatic is on.
+       (gfc_handle_option): Add handling of -fautomatic option.
+       * resolve.c (gfc_resolve): When -fno-automatic is used, mark
+       needed variables as SAVE.
+
+2005-08-27  Erik Edelmann  <erik.edelmann@iki.fi>
+
+       * trans-array.c (gfc_trans_deferred_array): Fix comments.
+
+2005-08-27  Erik Schnetter  <schnetter@aei.mpg.de>
+
+       * primary.c (match_charkind_name): Fix typo in comment leading to
+       function.
+
+2005-08-25  Erik Edelmann  <eedelman@acclab.helsinki.fi>
+
+       PR fortran/20363
+       * symbol.c (find_special): Remove.
+       (build_sym, add_init_expr, attr_decl1): Remove calls to
+       find_special in favor of calls to gfc_get_symbol.
+
+2005-08-24  Thomas Koenig  <Thomas.Koenig@online.de>
+
+       PR fortran/17758
+       * gfortran.h (symbol_attribute):  Add noreturn to the structure.
+       (gfc_intrinsic_sym):  Add noreturn to the structure.
+       * intrinsic.c (make_noreturn):  New function.
+       (add_subroutines):  Mark subroutines abort and exit as noreturn.
+       (gfc_intrinsic_sub_interface):  Copy noreturn attribute from
+       isym to the resolved symbol.
+       * trans-decl.c (gfc_get_extern_function_decl): Set function
+       as VOLATILE (== noreturn) if the noreturn attribute is set.
+
+2005-08-21  Steven G. Kargl  <kargls@comcast.net>
+
+       * decl.c: Typo in comment.
+
+2005-08-21  Steven G. Kargl  <kargls@comcast.net>
+
+       * array.c: Bump GFC_MAX_AC_EXPAND from 100 to 65535.
+
+2005-08-21  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * gfortran.h (gfc_option_t): Remove source field.  Add
+       flag_d_lines field.
+       (gfc_new_file): Remove arguments in prototype.
+       (gfc_source_file): Make 'const char *'.
+       * f95-lang.c (gfc_init): Use gfc_source_file instead of
+       gfc_option.source.  Call gfc_new_file without arguments.
+       * invoke.texi: Document new options '-fd-lines-as-code' and
+       '-fd-lines-as-comment'.
+       * lang.opt: Add new options.  Alphabetize.
+       * options.c (gfc_init_options): Initialize gfc_source_file instead
+       of gfc_option.source.  Initialize gfc_option.flag_d_lines.
+       (form_from_filename): Move here from scanner.c.  Make
+       'filename' argument 'const'.
+       (gfc_post_options): Set gfc_source_file.  Determine source form.
+       Warn if 'd-lines*' are used in free form.
+       * scanner.c (gfc_source_file): Constify.
+       (skip_fixed_comments): Deal with d-lines.
+       (get_file): Constify argument 'name'.
+       (load_file): Constify argument 'filename'.
+       (form_from_filename): Moved to options.c.
+       (gfc_new_file): Remove arguments.  Don't initialize
+       gfc_source_file, don't determine source form.
+       * trans-const.c (gfc_init_constants): Use gfc_source_file instead
+       of gfc_option.source.
+
+2005-08-19  Steven G. Kargl  <kargls@comcast.net>
+
+       PR fortran/23065
+       * gfortran.h: Remove PATH_MAX definition.
+       * module.c (write_module, gfc_dump_module): Use alloca to allocate
+       buffers.
+       * scanner.c (gfc_release_include_path, form_from_filename): Ditto.
+
+2005-08-16  Huang Chun  <chunhuang73@hotmail.com>
+
+       * trans-expr.c (gfc_conv_power_op): Evaluate the expression before
+       expand.
+
+2005-08-14  Asher Langton  <langton2@llnl.gov>
+
+       * parse.c (match): Enclose macro in do...while(0) and braces.
+
+2005-08-14  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/21432.
+       * gfortran.texi: Document PRINT namelist.
+
+2005-08-14  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/21432.
+       * io.c (match_io): Add code to implement PRINT namelist.
+
+2005-08-14  Canqun Yang  <canqun@nudt.edu.cn>
+
+       * trans-stmt.c (gfc_trans_arithmetic_if): Optimized in case of equal
+       labels.
+
+2005-08-11  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+           Steven Bosscher  <stevenb@suse.de>
+
+       PR libfortran/20006
+       * gfortran.h: Add is_main_program member to symbol_attribute.
+       * trans-decl: Add a gfor_fndecl_set_std tree.
+       (gfc_build_builtin_function_decls): Create it.
+       (gfc_generate_function_code): Add this call at the beginning of
+       the main program.
+       * trans.c (gfc_generate_code): Move main_program and attr.
+       * trans.h: Add declaration for gfor_fndecl_set_std.
+
+2005-08-10  Thomas Koenig  <Thomas.Koenig@online.de>
+
+       PR libfortran/22143
+       gfortran.h:  Declare new function gfc_resolve_dim_arg.
+       resolve.c:  New function gfc_resolve_dim_arg.
+       iresolve.c (gfc_resolve_all):  Use gfc_resolve_dim_arg.
+       (gfc_resolve_any):  Likewise.
+       (gfc_resolve_count):  Likewise.
+       (gfc_resolve_cshift):  Likewise.  If the kind of shift is less
+       gfc_default_integer_kind, convert it to default integer type.
+       (gfc_resolve_eoshift):  Likewise.
+       (gfc_resolve_maxloc):  Use gfc_resolve_dim_arg.
+       (gfc_resolve_maxval):  Likewise.
+       (gfc_resolve_minloc):  Likewise.
+       (gfc_resolve_minval):  Likewise.
+       (gfc_resolve_product):  Likewise.
+       (gfc_resolve_spread):  Likewise.
+       (gfc_resolve_sum):  Likewise.
+
+2005-08-09  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       * check.c (gfc_check_ttynam_sub, gfc_check_isatty): Add check
+       functions for new intrinsics TTYNAM and ISATTY.
+       * intrinsic.c (add_functions, add_subroutines): Add new
+       intrinsics.
+       * intrinsic.h: Add prototypes for new check and resolve
+       functions.
+       * iresolve.c (gfc_resolve_isatty, gfc_resolve_ttynam_sub): New
+       resolve functions for intrinsics TTYNAM and ISATTY.
+       * gfortran.h (gfc_generic_isym_id): Add symbol for ISATTY.
+       * trans-intrinsic.c: Add case for GFC_ISYM_ISATTY.
+
+2005-08-09  Jakub Jelinek  <jakub@redhat.com>
+
+       * scanner.c (preprocessor_line): Don't write beyond the end of flag
+       buffer.
+
+2005-08-07   Janne Blomqvist  <jblomqvi@cc.hut.fi>
+
+       PR fortran/22390
+       * dump-parse-tree.c (gfc_show_code_node): Add case for FLUSH.
+       * gfortran.h: Add enums for FLUSH.
+       * io.c (gfc_free_filepos,match_file_element,match_filepos): Modify
+       comment appropriately.  (gfc_match_flush): New function.
+       * match.c (gfc_match_if): Add match for flush.
+       * match.h: Add prototype.
+       * parse.c (decode_statement): Add flush to 'f' case.
+       (next_statement): Add case for flush. (gfc_ascii_statement): Likewise.
+       * resolve.c (resolve_code): Add flush case.
+       * st.c (gfc_free_statement): Add flush case.
+       * trans-io.c: Add prototype for flush.
+       (gfc_build_io_library_fndecls): Build fndecl for flush.
+       (gfc_trans_flush): New function.
+       * trans-stmt.h: Add prototype.
+       * trans.c (gfc_trans_code): Add case for flush.
+
+2005-08-06  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       * primary.c (match_hollerith_constant): Fix typo.
+
+2005-08-06  Kazu Hirata  <kazu@codesourcery.com>
+
+       * decl.c, dump-parse-tree.c, gfortran.texi, intrinsic.texi,
+       invoke.texi, resolve.c, trans-array.c, trans-array.h,
+       trans-common.c, trans-expr.c, trans-io.c, trans.h: Fix
+       comment/doc typos.  Follow spelling conventions.
+
+2005-08-06  Jakub Jelinek  <jakub@redhat.com>
+
+       PR fortran/18833
+       PR fortran/20850
+       * primary.c (match_varspec): If equiv_flag, don't look at sym's
+       attributes, call gfc_match_array_ref up to twice and don't do any
+       substring or component processing.
+       * resolve.c (resolve_equivalence): Transform REF_ARRAY into
+       REF_SUBSTRING or nothing if needed.  Check that substrings
+       don't have zero length.
+
+2005-08-05  Thomas Koenig  <Thomas.Koenig@online.de>
+
+       * trans-expr.c  (gfc_build_builtin_function_decls):  Mark
+       stop_numeric and stop_string as non-returning.
+
+2005-08-04  Paul Brook  <paul@codesourcery.com>
+
+       * trans-expr.c (gfc_conv_expr, gfc_conv_expr_type): Update comments.
+       (gfc_conv_expr_lhs): Fix assertion.
+       (gfc_conv_expr_val): Merge post block.  Set se.expr to new value.
+
+2005-08-02  David Edelsohn  <edelsohn@gnu.org>
+
+       PR fortran/22491
+       * expr.c (simplify_parameter_variable): Do not copy the subobject
+       references if the expression value is a constant.
+
+       * expr.c (gfc_simplify_expr): Evaluate constant substrings.
+
+2005-07-31  Jerry DeLisle  <jvdelisle@verizon.net>
+
+       * intrinsic.texi: Add documentation for exponent, floor, and fnum and
+       fix description of ceiling in index.
+
+2005-07-31  Steven Bosscher  <stevenb@suse.de>
+
+       * trans-decl.c (gfc_build_builtin_function_decls): Give the internal
+       malloc functions the 'malloc' attribute.  Give runtime_error the
+       'noreturn' attribute.
+
+2005-07-31  Steven Bosscher  <stevenb@suse.de>
+
+       * trans-stmt.c (gfc_trans_goto): Jump to the known label instead
+       of the assigned goto variable.
+
+2005-07-29  Steven Bosscher  <stevenb@suse.de>
+
+       * trans-types.h (gfc_array_range_type): Add missing GTY decl for this.
+
+2005-07-28  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       * fortran/f95-lang.c (language_function): Remove
+       named_labels, shadowed_labels, returns_value, returns_abnormally,
+       warn_about_return_type, and extern_inline fields.
+       (named_labels): Remove variable.
+       (gfc_init_decl_processing): Remove setting of named_labels.
+
+2005-07-27  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
+
+       PR fortran/22503
+       * resolve.c (resolve_operator): Improve diagnostic for comparison
+       of logicals with invalid operator.
+
+2005-07-25  Jakub Jelinek  <jakub@redhat.com>
+
+       PR fortran/20063
+       * data.c (gfc_assign_data_value_range): Call
+       create_character_initializer if last_ts is a character type.
+
+2005-07-22  Manfred Hollstein  <mh@suse.com>
+
+       * match.c (gfc_match_symbol): Fix uninitialised warnings.
+       * matchexp.c (gfc_match_expr): Likewise.
+
+2005-07-20  Giovanni Bajo  <giovannibajo@libero.it>
+
+       Make CONSTRUCTOR use VEC to store initializers.
+       * trans-array.c (gfc_build_null_descriptor,
+       gfc_trans_array_constructor_value, gfc_conv_array_initializer):
+       Update to cope with VEC in CONSTRUCTOR_ELTS.
+       * trans-common.c (create_common): Likewise.
+       * trans-expr.c (gfc_conv_structure): Likewise.
+       * trans-stmt.c (gfc_trans_character_select): Use
+       build_constructor_from_list instead of build_constructor.
+
+2005-07-19  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/16940
+       * resolve.c (resolve_symbol): A symbol with FL_UNKNOWN
+       is matched against interfaces in parent namespaces. If there
+       the symtree is set to point to the interface.
+
+2005-07-16  David Edelsohn  <edelsohn@gnu.org>
+
+       PR fortran/21730
+       * decl.c (do_parm): Adjust character initializer to character length
+       of symbol before assigning.
+
+2005-07-14  Steve Ellcey  <sje@cup.hp.com>
+
+       * trans-types.c (MAX_REAL_KINDS): Increase from 4 to 5.
+
+2005-07-14  Jakub Jelinek  <jakub@redhat.com>
+
+       * gfortran.h (MAX_ERROR_MESSAGE): Remove.
+       (gfc_error_buf): Add allocated and index fields.  Change message
+       field from array to a pointer.
+       * error.c (use_warning_buffer, error_ptr, warning_ptr): Remove.
+       (cur_error_buffer): New variable.
+       (error_char): Use cur_error_buffer->{message,index} instead of
+       {warning,error}_{buffer.message,ptr}.  Reallocate message buffer
+       if too small.
+       (gfc_warning, gfc_notify_std, gfc_error, gfc_error_now): Setup
+       cur_error_buffer and its index rather than {warning,error}_ptr
+       and use_warning_buffer.
+       (gfc_warning_check, gfc_error_check): Don't print anything if
+       message is NULL.
+       (gfc_push_error): Allocate saved message with xstrdup.
+       (gfc_pop_error): Free saved message with gfc_free.
+       (gfc_free_error): New function.
+       * primary.c (match_complex_constant): Call gfc_free_error if
+       gfc_pop_error will not be called.
+       * match.c (gfc_match_st_function): Likewise.
+
+       PR fortran/22417
+       * scanner.c (preprocessor_line): Don't treat flag 3 as the start of a new
+       file.  Fix file left but not entered warning.
+
+2005-07-14  Feng Wang  <fengwang@nudt.edu.cn>
+       Steven G. Kargl  <kargls@comcast.net>
+
+       * array.c (resolve_character_array_constructor): Allocate gfc_charlen
+       for the array and attach to namespace list for automatic deallocation.
+
+2005-07-13  Andreas Schwab  <schwab@suse.de>
+
+       * Make-lang.in (fortran/dependency.o): Depend on
+       $(GFORTRAN_TRANS_DEPS).
+
+2005-07-11  Jakub Jelinek  <jakub@redhat.com>
+
+       * trans-stmt.c (gfc_trans_forall_loop): Clear maskindex before
+       the outermost loop.
+       (gfc_trans_assign_need_temp, gfc_trans_pointer_assign_need_temp,
+       gfc_trans_forall_1, gfc_evaluate_where_mask, gfc_trans_where_2):
+       Don't clear maskindexes here.
+
+2005-07-08  Daniel Berlin  <dberlin@dberlin.org>
+
+       * trans-decl.c (create_function_arglist): DECL_ARG_TYPE_AS_WRITTEN
+       is removed.
+
+2005-07-08  Jakub Jelinek  <jakub@redhat.com>
+
+       * primary.c (gfc_match_rvalue): Handle ENTRY the same way
+       as FUNCTION.
+
+2005-07-07  Jakub Jelinek  <jakub@redhat.com>
+
+       * scanner.c (load_line): Add pbuflen argument, don't make
+       buflen static.  If maxlen == 0 or preprocessor_flag,
+       don't truncate at buflen, but at maxlen.  In xrealloc add
+       1 byte at the end for the terminating '\0'.  Don't fill
+       with spaces up to buflen, but gfc_option.fixed_line_length.
+       (load_file): Adjust load_line caller.  Add line_len variable.
+
+       * scanner.c (preprocessor_line): Only set current_file->line when errors
+       have not been encountered.  Warn and don't crash if a file leave
+       preprocessor line has no corresponding entering line.  Formatting.
+
+2005-07-07  Steven Bosscher  <stevenb@suse.de>
+
+       * primary.c (match_hollerith_constant): Use int, not unsigned int,
+       for the hollerith length.  Fix indentation.
+
+2005-07-07  Feng Wang  <fengwang@nudt.edu.cn>
+
+       PR fortran/16531
+       PR fortran/15966
+       PR fortran/18781
+       * arith.c (gfc_hollerith2int, gfc_hollerith2real,
+       gfc_hollerith2complex, gfc_hollerith2character, gfc_hollerith2logical):
+       New functions.
+       (eval_intrinsic): Don't evaluate if Hollerith constant arguments exist.
+       * arith.h (gfc_hollerith2int, gfc_hollerith2real,
+       gfc_hollerith2complex, gfc_hollerith2character, gfc_hollerith2logical):
+       Add prototypes.
+       * expr.c (free_expr0): Free memery allocated for Hollerith constant.
+       (gfc_copy_expr): Allocate and copy string if Expr is from Hollerith.
+       (gfc_check_assign): Enable conversion from Hollerith to other.
+       * gfortran.h (bt): Add BT_HOLLERITH.
+       (gfc_expr): Add from_H flag.
+       * intrinsic.c (gfc_type_letter): Return 'h' for BT_HOLLERITH.
+       (add_conversions): Add conversions from Hollerith constant to other.
+       (do_simplify): Don't simplify if  Hollerith constant arguments exist.
+       * io.c (resolve_tag): Enable array in FORMAT tag under GFC_STD_GNU.
+       * misc.c (gfc_basetype_name): Return "HOLLERITH" for BT_HOLLERITH.
+       (gfc_type_name): Print "HOLLERITH" for BT_HOLLERITH.
+       * primary.c (match_hollerith_constant): New function.
+       (gfc_match_literal_constant): Add match Hollerith before Integer.
+       * simplify.c (gfc_convert_constant): Add conversion from Hollerith
+       to other.
+       * trans-const.c (gfc_conv_constant_to_tree): Use VIEW_CONVERT_EXPR to
+       convert Hollerith constant to tree.
+       * trans-io.c (gfc_convert_array_to_string): Get array's address and
+       length to set string expr.
+       (set_string): Deal with array assigned Hollerith constant and character
+       array.
+       * gfortran.texi: Document Hollerith constants as extention support.
+
+2005-07-07  Feng Wang  <fengwang@nudt.edu.cn>
+
+       PR fortran/22327
+       * trans-array.c (gfc_trans_array_constructor_value): Fix index of data.
+
+2005-07-07  Jakub Jelinek  <jakub@redhat.com>
+
+       * decl.c (gfc_match_entry): Allow ENTRY without parentheses
+       even in FUNCTIONs.
+
+2005-07-03  Kazu Hirata  <kazu@codesourcery.com>
+
+       * gfortran.texi, intrinsic.texi: Fix typos.
+       * symbol.c: Fix a comment typo.
+
+2005-07-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * error.c (error_printf, error_print): Use ATTRIBUTE_GCC_GFC.
+       * gfortran.h (ATTRIBUTE_GCC_GFC): New.
+       (gfc_warning, gfc_warning_now, gfc_error, gfc_error_now,
+       gfc_fatal_error, gfc_internal_error, gfc_notify_std): Use
+       ATTRIBUTE_GCC_GFC.
+
+2005-07-03  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       PR fortran/20842
+       * io.c (match_dt_element): Do not allow END tag in PRINT or
+       WRITE statement.
+
+2005-07-02  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * lang.opt: Remove "." from end of help texts.
+
+2005-07-01  Jerry DeLisle  <jvdelisle@verizon.net>
+
+       * gfortran.texi: Fix typos and grammar.
+       * invoke.texi: Fix typos and grammar.
+       * intrinsic.texi: Add documentaion for eoshift, epsilon, etime, and
+       exit. Fixed alignment of text for dtime syntax. Fixed a few line
+       lengths.
+
+2005-06-25  Jakub Jelinek  <jakub@redhat.com>
+
+       * trans-stmt.c (gfc_trans_forall_1): Prefer to use smaller logical
+       type than boolean_type_node.
+
+2005-06-25  Kelley Cook  <kcook@gcc.gnu.org>
+
+       * all files: Update FSF address in copyright headers.
+
+2005-06-24  Jerry DeLisle  <jvdelisle@verizon.net>
+
+       PR fortran/21915
+       * gfortran.h: Add symbols for new intrinsic functions.
+       * intrinsic.c: Add new functions acosh, asinh, and atanh.
+       * intrinsic.h: Add prototypes for the new functions.
+       * iresolve.c (gfc_resolve_acosh): New function.
+       (gfc_resolve_asinh): New function.
+       (gfc_resolve_atanh): New function.
+       * mathbuiltins.def: Add defines.
+       * simplify.c (gfc_simplify_acosh): New function.
+       (gfc_simplify_asinh): New function.
+       (gfc_simplify_atanh): New function.
+
+2005-06-24  Feng Wang  <fengwang@nudt.edu.cn>
+
+       * simplify.c (gfc_simplify_modulo): Don't clear before get result.
+
+2005-06-22  Paul Brook  <paul@codesourcery.com>
+
+       PR fortran/21034
+       * symbol.c (gfc_is_var_automatic): New function.
+       (save_symbol): Use it.
+
+2005-06-21  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+           Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/22010
+       Port from g95.
+       * module.c (mio_namelist): New function. Correct to set
+       namelist_tail and to give error on renaming namelist by use
+       association.
+       (mio_symbol): Call mio_namelist.
+
+2005-06-19  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       * gfortran.h: Add flag_backslash compile-time option.
+       * lang.opt: Add support for -fbackslash option.
+       * options.c: Likewise.
+       * primary.c: Implement behavior for -fno-backslash.
+       * invoke.texi: Add doc for -fbackslash option.
+       * gfortran.texi: Remove mention of -fno-backslash as a
+       possible extension.
+
+2005-06-20  Steven G. Kargl  <kargls@comcast.net>
+       (port from g95)
+
+       PR fortran/21257
+       * match.c (gfc_match_label): Detect duplicate labels.
+
+
+2005-06-20  Erik Edelmann  <erik.edelmann@iki.fi>
+
+       * intrinsic.c (check_intrinsic_standard): Fix spelling error
+       in a warning message.
+
+2005-06-18  Erik Edelman  <eedelman@acclab.helsinki.fi>
+           Steven G. Kargl  <kargls@comast.net>
+
+       PR fortran/19926
+       * primary.c (gfc_match_rvalue):  expr_type can be EXPR_CONSTANT
+       for an array; check that sym->as is NULL.
+
+
+2005-06-18  Steven G. Kargl  <kargls@comcast.net>
+
+       * intrinsic.c (gfc_intrinsic_func_interface): Enable errors for generic
+       functions whose simplification routine return FAILURE.
+
+2005-06-13  Geoffrey Keating  <geoffk@apple.com>
+
+       * Make-lang.in (fortran.install-man): Doesn't depend on installdirs.
+       (rule for installing f95.1 manpage): Does depend on installdirs.
+
+2005-06-13  Jakub Jelinek  <jakub@redhat.com>
+
+       PR fortran/22038
+       * trans-stmt.c (gfc_trans_forall_loop): Only increment maskindex
+       in the innermost loop.
+
+       * trans-expr.c (gfc_conv_function_call): Return int instead of
+       void.  Use a local variable for has_alternate_specifier and
+       return it.  Avoid modification of function type's return value
+       in place, since it may be shared.
+       * trans.h (has_alternate_specifier): Remove.
+       (gfc_conv_function_call): Change return type.
+       * trans-stmt.c (has_alternate_specifier): Remove.
+       (gfc_trans_call): Add a local has_alternate_specifier variable,
+       set it from gfc_conv_function_call return value.
+
+2005-06-12  Richard Henderson  <rth@redhat.com>
+
+       * trans-array.c (gfc_conv_descriptor_data_get): Rename from
+       gfc_conv_descriptor_data.  Cast the result to the DATAPTR type.
+       (gfc_conv_descriptor_data_set, gfc_conv_descriptor_data_addr): New.
+       (gfc_trans_allocate_array_storage): Use them.
+       (gfc_array_allocate, gfc_array_deallocate): Likewise.
+       (gfc_trans_dummy_array_bias, gfc_conv_expr_descriptor): Likewise.
+       (gfc_trans_deferred_array): Likewise.
+       * trans-expr.c (gfc_conv_function_call): Likewise.
+       (gfc_trans_subcomponent_assign): Likewise.
+       (gfc_trans_pointer_assignment): Likewise.
+       * trans-intrinsic.c (gfc_conv_allocated): Likewise.
+       * trans-types.c (gfc_array_descriptor_base): New.
+       (gfc_get_element_type): Use GFC_TYPE_ARRAY_DATAPTR_TYPE.
+       (gfc_get_array_descriptor_base): Break out from ...
+       (gfc_get_array_type_bounds): ... here.  Create type variants.
+       * trans-array.h (gfc_conv_descriptor_data_get): Declare.
+       (gfc_conv_descriptor_data_set, gfc_conv_descriptor_data_addr): Declare.
+
+2005-06-12  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-expr.c (gfc_conv_variable): POINTER results don't need f2c
+       calling conventions.  Look at sym instead of sym->result.
+       * trans-types.c (gfc_sym_type): Remove workaround for frontend bug.
+       Remove condition which is always false with workaround removed.
+       (gfc_return_by_reference): Always look at sym, never at sym->result.
+
+2005-06-11  Steven G. Kargl  <kargls@comcast.net>
+
+       PR fortran/17792
+       PR fortran/21375
+       * trans-array.c (gfc_array_deallocate): pstat is new argument
+       (gfc_array_allocate): update gfc_array_deallocate() call.
+       (gfc_trans_deferred_array): ditto.
+       * trans-array.h: update gfc_array_deallocate() prototype.
+       * trans-decl.c (gfc_build_builtin_function_decls): update declaration
+       * trans-stmt.c (gfc_trans_deallocate): Implement STAT= feature.
+
+2005-06-07  Jerry DeLisle  <jvdelisle@verizon.net>
+
+       * intrinsic.texi: Add documentation for dcmplx, digits,
+       dim, idim, ddim, dot_product, dprod, dreal, and dtime.
+
+2005-06-05  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/21912
+       * trans-array.c (gfc_trans_array_constructor_value): Slightly reorder.
+       Generate correct exit condition in case of negative steps in
+       implied-do loops.
+
+       * invoke.texi: Fix description of flags required for compatibility
+       with g77.
+
+2005-06-04  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+       Erik Schnetter  <schnetter@aei.mpg.de>
+
+       PR fortran/19195
+       * trans.c (gfc_get_backend_locus): Remove unnecessary adjustment,
+       remove FIXME comment.
+
+2005-06-04  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * match.c (match_forall_iterator): Don't immediately give error if '='
+       is not followed by an expression.
+
+2005-06-04  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+       Erik Edelmann  <erik.edelmann@iki.fi>
+
+       * array.c (gfc_match_array_constructor): Disallow empty array
+       constructor.
+
+2005-06-03  Jerry DeLisle  <jvdelisle@verizon.net>
+
+       * fortran/intrinsic.texi: Add documentation for
+       command_argument_count, conjg, dconjg, count,
+       cpu_time, cshift, date_and_time, dble, dfloat.
+
+2005-06-01  Roger Sayle  <roger@eyesopen.com>
+
+       * intrinsic.c (add_conv): No longer take a "simplify" argument as
+       its always gfc_convert_constant, instead take a "standard" argument.
+       (add_conversions): Change all existing calls of add_conv to pass
+       GFC_STD_F77 as appropriate.  Additionally, if we're allowing GNU
+       extensions support integer-logical and logical-integer conversions.
+       (gfc_convert_type_warn): Warn about use the use of these conversions
+       as a extension when appropriate, i.e. with -pedantic.
+       * simplify.c (gfc_convert_constant): Add support for integer to
+       logical and logical to integer conversions, using gfc_int2log and
+       gfc_log2int.
+       * arith.c (gfc_log2int, gfc_int2log): New functions.
+       * arith.h (gfc_log2int, gfc_int2log): Prototype here.
+       * gfortran.texi: Document this new GNU extension.
+
+2005-06-01  Paul Thomas  <pault@gcc.gnu.org>
+
+       * fortran/trans-expr.c (gfc_conv_variable): Clean up bracketting.
+       * fortran/trans-expr.c (gfc_conv_function_call): Insert spaces.
+       Correct comments and replace convert of integer_one_node with
+       build_int_cst.
+
+2005-06-01  Jakub Jelinek  <jakub@redhat.com>
+
+       PR fortran/21729
+       * resolve.c (resolve_contained_fntype): Use sym->attr.untyped
+       to avoid giving error multiple times.
+       (resolve_entries): Don't error about BT_UNKNOWN here.
+       (resolve_unknown_f): Capitalize IMPLICIT for consistency.
+       (resolve_fntype): New function.
+       (gfc_resolve): Call resolve_fntype.
+
+2005-06-01  Feng Wang  <fengwang@nudt.edu.cn>
+
+       PR fortran/20883
+       * fortran/io.c (resolve_tag): Fix error message.
+
+2005-05-31  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * fortran/trans-decl.c: Don't include errors.h.
+       * fortran/Make-lang.in: Updates dependencies.
+
+2005-05-31  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/18109
+       PR fortran/18283
+       PR fortran/19107
+       * fortran/trans-array.c (gfc_conv_expr_descriptor): Obtain the
+       string length from the expression typespec character length value
+       and set temp_ss->stringlength and backend_decl. Obtain the
+       tree expression from gfc_conv_expr rather than gfc_conv_expr_val.
+       Dereference the expression to obtain the character.
+       * fortran/trans-expr.c (gfc_conv_component_ref): Remove the
+       dereference of scalar character pointer structure components.
+       * fortran/trans-expr.c (gfc_trans_subarray_assign): Obtain the
+       string length for the structure component from the component
+       expression.
+
+2005-05-30  Roger Sayle  <roger@eyesopen.com>
+
+       * gfortran.h (GFC_STD_LEGACY): New "standard" macro.  Reindent.
+       * options.c (gfc_init_options): By default, allow legacy extensions
+       but warn about them.
+       (gfc_post_options): Make -pedantic warn about legacy extensions
+       even with -std=legacy.
+       (gfc_handle_option): Make -std=gnu follow the default behaviour
+       of warning about legacy extensions, but allowing them. Make the
+       new -std=legacy accept everything and warn about nothing.
+       * lang.opt (std=legacy): New F95 command line option.
+       * invoke.texi: Document both -std=f2003 and -std=legacy.
+       * gfortran.texi: Explain the two types of extensions and document
+       how they are affected by the various -std= command line options.
+
+2005-05-30  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * trans-expr.c: Remove trailing ^M.
+
+       * trans-expr.c: Fix comment typos.
+
+2005-05-29  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/16939
+       PR fortran/17192
+       PR fortran/17193
+       PR fortran/17202
+       PR fortran/18689
+       PR fortran/18890
+       * fortran/trans-array.c (gfc_conv_resolve_dependencies): Add string
+       length to temp_ss for character pointer array assignments.
+       * fortran/trans-expr.c (gfc_conv_variable): Correct errors in
+       dereferencing of characters and character pointers.
+       * fortran/trans-expr.c (gfc_conv_function_call): Provide string
+       length as return argument for various kinds of handling of return.
+       Return a char[]* temporary for character pointer functions and
+       dereference the temporary upon return.
+
+2005-05-29  Janne Blomqvist  <jblomqvi@vipunen.hut.fi>
+           Steven G. Kargl  <kargls@comcast.net>
+
+       fortran/PR20846
+       * io.c (gfc_match_inquire): Implement constraints on UNIT and FILE usage.
+
+2005-05-29  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       PR libfortran/20006
+       * io.c (format_item_1): Add check and extension warning for
+       $ edit descriptor.
+
+2005-05-28  Steven G. Kargl  <kargls@comcast.net>
+
+       * arith.c (gfc_arith_init_1): Fix off by one problem;
+       (gfc_check_integer_range): Chop extra bits in subnormal numbers.
+
+2005-05-28  Jerry DeLisle   <jvdelisle@verizon.net>
+           Steven G. Kargl  <kargls@comcast.net>
+
+       * intrinsic.texi: added documentation for BIT_SIZE, BTEST, CHAR, CEILING
+       and CMPLX
+
+2005-05-27  Steven G. Kargl  <kargls@comcast.net>
+
+       * trans-array.c (gfc_trans_deferred_array): Use build_int_cst to force
+       like types in comparsion.
+
+2005-05-26  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * data.c, parse.c, trans-array.c, trans-decl.c,
+       trans-intrinsic.c, trans-stmt.c, trans-types.c, trans.c,
+       trans.h: Fix comment typos.  Follow spelling conventions.
+
+2005-05-22  Roger Sayle  <roger@eyesopen.com>
+
+       * gfortran.texi: Document some more GNU extensions.
+
+2005-05-22  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       * error.c (gfc_warning): Fix typo in comment.
+
+2005-05-18  Thomas Koenig  <Thomas.Koenig@online.de>
+
+       PR libfortran/21127
+       * fortran/iresolve.c (gfc_resolve_reshape): Add
+       gfc_type_letter (BT_COMPLEX) for complex to
+       to resolved function name.
+
+2005-05-18  Erik Edelmann  <erik.edelmann@iki.fi>
+
+       * array.c (gfc_match_array_constructor): Support [ ... ]
+       style array constructors.
+
+2005-05-18  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * f95-lang.c (gfc_init_builtin_functions): Define BUILT_IN_TRUNC
+       and BUILT_IN_TRUNCF instead of BUILT_IN_FLOOR and BUILT_IN_FLOORF.
+       * trans-intrinsic.c (build_fix_expr): Change 'op' argument
+       to correct enum type.
+       (gfc_conv_intrinsic_aint): Likewise.  Clarify comment in front of
+       function.  Add default case to switch, deal with FIX_TRUNC_EXPR
+       instead of FIX_FLOOR_EXPR.
+
+2005-05-18  Feng Wang  <fengwang@nudt.edu.cn>
+
+       PR fortran/20954
+       * trans-const.c (gfc_conv_const_charlen): Use gfc_charlen_type_node to
+       build character length.
+
+2005-05-17  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       * trans-types.c (gfc_array_range_type): New variable.
+       (gfc_init_types): Initialize gfc_array_range_type.
+       (gfc_get_array_type_bounds): Use gfc_array_range_type.
+
+2005-05-17  Jakub Jelinek  <jakub@redhat.com>
+
+       PR fortran/15080
+       * trans-stmt.c (generate_loop_for_temp_to_lhs): Remove SIZE and COUNT2
+       arguments.  If LSS is gfc_ss_terminator, increment COUNT1 by 1, instead
+       of incrementing COUNT2 and using COUNT1+COUNT2 increment COUNT1 and use
+       just that as index.
+       (generate_loop_for_rhs_to_temp): Likewise.
+       (compute_overall_iter_number): Add INNER_SIZE_BODY argument.
+       It non-NULL, add it to body.
+       (allocate_temp_for_forall_nest_1): New function, split from
+       allocate_temp_for_forall_nest.
+       (allocate_temp_for_forall_nest): Add INNER_SIZE_BODY argument,
+       propagate it down to compute_overall_iter_number.  Use
+       allocate_temp_for_forall_nest_1.
+       (gfc_trans_assign_need_temp): Remove COUNT2.  Call
+       compute_inner_temp_size into a new stmtblock_t.  Adjust calls to
+       allocate_temp_for_forall_nest, generate_loop_for_rhs_to_temp
+       and generate_loop_for_temp_to_lhs.
+       (gfc_trans_pointer_assign_need_temp): Adjust calls to
+       allocate_temp_for_forall_nest.
+       (gfc_evaluate_where_mask): Call compute_inner_temp_size into a new
+       stmtblock_t.  Call compute_overall_iter_number just once, then
+       allocate_temp_for_forall_nest_1 twice with the same size.
+       Initialize mask indexes if nested_forall_info != NULL.
+       (gfc_trans_where_2): Initialize mask indexes before calling
+       gfc_trans_nested_forall_loop.
+
+2005-05-15  Feng Wang  <fengwang@nudt.edu.cn>
+       Jerry DeLisle  <jvdelisle@verizon.net>
+
+       PR fortran/17432
+       * trans-stmt.c (gfc_trans_label_assign): fix pointer type, to
+       resolve ICE on assign of format label.
+       * trans-io.c (set_string): add fold-convert to properly
+       handle assigned format label in write.
+
+2005-05-13  Paul Brook  <paul@codesourcery.com>
+
+       * trans-stmt.c (gfc_trans_forall_1): Fix comment typo.
+
+2005-05-12  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-types.c (gfc_is_nodesc_array): Remove redundant check.
+
+2005-05-11  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/21260
+       * io.c (check_format): Look for literal characters inside
+       hollerith constant.
+
+2005-05-11  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * resolve.c (resolve_symbol): Copy 'pointer' and 'dimension'
+       attribute from result symbol to function symbol.
+       * trans-expr.c (gfc_conv_function_call): Look at sym->attr.dimension
+       instead of sym->result->attr.dimension.
+
+2005-05-10  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/20178
+       * gfortran.h (gfc_option): Add flag_f2c.
+       * invoke.texi: Document '-ff2c' command line option.  Adapt
+       documentation for '-fno-second-underscore' and '-fno-underscoring'.
+       * lang.opt (ff2c): New entry.
+       * options.c (gfc-init_options): Set default calling convention
+       to -fno-f2c.  Mark -fsecond-underscore unset.
+       (gfc_post_options): Set -fsecond-underscore if not explicitly set
+       by user.
+       (handle_options): Set gfc_option.flag_f2c according to requested
+       calling convention.
+       * trans-decl.c (gfc_get_extern_function_decl): Use special f2c
+       intrinsics where necessary.
+       (gfc_trans_deferred_vars): Change todo error to assertion.
+       * trans-expr.c (gfc_conv_variable): Dereference access
+       to hidden result argument.
+       (gfc_conv_function_call): Add hidden result argument to argument
+       list if f2c calling conventions requested.  Slightly restructure
+       tests.  Convert result of default REAL function to requested type
+       if f2c calling conventions are used.  Dereference COMPLEX result
+       if f2c cc are used.
+       * trans-types.c (gfc_sym_type):  Return double for default REAL
+       function if f2c cc are used.
+       (gfc_return_by_reference): Slightly restructure logic.  Return
+       COMPLEX by reference depending on calling conventions.
+       (gfc_get_function_type): Correctly make hidden result argument a
+       pass-by-reference argument for COMPLEX.  Remove old code which does
+       this for derived types.
+
+2005-05-09  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * match.c (gfc_match_return): Only require space after keyword when
+       it is obligatory.  Only give stdwarn to after matching is successful.
+       * dump-parse-tree.c (gfc_show_symbol): Deal with alternate returns.
+
+2005-05-08  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * intrinsic.texi: Fix typos.
+
+2005-05-07  Steven G. Kargl  <kargls@comcast.net>
+
+       * intrinsic.texi:  Document ASSOCIATED and ATAN2.  Update Bessel function
+       description to include information about scalar arguments.
+
+2005-05-03  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * Make-lang.in, dump-parse-tree.c, invoke.texi, lang.opt,
+       match.h, trans-array.h: Update copyright.
+
+2005-04-29  Tom Tromey  <tromey@redhat.com>
+
+       * f95-lang.c (poplevel): Updated for change to build_block.
+
+2005-04-29  Jakub Jelinek  <jakub@redhat.com>
+
+       PR fortran/13082
+       PR fortran/18824
+       * trans-expr.c (gfc_conv_variable): Handle return values in functions
+       with alternate entry points.
+       * resolve.c (resolve_entries): Remove unnecessary string termination
+       after snprintf.  Set result of entry master.
+       If all entries have the same type, set entry master's type
+       to that common type, otherwise set mixed_entry_master attribute.
+       * trans-types.c (gfc_get_mixed_entry_union): New function.
+       (gfc_get_function_type): Use it for mixed_entry_master functions.
+       * gfortran.h (symbol_attribute): Add mixed_entry_master bit.
+       * decl.c (gfc_match_entry): Set entry->result properly for
+       function ENTRY.
+       * trans-decl.c (gfc_get_symbol_decl): For entry_master, skip over
+       __entry argument.
+       (build_entry_thunks): Handle return values in entry thunks.
+       Clear BT_CHARACTER's ts.cl->backend_decl, so that it is not
+       shared between multiple contexts.
+       (gfc_get_fake_result_decl): Use DECL_ARGUMENTS from
+       current_function_decl instead of sym->backend_decl.  Skip over
+       entry master's entry id argument.  For mixed_entry_master entries or
+       their results, return a COMPONENT_REF of the fake result.
+       (gfc_trans_deferred_vars): Don't warn about missing return value if
+       at least one entry point uses RESULT.
+       (gfc_generate_function_code): For entry master returning
+       CHARACTER, copy ts.cl->backend_decl to all entry result syms.
+       * trans-array.c (gfc_trans_dummy_array_bias): Don't consider return
+       values optional just because they are in entry master.
+
+2005-04-29  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       * gfortran.h (gfc_namespace): Add seen_implicit_none field,
+       Tobias forgot this in previous commit.
+
+2005-04-29  Paul Brook   <paul@codesourcery.com>
+
+       * trans-expr.c (gfc_conv_expr_present): Fix broken assert.  Update
+       comment.
+
+2005-04-29  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * gfortran.h (gfc_namespace): Add seen_implicit_none field.
+       * symbol.c (gfc_set_implicit_none): Give error if there's a previous
+       IMPLICIT NONE, set seen_implicit_none.
+       (gfc_merge_new_implicit): Error if there's an IMPLICIT NONE statement.
+
+2005-04-28  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * gfortran.h (gfc_gsymbol): Make name a const char *.
+       * symbol.c (gfc_get_gsymbol): Allocate gsymbol name via
+       gfc_get_string.
+
+2005-04-28  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       PR fortran/20865
+       * resolve.c (resolve_actual_arglist): Issue an error if a statement
+       functions is used as actual argument.
+
+2005-04-27  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       PR fortran/21177
+       * interface.c (compare_parameter): Ignore type for EXPR_NULL
+       only if type is BT_UNKNOWN.
+
+2005-04-25  Paul Brook  <paul@codesourcery.com>
+       Steven G. Kargl  <kargls@comcast.net>
+
+       PR fortran/20879
+       * check.c (gfc_check_ichar_iachar): New function.
+       * instinsic.h (gfc_check_ichar_iachar): Add prototype.
+       * intrinsic.c (add_functions): Use it.
+       * primary.c (match_varspec, gfc_match_rvalue): Clear incorrect
+       character expression lengths.
+
+2005-04-24  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/20059
+       * trans-common.c (translate_common): Cast offset and
+       common_segment->offset to type int for warning message.
+
+2005-04-23  DJ Delorie  <dj@redhat.com>
+
+       * trans-decl.c: Adjust warning() callers.
+
+2005-04-23  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-const.c (gfc_conv_mpfr_to_tree): Use hexadecimal string as
+       intermediate representation.  Fix typo in comment.
+
+2005-04-21  Steven G. Kargl  <kargls@comcast.net>
+
+       * trans-const.c (gfc_conv_mpfr_to_tree): Remove unneeded computation;
+       simplify logic; Add a gcc_assert.
+
+2005-04-19  Steven G. Kargl  <kargls@comcast.net>
+
+       * trans-const.c (gfc_conv_mpz_to_tree): Fix comment.
+
+2005-04-19  Arnaud Desitter  <arnaud.desitter@ouce.ox.ac.uk>
+           Steven G. Kargl  <kargls@comcast.net>
+
+       * invoke.texi: Update -Waliasing description
+
+2005-04-19  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       PR fortran/16861
+       * resolve.c (resolve_variable): If e->symtree is not set, this
+       ought to be a FAILURE, and not a segfault.
+
+2005-04-17  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR fortran/17472
+       PR fortran/18209
+       PR fortran/18396
+       PR fortran/19467
+       PR fortran/19657
+       * fortran/trans-io.c (gfc_build_io_library_fndecls): Create
+       declaration for st_set_nml_var and st_set_nml_var_dim. Remove
+       declarations of old namelist functions.
+       (build_dt): Simplified call to transfer_namelist_element.
+       (nml_get_addr_expr): Generates address expression for start of
+       object data. New function.
+       (nml_full_name): Qualified name for derived type components. New
+       function.
+       (transfer_namelist_element): Modified for calls to new functions
+       and improved derived type handling.
+
+2005-04-17  Richard Guenther  <rguenth@gcc.gnu.org>
+
+       * scanner.c (gfc_next_char_literal): Reset truncation flag
+       for lines ending in a comment for both fixed and free form.
+       (load_line): Do not set truncated flag if only truncating
+       the EOL marker.
+
+2005-04-15  Richard Guenther  <rguenth@gcc.gnu.org>
+
+       PR fortran/14569
+       * gfortran.h (gfc_linebuf): Add truncated field.
+       * parse.c (next_statement): Handle warning for truncated
+       lines.
+       * scanner.c (load_line): Return if line was truncated.
+       No longer warn for truncated lines.  Remove unused parameters.
+       (load_file): Store load_line return value to linebuf.
+       (gfc_error_recovery): Do not advance line at the end.
+
+2005-04-14  Steven G. Kargl  <kargls@comcast.net>
+
+       * gfortran.h (gfc_real_info): Add subnormal struct member.
+       * arith.c (gfc_arith_init_1): Set it.
+       (gfc_check_real_range): Use it.
+       * simplify.c (gfc_simplify_nearest): Fix nearest(0.,1.).
+
+2005-04-12  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * simplify.c: Fix a comment typo.
+
+2005-04-11  Richard Sandiford  <rsandifo@redhat.com>
+
+       * lang.opt: Refer to the GCC internals documentation instead of c.opt.
+
+2005-04-11  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * simplify.c (gfc_simplify_nearest): Overhaul.
+
+2005-04-10  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * interface.c: Fix a comment typo.
+
+2005-04-10  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       * match.c (match_arithmetic_if): Arithmetic IF is obsolete in
+       Fortran 95.
+
+2005-04-09  Steven G. Kargl  <kargls@comcast.net>
+
+       * simplify.c (gfc_simplify_anint): Use mpfr_round()
+       (gfc_simplify_dnint): ditto.
+       (gfc_simplify_nint): ditto.
+
+2005-04-09  Andrew Pinski  <pinskia@physics.uc.edu>
+
+       PR fortran/13257
+       * io.c (check_format): Allow an optional comma
+       between descriptors.
+
+2005-04-09  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       * match.c (match_arithmetic_if): Remove gfc_ prefix and correct
+       comment according to GNU coding style.
+       (gfc_match_if): Remove gfc_ prefix in call to
+       match_arithmetic_if.
+
+2005-04-08  Diego Novillo  <dnovillo@redhat.com>
+
+       * match.c (gfc_match_arithmetic_if): Declare static.
+
+2005-04-08  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       PR fortran/17229
+       * match.c (gfc_match_arithmetic_if): New function to match an
+       arithmetic IF statement.
+       (gfc_match_if): Use gfc_match_arithmetic_if to match an
+       arithmetic IF statement embedded in a simple IF statement.
+
+2005-04-07  Steven G. Kargl  <kargls@comcast.net>
+
+       * simplify.c (gfc_simplify_exponent): Fix exponent(tiny(x))
+
+2005-04-06  Steven G. Kargl  <kargls@comcast.net>
+
+       * invoke.texi: Remove documentation of -std=f90
+
+2005-04-06  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * expr.c (gfc_check_assign): Don't allow NULL as rhs in a
+       non-pointer assignment.
+
+2005-04-05  Feng Wang  <fengwang@nudt.edu.cn>
+
+       PR fortran/15959
+       PR fortran/20713
+
+       * array.c (resolve_character_array_constructor): New function. Set
+       constant character array's character length.
+       (gfc_resolve_array_constructor): Use it.
+       * decl.c (add_init_expr_to_sym): Set symbol and initializer character
+       length.
+       (gfc_set_constant_character_len): New function. Set constant character
+       expression according the given length.
+       * match.h (gfc_set_constant_character_len): Add prototype.
+
+2005-04-04  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       * intrinsic.texi: BES?? functions are not in the f95 standard.
+
+2005-04-03  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       * intrinsic.texi: Document COS, EXP, LOG, LOG10, SIN, SQRT, TAN.
+
+2005-04-03  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       * intrinsic.texi: Document BESJ0, BESJ1, BESJN, BESY0, BESY1,
+       BESYN, ATAN, COSH, ERF, ERC, SINH, TANH.
+
+2005-04-02  Steven G. Kargl  <kargls@comcast.net>
+
+       * intrinsic.texi: Document ALLOCATED, ANINT, ANY, ASIN; fix typos
+
+2005-04-01  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * decl.c, f95-lang.c, interface.c, module.c, trans-stmt.c,
+       trans.h: Fix comment typos.
+
+2005-03-29  Steven G. Kargl  <kargls@comcast.net>
+
+       * gfortran.h (option_t): Change d8, i8, r8 to flag_default_double,
+       flag_default_integer, flag_default_real
+       * invoke.texi: Update documentation
+       * lang.opt: Remove d8, i8, r8 definitions; Add fdefault-double-8
+       fdefault-integer-8, and fdefault-real-8 definitions.
+       * options.c (gfc_init_options): Set option defaults
+       (gfc_handle_option): Handle command line options.
+       * trans-types.c (gfc_init_kinds): Use options.
+
+2005-03-29  Keith Besaw  <kbesaw@us.ibm.com>
+
+       * f95-lang.c (builtin_function): Process the attrs parameter
+       and apply the "const" attribute to the builtin if found.
+
+2005-03-27  Steven G. Kargl  <kargls@comcast.net>
+
+       * intrinsic.texi: Document AIMAG, AINT, ALL
+
+2005-03-26  Steven G. Kargl  <kargls@comcast.net>
+
+       * arith.c (check_result): Fix illogical logic.
+
+2005-03-26  Canqun Yang  <canqun@nudt.edu.cn>
+
+       * trans-common.c (create_common): Build RECORD_NODE for common blocks
+       contain no equivalence objects.
+       (add_equivalences): New argument saw_equiv.
+       (trans_common): New local variable saw_equiv.
+       (finish_equivalences): Add a local variable dummy, Always pass true
+       for the 3rd parameter to create_common.
+
+2005-03-25  Steven G. Kargl  <kargls@comcast.net>
+
+       * intrinsic.texi: Fix "make dvi"
+
+2005-03-24  Steven G. Kargl  <kargls@comcast.net>
+
+       * intrinsic.texi: New file.
+       * gfortran.texi: Include it; white space change; fix typo.
+
+2005-03-23  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * f95-lang.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove.
+
+2005-03-23  Steven Bosscher  <stevenb@suse.de>
+
+       * convert.c (convert): Replace fold (buildN (...)) with fold_buildN.
+       * trans-array.c (gfc_trans_allocate_array_storage,
+       gfc_trans_allocate_temp_array gfc_trans_array_constructor_value,
+       gfc_conv_array_index_ref, gfc_trans_array_bound_check,
+       gfc_conv_array_index_offset, gfc_conv_scalarized_array_ref,
+       gfc_conv_array_ref, gfc_trans_preloop_setup, gfc_conv_ss_startstride,
+       gfc_conv_loop_setup, gfc_array_init_size, gfc_trans_array_bounds,
+       gfc_trans_auto_array_allocation, gfc_trans_dummy_array_bias,
+       gfc_conv_expr_descriptor): Likewise.
+       * trans-expr.c (gfc_conv_powi, gfc_conv_string_tmp,
+       gfc_conv_concat_op, gfc_conv_expr_op): Likewise.
+       * trans-intrinsic.c (build_round_expr, gfc_conv_intrinsic_bound,
+       gfc_conv_intrinsic_cmplx, gfc_conv_intrinsic_sign,
+       gfc_conv_intrinsic_minmaxloc, gfc_conv_intrinsic_minmaxval,
+       gfc_conv_intrinsic_btest, gfc_conv_intrinsic_bitop,
+       gfc_conv_intrinsic_singlebitop, gfc_conv_intrinsic_ibits,
+       gfc_conv_intrinsic_ishft, gfc_conv_intrinsic_ishftc,
+       gfc_conv_intrinsic_merge, prepare_arg_info,
+       gfc_conv_intrinsic_rrspacing, gfc_conv_intrinsic_repeat): Likewise.
+       * trans-stmt.c (gfc_trans_simple_do, gfc_trans_do, gfc_trans_do_while,
+       gfc_trans_forall_loop, gfc_do_allocate, generate_loop_for_temp_to_lhs,
+       generate_loop_for_rhs_to_temp, compute_inner_temp_size,
+       allocate_temp_for_forall_nest, gfc_trans_pointer_assign_need_temp,
+       gfc_trans_forall_1, gfc_evaluate_where_mask, gfc_trans_where_assign):
+       Likewise.
+       * trans-types.c (gfc_get_dtype, gfc_get_array_type_bounds): Likewise.
+       * trans.c (gfc_add_modify_expr): Likewise.
+
+2005-03-22  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       * check.c (gfc_check_chdir, gfc_check_chdir_sub, gfc_check_kill,
+       gfc_check_kill_sub, gfc_check_link, gfc_check_link_sub,
+       gfc_check_symlnk, gfc_check_symlnk_sub, gfc_check_rename,
+       gfc_check_rename_sub, gfc_check_sleep_sub, gfc_check_gerror,
+       gfc_check_getlog, gfc_check_hostnm, gfc_check_hostnm_sub,
+       gfc_check_perror): new functions to check newly implemented
+       g77 intrinsics.
+       * gfortran.h: adding symbols for new intrinsics.
+       * intrinsic.c (add_functions): adding new intrinsics.
+       (add_subroutines): adding new intrinsics.
+       * intrinsic.h: prototype for all checking and resolving
+       functions.
+       * iresolve.c (gfc_resolve_chdir, gfc_resolve_chdir_sub,
+       gfc_resolve_hostnm, gfc_resolve_ierrno, gfc_resolve_kill,
+       gfc_resolve_link, gfc_resolve_rename, gfc_resolve_symlnk,
+       gfc_resolve_time, gfc_resolve_time8, gfc_resolve_rename_sub,
+       gfc_resolve_kill_sub, gfc_resolve_link_sub,
+       gfc_resolve_symlnk_sub, gfc_resolve_sleep_sub,
+       gfc_resolve_gerror, gfc_resolve_getlog, gfc_resolve_hostnm_sub,
+       gfc_resolve_perror): new functions to resolve intrinsics.
+       * trans-intrinsic.c (gfc_conv_intrinsic_function): add case
+       for new symbols.
+
+2005-03-19  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * dump-parse-tree.c (gfc_show_expr): Dump name of namespace
+       in which the variable is declared.
+
+       PR fortran/18525
+       * resolve.c (was_declared): Also check for dummy attribute.
+
+2005-03-19  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * gfortran.h (arith): Remove ARITH_0TO0.
+       * arith.c (gfc_arith_error): Remove handling of ARITH_0TO0.
+       (gfc_arith_power): Remove special casing of zero to integral
+       power zero.
+
+2005-03-18  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * Make-lang.in (fortran-warn): Remove -Wno-error.
+       (expr.o-warn, resolve.o-warn, simplify.o-warn,
+       trans-common.o-warn): Specify -Wno-error.
+
+2005-03-17  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-array.c (gfc_trans_static_array_pointer,
+       get_array_ctor_var_strlen, gfc_conv_array_index_offset): Fix
+       comment and formatting typos.
+
+2005-03-17  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       * invoke.texi: Fix typos.
+
+2005-03-15  Zack Weinberg  <zack@codesourcery.com>
+
+       * Make-lang.in (GFORTRAN_TEXI): Add gcc-vers.texi.
+
+2005-03-15  Feng Wang  <fengwang@nudt.edu.cn>
+
+       * trans-stmt.c (gfc_trans_label_assign): Don't set DECL_ARTIFICIAL flag
+       to zero on label_tree.
+
+2005-03-15  Feng Wang  <fengwang@nudt.edu.cn>
+
+       PR fortran/18827
+       * io.c (resolve_tag): Add checking on assigned label.
+       (match_dt_format): Does not set symbol assign attribute.
+       * match.c (gfc_match_goto):Does not set symbol assign attribute.
+       * resolve.c (resolve_code): Add checking on assigned label.
+       * trans-common.c (build_field): Deals with common variable assigned
+       a label.
+       * trans-stmt.c (gfc_conv_label_variable): New function.
+       (gfc_trans_label_assign): Use it.
+       (gfc_trans_goto): Ditto.
+       * trans-io.c (set_string): Ditto.
+       * trans.h (gfc_conv_label_variable): Add prototype.
+
+2005-03-14  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/20467
+       * symbol.c (check_conflict): A dummy argument can't be a statement
+       function.
+
+2005-03-14  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       * fortran/trans-intrinsic.c (gfc_conv_intrinsic_ishft): Convert
+       the argument of the shift to the unsigned type.
+
+2005-03-13  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/16907
+       * resolve.c (gfc_resolve_index): Allow REAL indices as an extension.
+
+2005-03-13  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/20323
+       * resolve.c (gfc_resolve): Check if character lengths are
+       specification expressions.
+
+2005-03-12  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/20361
+       * trans-array.c (gfc_stack_space_left): Remove unused variable.
+       (gfc_can_put_var_on_stack): Move to trans-decl.c, remove #if 0'ed
+       code.
+       * trans-array.h (gfc_stack_space_left, gfc_can_put_var_on_stack):
+       Remove declaration / prototype.
+       * trans-common.c (build_equiv_decl): Give union a name.  Check if
+       it can be put on the stack.
+       * trans-decl.c (gfc_stack_space_left): Move function here.
+       (gfc_build_qualified_array): Fix comment typo.
+       * trans.h (gfc_put_var_on_stack): Add prototype.
+
+2005-03-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * Make-lang.in (fortran-warn): Set to $(STRICT_WARN) -Wno-error.
+       * decl.c, trans.c: Don't use C++ style comments.
+       * gfortran.h (sym_flavor, procedure_type, sym_intent, gfc_access,
+       ifsrc): Give names to enums and use ENUM_BITFIELD.
+       (gfc_access): Remove trailing comma.
+
+2005-03-05  Steven G. Kargl  <kargls@comcast.net>
+
+       PR 19936
+       * primary.c (match_complex_constant): Mangled complex constant may
+       be an implied do-loop.  Give implied do-loop matcher a chance.
+
+2005-03-05  Steven G. Kargl  <kargls@comcast.net>
+
+       PR fortran/19754
+       * resolve.c (compare_shapes):  New function.
+       (resolve_operator): Use it.
+
+2005-03-05  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-const.c (gfc_conv_constant_to_tree): Use correct tree
+       type for COMPLEX constants.
+
+2005-03-04  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/19673
+       * trans-expr.c (gfc_conv_function_call): Correctly dereference
+       argument from a pointer function also if it has a result clause.
+
+2005-03-04  Steven G. Kargl  <kargls@comcast.net>
+
+       * expr.c (gfc_copy_shape_excluding): Change && to ||.
+
+2005-03-04  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-intrinsic.c (gfc_get_symbol_for_expr): Fix comment typo,
+       clarify comment.
+
+2005-02-28  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+       (port from g95)
+
+       PR fortran/19479
+       * simplify.c (gfc_simplify_bound): Rename to ...
+       (simplify_bound): ... this and overhaul.
+
+2005-02-28  Steven G. Kargl  <kargl@gcc.gnu.org>
+
+       * trans-intrinsic.c (gfc_conv_intrinsic_iargc): remove boolean argument.
+       (gfc_conv_intrinsic_function): update function calls
+
+2005-02-27  Steven G. Kargl  <kargl@gcc.gnu.org>
+
+       PR fortran/20058
+       * trans-types.c (gfc_max_integer_kind): Declare
+       (gfc_init_kinds): Initialize it.
+       * gfortran.h (gfc_max_integer_kind): extern it.
+       * primary.c (match_boz_constant): Use it; remove gfortran extension
+       of kind suffixes on BOZ literal constants
+
+
+2005-02-27  Steven G. Kargl  <kargls@comcast.net>
+
+       * arith.c (gfc_check_real_range):  Remove multiple returns
+       (check_result): New function.
+       (gfc_arith_uminus,gfc_arith_plus,gfc_arith_times,
+       gfc_arith_divide,gfc_arith_power,gfc_arith_minus): Use it.
+
+
+2005-02-24  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
+
+       * decl.c, resolve.c, trans-array.c, trans.h: Fix comment typo(s).
+
+
+2005-02-24  Tobias Schl"uter  <tobias.schlueter@physik.uni-meunchen.de>
+
+       Unrevert previously reverted patch.  Adding this fix:
+       * module.c (find_true_name): Deal with NULL module.
+
+2005-02-24  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       Revert yesterday's patch:
+       2005-02-23  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+               * gfortran.h (gfc_component, gfc_actual_arglist, ...
+               ... argument.  Copy string instead of pointing to it.
+
+2005-02-23  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * gfortran.h (gfc_get_namespace): Add second argument to prototype.
+       * intrinsic.c (gfc_intrinsic_init_1): Pass second argument to
+       gfc_get_namespace.
+       * module.c (mio_namespace_ref, load_needed): Likewise.
+       * parse.c (parse_interface, parse_contained): Likewise.  Here the
+       correct second argument matters.
+       * symbol.c (gfc_get_namespace): Add parent_types argument, only copy
+       parent's implicit types if this is set.
+       (gfc_symbol_init_2): Pass second argument to gfc_get_namespace.
+       * trans-common.c (build_common_decl): Likewise.
+
+       * gfortran.h (symbol_attribute): New 'untyped' field, fix comment
+       formatting.
+       * symbol.c (gfc_set_default_type): Issue error only once, by setting
+       and checking 'untyped' attribute.
+
+       * gfortran.h (gfc_expr): Move 'operator', 'op1', 'op2', and 'uop'
+       fields into new struct 'op' inside the 'value' union.
+       * arith.c (eval_intrinsic): Adapt all users.
+       * dependency.c (gfc_check_dependency): Likewise.
+       * dump-parse-tree.c (gfc_show_expr): Likewise.
+       * expr.c (gfc_get_expr): Don't clear removed fields.
+       (free_expr0, gfc_copy_expr, gfc_type_convert_binary,
+       gfc_is_constant_expr, simplify_intrinsic_op, check_init_expr,
+       check_intrinsic_op): Adapt to new field names.
+       * interface.c (gfc_extend_expr): Likewise.  Also explicitly
+       nullify 'esym' and 'isym' fields of new function call.
+       * iresolve.c (gfc_resolve_dot_product, gfc_resolve_matmul):
+       Adapt to renamed structure fields.
+       * matchexp.c (build_node, match_level_1, match_expr): Likewise.
+       * module.c (mio_expr): Likewise.
+       * resolve.c (resolve_operator): Likewise.
+       (gfc_find_forall_index): Likewise.  Only look through operands
+       if dealing with EXPR_OP
+       * trans-array.c (gfc_walk_op_expr): Adapt to renamed fields.
+       * trans-expr.c (gfc_conv_unary_op, gfc_conv_power_op,
+       gfc_conv_concat_op, gfc_conv_expr_op): Likewise.
+
+       [ Reverted ]
+       * gfortran.h (gfc_component, gfc_actual_arglist, gfc_user_op): Make
+       'name' a 'const char *'.
+       (gfc_symbol): Likewise, also for 'module'.
+       (gfc_symtree): Make 'name' a 'const char *'.
+       (gfc_intrinsic_sym): Likewise, also for 'lib_name'.
+       (gfc_get_gsymbol, gfc_find_gsymbol): Add 'const' qualifier to
+       'char *' argument.
+       (gfc_intrinsic_symbol): Use 'gfc_get_string' instead of 'strcpy' to
+       initialize 'SYM->module'.
+       * check.c (gfc_check_minloc_maxloc, check_reduction): Check for NULL
+       pointer instead of empty string.
+       * dump-parse-tree.c (gfc_show_actual_arglist): Likewise.
+       * interface.c (gfc_compare_types): Adapt check to account for possible
+       NULL pointer.
+       (compare_actual_formal): Check for NULL pointer instead of empty
+       string.
+       * intrinsic.c (gfc_current_intrinsic, gfc_current_intrinsic_arg):
+       Add 'const' qualifier.
+       (conv_name): Return a heap allocated string.
+       (find_conv): Add 'const' qualifier to 'target'.
+       (add_sym): Use 'gfc_get_string' instead of 'strcpy'.
+       (make_generic): Check for NULL pointer instead of empty string.
+       (make_alias): Use 'gfc_get_string' instead of 'strcpy'.
+       (add_conv): No need to strcpy result from 'conv_name'.
+       (sort_actual): Check for NULL pointer instead of empty  string.
+       * intrinsic.h (gfc_current_intrinsic, gfc_current_intrinsic_arg):
+       Adapt prototype.
+       * module.c (compare_true_names): Compare pointers instead of strings
+       for 'module' member.
+       (find_true_name): Initialize string fields with gfc_get_string.
+       (mio_pool_string): New function.
+       (mio_internal_string): Adapt comment.
+       (mio_component_ref, mio_component, mio_actual_arg): Use
+       'mio_pool_string' instead of 'mio_internal_string'.
+       (mio_symbol_interface): Add 'const' qualifier to string arguments.
+       Add level of indirection. Use 'mio_pool_string' instead of
+       'mio_internal_string'.
+       (load_needed, read_module): Use 'gfc_get_string' instead of 'strcpy'.
+       (write_common, write_symbol): Use 'mio_pool_string' instead of
+       'mio_internal_string'.
+       (write_symbol0, write_symbol1): Likewise, also check for NULL pointer
+       instead of empty string.
+       (write_operator, write_generic): Pass correct type variable to
+       'mio_symbol_interface'.
+       (write_symtree): Use 'mio_pool_string' instead of
+       'mio_internal_string'.
+       * primary.c (match_keyword_arg): Adapt check to possible
+       case of NULL pointer.  Use 'gfc_get_string' instead of 'strcpy'.
+       * symbol.c (gfc_add_component, gfc_new_symtree, delete_symtree,
+       gfc_get_uop, gfc_new_symbol): Use 'gfc_get_string' instead of
+       'strcpy'.
+       (ambiguous_symbol): Check for NULL pointer instead of empty string.
+       (gfc_find_gsymbol, gfc_get_gsymbol): Add 'const' qualifier on string
+       arguments.
+       * trans-array.c (gfc_trans_auto_array_allocation): Check for NULL
+       pointer instead of empty string.
+       * trans-decl.c (gfc_sym_mangled_identifier,
+       gfc_sym_mangled_function_id, gfc_finish_var_decl, gfc_get_symbol_decl,
+       gfc_get_symbol_decl): Likewise.
+       * trans-io.c (gfc_new_nml_name_expr): Add 'const' qualifier to
+       argument.  Copy string instead of pointing to it.
+
+2005-02-23  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * intrinsic.h, st.c: Update copyright.
+
+2005-02-20  Steven G. Kargl  <kargls@comcast.net>
+
+       * symbol.c: Typos in comments.
+
+2005-02-20  Steven G. Kargl  <kargls@comcast.net>
+
+       * expr.c (gfc_type_convert_binary): Typo in comment.
+
+2005-02-19  Steven G. Kargl  <kargls@comcast.net>
+
+       * check.c (gfc_check_selected_int_kind): New function.
+       * intrinsic.h: Prototype it.
+       * intrinsic.c (add_function): Use it.
+       * simplify (gfc_simplify_ceiling,gfc_simplify_floor): Change
+         BT_REAL to BT_INTEGER and use gfc_default_integer_kind.
+
+2005-02-19  Steven G. Kargl  <kargls@comcast.net>
+
+       * check.c (gfc_check_int): improve checking of optional kind
+       * simplify.c (gfc_simplify_int): Change BT_REAL to BT_INTEGER
+
+2005-02-19  Steven G. Kargl  <kargls@comcast.net>
+
+       * check.c (gfc_check_achar): New function
+       * intrinsic.h: Prototype it.
+       * intrinsic.c (add_function): Use it.
+
+2005-02-13  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-stmt.c (generate_loop_for_temp_to_lhs,
+       generate_loop_for_rhs_to_temp): Remove if whose condition is
+       always true.
+
+2005-02-12  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * symbol.c (gfc_use_ha_derived): Remove, fold functionality into ...
+       (gfc_use_derived): ... this function.
+
+2005-02-09  Richard Henderson  <rth@redhat.com>
+
+       * f95-lang.c (gfc_init_builtin_functions): Call
+       build_common_builtin_nodes; do not define any functions handled
+       by it.
+
+2005-02-08  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * expr.c (gfc_copy_expr): Don't copy 'op1' and 'op2' for
+       EXPR_SUBSTRING.
+       (gfc_is_constant_expr): Check 'ref' to determine if substring
+       reference is constant.
+       (gfc_simplify_expr): Simplify 'ref' instead of 'op1' and 'op2'.
+       (check_init_expr, check_restricted): Check 'ref' instead of 'op1'
+       and 'op2'.
+       * module.c (mio_expr): Read / write 'ref' instead of 'op1' and 'op2'.
+
+2005-02-07  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * gfortran.h (gfc_add_dimension, gfc_add_result, gfc_add_save,
+       gfc_add_dummy, gfc_add_generic, gfc_add_in_common, gfc_add_data,
+       gfc_add_in_namelist, gfc_add_sequence, gfc_add_function,
+       gfc_add_subroutine, gfc_add_access, gfc_add_flavor, gfc_add_entry,
+       gfc_add_procedure): Add argument.
+       * array.c (gfc_set_array_spec), decl.c (var_element, get_proc_name,
+       gfc_match_null, match_type_spec, match_attr_spec,
+       gfc_match_formal_arglist, match_result, gfc_match_function_decl):
+       Update callers to match.
+       (gfc_match_entry): Likewise, fix comment typo.
+       (gfc_match_subroutine, attr_decl1, gfc_add_dimension,
+       access_attr_decl, do_parm, gfc_match_save, gfc_match_modproc,
+       gfc_match_derived_decl): Update callers.
+       * interface.c (gfc_match_interface): Likewise.
+       * match.c (gfc_match_label, gfc_add_flavor,
+       gfc_match_call, gfc_match_common, gfc_match_block_data,
+       gfc_match_namelist, gfc_match_module, gfc_match_st_function):
+       Likewise.
+       * parse.c (parse_derived, parse_interface, parse_contained),
+       primary.c (gfc_match_rvalue, gfc_match_variable): Likewise.
+       * resolve.c (resolve_formal_arglist, resolve_entries): Update callers.
+       * symbol.c (check_conflict, check_used): Add new 'name' argument,
+       use when printing error message.
+       (gfc_add_dimension, gfc_add_result, gfc_add_save, gfc_add_dummy,
+       gfc_add_generic, gfc_add_in_common, gfc_add_data,
+       gfc_add_in_namelist, gfc_add_sequence, gfc_add_function,
+       gfc_add_subroutine, gfc_add_access, gfc_add_flavor, gfc_add_entry,
+       gfc_add_procedure): Add new 'name' argument.  Pass along to
+       check_conflict and check_used.
+       (gfc_add_allocatable, gfc_add_external, gfc_add_intrinsic,
+       gfc_add_optional, gfc_add_pointer, gfc_add_target, gfc_add_elemental,
+       gfc_add_pure, gfc_add_recursive, gfc_add_intent,
+       gfc_add_explicit_interface, gfc_copy_attr): Pass NULL for new
+       argument in calls to any of the modified functions.
+
+2005-02-06  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * gfortran.texi: Don't give last update date.
+
+2006-01-30  Richard Henderson  <rth@redhat.com>
+
+       * options.c (gfc_init_options): Zero flag_errno_math.
+
+2005-01-29  Paul Brook  <paul@codesourcery.com>
+
+       PR fortran/18565
+       * check.c (real_or_complex_check): New function.
+       (gfc_check_fn_c, gfc_check_fn_r, gfc_check_fn_rc): New functions.
+       * intrinsic.c (add_functions): Use new check functions.
+       * intrinsic.h (gfc_check_fn_c, gfc_check_fn_r, gfc_check_fn_rc):
+       Add prototypes.
+
+2005-01-29  Steven G. Kargl  <kargls@comcast.net>
+
+       PR fortran/19589
+       * expr.c (gfc_check_assign):  Check for conformance of logical operands
+
+2005-01-27  Steven Bosscher  <stevenb@suse.de>
+
+       * trans-decl.c (gfc_build_label_decl): Set DECL_ARTIFICAL and
+       TREE_USED for all labels.
+       (gfc_trans_entry_master_switch): Use it instead of building a
+       label by hand.
+       * trans-io.c (add_case): Likewise.
+       * trans-stmt.c (gfc_trans_integer_select): Likewise.
+
+2005-01-23  Paul Brook  <paul@codesourcery.com>
+       Steven G. Kargl  <kargls@comcast.net>
+
+       PR fortran/17941
+       * arith.c (gfc_convert_real): Remove sign handling.
+       * primary.c (match_digits): Allow whitespace after initial sign.
+       (match_real_const): Handle signs here.  Allow whitespace after
+       initial sign.  Remove dead code.
+       (match_const_complex_part): Remove.
+       (match_complex_part): Use match_{real,integer}_const.
+       (match_complex_constant): Cross-promote integer types.
+
+2005-01-23  James A. Morrison  <phython@gcc.gnu.org>
+
+       PR fortran/19294
+       * iresolve.c (gfc_resolve_transpose): Resolve to transpose_c4 or
+       transpose_c8 for complex types.
+
+2005-01-23  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * data.c, dependency.c, f95-lang.c, io.c, trans-array.c,
+       trans-decl.c, trans-expr.c, trans-intrinsic.c, trans-io.c,
+       trans-stmt.c, trans-types.c, trans.h: Fix comment typos.
+       Follow spelling conventions.
+
+2005-01-22  Bud Davis  <bdavis9659@comcast.net>
+
+       PR fortran/19313
+       * trans-io.c (gfc_trans_inquire): Added code to support
+       pad.
+
+2005-01-22  Steven G. Kargl  <kargls@comcast.net>
+
+       * intrinsic.c (make_alias):  Add standard argument.
+       (add_functions): Update make_alias calls.
+
+2005-01-22  Paul Brook  <paul@codesourcery.com>
+
+       * trans-expr.c (gfc_conv_function_call): Remove bogus TODO.
+
+2005-01-22  Paul Brook  <paul@codesourcery.com>
+
+       * gfortran.h (gfc_check_access): Add prototype.
+       * match.c (gfc_match_namelist): Remove TODO.
+       * module.c (check_access): Rename ...
+       (gfc_check_access): ... to this.  Boolify.  Update callers.
+       * resolve.c (resolve_symbol): Check for private objects in public
+       namelists.
+
+2005-01-22  Paul Brook  <paul@codesourcery.com>
+
+       * primary.c (gfc_match_rvalue): Only apply implicit type if variable
+       does not have an explicit type.
+       (gfc_match_variable): Resolve implicit derived types in all cases.
+       Resolve contained function types from their own namespace, not the
+       parent.
+       * resolve.c (resolve_contained_fntype): Remove duplicate sym->result
+       checking.  Resolve from the contained namespace, not the parent.
+
+2005-01-22  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/19543
+       * trans-const.c (gfc_conv_constant_to_tree): Give logical
+       constants the correct type.
+
+       PR fortran/19194
+       * trans-io.c (ADD_STRING): Use gfc_charlen_type_node for string
+       length parameters.
+       (gfc_build_io_library_fndecls): 'rec' and 'recl_in' are not
+       pointer fields.
+
+2005-01-18  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * arith.c, array.c, check.c, decl.c, expr.c, f95-lang.c,
+       gfortran.h, interface.c, intrinsic.c, io.c, iresolve.c,
+       match.c, matchexp.c, misc.c, module.c, options.c, parse.c,
+       scanner.c, simplify.c, symbol.c, trans-array.c, trans-expr.c,
+       trans-io.c, trans-stmt.c, trans.c: Update copyright.
+
+2005-01-17  Ira Rosen  <irar@il.ibm.com>
+
+       * f95-lang.c (gfc_init_builtin_functions): Call targetm.init_builtins.
+
+2005-01-16  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/19182
+       * error.c (error_char): Line-buffer errors / warnings.
+
+2005-01-16  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-intrinsic.c (gfc_conv_intrinsic_ishft): Fix signed /
+       unsigned issue.  Use build_int_cst instead of converting
+       integer_zero_node.  Remove unnecessary conversion.
+
+       * trans-types.c (gfc_get_character_type_len): Use
+       gfc_charlen_type_node as basic type for the range field.
+
+       * trans-intrinsic.c (build_fixbound_expr,
+       gfc_conv_intrinsic_bound, gfc_conv_intrinsic_anyall,
+       gfc_conv_intrinsic_count, gfc_conv_intrinsic_btest,
+       gfc_conv_intrinsic_singlebitop): Use 'build_int_cst' instead
+       of converting 'integer_zero_node' or 'integer_one_node'
+       respectively.
+       (gfc_conv_intrinsic_ishftc): Same, but store in local variable to
+       evade re-building.
+       (gfc_conv_intrinsic_strcmp, gfc_conv_intrinsic_rrspacing,
+       gfc_conv_intrinsic_trim, gfc_conv_intrinsic_iargc): Use
+       'build_int_cst' instead of converting 'integer_zero_node' or
+       'integer_one_node' respectively.
+
+       * trans-intrinsic.c (gfc_conv_intrinsic_index,
+       gfc_conv_intrinsic_scan, gfc_conv_intrinsic_verify): Remove
+       'gfc'-prefix from local variable, remove dead code, use correct
+       type when inserting argument.
+
+       * trans-intrinsic.c, trans-types.c: Update copyright years.
+
+2005-01-16  Steven G. Kargl  <kargls@comcast.net>
+
+       PR 19168
+       * resolve.c (check_case_overlap): Typo in comment.
+       (validate_case_label_expr):  Fix up kinds of case values
+       (resolve_select): Properly handle kind mismatches.
+
+2005-01-16  Paul Brook  <paul@codesourcery.com>
+
+       PR fortran/17675
+       * trans-common.c (translate_common): Remove duplicate function call.
+       (finish_equivalences): Preserve alignment when biasing offsets.
+
+2005-01-15  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de
+
+       * primary.c (check_digit): Call 'ISXDIGIT' instead of assuming
+       ASCII-like character encoding.
+
+2005-01-14  Steven G. Kargl  <kargls@comcast.net>
+
+       * resolve.c (compare_case): Cleanup.
+
+2005-01-14  Steven G. Kargl  <kargls@comcast.net>
+
+       * resolve.c (compare_case): Give arguments correct type.
+
+2005-01-13  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * iresolve.c, trans-common.c, trans-types.c: Fix comment
+       typos.
+
+2005-01-09  Paul Brook  <paul@codesourcery.com>
+
+       PR fortran/17675
+       * trans-common.c (current_common, current_offset): Remove.
+       (create_common): Add head argument.
+       (align_segment): New function.
+       (apply_segment_offset): New function.
+       (translate_common): Merge code from new_segment.  Handle alignment.
+       (new_segment): Remove.
+       (finish_equivalences): Ensure proper alignment.
+
+2005-01-08  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-const.c: Don't include unused math.h.
+
+       * trans-intrinsic.c (gfc_get_intrinsic_lib_fndecl,
+       gfc_conv_intrinsic_bound, gfc_conv_intrinsic_minmaxloc,
+       gfc_conv_intrinsic_ishft, gfc_conv_intrinsic_len): Remove
+       trailing whitespace.
+       (prepare_arg_info): Fix formatting, indenting and remove trailing
+       whitespace.
+       (gfc_conv_intrinsic_spacing, gfc_conv_intrinsic_trim): Remove
+       trailing whitespace.
+
+       * arith.c (arctangent2, gfc_arith_init_1, gfc_arith_done_1,
+       gfc_constant_result, gfc_range_check, gfc_arith_power,
+       eval_type_intrinsic0, eval_intrinsic_f2, gfc_real2real,
+       gfc_real2complex, gfc_complex2int, gfc_complex2real,
+       gfc_complex2complex): Fix whitespace issues.
+       * check.c (must_be, type_check, numeric_check, int_or_real_check,
+       logical_array_check, array_check, scalar_check, nonoptional_check,
+       variable_check, dim_check, check_a_kind, gfc_check_a_ikind,
+       gfc_check_a_xkind, gfc_check_abs, gfc_check_all_any,
+       gfc_check_allocated, gfc_check_a_p, gfc_check_besn,
+       gfc_check_btest, gfc_check_char, gfc_check_cmplx, gfc_check_count,
+       gfc_check_cshift, gfc_check_dcmplx, gfc_check_dble,
+       gfc_check_digits, gfc_check_dot_product, gfc_check_eoshift,
+       gfc_check_fnum, gfc_check_g77_math1, gfc_check_huge, gfc_check_i,
+       gfc_check_iand, gfc_check_ibclr, gfc_check_ibits, gfc_check_ibset,
+       gfc_check_idnint, gfc_check_ieor, gfc_check_index, gfc_check_int,
+       gfc_check_ior, gfc_check_ishft, gfc_check_ishftc, gfc_check_kind,
+       gfc_check_lbound, gfc_check_logical, min_max_args,
+       gfc_check_min_max_integer, gfc_check_min_max_real,
+       gfc_check_min_max_double, gfc_check_matmul,
+       gfc_check_minval_maxval, gfc_check_merge, gfc_check_nearest,
+       gfc_check_pack, gfc_check_precision, gfc_check_radix,
+       gfc_check_range, gfc_check_real, gfc_check_repeat,
+       gfc_check_scale, gfc_check_scan, gfc_check_selected_real_kind,
+       gfc_check_set_exponent): Fix formatting issues.
+       (gfc_check_size, gfc_check_sign): Alphabetize function order,
+       remove whitespace-only line.
+       (gfc_check_fstat, gfc_check_fstat_sub, gfc_check_stat,
+       gfc_check_stat_sub, gfc_check_transfer, gfc_check_transpose,
+       gfc_check_ubound, gfc_check_unpack, gfc_check_verify, gfc_check_x,
+       gfc_check_cpu_time, gfc_check_date_and_time, gfc_check_mvbits,
+       gfc_check_random_number, gfc_check_random_seed,
+       gfc_check_second_sub, gfc_check_system_clock,
+       gfc_check_getcwd_sub, gfc_check_exit, gfc_check_flush,
+       gfc_check_umask, gfc_check_umask_sub, gfc_check_unlink,
+       gfc_check_unlink_sub): Fix formatting issues.
+
+2005-01-08  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * gfortran.h: Remove outdated comment.  Don't include stdio.h
+       explicitly.
+
+2005-01-06  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * gfortranspec.c (lang_specific_driver): Change year to 2005 in
+       output of 'gfortran --version'.
+
+2005-01-03  Steven G. Kargl  <kargls@comcast.net>
+
+       * arith.c: Add system.h; remove string.h
+       * decl.c: Ditto
+       * matchexp.c: Ditto
+       * parse.c: Ditto
+       * resolve.c: Ditto
+       * st.c: Ditto
+       * check.c: Remove stdlib.h and stdarg.h
+       * error.c: Remove stdlib.h, stdarg.h, stdio.h, string.h
+       * expr.c: Add system.h; remove stdarg.h, stdio.h, and string.h
+       * f95-lang.c: Add system.h; remove stdio.h
+       * interface.c: Add system.h; remove stdlib.h and string.h
+       * intrinsic.c: Remove stdarg.h, stdio.h, and string.h
+       * io.c: Remove string.h
+       * simplify.c: Ditto
+       * match.c: Remove stdarg.h and string.h
+       * misc.c: Update copyright; add system.h; remove stdlib.h,
+       string.h, and sys/stat.h
+       * module.c: Add system.h; remove string.h, stdio.h, errno.h,
+       unistd.h, and time.h
+       * option.c: Remove string.h and stdlib.h
+       * primary.c: Ditto
+       * scanner.c: Update copyright; add system.h; remove stdlib.h,
+       stdio.h, string.h, and strings.h
+       * symbol.c: Add system.h; remove stdlib.h, stdio.h, and string.h
+       * trans-array.c: Remove stdio.h and gmp.h
+       * trans-const.c: Ditto
+       * trans-expr.c: Ditto
+       * trans-io.c: Ditto
+       * trans-stmt.c: Ditto
+       * trans.c: Ditto
+       * trans-intrinsic.c: Remove stdio.h and string.h