+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