OSDN Git Service

* array.c: Bump GFC_MAX_AC_EXPAND from 100 to 65535.
[pf3gnuchains/gcc-fork.git] / gcc / fortran / ChangeLog
index 5de8b3c..ee144e4 100644 (file)
@@ -1,3 +1,303 @@
+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
        * 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>
+2005-04-17  Paul Thomas <pault@gcc.gnu.org>
 
        PR fortran/17472
        PR fortran/18209