+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-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>
+ Steven G. Kargl <kargls@comcast.net>
* invoke.texi: Update -Waliasing description