-2007-12-31 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/34558
- * interface.c (gfc_compare_types): Prevent linked lists from
- putting this function into an endless recursive loop.
-
-2007-12-26 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/34532
- * gfortran.texi: Fixed section about implicit conversion of
- logical and integer variables.
-
-2007-12-25 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34514
- * decl.c (attr_decl1): Reject specifying the DIMENSION for
- already initialized variable.
- (do_parm): Reject PARAMETER for already initialized variable.
-
-2007-12-25 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/34533
- * intrinsic.h (gfc_check_etime): Renamed to ...
- (gfc_check_dtime_etime): ... this.
- (gfc_check_etime_sub): Renamed to ...
- (gfc_check_dtime_etime_sub): ... this.
- (gfc_resolve_dtime_sub): New prototype.
- * check.c (gfc_check_etime): Renamed to ...
- (gfc_check_dtime_etime): ... this.
- (gfc_check_etime_sub): Renamed to ...
- (gfc_check_dtime_etime_sub): ... this.
- * iresolve.c (gfc_resolve_dtime_sub): New implementation.
- * intrinsic.c (add_functions): Removed alias from ETIME to DTIME,
- added stand-alone intrinsic DTIME.
- (add_subroutines): Adjusted check and resolve function names for
- DTIME and ETIME.
- * trans-intrinsic.c (gfc_conv_intrinsic_function): Added DTIME
- to known functions in switch.
- * intrinsic.texi (DTIME): Added paragraph about thread-safety,
- fixed return value section.
- (CPU_TIME): Clarified intent and added implementation notes.
-
-2007-12-23 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34421
- * resolve.c (resolve_entries): Add standard error for functions
- returning characters with different length.
-
-2007-12-23 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/34536
- * matchexp.c (match_ext_mult_operand): Print warning for unary
- operators following arithmetic ones by default.
- (match_ext_add_operand): Likewise.
-
-2007-12-22 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/34559
- * simplify.c (gfc_simplify_repeat): Added safeguard for empty
- string literals.
-
-2007-12-22 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR fortran/34549
- * check.c (gfc_check_cshift): Add check that shift is
- type INTEGER.
-
-2007-12-21 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/34540
- * iresolve.c (gfc_resolve_cshift): Take optional dim path
- only if the argument is an optional itself.
- * iresolve.c (gfc_resolve_eoshift): Same.
-
-2007-12-21 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/34438
- * trans-decl.c (gfc_finish_var_decl): Do not mark derived types
- with default initializers as TREE_STATIC unless they are in the
- main program scope.
- (gfc_get_symbol_decl): Pass derived types with a default
- initializer to gfc_defer_symbol_init.
- (init_default_dt): Apply default initializer to a derived type.
- (init_intent_out_dt): Call init_default_dt.
- (gfc_trans_deferred_vars): Ditto.
-
- * module.c (read_module): Check sym->module is there before
- using it in a string comparison.
-
->>>>>>> .r131138
-2007-12-20 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34482
- * gfortran.texi (BOZ): Document behavior for complex
- numbers.
- * target-memory.h (gfc_convert_boz): Update prototype.
- * target-memory.c (gfc_convert_boz): Add error check
- and convert BOZ to smallest possible bit size.
- * resolve.c (resolve_ordinary_assign): Check return value.
- * expr.c (gfc_check_assign): Ditto.
- * simplify.c (simplify_cmplx, gfc_simplify_dble,
- gfc_simplify_float, gfc_simplify_real): Ditto.
-
-2007-12-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/34325
- * match.h: New function declaration.
- * match.c (gfc_match_parens): New function to look for mismatched
- parenthesis. (gfc_match_if): Use new function to catch missing '('.
-
-2007-12-19 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/34495
- * expr.c (check_init_expr): Check whether variables with flavor
- FL_PARAMETER do have a value assigned. Added error messages where
- appropriate.
- * simplify.c (gfc_simplify_transfer): Added check if the MOLD
- argument is a constant if working with initialization
- expressions.
-
-2007-12-17 Tobias Burnus <burnus@net-b.de>
-
- * intrinsic.c (add_functions): Undo change; mark float and
- sngl as STD_F77.
- * intrinsic.texi (FLOAT, SNGL): Change standard to F77 and later.
- * gfortran.texi (BOZ): Make note about FLOAT etc. clearer.
-
-2007-12-16 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34495
- * intrinsic.c (add_functions): Mark float and sngl as STD_GNU.
- (gfc_intrinsic_func_interface): Reject REAL, DBLE and CMPLX
- in initialization expressions for -std=f95.
-
-2007-12-16 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR fortran/34305
- * resolve.c (compare_bound): If either of the types of
- the arguments isn't INTEGER, return CMP_UNKNOWN.
-
-2007-12-16 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34246
- * trans-types.c (gfc_init_types): Change build_type_variant
- to build_qualified_type.
- (gfc_sym_type): Return gfc_character1_type_node for
- character-returning bind(C) functions.
- * trans-expr.c (gfc_conv_function_call): Do not set
- se->string_length for character-returning bind(c) functions.
- (gfc_trans_string_copy,gfc_trans_scalar_assign):
- Support also single characters.
-
-2007-12-16 Bernhard Fischer <aldot@gcc.gnu.org>
-
- * errors.c (gfc_notify_std): As originally stated but improperly
- changed, disregard warnings_are_errors for deciding which buffer
- to use for warnings.
-
-2007-12-16 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31213
- PR fortran/33888
- PR fortran/33998
- * trans-array.c (gfc_trans_array_constructor_value): If the
- iterator variable does not have a backend_decl, use a local
- temporary.
- (get_elemental_fcn_charlen): New function to map the character
- length of an elemental function onto its actual arglist.
- (gfc_conv_expr_descriptor): Call the above so that the size of
- the temporary can be evaluated.
- * trans-expr.c : Include arith.h and change prototype of
- gfc_apply_interface_mapping_to_expr to return void. Change all
- references to gfc_apply_interface_mapping_to_expr accordingly.
- (gfc_free_interface_mapping): Free the 'expr' field.
- (gfc_add_interface_mapping): Add an argument for the actual
- argument expression. This is copied to the 'expr' field of the
- mapping. Only stabilize the backend_decl if the se is present.
- Copy the character length expression and only add it's backend
- declaration if se is present. Return without working on the
- backend declaration for the new symbol if se is not present.
- (gfc_map_intrinsic_function) : To simplify intrinsics 'len',
- 'size', 'ubound' and 'lbound' and then to map the result.
- (gfc_map_fcn_formal_to_actual): Performs the formal to actual
- mapping for the case of a function found in a specification
- expression in the interface being mapped.
- (gfc_apply_interface_mapping_to_ref): Remove seen_result and
- all its references. Remove the inline simplification of LEN
- and call gfc_map_intrinsic_function instead. Change the
- order of mapping of the actual arguments and simplifying
- intrinsic functions. Finally, if a function maps to an
- actual argument, call gfc_map_fcn_formal_to_actual.
- (gfc_conv_function_call): Add 'e' to the call to
- gfc_add_interface_mapping.
- * dump-parse-tree.c (gfc_show_symbol_n): New function for
- diagnostic purposes.
- * gfortran.h : Add prototype for gfc_show_symbol_n.
- * trans.h : Add 'expr' field to gfc_add_interface_mapping.
- Add 'expr' to prototype for gfc_show_symbol_n.
- * resolve.c (resolve_generic_f0): Set specific function as
- referenced.
-
-2007-12-14 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34438
- * resolve.c (resolve_symbol): Do not emit public-variable-
- of-private-derived-type error for non-module variables.
-
-2007-12-14 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34398
- * expr.c (gfc_check_assign): Add range checks for assignments of BOZs.
- * resolve.c (resolve_ordinary_assign): Ditto.
- * arith.c (gfc_range_check): Fix return value for complex numbers.
-
-2007-12-14 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/34324
- * module.c (parse_atom): Fixed parsing of modules files whose
- lines are terminated by CRLF.
-
-2007-12-13 Anton Korobeynikov <asl@math.spbu.ru>
-
- * trans-decl.c (gfc_build_builtin_function_decls): Correct decl
- construction for select_string() and internal_unpack()
-
-2007-12-13 Duncan Sands <baldrick@free.fr>
- Anton Korobeynikov <asl@math.spbu.ru>
-
- * trans-expr.c (gfc_conv_structure): Make sure record constructors
- for static variables are marked constant.
-
-2007-12-12 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34254
- * decl.c (match_char_kind): Support use-associated/imported
- kind parameters.
- (gfc_match_kind_spec): Support als BT_CHARACTER, when
- re-scanning kind spec.
-
-2007-12-11 Aldy Hernandez <aldyh@redhat.com>
-
- * decl.c (add_global_entry): Make type unsigned.
-
-2007-12-11 Bernhard Fischer <aldot@gcc.gnu.org>
-
- * decl.c (match_prefix): Make seen_type a boolean.
- (add_global_entry): Cache type distinction.
- * trans-decl.c: Whitespace cleanup.
-
-2007-12-10 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34425
- * interface.c (get_expr_storage_size): Use signed integer when
- obtaining the bounds.
-
-2007-12-09 Jakub Jelinek <jakub@redhat.com>
-
- PR fortran/22244
- * trans.h (struct array_descr_info): Forward declaration.
- (gfc_get_array_descr_info): New prototype.
- (enum gfc_array_kind): New type.
- (struct lang_type): Add akind field.
- (GFC_TYPE_ARRAY_AKIND): Define.
- * trans-types.c: Include dwarf2out.h.
- (gfc_build_array_type): Add akind argument. Adjust
- gfc_get_array_type_bounds call.
- (gfc_get_nodesc_array_type): Include proper debug info even for
- assumed-size arrays.
- (gfc_get_array_type_bounds): Add akind argument, set
- GFC_TYPE_ARRAY_AKIND to it.
- (gfc_sym_type, gfc_get_derived_type): Adjust gfc_build_array_type
- callers.
- (gfc_get_array_descr_info): New function.
- * trans-array.c (gfc_trans_create_temp_array,
- gfc_conv_expr_descriptor): Adjust gfc_get_array_type_bounds
- callers.
- * trans-stmt.c (gfc_trans_pointer_assign_need_temp): Likewise.
- * trans-types.h (gfc_get_array_type_bounds): Adjust prototype.
- * Make-lang.in (fortran/trans-types.o): Depend on dwarf2out.h.
- * f95-lang.c (LANG_HOOKS_GET_ARRAY_DESCR_INFO): Define.
-
-2007-12-09 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/32129
- * dump-parse-tree.c (gfc_show_expr_n): New function for
- debugging.
- * gfortran.h : Add prototype for gfc_show_expr_n.
- * expr.c (simplify_constructor): Copy the constructor
- expression and try to simplify that. If success, replace the
- original. Otherwise discard the copy, keep going through
- the structure and return success.
-
- PR fortran/31487
- * decl.c (build_struct): Pad out default initializers with
- spaces to the component character length.
-
-2007-12-08 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34342
- PR fortran/34345
- PR fortran/18026
- PR fortran/29471
- * gfortran.texi (BOZ literal constants): Improve documentation
- and adapt for BOZ changes.
- * Make-lang.ini (resolve.o): Add target-memory.h dependency.
- * gfortran.h (gfc_expr): Add is_boz flag.
- * expr.c: Include target-memory.h.
- (gfc_check_assign): Support transferring BOZ for real/cmlx.
- * resolve.c: Include target-memory.h
- (resolve_ordinary_assign): Support transferring BOZ for real/cmlx.
- * target-memory.c (gfc_convert_boz): New function.
- * target-memory.c (gfc_convert_boz): Add prototype.
- * primary.c (match_boz_constant): Set is_boz, enable F95 error
- also without -pedantic, and allow for Fortran 2003 BOZ.
- (match_real_constant): Fix comment.
- * simplify.c (simplify_cmplx,gfc_simplify_dble,gfc_simplify_float,
- gfc_simplify_real): Support Fortran 2003 BOZ.
-
-2007-12-08 Jakub Jelinek <jakub@redhat.com>
-
- PR fortran/34359
- * gfortran.h (gfc_file): Remove sibling and down fields.
- * scanner.c (file_changes, file_changes_cur, file_changes_count,
- file_changes_allocated): New variables.
- (add_file_change, report_file_change): New functions.
- (change_file): Remove.
- (gfc_start_source_files, gfc_end_source_files): Call
- report_file_change instead of change_file.
- (gfc_advance_line): Call report_file_change instead of change_file,
- call it even if lb->file == lb->next->file.
- (get_file): Revert last changes.
- (preprocessor_line): Call add_file_change when entering or leaving
- a file.
- (load_file): Likewise. Set file_change[...].lb for all newly added
- file changes.
-
-2007-12-06 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34333
- * primary.c (match_boz_constant): Add gfc_notify_std diagnostics.
-
-2007-12-06 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/34335
- * module.c (find_symbol): Do not return symtrees with unique
- names, which shows that they are private.
-
-2007-12-05 Jakub Jelinek <jakub@redhat.com>
-
- PR debug/33739
- * gfortran.h (gfc_file): Remove included_by field, add sibling and
- down.
- (gfc_start_source_files, gfc_end_source_files): New prototypes.
- * parse.c (gfc_parse_file): Call gfc_start_source_files and
- gfc_end_source_files instead of calling the debugging hooks directly.
- * error.c (show_locus): Use up field instead of included_by.
- * scanner.c (change_file, gfc_start_source_files,
- gfc_end_source_files): New functions.
- (gfc_advance_line): Call change_file instead of calling debug hooks
- directly.
- (get_file): Set up rather than included_by. Initialize down and
- sibling.
- (preprocessor_line, load_file): Don't set up field here.
-
-2007-12-05 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34333
- * arith.h (gfc_compare_expr): Add operator argument, needed
- for compare_real.
- * arith.c (gfc_arith_init_1): Use mpfr_min instead of mpfr_cmp/set
- to account for NaN.
- (compare_real): New function, as mpfr_cmp but takes NaN into account.
- (gfc_compare_expr): Use compare_real.
- (compare_complex): Take NaN into account.
- (gfc_arith_eq,gfc_arith_ne,gfc_arith_gt,gfc_arith_ge,gfc_arith_lt,
- gfc_arith_le): Pass operator to gfc_compare_expr.
- * resolve.c (compare_cases,resolve_select): Pass operator
- to gfc_compare_expr.
- * simplify.c (simplify_min_max): Take NaN into account.
-
-2007-12-04 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34318
- * module.c (mio_gmp_real): Properly write NaN and Infinity.
-
-2007-12-02 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34186
- * symbol.c (generate_isocbinding_symbol): Fix setting string length.
-
-2007-11-30 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34133
- * match.h: Add bool allow_binding_name to gfc_match_bind_c.
- * decl.c (match_attr_spec,gfc_match_bind_c_stmt,gfc_match_entry):
- Adjust accordingly.
- (gfc_match_bind_c): Add allow_binding_name argument, reject
- binding name for dummy arguments.
- (gfc_match_suffix,gfc_match_subroutine): Make use of
- allow_binding_name.
-
-2007-11-30 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34186
- * symbol.c (generate_isocbinding_symbol): Set string length.
- * dump-parse-tree.c (gfc_show_attr): Show BIND(C) attribute.
- * misc.c (gfc_basic_typename): Handle BT_VOID.
-
-2007-11-29 Steven G. Kargl <kargls@comcast.net>
-
- PR fortran/34230
- * fortran/arith.c (gfc_check_real_range): Set intermediate values
- to +-Inf and 0 when -fno-range-check is in effect.
- * fortran/invoke.texi: Improve -fno-range-check description.
-
- PR fortran/34203
- * fortran/invoke.texi: Document the C escaped characters activated
- by -fbackslash.
-
-2007-11-29 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34248
- * trans-decl.c (generate_dependency_declarations): Check
- for NULL pointers before accessing the string length.
-
-2007-11-29 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34262
- * intrinsic.c (gfc_get_intrinsic_sub_symbol): Add comment.
- (gfc_intrinsic_sub_interface): Copy elemental state if needed.
- * iresolve.c (gfc_resolve_mvbits): Mark procedure as elemental.
-
-2007-11-28 Jakub Jelinek <jakub@redhat.com>
-
- * trans-expr.c (gfc_trans_string_copy): Convert both dest and
- src to void *.
-
- PR fortran/34247
- * trans-openmp.c (gfc_omp_privatize_by_reference): For REFERENCE_TYPE
- pass by reference only PARM_DECLs or non-artificial decls.
-
-2007-11-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/32928
- * decl.c (match_data_constant): Use gfc_match_init_expr to match the
- array spec and set the initializer expression.
-
-2007-11-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/34227
- * match.c (gfc_match_common): Add additional check for BLOCK DATA.
-
-2007-11-27 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/29389
- *resolve.c (resolve_ordinary_assign): Use find_sym_in_expr to
- test if a temporary should be written for a vector subscript
- on the lhs.
-
- PR fortran/33850
- * restore.c (pure_stmt_function): Add prototype and new
- function. Calls impure_stmt_fcn.
- (pure_function): Call it.
- (impure_stmt_fcn): New function.
-
- * expr.c (gfc_traverse_expr): Call *func for all expression
- types, not just variables. Add traversal of character lengths,
- iterators and component character lengths and arrayspecs.
- (expr_set_symbols_referenced): Return false if not a variable.
- * trans-stmt.c (forall_replace, forall_restore): Ditto.
- * resolve.c (forall_index): Ditto.
- (sym_in_expr): New function.
- (find_sym_in_expr): Rewrite to traverse expression calling
- sym_in_expr.
- *trans-decl.c (expr_decls): New function.
- (generate_expr_decls): Rewrite to traverse expression calling
- expr_decls.
- *match.c (check_stmt_fcn): New function.
- (recursive_stmt_fcn): Rewrite to traverse expression calling
- check_stmt_fcn.
-
-2007-11-27 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/33541
- *interface.c (compare_actual_formal): Exclude assumed size
- arrays from the possibility of scalar to array mapping.
- * decl.c (get_proc_name): Fix whitespace problem.
-
- PR fortran/34231
- * gfortran.h : Add 'use_rename' bit to symbol_attribute.
- * module.c : Add 'renamed' field to pointer_info.u.rsym.
- (load_generic_interfaces): Add 'renamed' that is set after the
- number_use_names is called. This is used to set the attribute
- use_rename, which, in its turn identifies those symbols that
- have not been renamed.
- (load_needed): If pointer_info.u.rsym->renamed is set, then
- set the use_rename attribute of the symbol.
- (read_module): Correct an erroneous use of use_flag. Use the
- renamed flag and the use_rename attribute to determine which
- symbols are not renamed.
-
-2007-11-26 Steven G. Kargl <kargls@comcast.net>
-
- PR fortran/34203
- * options.c: Change default behavior of backslash processing.
- * invoke.texi: Update documentation.
-
-2007-11-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/33152
- * decl.c (add_init_expr_to_sym): Remove error message.
- * resolve.c (check_data_variable): Add new check for a data variable
- that has an array spec, but no ref and issue an error.
- * match.c (gfc_match_common): Remove error message.
-
-2007-11-25 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34079
- * trans-types.c (gfc_return_by_reference,
- gfc_get_function_type): Do not return result of
- character-returning bind(C) functions as argument.
- * trans-expr.c (gfc_conv_function_call): Ditto.
-
-2007-11-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/34175
- * gfortran.texi: Document default forms assumed for various file
- extensions.
-
-2007-11-25 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/33499
- * decl.c (get_proc_name): If ENTRY statement occurs before type
- specification, set the symbol untyped and ensure that it is in
- the procedure namespace.
-
-2007-11-24 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/33541
- * module.c (find_symtree_for_symbol): Move to new location.
- (find_symbol): New function.
- (load_generic_interfaces): Rework completely so that symtrees
- have the local name and symbols have the use name. Renamed
- generic interfaces exclude the use of the interface without an
- ONLY clause (11.3.2).
- (read_module): Implement 11.3.2 in the same way as for generic
- interfaces.
-
-2007-11-23 Christopher D. Rickett <crickett@lanl.gov>
-
- * trans-common.c (build_common_decl): Fix the alignment for
- BIND(C) common blocks.
-
-2007-11-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/34209
- * iresolve.c (gfc_resolve_nearest): If sign variable kind does not match
- kind of input variable, convert it to match.
-
- PR fortran/33317
- * trans.h: Modify prototype for gfc_conv_missing_dummy.
- * trans-expr.c (gfc_conv_missing_dummy): Modify to pass an integer kind
- parameter in. Set the type of the dummy to the kind given.
- (gfc_conv_function_call): Pass representation.length to
- gfc_conv_missing_dummy.
- * iresolve.c (gfc_resolve_cshift): Determine the correct kind to use and
- if appropriate set representation.length to this kind value.
- (gfc_resolve_eoshift): Likewise.
- * check.c (gfc_check_cshift): Enable dim_check to allow DIM as an
- optional argument. (gfc_check_eoshift): Likewise.
- * trans_intrinsic.c (gfc_conv_intrinsic_function_args): Update call to
- gfc_conv_missing_dummy.
-
-2007-11-23 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34187
- * module.c (load_needed): Ensure binding_label is not lost.
-
- * decl.c (set_binding_label,gfc_match_bind_c): Replace
- strncpy by strcpy.
-
-2007-11-23 Tobias Burnus <burnus@net-b.de>
- Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/34192
- * simplify.c (gfc_simplify_nearest): Fix NEAREST for
- subnormal numbers.
-
-2007-11-23 Aldy Hernandez <aldyh@redhat.com>
-
- * trans-expr.c (gfc_trans_string_copy): Use "void *" when building a
- memset.
-
-2007-11-22 Tobias Burnus <burnus@net-b.de>
-
- * primary.c (gfc_match_structure_constructor): Allow
- constructor for types without components.
-
-2007-11-22 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34079
- * trans-expr.c (gfc_conv_function_call): Do not append
- string length arguments when calling bind(c) procedures.
- * trans-decl.c (create_function_arglist): Do not append
- string length arguments when declaring bind(c) procedures.
-
-2007-11-21 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/34083
- * resolve.c (resolve_structure_cons): Also check for zero rank.
-
-2007-11-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/33317
- * trans-expr.c (gfc_conv_missing_dummy): Revert.
- * iresolve.c (gfc_resolve_cshift): Revert.
- (gfc_resolve_eoshift): Likewise.
- * check.c (gfc_check_cshift): Revert.
- (gfc_check_eoshift): Likewise.
-
-2007-11-19 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34079
- * decl.c (gfc_match_entry): Support BIND(C).
- (gfc_match_subroutine): Fix comment typo.
-
-2007-11-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/33317
- * trans-expr.c (gfc_conv_missing_dummy): Set the type of the dummy
- argument to default integer if flagged to do so. Fix typo in comment.
- * resolve.c (gfc_resolve_dim_arg): Whitespace cleanup.
- * iresolve.c (gfc_resolve_cshift): Do not convert type, mark attribute
- for converting the DIM type appropriately in trans-expr.c.
- (gfc_resolve_eoshift): Likewise.
- * check.c (dim_check): Remove pre-existing dead code.
- (gfc_check_cshift): Enable dim_check to allow DIM as an optional.
- (gfc_check_eoshift): Likewise.
- * trans_intrinsic.c (gfc_conv_intrinsic_function_args): Fix whitespace.
-
-2007-11-18 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31608
- * trans-array.c (gfc_conv_expr_descriptor): Remove exception
- for indirect references in the call to gfc_trans_scalar_assign.
- * trans-expr.c (gfc_conv_string_parameter): Instead of asserting
- that the expression is not an indirect reference, cast it to a
- pointer type of the length given by se->string_length.
-
-2007-11-18 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34137
- * primary.c (match_variable): Reject non-result entry symbols.
- * resolve.c (resolve_contained_fntype): Do not check entry master
- functions.
-
-2007-11-17 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * trans-types.c (gfc_init_types): Use wider buffer.
-
-2007-11-17 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * trans-types.c (gfc_init_types): Use Fortran-90-style type
- names, with kinds.
-
-2007-11-17 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34133
- * decl.c (gfc_match_suffix,gfc_match_subroutine): Disallow
- bind(c) attribute for internal procedures.
-
-2007-11-17 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/25252
- * interface.c (gfc_current_interface_head,
- gfc_set_current_interface_head): New functions.
- * decl.c (gfc_match_modproc): Move check for syntax error earlier.
- On syntax error, restore previous state of the interface.
- * gfortran.h (gfc_current_interface_head,
- gfc_set_current_interface_head): New prototypes.
-
-2007-11-17 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/30285
- * module.c (struct written_common, written_commons): New structure.
- (compare_written_commons, free_written_common, write_common_0):
- New functions.
- (write_common): Call recursive function write_common_0.
-
-2007-11-17 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/34108
- * io.c (check_format_string): Only check character expressions.
- (match_dt_format): Return MATCH_ERROR if that is what
- gfc_match_st_label said.
-
-2007-11-16 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/33957
- * expr.c (check_inquiry): Don't call gfc_error now.
-
-2007-11-16 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/33739
- PR fortran/34084
- * scanner.c (start_source_file, end_source_file,
- exit_remaining_files, gfc_advance_line): Revert rev. 130016.
-
-2007-11-16 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/34008
- * trans-stmt.c (gfc_conv_elemental_dependencies): Add check for
- INTENT_INOUT as well as INTENT_OUT.
- (gfc_trans_call): Remove redundant gcc_asserts in dependency
- check.
-
-2007-11-16 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/33986
- * trans-array.c (gfc_conv_array_parameter ): Allow allocatable
- function results.
-
-2007-11-15 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/33917
- * decl.c (match_procedure_decl): Pre-resolve interface.
- * resolve.c (resolve_symbol): Reject interfaces later
- declared in procedure statements.
-
-2007-11-13 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/33162
- * decl.c (match_procedure_decl): Remove TODO and allow intrinsics in
- PROCEDURE declarations. Set attr.untyped to allow the interface to be
- resolved later where the symbol type will be set.
- * interface.c (compare_intr_interfaces): Remove static from pointer
- declarations. Add type and kind checks for dummy function arguments.
- (compare_actual_formal_intr): New function to compare an actual
- argument with an intrinsic function. (gfc_procedures_use): Add check for
- interface that points to an intrinsic function, use the new function.
- * resolve.c (resolve_specific_f0): Resolve the intrinsic interface.
- (resolve_specific_s0): Ditto.
-
-2007-11-13 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/34080
- * iresolve.c (gfc_resolve_transfer): Do not try to convert
- to a constant MOLD expression, if it is an assumed size
- dummy.
-
-2007-11-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * trans-common.c: Remove prototype for gfc_get_common.
-
-2007-11-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/33592
- * trans.c (gfc_call_realloc): Fix the logic and rename variables.
-
-2007-11-08 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/33739
- * scanner.c (start_source_file, end_source_file,
- exit_remaining_files): New functions.
- (gfc_advance_line): Use the new functions.
-
-2007-11-08 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/34028
- * trans-intrinsic.c (gfc_conv_intrinsic_ishft): Use correct type.
-
-2007-11-08 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/33917
- * interface.c (check_sym_interfaces): Disallow PROCEDURE-declared
- procedures for MODULE PROCEDURE.
- * decl.c (match_procedure_in_interface): Do not mark as procedure.
-
-2007-11-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/33881
- * trans-array.c (gfc_conv_array_parameter): Evaluate
- se->string_length instead of the expr->ts.cl->backend_decl.
-
-2007-11-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * gfortran.h: Shorten comment.
- * trans-types.c (gfc_get_function_type): Allow argument to have
- flavor FL_PROGRAM.
- * trans-decl.c (gfc_sym_mangled_function_id): Mangle main program
- name into MAIN__.
- (build_function_decl): Fix comment.
- * parse.c (main_program_symbol): Give the main program its proper
- name, if any. Set its flavor to FL_PROGRAM.
- (gfc_parse_file): Likewise.
-
-2007-11-02 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * intrinsic.texi (ALLOCATED): Fix typo.
-
-2007-10-31 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/33941
- * modules.c (intrinsics): Use only alphabetic names for
- intrinsic operators.
-
-2007-10-31 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/33162
- * interface.c (compare_intr_interfaces): New function to check intrinsic
- function arguments against formal arguments. (compare_interfaces): Fix
- logic in comparison of function and subroutine attributes.
- (compare_parameter): Use new function for intrinsic as argument.
- * resolve.c (resolve_actual_arglist): Allow an intrinsic without
- function attribute to be checked further. Set function attribute if
- intrinsic symbol is found, return FAILURE if not.
-
-2007-10-31 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/33897
- * decl.c (gfc_match_entry): Do not make ENTRY name
- global for contained procedures.
- * parse.c (gfc_fixup_sibling_symbols): Fix code for
- determining whether a procedure is external.
-
-2007-10-30 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/33596
- * trans-intrinsic.c (gfc_conv_intrinsic_isnan): Strip NOP_EXPR
- from the result of build_call_expr.
-
-2007-10-29 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31217
- PR fortran/33811
- PR fortran/33686
-
- * trans-array.c (gfc_conv_loop_setup): Send a complete type to
- gfc_trans_create_temp_array if the temporary is character.
- * trans-stmt.c (gfc_trans_assign_need_temp): Do likewise for
- allocate_temp_for_forall_nest.
- (forall_replace): New function.
- (forall_replace_symtree): New function.
- (forall_restore): New function.
- (forall_restore_symtree): New function.
- (forall_make_variable_temp): New function.
- (check_forall_dependencies): New function.
- (cleanup_forall_symtrees): New function.
- gfc_trans_forall_1): Add and initialize pre and post blocks.
- Call check_forall_dependencies to check for all dependencies
- and either trigger second forall block to copy temporary or
- copy lval, outside the forall construct and replace all
- dependent references. After assignment clean-up and coalesce
- the blocks at the end of the function.
- * gfortran.h : Add prototypes for gfc_traverse_expr and
- find_forall_index.
- expr.c (gfc_traverse_expr): New function to traverse expression
- and visit all subexpressions, under control of a logical flag,
- a symbol and an integer pointer. The slave function is caller
- defined and is only called on EXPR_VARIABLE.
- (expr_set_symbols_referenced): Called by above to set symbols
- referenced.
- (gfc_expr_set_symbols_referenced): Rework of this function to
- use two new functions above.
- * resolve.c (find_forall_index): Rework with gfc_traverse_expr,
- using forall_index.
- (forall_index): New function used by previous.
- * dependency.c (gfc_check_dependency): Use gfc_dep_resolver for
- all references, not just REF_ARRAY.
- (gfc_dep_resolver): Correct the logic for substrings so that
- overlapping arrays are handled correctly.
-
-2007-10-28 Tobias Schlüter <tobi@gcc.gnu.org>
-
- PR fortran/32147
- * module.c (write_symbol): Fix whitespace.
- (write_symbol0): Walk symtree from left-to-right instead
- breadth-first.
- (write_symbol1): Similarly change walk of pointer info tree.
- (write_module): Insert linebreak.
- * symbol.c (gfc_traverse_symtree): Change to left-to-right order.
- (traverse_ns): Likewise.
-
-2007-10-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/31306
- * decl.c (char_len_param_value): Add check for conflicting attributes of
- function argument.
-
-2007-10-27 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/33862
- * lang-specs.h: Support .ftn and .FTN extension, use CPP for .FOR.
- * options.c (form_from_filename): Support .ftn extension.
- * gfortran.texi: Document support of .for and .ftn file extension.
-
-2007-10-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/33162
- * intrinsic.h: Add prototypes for four new functions, gfc_check_datan2,
- gfc_check_dprod, gfc_check_fn_d, and gfc_check_x_yd.
- * intrinsic.c (add_functions): Add double precision checks for dabs,
- dacos, dacosh, dasin, dasinh, datan, datanh, datan2, dbesj0, dbesj1,
- dbesy0, dbesy1, dcos, dcosh, ddim, derf, derfc, dexp, dgamma,
- dlgama, dlog, dlog10, dmod, dsign, dsin, dsinh, dsqrt, dtan, and dtanh.
- Add real check dprod.
- * check.c (gfc_check_datan2): New function to check for double precision
- argumants. (gfc_check_dprod, gfc_check_fn_d, and gfc_check_x_yd): Ditto.
-
-2007-10-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- * invoke.texi: Fix typo in -fmax-errors=.
-
-2007-10-26 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/29784
- * gfortran.texi: Document that there is no logical/integer
- conversion performed during I/O operations.
-
-2007-10-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/33849
- * resolve.c (resolve_actual_arglist): Fix error message text.
-
-2007-10-22 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/31244
- * gfortran.h (gfc_data_value): Change repeat from unsigned int
- to mpz_t.
- * decl.c(top_val_list): Remove msg variable. Use mpz_t for
- repeat count.
- * resolve.c (values): Change left from unsigned int to mpz_t.
- (next_data_value): Change for mpz_t.
- (check_data_variable): Change ??? to FIXME in a comment. Use
- "mpz_t left".
- (resolve_data ): Use "mpz_t left".
-
-2007-10-21 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/33749
- * resolve.c (resolve_ordinary_assign): New function that takes
- the code to resolve an assignment from resolve_code. In
- addition, it makes a temporary of any vector index, on the
- lhs, using gfc_get_parentheses.
- (resolve_code): On EXEC_ASSIGN call the new function.
-
-2007-10-20 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/33818
- * resolve.c (resolve_variable): Check that symbol is in the same
- namespace as the entry function.
-
-2007-10-20 Paul Thomas <pault@gcc.gnu.org>
- FX Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31608
- * trans-array.c (gfc_conv_expr_descriptor): For all except
- indirect references, use gfc_trans_scalar_assign instead of
- gfc_add_modify_expr.
- * iresolve.c (check_charlen_present): Separate creation of cl
- if necessary and add code to treat an EXPR_ARRAY.
- (gfc_resolve_char_achar): New function.
- (gfc_resolve_achar, gfc_resolve_char): Call it.
- (gfc_resolve_transfer): If the MOLD expression does not have a
- character length expression, get it from a constant length.
-
-2007-10-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/33544
- * simplify.c (gfc_simplify_transfer): Only warn for short transfer when
- -Wsurprising is given.
- * invoke.texi: Document revised behavior.
-
-2007-10-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/33795
- * gfortran.texi: Document GFORTRAN_UNBUFFERED_PRECONNECTED
- environment variable. Delete mention of environment variable
- GFORTRAN_UNBUFFERED_n.
-
-2007-10-18 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/33233
- * resolve.c (check_host_association): Check singly contained
- namespaces and start search for symbol in current namespace.
-
-2007-10-18 Paul Thomas <pault@gcc.gnu.org>
- Dominique d'Humieres <dominiq@lps.ens.fr>
-
- PR fortran/33733
- * simplify.c (gfc_simplify_transfer): Return null if the source
- expression is EXPR_FUNCTION.
-
-2007-10-17 Christopher D. Rickett <crickett@lanl.gov>
-
- PR fortran/33760
- * symbol.c (gen_special_c_interop_ptr): Remove code to create
- constructor for c_null_ptr and c_null_funptr with value of 0.
- * expr.c (check_init_expr): Prevent check on constructors for
- iso_c_binding derived types.
- * resolve.c (resolve_structure_cons): Verify that the user isn't
- trying to invoke a structure constructor for one of the
- iso_c_binding derived types.
-
-2007-10-15 Christopher D. Rickett <crickett@lanl.gov>
-
- PR fortran/32600
- * trans-expr.c (gfc_conv_function_call): Generate code to inline
- c_associated.
- * symbol.c (get_iso_c_sym): Preserve from_intmod and intmod_sym_id
- attributes in the resolved symbol.
- * resolve.c (gfc_iso_c_sub_interface): Remove dead code.
-
-2007-10-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/33055
- * trans-io.c (create_dummy_iostat): New function to create a unique
- dummy variable expression to use with IOSTAT.
- (gfc_trans_inquire): Use the new function to pass unit number error info
- to run-time library if a regular IOSTAT variable was not given.
-
-2007-10-14 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/33745
- * trans-array.c (gfc_conv_ss_startstride): Fix dimension check.
- (gfc_trans_array_bound_check, gfc_conv_array_ref,
- gfc_conv_ss_startstride): Simplify error message.
- * resolve.c (check_dimension): Fix dimension-type switch;
- improve error message.
-
-2007-10-13 Tobias Schlüter <tobi@gcc.gnu.org>
- Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/33254
- PR fortran/33727
- * trans-array.c (get_array_ctor_var_strlen): Check upper bound for
- constness instead of lower bound.
- (get_array_ctor_strlen): Add bounds-checking code.
-
-2007-10-12 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/33542
- * resolve.c (resolve_actual_arglist): If the actual argument is
- ambiguous, then there is an error.
-
-2007-10-12 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/33664
- * expr.c (gfc_specification_expr): If a function is not
- external, intrinsic or pure is an error. Set the symbol pure
- to prevent repeat errors.
-
-2007-10-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/33636
- * expr.c (find_array_section): Check for constructor constantness.
-
-2007-10-08 Tobias Schlüter <tobi@gcc.gnu.org>
-
- PR fortran/33689
- * resolve.c (gfc_resolve_expr): Fix indentation.
- (resolve_fl_variable_derived): Rename argument.
- (resolve_fl_variable): Fix case in message. Clarify logic.
- Correctly simplify array bounds.
-
-2007-10-07 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR libfortran/33683
- * mathbuiltins.def (GAMMA): Change function name to
- "tgamma" instad of "gamma".
-
-2007-10-07 Tobias Schlüter <tobi@gcc.gnu.org>
-
- PR fortran/20851
- * expr.c (check_inquiry): Typo fix in error message.
- (check_init_expr): Same * 3.
- (check_restricted): Verify that no dummy arguments appear in
- restricted expressions in ELEMENTAL procedures.
- * resolve.c (resolve_fl_variable): Exchange order of checks to
- avoid side-effect.
-
-2007-10-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/33609
- * simplify.c (range_check): Return gfc_bad_expr if incoming expression
- is NULL.
-
-2007-10-06 Tobias Schlüter <tobi@gcc.gnu.org>
-
- * simplify.c (gfc_simplify_size): Fix typo.
-
-2007-10-06 Tobias Schlüter <tobi@gcc.gnu.org>
-
- PR fortran/25076
- * resolve.c (gfc_find_forall_index): Move towards top,
- renaming to ...
- (find_forall_index): ... this. Add check for NULL expr.
- (resolve_forall_iterators): Verify additional constraint.
- (resolve_forall): Remove checks obsoleted by new code in
- resolve_forall_iterators.
-
-2007-10-05 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * gfortran.h (gfc_get_data_variable, gfc_get_data_value,
- gfc_get_data): Move to decl.c.
- (global_used): Rename into gfc_global_used.
- (gfc_formalize_init_value, gfc_get_section_index,
- gfc_assign_data_value, gfc_assign_data_value_range,
- gfc_advance_section): Move to data.h.
- (gfc_set_in_match_data): Remove.
- * decl.c (gfc_get_data_variable, gfc_get_data_value,
- gfc_get_data): Move here.
- (gfc_set_in_match_data): Rename into set_in_match_data.
- (gfc_match_data): Likewise.
- (add_global_entry): Rename global_used into gfc_global_used.
- * data.c: Include data.h.
- * trans.h (gfc_todo_error): Remove.
- * trans-array.c (gfc_trans_array_constructor,
- gfc_conv_ss_startstride, gfc_conv_loop_setup): Change
- gfc_todo_error into assertions.
- * resolve.c (resolve_global_procedure): Rename global_used into
- gfc_global_used.
- * parse.c (gfc_global_used, parse_module, add_global_procedure,
- add_global_program): Likewise.
- * trans-intrinsic.c (gfc_walk_intrinsic_function): Rename
- global_used into gfc_global_used.
- * Make-lang.in: Add dependencies on fortran/data.h.
- * data.h: New file.
-
-2007-10-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/33529
- * decl.c (match_char_kind): New function.
- (match_char_spec): Use match_char_kind.
-
-2007-10-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/33502
- * scanner.c (gfc_advance_line): Call debug_hooks->end_source_file
- and debug_hooks->start_source_file when appropriate, and set
- dbg_emitted.
- (gfc_define_undef_line): New function.
- (load_file): Don't error out on #define and #undef lines.
- * parse.c (next_statement): Call gfc_define_undef_line.
- (gfc_parse_file): Call debug_hooks->start_source_file and
- debug_hooks->end_source_file for the main source file if
- required.
- * gfortran.h (gfc_linebuf): Add dbg_emitted field.
- (gfc_define_undef_line): New prototype.
-
-2007-10-04 Tobias Schlüter <tobi@gcc.gnu.org>
-
- PR fortran/33626
- * resolve.c (resolve_operator): Always copy the type for
- expressions in parentheses.
-
-2007-10-04 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/33646
- PR fortran/33542
- * interface.c (check_interface1): Revert patch of 10-02.
-
-2007-10-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/26682
- * trans-decl.c (build_function_decl): Set "externally_visible"
- attribute on the MAIN program decl.
-
-2007-10-03 Tobias Schlüter <tobi@gcc.gnu.org>
-
- PR fortran/33198
- * resolve.c (has_default_initializer): Move to top. Make bool.
- (resolve_common_blocks): Simplify logic. Add case for derived
- type initialization.
- (resolve_fl_variable_derived): Split out from ...
- (resolve_fl_variable): ... here, while adapting to new h_d_i
- interface.
-
-2007-10-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/26682
- * options.c (gfc_post_options): Issue an error when
- -fwhole-program is used.
-
-2007-10-02 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/33542
- * interface.c (check_interface1): Specific procedures are
- always ambiguous if they have the same name.
-
-2007-10-02 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/33566
- * primary.c (gfc_match_rvalue): Make all expressions with array
- references to structure parameters into variable expressions.
-
-2007-10-02 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/33554
- * trans-decl.c (init_intent_out_dt): New function.
- (gfc_trans_deferred_vars): Remove the code for default
- initialization of INTENT(OUT) derived types and put it
- in the new function. Call it earlier than before, so
- that array offsets and lower bounds are available.
-
-2007-10-02 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/33550
- * decl.c (get_proc_name): Return rc if rc is non-zero; ie. if
- the name is a reference to an ambiguous symbol.
-
-2007-10-02 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31154
- PR fortran/31229
- PR fortran/33334
- * decl.c : Declare gfc_function_kind_locs and
- gfc_function_type_locus.
- (gfc_match_kind_spec): Add second argument kind_expr_only.
- Store locus before trying to match the expression. If the
- current state corresponds to a function declaration and there
- is no match to the expression, read to the parenthesis, return
- kind = -1, dump the expression and return.
- (gfc_match_type_spec): Renamed from match_type_spec and all
- references changed. If an interface or an external function,
- store the locus, set kind = -1 and return. Otherwise, if kind
- is already = -1, use gfc_find_symbol to try to find a use
- associated or imported type.
- match.h : Prototype for gfc_match_type_spec.
- * parse.c (match_deferred_characteristics): New function.
- (parse_spec): If in a function, statement is USE or IMPORT
- or DERIVED_DECL and the function kind=-1, call
- match_deferred_characteristics. If kind=-1 at the end of the
- specification expressions, this is an error.
- * parse.h : Declare external gfc_function_kind_locs and
- gfc_function_type_locus.
-
-2007-09-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * module.c (mio_expr): Avoid -Wcast-qual warning.
-
-2007-09-27 Tobias Schlüter <tobi@gcc.gnu.org>
-
- * arith.c (reduce_binary_aa): Fix capitalization.
- * check.c (gfc_check_dot_product): Likewise.
- (gfc_check_matmul): Likewise.
- * expr.c (gfc_check_conformance): Likewise.
- (gfc_check_assign): Likewise.
- (gfc_default_initializer): Simplify logic.
- * trans.c (gfc_msg_bounds): Make const.
- (gfc_msg_fault): Likewise.
- (gfc_msg_wrong_return): Likewise.
- * trans.h: Add const to corresponding extern declarations.
-
-2007-09-27 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/33568
- * trans-intrinsic.c (gfc_conv_intrinsic_aint): Allow for the
- possibility of the optional KIND argument by making arg
- an array, counting the number of arguments and using arg[0].
-
-2007-09-26 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/30780
- * invoke.texi: Add note to -ffpe-trap option. Fix typos.
-
-2007-09-23 Tobias Schlüter <tobi@gcc.gnu.org>
-
- PR fortran/33269
- * io.c (check_format_string): Move NULL and constant checks into
- this function.
- (check_io_constraints): Call gfc_simplify_expr() before calling
- check_format_string(). Remove NULL and constant checks.
-
-2007-09-24 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/33538
- * scanner.c, parse.c, gfortran.h: Revert revision 128671.
-
-2007-09-23 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/33528
- * scanner.c (preprocessor_line): Call linemap_add when exiting
- a file.
- (gfc_new_file): Adjust debug code for USE_MAPPED_LOCATION.
-
-2007-09-22 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/33522
- * trans-types.c (gfc_get_desc_dim_type): Mark artificial
- variables with TREE_NO_WARNING.
- (gfc_get_array_descriptor_base): Likewise.
-
-2007-09-22 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/33337
- PR fortran/33376
- * trans-decl.c (gfc_create_module_variable): Output
- derived type parameters.
- * arith.c (gfc_parentheses): Return the argument if
- it is a constant expression.
- * primary.c (gfc_match_rvalue): Remove the clearing of
- the module name and the use_assoc attribute for derived
- type parameter expressions.
-
-2007-09-22 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/33502
- * scanner.c (gfc_advance_line): Call debug_hooks->start_source_file
- and debug_hooks->end_source_file when entering and exiting
- included files.
- (gfc_define_undef_line): New function.
- (load_file): Ignore #define and #undef preprocessor lines
- while reading source files.
- * parse.c (next_statement): Handle #define and #undef
- preprocessor lines.
- (gfc_parse_file): Call debug_hooks->start_source_file and
- debug_hooks->end_source_file for the main source file if
- requested by the debug format.
- * gfortran.h (gfc_define_undef_line): Add prototype.
-
-2007-09-22 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/33445
- * scanner.c (skip_free_comments): Warn if !$OMP& is used
- if no OpenMP directive is to be continued.
-
-2007-09-21 Paul Thomas <pault@gcc.gnu.org>
-
- *trans-expr.c (gfc_trans_pointer_assignment): Convert array
- descriptor for subref pointer assignements, rather than using
- the loop info version.
-
-2007-09-21 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/33037
- * simplify.c (gfc_simplify_transfer): Warn if source size
- is smaller than result size.
-
-2007-09-20 Asher Langton <langton2@llnl.gov>
-
- PR fortran/20441
- * gfortran.h : Add init_local_* enums and init_flag_* flags to
- gfc_option_t.
- * lang.opt: Add -finit-local-zero, -finit-real, -finit-integer,
- -finit-character, and -finit-logical flags.
- * invoke.texi: Document new options.
- * resolve.c (build_init_assign): New function.
- (apply_init_assign): Move part of function into build_init_assign.
- (build_default_init_expr): Build local initializer (-finit-*).
- (apply_default_init_local): Apply local initializer (-finit-*).
- (resolve_fl_variable): Try to add local initializer (-finit-*).
- * options.c (gfc_init_options, gfc_handle_option,
- gfc_post_options): Handle -finit-local-zero, -finit-real,
- -finit-integer, -finit-character, and -finit-logical flags.
-
-2007-09-20 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/33221
- * gfortran.h (symbol_attribute): Add zero_comp field.
- * symbol.c (gfc_use_derived): Handle case of emtpy derived types.
- * decl.c (gfc_match_data_decl): Likewise.
- (gfc_match_derived_decl): Likewise.
- * module.c (ab_attribute, attr_bits): Add AB_ZERO_COMP member.
- (mio_symbol_attribute): Write and read AB_ZERO_COMP.
- * resolve.c (resolve_symbol): Handle case of emtpy derived types.
- * parse.c (parse_derived): Likewise.
-
-2007-09-20 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/33288
- * arith.c (reduce_unary, reduce_binary_ac, reduce_binary_ca,
- reduce_binary_aa): Call ourselves recursively if an element of
- the constructor is itself a constant array.
-
-2007-09-20 Tobias Schlüter <tobi@gcc.gnu.org>
-
- * io.c (resolve_tag_format): New function using code split out
- and simplified from ...
- (resolve_tag): ... this function. Simplify logic. Unify
- IOSTAT, IOLENGTH and SIZE handling.
-
-2007-09-20 Christopher D. Rickett <crickett@lanl.gov>
-
- PR fortran/33497
- * resolve.c (gfc_iso_c_func_interface): Use information from
- subcomponent if applicable.
-
-2007-09-20 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/33325
- * intrinsic.text: Add documentation of the intrinsic modules.
- * gfortran.texi: Link to intrinsic-modules section and to
- the GOMP manual.
-
-2007-09-18 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31119
- * trans-array.c (gfc_conv_ss_startstride): Only perform bounds
- checking for optional args when they are present.
-
-2007-09-18 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/33231
- * resolve.c (resolve_elemental_actual): Check for conformance
- of intent out/inout dummies.
-
-2007-09-17 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/33106
- * resolve.c (resolve_symbol): Reject public variable of
- private derived-types for Fortran 95.
-
-2007-09-17 Tobias Burnus <burnus@net-b.de>
-
- * resolve.c (resolve_fl_procedure): Allow private dummies
- for Fortran 2003.
-
-2007-09-17 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * trans-types.c (gfc_get_desc_dim_type): Do not to try
- emit debug info.
- (gfc_get_array_descriptor_base): Likewise.
- (gfc_get_mixed_entry_union): Likewise
- (gfc_get_derived_type): Set decl location for fields and
- derived type itself.
-
-2007-09-16 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/29396
- PR fortran/29606
- PR fortran/30625
- PR fortran/30871
- * trans.h : Add extra argument to gfc_build_array_ref. Rename
- gfc_conv_aliased_arg to gfc_conv_subref_array_arg. Move
- prototype of is_aliased_array to gfortran.h and rename it
- gfc_is_subref_array. Add field span to lang_decl, add a new
- decl lang specific flag accessed by GFC_DECL_SUBREF_ARRAY_P
- and a new type flag GFC_DECL_SUBREF_ARRAY_P.
- * trans.c (gfc_build_array_ref): Add the new argument, decl.
- If this is a subreference array pointer, use the lang_decl
- field 'span' to calculate the offset in bytes and use pointer
- arithmetic to address the element.
- * trans-array.c (gfc_conv_scalarized_array_ref,
- gfc_conv_array_ref): Add the backend declaration as the third
- field, if it is likely to be a subreference array pointer.
- (gfc_conv_descriptor_dimension, gfc_trans_array_ctor_element,
- gfc_trans_array_constructor_element, structure_alloc_comps,
- gfc_conv_array_index_offset): For all other references to
- gfc_build_array_ref, set the third argument to NULL.
- (gfc_get_dataptr_offset): New function.
- (gfc_conv_expr_descriptor): If the rhs of a pointer assignment
- is a subreference array, then calculate the offset to the
- subreference of the first element and set the descriptor data
- pointer to this, using gfc_get_dataptr_offset.
- trans-expr.c (gfc_get_expr_charlen): Use the expression for the
- character length for a character subreference.
- (gfc_conv_substring, gfc_conv_subref_array_arg): Add NULL for
- third argument in call to gfc_build_array_ref.
- (gfc_conv_aliased_arg): Rename to gfc_conv_subref_array_arg.
- (is_aliased_array): Remove.
- (gfc_conv_function_call): Change reference to is_aliased_array
- to gfc_is_subref_array and reference to gfc_conv_aliased_arg to
- gfc_conv_subref_array_arg.
- (gfc_trans_pointer_assignment): Add the array element length to
- the lang_decl 'span' field.
- * gfortran.h : Add subref_array_pointer to symbol_attribute and
- add the prototype for gfc_is_subref_array.
- * trans-stmt.c : Add NULL for third argument in all references
- to gfc_build_array_ref.
- * expr.c (gfc_is_subref_array): Renamed is_aliased_array.
- If this is a subreference array pointer, return true.
- (gfc_check_pointer_assign): If the rhs is a subreference array,
- set the lhs subreference_array_pointer attribute.
- * trans-decl.c (gfc_get_symbol_decl): Allocate the lang_decl
- field if the symbol is a subreference array pointer and set an
- initial value of zero for the 'span' field.
- * trans-io.c (set_internal_unit): Refer to is_subref_array and
- gfc_conv_subref_array_arg.
- (nml_get_addr_expr): Add NULL third argument to
- gfc_build_array_ref.
- (gfc_trans_transfer): Use the scalarizer for a subreference
- array.
-
-2007-09-13 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- * iresolve.c (resolve_mask_arg): If a mask is an array
- expression, convert it to kind=1.
-
-2007-09-13 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/33343
- * expr.c (gfc_check_conformance): Print ranks in the error message.
- * resolve.c (resolve_elemental_actual): Check also conformance of
- the actual arguments for elemental functions.
-
-2007-09-13 Tobias Burnus <burnus@net-b.de>
-
- * symbol.c (gfc_add_elemental,gfc_add_pure,gfc_add_recursive):
- Allow prefixes only to be specified once.
-
-2007-09-13 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/33412
- * symbol.c (check_conflict): Add conflict of ELEMENTAL with Bind(C).
-
-2007-09-12 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/33297
- * check.c (scalar_check): Move up in the file.
- (kind_check): Call scalar_check.
- (dim_check): If optional, do not call nonoptional_check; use
- bool for optional.
- (gfc_check_all_any,gfc_check_count,gfc_check_cshift,gfc_check_eoshift,
- gfc_check_lbound,gfc_check_minloc_maxloc,check_reduction,
- gfc_check_spread,gfc_check_ubound): Use true/false instead of 0/1
- for dim_check; honor changed meaning of optional.
- (gfc_check_int): Replace checks by kind_check.
- (gfc_check_size): Replace checks by dim_check.
-
-2007-09-12 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/33284
- PR fortran/33310
- * symbol.c (check_conflict): Add conflict between INTRINSIC and ENTRY
- and between BIND(C) and PARAMETER.
-
-2007-09-12 Tobias Burnus <burnus@net-b.de>
-
- * trans-expr.c (gfc_conv_initializer): Fix expr == NULL check.
-
-2007-09-12 Jan Hubicka <jh@suse.cz>
-
- * f95-lang.c (LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Kill.
-
-2007-09-12 Christopher D. Rickett <crickett@lanl.gov>
-
- PR fortran/33395
- * trans-expr.c (gfc_conv_initializer): Remove unnecessary test for
- intmod_sym_id and use derived symbol to set new kind of C_NULL_PTR
- and C_NULL_FUNPTR expressions.
-
-2007-09-11 Christopher D. Rickett <crickett@lanl.gov>
-
- PR fortran/33040
- * trans-expr.c (gfc_trans_structure_assign): Convert component
- C_NULL_PTR and C_NULL_FUNPTR component initializers to (void *).
- * trans-types.c (gfc_get_derived_type): Create a backend_decl for
- the c_address field of C_PTR and C_FUNPTR and ensure initializer
- is of proper type/kind for (void *).
-
-2007-09-11 Jan Hubicka <jh@suse.cz>
-
- * f95-lang.c (gfc_expand_function): Kill.
- (LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Kill.
-
-2007-09-08 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/31547
- * gfortran.texi: Document when CPP is called.
-
- * intrinsic.texi (IOR): Fix typos.
-
-2007-09-10 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/33370
- * trans-expr.c (copyable_array_p): Add tests that expression
- is a variable, that it has no subreferences and that it is a
- full array.
- (gfc_trans_assignment): Change conditions to suit modifications
- to copyable_array_p.
-
-2007-09-06 Tom Tromey <tromey@redhat.com>
-
- * scanner.c (get_file): Update.
- (load_file): Update.
- (gfc_next_char_literal): Use gfc_linebuf_linenum.
- * f95-lang.c (gfc_init): Update.
- * gfortran.h (gfc_linebuf_linenum): New macro.
-
-2007-09-05 Sandra Loosemore <sandra@codesourcery.com>
-
- * trans-decl.c (build_entry_thunks): Use set_cfun.
- (gfc_generate_function_code): Likewise.
-
-2007-09-05 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31564
- * primary.c (gfc_match_rvalue): Make expressions that refer
- to derived type parameters that have array references into
- variable expressions. Remove references to use association
- from the symbol.
-
- PR fortran/33241
- * decl.c (add_init_expr_to_sym): Provide assumed character
- length parameters with the length of the initialization
- expression, if a constant, or that of the first element of
- an array.
-
-2007-09-04 Janus Weil <jaydub66@gmail.com>
- Paul Thomas <pault@gcc.gnu.org>
-
- * decl.c (match_procedure_decl,match_procedure_in_interface,
- gfc_match_procedure): Handle PROCEDURE statements.
- * gfortran.h (struct gfc_symbol): New member "gfc_symbol *interface".
- (enum gfc_statement): New element "ST_PROCEDURE".
- (strcut symbol_attribute): New member "unsigned procedure".
- * interface.c (check_interface0): Extended error checking.
- * match.h: Add gfc_match_procedure prototype.
- * parse.c (decode_statement,next_statement,gfc_ascii_statement,
- parse_derived,parse_interface): Implement PROCEDURE statements.
- * resolve.c (resolve_symbol): Ditto.
- * symbol.c (check_conflict): Ditto.
- (gfc_add_proc): New function for setting the procedure attribute.
- (copy_formal_args): New function for copying formal argument lists.
-
-2007-09-03 Daniel Jacobowitz <dan@codesourcery.com>
-
- * Make-lang.in (gfortranspec.o): Remove SHLIB_MULTILIB.
-
-2007-09-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * gfortranspec.c (lang_specific_driver): Use CONST_CAST2.
- * options.c (gfc_post_options): Supply a TYPE for CONST_CAST.
- * parse.c (parse_omp_structured_block): Likewise,
- * st.c (gfc_free_statement): Likewise,
-
-2007-09-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31675
- * libgfortran.h: New file.
- * iso-fortran-env.def: Use macros in the new header instead of
- hardcoded integer constants.
- * Make-lang.in (F95_PARSER_OBJS, GFORTRAN_TRANS_DEPS): Add
- fortran/libgfortran.h.
- * gfortran.h (GFC_STD_*, GFC_FPE_*, options_convert,
- ioerror_codes): Remove.
- * trans.c (ERROR_ALLOCATION): Remove.
- (gfc_call_malloc, gfc_allocate_with_status,
- gfc_allocate_array_with_status): Use LIBERROR_ALLOCATION.
- * trans-types.h (GFC_DTYPE_*): Remove.
- * trans-decl.c (gfc_generate_function_code): Use
- GFC_CONVERT_NATIVE instead of CONVERT_NATIVE.
- * trans-io.c (set_parameter_value, set_parameter_ref): Use
- LIBERROR_* macros instead of IOERROR_ macros.
- * trans-intrinsic.c (gfc_conv_intrinsic_function): Use
- LIBERROR_END and LIBERROR_EOR instead of hardcoded constants.
- * options.c (gfc_init_options): Use GFC_CONVERT_NATIVE instead of
- CONVERT_NATIVE.
- (gfc_handle_option): Use GFC_CONVERT_* macros instead of CONVERT_*.
-
-2007-09-02 Steven G. Kargl <kargl@gcc.gnu.org>
-
- * invoke.texi: Fix the -frange-checking option entry.
-
-2007-09-02 Roger Sayle <roger@eyesopen.com>
-
- * decl.c (match_string_p): New helper function to explicitly match
- a string of characters.
- (match_attr_spec): Remove no longer needed DECL_COLON from decl_types.
- Delete decls array and peek_char. Rewrite decl attribute parser to
- avoid calling gfc_match_strings.
- * match.c (gfc_match_strings): Delete unused function.
- * match.h (gfc_match_strings): Delete prototype.
-
-2007-09-02 Tobias Schlüuter <tobi@gcc.gnu.org>
-
- * dump-parse-tree.c (show_char_const): New function.
- (gfc_show_expr): Use it.
- * expr.c (find_substring_ref): Rework to not keep characters
- dangling beyond end of string.
-
-2007-09-02 H.J. Lu <hongjiu.lu@intel.com>
-
- PR fortran/33276
- * array.c (expand_iterator): Initialize frame.prev.
-
-2007-08-31 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/33232
- * io.c (match_io): Also diagnose extra comma for READ.
-
-2007-08-31 Joseph Myers <joseph@codesourcery.com>
-
- * intrinsic.texi (LGAMMA): Remove empty @cindex line.
-
-2007-08-31 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31879
- PR fortran/31197
- PR fortran/31258
- PR fortran/32703
- * gfortran.h : Add prototype for gfc_resolve_substring_charlen.
- * resolve.c (gfc_resolve_substring_charlen): New function.
- (resolve_ref): Call gfc_resolve_substring_charlen.
- (gfc_resolve_character_operator): New function.
- (gfc_resolve_expr): Call the new functions in cases where the
- character length is missing.
- * iresolve.c (cshift, eoshift, merge, pack, reshape, spread,
- transpose, unpack): Call gfc_resolve_substring_charlen for
- source expressions that are character and have a reference.
- * trans.h (gfc_trans_init_string_length) Change name to
- gfc_conv_string_length; modify references in trans-expr.c,
- trans-array.c and trans-decl.c.
- * trans-expr.c (gfc_trans_string_length): Handle case of no
- backend_decl.
- (gfc_conv_aliased_arg): Remove code for treating substrings
- and replace with call to gfc_trans_string_length.
- * trans-array.c (gfc_conv_expr_descriptor): Remove code for
- treating strings and call gfc_trans_string_length instead.
-
-2007-08-30 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/33228
- * interface.c (check_interface0): Improve error for external procs.
- (check_sym_interfaces): Fix checking of module procedures.
-
-2007-08-29 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/32989
- * iresolve.c (gfc_resolve_getarg): Handle non-default integer
- kinds.
- * check.c (gfc_check_getarg): New function
- * intrinsic.h: Add prototype for gfc_check_getarg.
- * intrinsic.c (add_subroutines): Add reference to gfc_check_getarg.
- * intrinsic.texi (GETARG): Adjust documentation.
-
-2007-08-29 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
- Tobias Burnus <burnus@gcc.gnu.org>
-
- PR fortran/33105
- * intrinsic.c (add_functions): Add IS_IOSTAT_END and
- IS_IOSTAT_EOR intrinsics.
- * gfortran.h (gfc_isym_id): Add GFC_ISYM_IS_IOSTAT_END and
- GFC_ISYM_IS_IOSTAT_EOR.
- * trans-intrinsic.c (gfc_conv_has_intvalue): New function.
- (gfc_conv_intrinsic_function): Call gfc_conv_has_intvalue for
- GFC_ISYM_IS_IOSTAT_END and GFC_ISYM_IS_IOSTAT_EOR.
- * intrinsic.texi: Add IS_IOSTAT_END and IS_IOSTAT_EOR.
-
-2007-08-28 Christopher D. Rickett <crickett@lanl.gov>
-
- PR fortran/33215
- * decl.c (build_sym): Pass number of identifiers on line to
- set_binding_label.
- (set_binding_label): Verify that only one identifier given if
- NAME= specified, even if the given binding label has zero length.
- (gfc_match_bind_c): Remove declaration for has_name_equals because
- it hides the static global one that is needed.
-
-2007-08-29 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * trans-array.c (gfc_grow_array): Use gfc_call_realloc.
- (gfc_array_allocate): Use gfc_allocate_with_status and
- gfc_allocate_array_with_status.
- (gfc_array_deallocate): Use gfc_deallocate_with_status.
- (gfc_trans_dealloc_allocated): Use gfc_deallocate_with_status.
- * trans-stmt.c (gfc_trans_allocate): Use gfc_allocate_with_status.
- (gfc_trans_deallocate): Use gfc_deallocate_with_status.
- * trans.c (gfc_allocate_with_status, gfc_allocate_array_with_status,
- gfc_deallocate_with_status, gfc_call_realloc): New functions.
- * trans.h (gfc_allocate_with_status, gfc_allocate_array_with_status,
- gfc_deallocate_with_status, gfc_call_realloc): New prototypes.
- (gfor_fndecl_internal_realloc, gfor_fndecl_allocate,
- gfor_fndecl_allocate_array, gfor_fndecl_deallocate): Remove.
- * f95-lang.c (gfc_init_builtin_functions): Create decl for
- BUILT_IN_REALLOC.
- * trans-decl.c (gfor_fndecl_internal_realloc,
- gfor_fndecl_allocate, gfor_fndecl_allocate_array,
- gfor_fndecl_deallocate): Remove function decls.
- (gfc_build_builtin_function_decls): Likewise.
-
-2007-08-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/33055
- Revert previous patch.
-
-2007-08-28 Jakub Jelinek <jakub@redhat.com>
-
- PR fortran/22244
- * Make-lang.in (fortran/trans-types.o): Depend on $(FLAGS_H).
- * trans-types.c: Include flags.h.
- (gfc_get_nodesc_array_type): Add TYPE_DECL TYPE_NAME with
- correct bounds and dimensions for packed arrays.
-
-2007-08-27 Tobias Burnus <burnus@net-b.de>
-
- * simplify.c (gfc_simplify_lgamma): Fix mpfr_lgamma call.
-
-2007-08-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/33055
- * trans-io.c (create_dummy_iostat): New function to create a unique
- dummy variable expression to use with IOSTAT.
- (gfc_trans_inquire): Use the new function to pass unit number error info
- to run-time library if a regular IOSTAT variable was not given.
-
-2007-08-26 H.J. Lu <hongjiu.lu@intel.com>
-
- * gfortran.h (gfc_isym_id): Add GFC_ISYM_GAMMA and
- GFC_ISYM_LGAMMA.
-
-2007-08-26 Asher Langton <langton2@llnl.gov>
- Tobias Burnus <burnus@net-b.de>
-
- * gfortran.h (gfc_option_t): Add flag_recursive.
- * lang.opt: Add -frecursive option and update -fopenmp.
- * invoke.texi (-frecursive): Document new option.
- (-fopenmp,-fno-automatic,-fmax-stack-var-size): Update.
- * options.c (gfc_init_options, gfc_post_options,
- gfc_handle_option): Add -frecursive and modify -fopenmp.
- (gfc_post_options): Add warning for conflicting flags.
-
-2007-08-26 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/31298
- * module.c (mio_symbol_ref,mio_interface_rest): Return pointer_info.
- (load_operator_interfaces): Support multible loading of an operator.
-
-2007-08-26 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/32985
- * match.c (gfc_match_common): Remove SEQUENCE diagnostics.
- * resolve.c (resolve_common_blocks): Add SEQUENCE diagnostics;
- fix walking through the tree.
-
-2007-08-26 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/32980
- * intrinsic.h (gfc_simplify_gamma,gfc_simplify_lgamma,
- gfc_resolve_gamma,gfc_resolve_lgamma): New function declations.
- * mathbuiltins.def: Define GAMMA and LGAMMA.
- * intrinsic.c (add_functions): Add GAMMA, DGAMMA, LGAMMA, ALGAMA
- and DLGAMA.
- * simplify.c (gfc_simplify_gamma,gfc_simplify_lgamma): New functions.
- * iresolve.c (gfc_resolve_gamma,gfc_resolve_lgamma): New functions.
- * intrinsic.texi: Add documentation for GAMMA and LGAMMA.
-
-2007-08-26 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/33188
- * parse.c (parse_derived): Support empty derived type
- definitions for Fortran 2003.
-
-2007-08-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * trans-openmp.c (gfc_omp_privatize_by_reference): Constify.
- * trans.h (gfc_omp_privatize_by_reference): Likewise.
-
-2007-08-24 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/33178
- * intrinsic.c (gfc_intrinsic_func_interface): Fix initialization
- expression check.
-
-2007-08-24 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR fortran/32972
- * iresolve.c: Don't convert array masks.
-
-2007-08-24 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/33139
- * trans-array.c (gfc_conv_expr_descriptor): Copy bounds for
- whole-array pointer assignments.
-
-2007-08-23 Jakub Jelinek <jakub@redhat.com>
-
- * decl.c (variable_decl): Don't share charlen structs if
- length == NULL.
- * trans-decl.c (create_function_arglist): Assert
- f->sym->ts.cl->backend_decl is NULL instead of unsharing
- charlen struct here.
-
-2007-08-23 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/33095
- * trans-intrinsic.c (gfc_conv_intrinsic_minmax): Remove
- runtime error checking.
-
-2007-08-22 Roger Sayle <roger@eyesopen.com>
- Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
-
- * match.c (intrinsic_operators): Delete.
- (gfc_match_intrinsic_op): Rewrite matcher to avoid calling
- gfc_match_strings.
-
-2007-08-22 Christopher D. Rickett <crickett@lanl.gov>
-
- PR fortran/33020
- * resolve.c (gfc_iso_c_sub_interface): Remove setting of type and
- kind for optional SHAPE parameter of C_F_POINTER.
-
-2007-08-22 Janus Weil <jaydub66@gmail.com>
-
- * decl.c (match_attr_spec): Pass on errors from gfc_match_bind_c.
- (gfc_match_bind_c): Bugfix in check for NAME= with abstract interfaces.
- (gfc_match_mopdproc): Bugfix to reject module procedures in
- abstract interfaces.
-
-2007-08-22 Kai Tietz <kai.tietz@onevision.com>
-
- * f95-lang.c: (gfc_init_decl_processing): Choose sizetype by using
- Pmode.
-
-2007-08-21 Paul Brook <paul@codesourcery.com>
- Nathan Sidwell <nathan@codesourcery.com>
- Mark Mitchell <mark@codesourcery.com>
- Joseph Myers <joseph@codesourcery.com>
-
- * gfortranspec.c (lang_specific_driver): Use pkgversion_string.
- * Make-lang.in (gfortran.pod): Define BUGURL.
- * invoke.texi: Use BUGURL for bug-reporting instructions.
-
-2007-08-19 Roger Sayle <roger@eyesopen.com>
-
- * match.c (intrinsic_operators): Make static.
- (gfc_op2string): New function for converting a gfc_intrinsic_op to
- to a "const char*", replacing the macro of the same name.
- * gfortran.h (intrinsic_operators): Delete prototype.
- (gfc_op2string): Replace macro with function prototype.
-
-2007-08-18 Tobias Burnus <burnus@net-b.de>
-
- * gfortran.h (gfc_is_intrinsic_typename): Add declaration.
- * symbol.c (gfc_is_intrinsic_typename): New function.
- * parse.c (decode_statement): Check for space in ABSTRACT INTERFACE.
- (parse_interface): Use gfc_is_intrinsic_typename.
- * decl.c (gfc_match_derived_decl): Ditto.
- * module.c (gfc_match_use): Use gcc_unreachable() for
- INTERFACE_ABSTRACT in switch().
-
-2007-08-18 Roger Sayle <roger@eyesopen.com>
-
- * primary.c (match_logical_constant_string): New function to match
- a ".true." or a ".false.".
- (match_logical_constant): Use it instead of gfc_match_strings.
-
-2007-08-18 Paul Thomas <pault@gcc.gnu.org>
- Janus Weil <jaydub66@gmail.com>
-
- * interface.c (gfc_match_interface,gfc_match_abstract_interface,
- gfc_match_end_interface,gfc_add_interface): Add abstract interface.
- * dump-parse-tree.c (gfc_show_attr): Ditto.
- * gfortran.h (interface_type,symbol_attribute): Ditto.
- * module.c (gfc_match_use,ab_attribute,attr_bits,
- mio_symbol_attribute): Ditto.
- * resolve.c (resolve_function): Ditto.
- * match.h: Ditto.
- * parse.c (decode_statement): Ditto.
- (parse_interface): Ditto, check for C1203 (name of abstract interface
- cannot be the same as an intrinsic type).
- * decl.c (gfc_match_bind_c): Check for NAME= with abstract interfaces.
- (access_attr_decl): Handle Abstract interfaces.
-
-2007-08-18 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/32881
- * expr.c (gfc_check_pointer_assign): If the rhs is the
- initialization expression for the rhs, there is no error.
-
-2007-08-18 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/32875
- * trans-array.c (get_array_ctor_strlen): Set the character
- length of a zero length array to zero.
-
-2007-08-16 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/33072
- * module.c (gfc_match_use): Mark user operators as such.
- (find_use_name_n): Distinguish between operators and other symbols.
- (find_use_name,number_use_names,mio_namelist,
- load_operator_interfaces,load_generic_interfaces,read_module,
- write_generic): Update find_use_name_n calls.
-
-2007-08-15 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/29459
- * trans.c (gfc_create_var_np): Do not emit warnings for
- anonymous variables.
-
-2007-08-15 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/33066
- * decl.c (gfc_get_type_attr_spec): Fix whitespace.
- (gfc_match_derived_decl): Fix logic.
-
-2007-08-14 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/33073
- * trans-intrinsic.c (build_fixbound_expr): Convert to result type
- in all cases.
-
-2007-08-14 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/32594
- * trans-expr.c (gfc_conv_substring_expr): Only call
- gfc_conv_substring if expr->ref is not NULL.
- * expr.c (gfc_is_constant_expr): If e->ref is NULL, the substring
- expression might be a constant.
- (gfc_simplify_expr): Handle missing start and end, as well as
- missing ref.
-
-2007-08-13 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/32926
- * match.c (gfc_match_call): Do not create a new symtree in the
- case where the existing symbol is external and not referenced.
-
-2007-08-13 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/32827
- * decl.c (variable_decl): Check for an imported symbol
- by looking for its symtree and testing for the imported
- attribute.
- (gfc_match_import): Remove change of symbol's namespace
- and set the attribute imported instead.
- * symbol.c (gfc_get_sym_tree): It is not an error if a
- symbol is imported.
- * gfortran.h : Add the 'imported' to symbol_attribute.
-
-2007-08-13 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/32962
- * trans-array.c (gfc_conv_array_transpose): Set the offset
- of the destination to zero if the loop is zero based.
-
-2007-08-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/29600
- * intrinsic.c (add_functions): Add optional KIND argument to ACHAR.
- * iresolve.c (gfc_resolve_achar): Handle the KIND argument.
- * check.c (gfc_check_achar): Check for the optional KIND argument.
- * simplify.c (gfc_simplify_achar): Use KIND argument.
- * intrinsic.h (gfc_check_achar, gfc_simplify_achar,
- gfc_resolve_achar): Adjust prototypes.
-
-2007-08-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/30964
- PR fortran/33054
- * trans-expr.c (gfc_conv_function_call): When no formal argument
- list is available, we still substitute missing optional arguments.
- * check.c (gfc_check_random_seed): Correct the check on the
- number of arguments to RANDOM_SEED.
- * intrinsic.c (add_subroutines): Add a resolution function to
- RANDOM_SEED.
- * iresolve.c (gfc_resolve_random_seed): New function.
- * intrinsic.h (gfc_resolve_random_seed): New prototype.
-
-2007-08-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/32860
- * error.c (error_uinteger): New function.
- (error_integer): Call error_uinteger.
- (error_print): Handle %u, %lu, %li and %ld format specifiers.
- * interface.c (compare_actual_formal): Use the new %lu specifier.
-
-2007-08-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31629
- * lang.opt (-fmodule-private): New option.
- * gfortran.h (gfc_option_t): Add flag_module_private member.
- * invoke.texi (-fmodule-private): Document the new option.
- * module.c (gfc_check_access): Allow the -fmodule-private option
- to modify the default behaviour.
- * options.c (gfc_init_options): Initialize flag_module_private.
- (gfc_handle_option): Handle -fmodule-private.
-
-2007-08-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/29600
- * intrinsic.c (add_functions): Add KIND arguments to COUNT,
- IACHAR, ICHAR, INDEX, LBOUND, LEN, LEN_TRIM, SCAN, SIZE, UBOUND
- and VERIFY.
- * iresolve.c (gfc_resolve_count): Add kind argument.
- (gfc_resolve_iachar): New function.
- (gfc_resolve_ichar): Add kind argument.
- (gfc_resolve_index_func): Likewise.
- (gfc_resolve_lbound): Likewise.
- (gfc_resolve_len): Likewise.
- (gfc_resolve_len_trim): Likewise.
- (gfc_resolve_scan): Likewise.
- (gfc_resolve_size): New function.
- (gfc_resolve_ubound): Add kind argument.
- (gfc_resolve_verify): Likewise.
- * trans-decl.c (gfc_get_extern_function_decl): Allow specific
- intrinsics to have 4 arguments.
- * check.c (gfc_check_count): Add kind argument.
- (gfc_check_ichar_iachar): Likewise.
- (gfc_check_index): Likewise.
- (gfc_check_lbound): Likewise.
- (gfc_check_len_lentrim): New function.
- (gfc_check_scan): Add kind argument.
- (gfc_check_size): Likewise.
- (gfc_check_ubound): Likewise.
- (gfc_check_verify): Likewise.
- * intrinsic.texi: Update documentation for COUNT, IACHAR, ICHAR,
- INDEX, LBOUND, LEN, LEN_TRIM, SCAN, SIZE, UBOUND and VERIFY.
- * simplify.c (get_kind): Whitespace fix.
- (int_expr_with_kind): New function.
- (gfc_simplify_iachar): Add kind argument.
- (gfc_simplify_iachar): Likewise.
- (gfc_simplify_ichar): Likewise.
- (gfc_simplify_index): Likewise.
- (simplify_bound_dim): Likewise.
- (simplify_bound): Likewise.
- (gfc_simplify_lbound): Likewise.
- (gfc_simplify_len): Likewise.
- (gfc_simplify_len_trim): Likewise.
- (gfc_simplify_scan): Likewise.
- (gfc_simplify_shape): Pass NULL as kind argument to gfc_simplify_size.
- (gfc_simplify_size): Add kind argument.
- (gfc_simplify_ubound): Likewise.
- (gfc_simplify_verify): Likewise.
- * intrinsic.h: Update prototypes and add new ones.
- * trans-intrinsic.c (gfc_conv_intrinsic_index): Rename into
- gfc_conv_intrinsic_index_scan_verify.
- (gfc_conv_intrinsic_scan, gfc_conv_intrinsic_verify): Remove.
- (gfc_conv_intrinsic_function): Call
- gfc_conv_intrinsic_index_scan_verify to translate the INDEX,
- SCAN and VERIFY intrinsics.
-
-2007-08-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31189
- * invoke.texi (-fbacktrace): Document the new behaviour.
-
-2007-08-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/32937
- * trans-array.c (gfc_conv_expr_descriptor): Use
- gfc_conv_const_charlen to generate backend_decl of right type.
- * trans-expr.c (gfc_conv_expr_op): Use correct return type.
- (gfc_build_compare_string): Use int type instead of default
- integer kind for single character comparison.
- (gfc_conv_aliased_arg): Give backend_decl the right type.
- * trans-decl.c (gfc_build_intrinsic_function_decls): Make
- compare_string return an int.
-
-2007-08-11 Ian Lance Taylor <iant@google.com>
-
- * f95-lang.c (gfc_get_alias_set): Change return type to
- alias_set_type.
-
-2007-08-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31270
- * trans.c (gfc_trans_runtime_check): Reorder arguments and
- add extra variable arguments. Hand them to the library function.
- * trans.h (gfc_trans_runtime_check): Update prototype.
- * trans-array.c (gfc_trans_array_bound_check): Issue more
- detailled error messages.
- (gfc_conv_array_ref): Likewise.
- (gfc_conv_ss_startstride): Likewise.
- (gfc_trans_dummy_array_bias): Reorder arguments to
- gfc_trans_runtime_check.
- * trans-expr.c (gfc_conv_substring): Issue more detailled
- error messages.
- (gfc_conv_function_call): Reorder arguments to gfc_trans_runtime_check.
- * trans-stmt.c (gfc_trans_goto): Likewise.
- * trans-io.c (set_string): Reorder arguments to
- gfc_trans_runtime_check and issue a more detailled error message.
- * trans-decl.c (gfc_build_builtin_function_decls): Make
- runtime_error and runtime_error_at handle a variable number of
- arguments.
- * trans-intrinsic.c (gfc_conv_intrinsic_bound): Reorder arguments
- to gfc_trans_runtime_check.
- (gfc_conv_intrinsic_minmax): Likewise.
- (gfc_conv_intrinsic_repeat): Issue more detailled error messages.
-
-2007-08-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * gfortranspec.c (lang_specific_driver): Use CONST_CAST.
- * options.c (gfc_post_options): Likewise.
- * parse.c (parse_omp_structured_block): Likewise.
- * st.c (gfc_free_statement): Likewise.
-
-2007-08-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/32933
- * trans-decl.c (gfc_build_builtin_function_decls): Change
- prototype for associated.
- * trans-intrinsic.c (gfc_conv_intrinsic_minmax): Convert the
- result of __builtin_isnan into a boolean.
- (gfc_conv_intrinsic_strcmp): Cleanup.
- (gfc_conv_associated): Convert the result of the associated
- function into a boolean.
-
-2007-08-09 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/32987
- * io.c (format_token): Add FMT_ERROR.
- (next_char_not_space): Print error/warning when
- '\t' are used in format specifications.
- (format_lex): Propagate error.
- (check_format): Ditto.
-
-2007-08-09 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/33001
- * arith.c (arith_error): Point in the error message
- to -fno-range-check.
-
-2007-08-09 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/32902
- * intrinsic.texi (SIZEOF): Add mention to C_SIZE_T.
-
-2007-08-06 Christopher D. Rickett <crickett@lanl.gov>
-
- PR fortran/32732
- * trans-expr.c (gfc_conv_scalar_char_value): Convert the tree and
- actual arg expressions for scalar characters passed by-value to
- bind(c) routines.
- (gfc_conv_function_call): Call gfc_conv_scalar_char_value.
- * trans.h: Add prototype for gfc_conv_scalar_char_value.
- * trans-decl.c (generate_local_decl): Convert by-value character
- dummy args of bind(c) procedures using
- gfc_conv_scalar_char_value.
-
-2007-08-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/30947
- * iresolve.c (gfc_resolve_alarm_sub): Suffix the subroutine name
- with the kind of the STATUS argument.
-
-2007-08-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/30948
- * intrinsic.c (add_functions): Fix name of argument to CHDIR.
-
-2007-08-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/30933
- * iresolve.c (gfc_resolve_exit): Convert argument to default
- integer kind.
-
-2007-08-06 Daniel Franke <franke.daniel@gmail.com>
-
- * resolve.c (derived_pointer): Removed, replaced callers by access
- to appropiate attribute bit.
- (derived_inaccessable): Shortcut recursion depth.
- (resolve_fl_namelist): Fixed checks for private components in namelists.
-
-2007-08-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/29828
- * trans.h (gfor_fndecl_string_minmax): New prototype.
- * trans-decl.c (gfor_fndecl_string_minmax): New variable.
- (gfc_build_intrinsic_function_decls): Create gfor_fndecl_string_minmax.
- * check.c (gfc_check_min_max): Allow for character arguments.
- * trans-intrinsic.c (gfc_conv_intrinsic_minmax_char): New function.
- (gfc_conv_intrinsic_function): Add special case for MIN and MAX
- intrinsics with character arguments.
- * simplify.c (simplify_min_max): Add simplification for character
- arguments.
-
-2007-08-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31612
- * invoke.texi: Adjust documentation for option -fsyntax-only.
-
-2007-08-05 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
- Tobias Burnus <burnus@gcc.gnu.org>
-
- PR fortran/32979
- * intrinsic.h (gfc_check_isnan): Add prototype.
- * gfortran.h (gfc_isym_id): Add GFC_ISYM_ISNAN.
- * intrinsic.c (add_functions): Add ISNAN intrinsic.
- * check.c (gfc_check_isnan): New function.
- * trans-intrinsic.c (gfc_conv_intrinsic_isnan): New function.
- (gfc_conv_intrinsic_function): Call gfc_conv_intrinsic_isnan
- to translate ISNAN.
- * intrinsic.texi: Document ISNAN.
-
-2007-08-04 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31214
- * symbol.c (get_unique_symtree): Moved from module.c.
- * module.c (get_unique_symtree): Moved to symbol.c.
- * decl.c (get_proc_name): Transfer the typespec from the local
- symbol to the module symbol, in the case that an entry is also
- a module procedure. Ensure the local symbol is cleaned up by
- pointing to it with a unique symtree.
-
- * dump_parse_tree (gfc_show_code_node): Add EXEC_ASSIGN_CALL.
-
-2008-08-04 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/32969
- * iresolve.c (gfc_resolve_rrspacing): Convert argument(s) to
- expected KIND.
- (gfc_resolve_scale): Ditto.
- (gfc_resolve_set_exponent): Ditto.
- (gfc_resolve_spacing): Ditto.
-
- PR fortran/32968
- * trans-intrinsic.c (gfc_conv_intrinsic_si_kind,
- gfc_conv_intrinsic_sr_kind): Convert the argument(s) to the
- expected KIND, and fold the result to the expected KIND.
-
-2007-08-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31202
- * f95-lang.c (gfc_init_builtin_functions): Defin builtins for
- lround{f,,l} and llround{f,,l}.
- * trans-intrinsic.c (build_fix_expr): Generate calls to the
- {l,}round{f,,l} functions.
-
-2007-08-01 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR libfortran/32954
- * intrinsic.c (resolve_mask_arg): New function.
- (gfc_resolve_maxloc): Use resolve_mask_arg for mask resolution.
- (gfc_resolve_maxval): Likewise.
- (gfc_resolve_minloc): Likewise.
- (gfc_resolve_minval): Likewise.
- (gfc_resolve_pack): Likewise.
- (gfc_resolve_product): Likewise.
- (gfc_resolve_sum): Likewise.
- (gfc_resolve_unpack): Likewise.
-
-2007-08-01 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/32936
- * match.c (gfc_match_allocate): Better check that STAT is
- a variable.
-
- * check.c (gfc_check_allocated): Reorder checks to improve
- error message.
-
-2007-08-01 Nick Clifton <nickc@redhat.com>
-
- * arith.c: Change copyright header to refer to version 3 of the
- GNU General Public License and to point readers at the COPYING3
- file and the FSF's license web page.
- * openmp.c, interface.c, intrinsic.c, trans-array.c, trans-expr.c,
- symbol.c, iso-fortran-env.def, intrinsic.h, decl.c, trans-array.h,
- matchexp.c, dump-parse-tree.c, trans-common.c, array.c,
- Make-lang.in, trans-openmp.c, gfortran.h, error.c,
- iso-c-binding.def, lang.opt, data.c, trans-const.c, trans-stmt.c,
- expr.c, trans-const.h, trans-stmt.h, module.c, trans.c, scanner.c,
- trans-types.c, trans.h, gfortranspec.c, trans-types.h,
- lang-specs.h, io.c, bbt.c, resolve.c, f95-lang.c, st.c,
- iresolve.c, match.c, trans-decl.c, trans-io.c, target-memory.c,
- match.h, target-memory.h, parse.c, arith.h, check.c, dependency.c,
- parse.h, types.def, convert.c, dependency.h, primary.c,
- trans-intrinsic.c, options.c, misc.c, simplify.c: Likewise.
-
-2007-08-01 Daniel Franke <franke.daniel@gmail.com>
-
- * trans-decl.c (generate_local_decl): Emit warning on unused parameter
- on "-Wall -Wextra" or "-Wunused-parameter" but not on "-Wall", changed
- messages that start with lower case to upper case.
- * invoke.texi (-Wparameter-unused): Document differences between gcc
- and gfortran regarding this option.
-
-2007-08-01 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/32945
- * expr.c (check_specification_function): Skip check if no symtree
- is available.
-
-2007-08-01 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31609
- * resolve.c (resolve_entries): Entries declared to be module
- procedures must point to the function namespace.
-
-2007-07-31 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/32938
- * trans-stmt.c (gfc_trans_return): Convert to correct type.
-
-2007-07-31 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/32942
- * trans-intrinsic.c (gfc_conv_intrinsic_exponent): Convert to correct
- type.
-
-2007-07-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- * invoke.texi: Document -fsign-zero flag.
-
-2007-07-29 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31211
- * trans-expr.c (gfc_conv_expr_reference): Add block for case of
- scalar pointer functions so that NULL result is correctly
- handled.
-
- PR fortran/32682
- * trans-array.c (gfc_trans_array_constructor): On detecting a
- multi-dimensional parameter array, set the loop limits.
-
-2007-07-29 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/32906
- * resolve.c (resolve_fl_parameter): Check for constant shape arrays,
- adjusted error message.
-
-2007-07-29 Daniel Franke <franke.daniel@gmail.com>
-
- * invoke.texi: Removed -w from option summary.
-
-2007-07-29 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/32879
- * intrinsic.texi (IRAND, RAND, RANDOM_NUMBER): Document algorithm
- used for random number generator.
-
-2007-07-28 Kazu Hirata <kazu@codesourcery.com>
-
- * gfortran.h, interface.c, resolve.c, symbol.c: Fix comment
- typos.
- * intrinsic.texi, invoke.texi: Fix typos.
-
-2007-07-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/31609
- * resolve.c (generic_sym): Check for a same symbol and if so, return to
- avoid infinite recursion.
-
-2007-07-28 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/31818
- PR fortran/32876
- PR fortran/32905
- * gfortran.h (symbol_attribute): Added bits for pointer_comp,
- private_comp.
- * parse.c (parse_derived): Set pointer_comp/private_comp bits if
- the derived type ultimately contains pointer components or private
- components.
- * module.c (ab_attribute): New values AB_POINTER_COMP, AB_PRIVATE_COMP.
- (attr_bits): Added names for new ab_attributes.
- (mio_symbol_attribute): Save/restore new attribute bits in modules.
- * match.c (gfc_match_namelist): Removed check for namelist objects
- of assumed shape.
- * resolve.c (resolve_fl_namelist): Added check for pointer or
- private components in nested types. Added check for namelist objects
- of assumed shape.
-
-2007-07-28 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/32880
- * trans-expr.c (gfc_trans_scalar_assign): Revert to fixed order
- for lse and rse pre expressions, for derived types with
- allocatable components. Instead, assign the lhs to a temporary
- and deallocate after the assignment.
-
-2007-07-28 Janne Blomqvist <jb@gcc.gnu.org>
-
- PR fortran/32909
- * trans-stmt.c (gfc_trans_character_select): Replace occurrences
- of gfc_c_int_type_node with integer_type_node.
- * trans-decl.c (gfc_build_intrinsic_function_decls): Likewise.
- (gfc_build_builtin_function_decls): Likewise.
- (gfc_generate_function_code): Likewise.
- * trans-io.c (gfc_build_io_library_fndecls): Likewise.
-
-2007-07-27 Janne Blomqvist <jb@gcc.gnu.org>
-
- * trans-decl.c (gfc_build_builtin_function_decls): Use existing
- gfc_array_index_type rather than creating another typenode for
- gfc_index_integer_kind.
-
-2007-07-27 Janne Blomqvist <jb@gcc.gnu.org>
-
- * trans-io.c (gfc_build_io_library_fndecls): Change to use
- gfc_array_index_type for array descriptor triplets instead of
- gfc_int4_type_node.
-
-2007-07-26 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/32899
- * resolve.c (resolve_operator): Add INTRINSIC_EQ_OS comparison.
-
-2007-07-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
- Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/32760
- * primary.c (match_variable): Do not call gfc_add_flavor if symbol has
- attribute of ACCESS_PUBLIC or ACCESS_PRIVATE already marked.
-
-2007-07-27 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/32035
- * trans-stmt.c (gfc_trans_character_select): Replace the
- mechanism with labels by a SWITCH_EXPR.
- * trans-decl.c (gfc_build_builtin_function_decls): Change
- return type for select_string.
-
-2007-07-27 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/32903
- * trans-decl.c (gfc_trans_deferred_vars): Set intent(out)
- derived types as referenced, if they have the the default
- initializer set.
-
-2007-07-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
-
- * gfortran.h (generate_isocbinding_symbol): Constify.
- * symbol.c (gen_special_c_interop_ptr, gen_cptr_param,
- generate_isocbinding_symbol): Likewise.
-
-2007-07-24 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31205
- PR fortran/32842
- * trans-expr.c (gfc_conv_function_call): Remove the default
- initialization of intent(out) derived types.
- * symbol.c (gfc_lval_expr_from_sym): New function.
- * matchexp.c (gfc_get_parentheses): Return argument, if it is
- character and posseses a ref.
- * gfortran.h : Add prototype for gfc_lval_expr_from_sym.
- * resolve.c (has_default_initializer): Move higher up in file.
- (resolve_code): On detecting an interface assignment, check
- if the rhs and the lhs are the same symbol. If this is so,
- enclose the rhs in parenetheses to generate a temporary and
- prevent any possible aliasing.
- (apply_default_init): Remove code making the lval and call
- gfc_lval_expr_from_sym instead.
- (resolve_operator): Give a parentheses expression a type-
- spec if it has no type.
- * trans-decl.c (gfc_trans_deferred_vars): Apply the a default
- initializer, if any, to an intent(out) derived type, using
- gfc_lval_expr_from_sym and gfc_trans_assignment. Check if
- the dummy is present.
-
-2007-07-24 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/32867
- * expr.c (check_init_expr): Simplify matched functions.
-
-2007-07-24 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/32778
- * intrinsic.c (add_sym): Do not exclude any symbols, even if not part
- of the selected standard.
- (make generic): Likewise.
- (make alias): Likewise, set standard the alias belongs to.
- (add_subroutines): Call make_noreturn unconditionally.
- (check_intrinsic_standard): Change return value to try.
- (gfc_intrinsic_func_interface): Check return value of above function.
- (gfc_intrinsic_sub_interface): Likewise.
-
-2007-07-24 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR fortran/30814
- * trans-decl.c (generate_function_code): Add argument
- for flag_bounds_check to the array for set_options.
- * invoke.texi (-fbounds-check): Document new libarary run-time
- behaviour.
-
-2007-07-23 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/25104
- PR fortran/31639
- * expr.c (check_transformational): Reject valid transformational
- intrinsics to avoid ICE.
- (check_inquiry): Report error for assumed character lengths for
- all supported standards.
- (check_init_expr): Whitespace fix.
-
-2007-07-23 Christopher D. Rickett <crickett@lanl.gov>
-
- PR fortran/32797
- PR fortran/32800
- * decl.c (verify_bind_c_sym): Use the result symbol for functions
- with a result clause. Warn if implicitly typed. Verify the type
- and rank of the SHAPE argument, if given.
- * resolve.c (gfc_iso_c_sub_interface): Use gfc_procedure_use to
- check the actual args against the formal, sorting them if
- necessary.
- * symbol.c (gen_shape_param): Initialize type of SHAPE param to
- BT_VOID.
-
-2007-07-23 Christopher D. Rickett <crickett@lanl.gov>
-
- PR fortran/32732
- * trans-decl.c (generate_local_decl): Convert the TREE_TYPE for by
- value character dummy args of BIND(C) procedures.
- * trans-expr.c (gfc_conv_variable): Do not build address
- expression for BT_CHARACTER dummy args.
-
-2007-07-23 Christopher D. Rickett <crickett@lanl.gov>
- Tobias Burnus <burnus@net-b.de>
-
- PR fortran/32600
- * trans-expr.c (gfc_conv_function_call): Handle c_funloc.
- * trans-types.c: Add pfunc_type_node.
- (gfc_init_types,gfc_typenode_for_spec): Use it.
- * resolve.c (gfc_iso_c_func_interface): Fix whitespace and
- improve error message.
-
-2007-07-22 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/32710
- * parse.c (gfc_fixup_sibling_symbols): No replacement of symbols if
- the current is a namelist.
-
-2007-07-22 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/29962
- PR fortran/31253
- PR fortran/31265
- PR fortran/31639
- * gfortran.h (gfc_intrinsic_sym): Changed members elemental, pure,
- generic, specific, actual_ok, noreturn into bits of a bitfield,
- added bits for inquiry, transformational, conversion.
- * check.c (non_init_transformational): Removed, removed all callers.
- * intrinsic.c (enum class): New.
- (add_sym*): Replaced argument elemetal by enum class. Changed all
- callers.
- (add_functions): Assign appropriate classes to intrinsic functions.
- (add_subroutines): Assign appropriate classes to intrinsic subroutines.
- (add_conv): Set conversion attribute.
- (gfc_init_expr_extensions): Removed, removed all callers.
- (gfc_intrinsic_func_interface): Reimplemented check for non-standard
- initializatione expressions.
- * expr.c (check_specification_function): New.
- (gfc_is_constant_expr): Added check for specification functions.
- (check_init_expr_arguments): New.
- (check_inquiry): Changed return value to MATCH, added checks for
- inquiry functions defined by F2003.
- (check_transformational): New.
- (check_null): New.
- (check_elemental): New.
- (check_conversion): New.
- (check_init_expr): Call new check functions, add more specific error
- messages.
-
-2007-07-21 Christopher D. Rickett <crickett@lanl.gov>
-
- PR fortran/32627
- * resolve.c (set_name_and_label): Set kind number for character
- version of c_f_pointer.
- (gfc_iso_c_sub_interface): Set the kind of the SHAPE formal arg to
- that of the actual SHAPE arg.
- * symbol.c (gen_shape_param): Initialize kind for SHAPE arg.
-
-2007-07-21 Christopher D. Rickett <crickett@lanl.gov>
-
- PR fortran/32801
- * symbol.c (generate_isocbinding_symbol): Remove unnecessary
- conditional.
-
- PR fortran/32804
- * resolve.c (gfc_iso_c_func_interface): Reject assumed-shape and
- deferred-shape arrays as args to C_LOC. Fix bug in testing
- character args to C_LOC.
-
-2007-07-21 Lee Millward <lee.millward@gmail.com>
-
- PR fortran/32823
- * trans-intrinsic.c (gfc_conv_intrinsic_int): Evaluate all
- arguments passed, not just the first one. Adjust code to
- refer to "args[0]" instead of "arg" as a result.
-
-2007-07-19 Christopher D. Rickett <crickett@lanl.gov>
-
- PR fortran/32600
- * trans-expr.c (gfc_conv_function_call): Inline C_LOC.
-
-2007-07-18 Christopher D. Rickett <crickett@lanl.gov>
-
- PR fortran/32801
- * symbol.c (generate_isocbinding_symbol): Fix bug where
- ISOCBINDING_FUNPTR was generated for C_LOC instead of the needed
- ISOCBINDING_PTR.
-
-2007-07-17 Janus Weil <jaydub66@gmail.com>
-
- PR fortran/32535
- * resolve.c (resolve_fl_namelist): Check for namelist private
- components in contained subprograms.
-
-2007-07-17 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31320
- PR fortran/32665
- * trans-expr.c (gfc_trans_subcomponent_assign): Ensure that
- renormalization unity base is done independently of existing
- lbound value.
- (gfc_trans_scalar_assign): If rhs is not a variable, put
- lse->pre after rse->pre to ensure that de-allocation of lhs
- occurs after evaluation of rhs.
-
-2007-07-16 Lee Millward <lee.millward@gmail.com>
-
- PR fortran/32222
- PR fortran/32238
- PR fortran/32242
- * trans-intrinsic.c (gfc_conv_intrinsic_function_args): Adjust
- to operate on a stack allocated array for the intrinsic arguments
- instead of creating a TREE_LIST. Add two new parameters for the
- array and the number of elements. Update all callers to allocate
- an array of the correct length to pass in. Update comment.
- (gfc_intrinsic_argument_list_length): New function.
- (gfc_conv_intrinsic_conversion): Call it.
- (gfc_conv_intrinsic_mnimax): Likewise.
- (gfc_conv_intrinsic_merge): Likewise.
- (gfc_conv_intrinsic_lib_function): Call it. Use new CALL_EXPR
- constructors.
- (gfc_conv_intrinsic_cmplx): Likewise.
- (gfc_conv_intrinsic_ctime): Likewise.
- (gfc_covn_intrinsic_fdate): Likewise.
- (gfc_conv_intrinsic_ttynam): Likewise.
- (gfc_conv_intrinsic_ishftc): Likewise.
- (gfc_conv_intrinsic_index): Likewise.
- (gfc_conv_intrinsic_scan): Likewise.
- (gfc_conv_intrinsic_verify): Likewise.
- (gfc_conv_intrinsic_trim): Likewise.
- (gfc_conv_intrinsic_aint): Use new CALL_EXPR constructors.
- (gfc_conv_intrinsic_exponent): Likewise.
- (gfc_conv_intrinsic_bound): Likewise.
- (gfc_conv_intrinsic_abs): Likewise.
- (gfc_conv_intrinsic_mod): Likewise.
- (gfc_conv_intrinsic_sign): Likewise.
- (gfc_conv_intrinsic_len): Likewise.
- (gfc_conv_intrinsic_adjust): Likewise.
- (gfc_conv_intrinsic_si_kind): Likewise.
-
-2007-07-16 Janne Blomqvist <jb@gcc.gnu.org>
-
- PR fortran/32748
- * trans-decl.c (gfc_build_builtin_function_decls): Remove
- DECL_IS_MALLOC attribute from internal_realloc, thus reverting
- part of my 2007-07-03 patch.
-
-2007-07-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
- Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/32611
- * gfortran.h (gfc_option_t): Add flag_sign_zero field.
- * lang.opt (-fsign-zero): New option.
- * trans.h: Rename gfor_fndecl_set_std into gfor_fndecl_set_options.
- * trans-decl.c (gfc_build_builtin_function_decls): Build the function
- declaration to pass an array containing the options to be used by the
- runtime library. (gfc_generate_function_code): Build an array that
- contains option values to be passed to the runtime library and the call
- to the function.
- * options.c (gfc_init_options): Initialize the flag_sign_zero field.
- (gfc_handle_option): Handle the -fsign-zero option.
-
-2007-07-15 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/32036
- * trans-array.c (gfc_conv_array_ref): Only evaluate index once.
-
-2007-07-15 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/32357
- * iresolve.c (gfc_resolve_mvbits): Convert FROMPOS, LEN and TOPOS
- to C int.
-
-2007-07-14 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR libfortran/32731
- * iresolve.c(gfc_resolve_pack): A scalar mask has
- to be kind=4, an array mask with kind<4 is converted
- to gfc_default_logical_kind automatically.
- (gfc_resolve_unpack): Convert mask to gfc_default_lotical_kind
- if it has a kind<4.
-
-2007-07-14 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/32724
- * parse.c (parse_spec): Emit error on unexpected statement
- function.
-
-2007-07-13 Daniel Franke <franke.daniel@gmail.com>
-
- * invoke.texi: Unified upper- and lower-case in menus.
- (-w, -W): Removed, documented by gcc.
- * intrinsic.texi: Unified Class-section entries, added
- subroutine/function warning where appropiate.
-
-2007-07-12 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/31639
- * decl.c (gfc_match_suffix): Removed surplus general error that hides
- a more specific message.
- * resolve.c (resolve_fl_variable): Reject illegal initializiers only
- if not already done.
- (resolve_fl_procedure): Added check for initializers of functions.
-
-2007-07-12 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/32704
- * invoke.texi (-static-libgfortran): Document new option.
-
-2007-07-12 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/32634
- PR fortran/32727
- * module.c (write_generic): Restore patch of 2007-07-10 and use
- symbol name if there are no use names.
-
-2007-07-12 Christopher D. Rickett <crickett@lanl.gov>
-
- PR fortran/32599
- * decl.c (verify_c_interop_param): Require character string dummy
- args to BIND(C) procedures to have length 1.
- * resolve.c (resolve_fl_procedure): Modify parameter checking for
- BIND(C) procedures.
-
- PR fortran/32601
- * resolve.c (gfc_iso_c_func_interface): Verify that a valid
- expression is given as an argument to C_LOC and C_ASSOCIATED.
- * trans-io.c (transfer_expr): Add argument for code block. Add
- standards check to determine if an error message should be
- reported for printing C_PTR or C_FUNPTR.
- (transfer_array_component): Update arguments to transfer_expr.
- (gfc_trans_transfer): Ditto.
-
- * symbol.c (gen_cptr_param): Fix whitespace.
-
-2007-07-12 Jakub Jelinek <jakub@redhat.com>
-
- PR fortran/32550
- * trans.h (GFC_POINTER_TYPE_P): Define.
- * trans-types.c (gfc_sym_type): Set it for types on attr->sym.pointer.
- * trans-openmp.c (gfc_omp_privatize_by_reference): Return false
- if GFC_POINTER_TYPE_P is set on the type.
-
-2007-07-12 Richard Guenther <rguenther@suse.de>
-
- * trans-intrinsic.c (gfc_conv_intrinsic_repeat): Convert
- arguments to gfc_charlen_type_node.
- * trans-io.c (gfc_convert_array_to_string): Convert type
- size to gfc_array_index_type.
-
-2007-07-12 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/32634
- PR fortran/32727
- * module.c: Reverted Paul's patch from 2007-07-10.
-
-2007-07-11 Richard Guenther <rguenther@suse.de>
-
- * trans-array.c (gfc_conv_array_parameter): Use correct
- types for comparison.
- * trans-intrinsic.c (gfc_conv_intrinsic_repeat): Use
- correct types for POINTER_PLUS_EXPR.
- * trans-stmt.c (gfc_trans_forall_loop): Use correct type
- for integer one constant.
-
-2007-07-10 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/32157
- * resolve.c (is_external_proc): New function. Adds test that
- the symbol is not an intrinsic procedure.
- * (resolve_function, resolve_call): Replace logical statements
- with call to is_external_proc.
-
- PR fortran/32689
- * simplify.c (gfc_simplify_transfer): If mold has rank, the
- result is an array.
-
- PR fortran/32634
- * module.c (write_generic): Write the local name of the
- interface.
-
-2007-07-09 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/29459
- * trans-array.c (gfc_trans_array_constructor): Mark offset field
- with TREE_NO_WARNING.
- * trans-decl.c (gfc_build_qualified_array): Mark lbound, ubound,
- stride and size variables with TREE_NO_WARNING.
-
-2007-07-09 Steven G. Kargl <kargl@gcc.gnu.org>
-
- * trans-decl.c (set_tree_decl_type_code): Remove function.
- (generate_local_decl): Remove reference to set_tree_decl_type_code.
-
-2007-07-09 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/31129
- * trans-decl.c (generate_local_decl) Emit a warning if an unused
- parameter is found.
-
-2007-07-08 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/29876
- * module.c (gfc_match_use): Do not set an non-existant
- intrinsic operator if a user-defined operator is found.
-
-2007-07-08 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/24784
- PR fortran/28004
- * trans-decl.c (generate_local_decl): Adjusted warning on unused
- dummy arguments, tell middle-end not to emit additional warnings.
-
-2007-07-08 Daniel Franke <franke.daniel@gmail.com>
- Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
-
- PR fortran/17711
- * gfortran.h (gfc_intrinsic_op): Added INTRINSIC_EQ_OS,
- INTRINSIC_NE_OS, INTRINSIC_GT_OS, INTRINSIC_GE_OS,
- INTRINSIC_LT_OS and INTRINSIC_LE_OS.
- * arith.c (eval_intrinsic, eval_type_intrinsic0): Likewise.
- * arith.h (gfc_eq, gfc_ne, gfc_gt, gfc_ge, gfc_lt, gfc_le):
- Added gfc_intrinsic_op as third argument type.
- * dump-parse-tree.c (gfc_show_expr): Account for new enum values.
- * expr.c (simplify_intrinsic_op, check_intrinsic_op): Likewise.
- * interface.c (check_operator_interface): Likewise.
- (gfc_check_interfaces): Added cross-checks for FORTRAN 77 and
- Fortran 90 style operators using new enum values.
- (gfc_extend_expr): Likewise.
- (gfc_add_interface): Likewise.
- * match.c (intrinsic_operators): Distinguish FORTRAN 77 style
- operators from Fortran 90 style operators using new enum values.
- * matchexp.c (match_level_4): Account for new enum values.
- * module.c (mio_expr): Likewise.
- * resolve.c (resolve_operator): Deal with new enum values, fix
- inconsistent error messages.
- * trans-expr.c (gfc_conv_expr_op): Account for new enum values.
-
-2007-07-08 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/32669
- * interface.c (get_expr_storage_size): Properly obtain lower bound.
- (compare_actual_formal): Add space before parenthesis.
-
-2007-07-08 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/25094
- * resolve.c (resolve_fl_procedure): Added check for PRIVATE types
- in PUBLIC interfaces.
-
-2007-07-07 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/32644
- * decl.c (match_attr_spec): Don't return MATCH_ERROR if comma found and
- gfc_match_bind_c does not return MATCH_YES.
-
-2007-07-07 Kazu Hirata <kazu@codesourcery.com>
-
- * decl.c, gfortran.h, interface.c, module.c, resolve.c,
- trans-array.c, trans-decl.c: Fix comment typos. Follow
- spelling conventions.
- * intrinsic.texi: Fix typos. Follow spelling conventions.
-
-2007-05-06 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/32633
- * symbol.c (save_status): New.
- * gfortran.h (save_status): Added external declaration.
- (check_conflict): Check for conflicting explicite SAVE statements
- only.
- (gen_special_c_interop_ptr): Use SAVE_EXPLICIT constant.
- * module.c (ab_attribute, attr_bits): Removed enumerator value
- AB_SAVE for save attribute.
- (mio_symbol_attribute): Import/export the full SAVE status,
- removed usage of AB_SAVE.
- * dump-parse-tree.c (gfc_show_attr): Dump full SAVE status.
- * decl.c (add_init_expr_to_sym): Set SAVE_IMPLICIT only if not
- already explicit.
-
-2007-07-05 Daniel Franke <franke.daniel@gmail.com>
- Tobias Burnus <burnus@net-b.de>
-
- PR fortran/32359
- * gfortran.h (symbol_attribute): Change save attribute into an enum.
- * decl.c (add_init_expr_to_sym): Set it to SAVE_IMPLICIT.
- * symbol.c (gfc_add_save): Check for SAVE_EXPLICIT.
- * resolve.c (resolve_fl_variable): Check for SAVE_EXPLICIT.
- (resolve_symbol): Allow OMP threadprivate with
- initialization SAVEd and save_all variable.
- * trans-decl.c (gfc_finish_var_decl): Remove obsolete sym->value check.
-
-2007-07-05 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/32526
- * match.c (gfc_match_call): Check, in all cases, that a symbol
- is neither generic nor a subroutine before trying to add it as
- a subroutine.
-
- PR fortran/32613
- * match.c (gfc_match_do): Reset the implied_index attribute.
-
-2007-07-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31198
- * trans-intrinsic.c (trans-intrinsic.c): Handle optional
- arguments correctly for MIN and MAX intrinsics.
-
-2007-07-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/32545
- * io.c (check_format): Always call gfc_error for errors.
- (check_format_string): Change type of this function to try and
- return the result of check_format.
- (check_io_constraints): Return MATCH_ERROR if check_format_string
- returns FAILURE.
-
-2007-07-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/32612
- * decl.c (get_proc_name): Include attr->mod_proc in check for error.
-
-2007-07-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/32432
- * gfortran.h: Change type of gfc_assign_data_value from void to try.
- * data.c (gfc_assign_data_value): Return FAILURE if error found.
- * resolve.c (check_data_variable): If gfc_assign_data_value returns
- failure, break out of loop and return failure.
-
-2007-07-03 Christopher D. Rickett <crickett@lanl.gov>
-
- PR fortran/32579
- * symbol.c (gen_cptr_param): Generate C_PTR and C_FUNPTR if necessary.
- (build_formal_args): Pass intrinsic module symbol id to
- gen_cptr_param.
-
-2007-07-03 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/25062
- * resolve.c (resolve_common_blocks): New check function.
- (resolve_types): Use it.
-
-2007-07-03 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/30940
- * interface.c (get_sym_storage_size): New function.
- (get_sym_storage_size): New function.
- (compare_actual_formal): Enhance sequence association
- support and improve checking.
-
-2007-07-03 Janne Blomqvist <jb@gcc.gnu.org>
-
- * trans-decl.c (gfc_build_builtin_function_decls): Mark
- internal_realloc as a malloc function.
-
-2007-07-03 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/20888
- * resolve.c (resolve_operator): Check for NULL as operand.
-
-2007-07-02 Tobias Burnus <burnus@net-b.de>
-
- * gfortran.texi (Fortran 2003): Add ISO Bind C.
- * intrinsic.texi (C_ASSOCIATED,C_F_POINTER,C_F_PROCPOINTER,
- C_FUNLOC,C_LOC): Document new ISO Bind C intrinsics.
-
-2007-07-01 Christopher D. Rickett <crickett@lanl.gov>
-
- * interface.c (gfc_compare_derived_types): Special case for comparing
- derived types across namespaces.
- (gfc_compare_types): Deal with BT_VOID.
- (compare_parameter): Use BT_VOID to accept ISO C Binding pointers.
- * trans-expr.c (gfc_conv_function_call): Remove setting parm_kind
- to SCALAR
- (gfc_conv_initializer): Deal with ISO C Binding NULL_PTR and
- NULL_FUNPTR.
- (gfc_conv_expr): Convert expressions for ISO C Binding derived types.
- * symbol.c (gfc_set_default_type): BIND(C) variables should not be
- Implicitly declared.
- (check_conflict): Add BIND(C) and check for conflicts.
- (gfc_add_explicit_interface): Whitespace.
- (gfc_add_is_bind_c): New function.
- (gfc_copy_attr): Use it.
- (gfc_new_symbol): Initialize ISO C Binding objects.
- (get_iso_c_binding_dt): New function.
- (verify_bind_c_derived_type): Ditto.
- (gen_special_c_interop_ptr): Ditto.
- (add_formal_arg): Ditto.
- (gen_cptr_param): Ditto.
- (gen_fptr_param): Ditto.
- (gen_shape_param): Ditto.
- (add_proc_interface): Ditto.
- (build_formal_args): Ditto.
- (generate_isocbinding_symbol): Ditto.
- (get_iso_c_sym): Ditto.
- * decl.c (num_idents_on_line, has_name_equals): New variables.
- (verify_c_interop_param): New function.
- (build_sym): Finish binding labels and deal with COMMON blocks.
- (add_init_expr_to_sym): Check if the initialized expression is
- an iso_c_binding named constants
- (variable_decl): Set ISO C Binding type_spec components.
- (gfc_match_kind_spec): Check match for C interoperable kind.
- (match_char_spec): Fix comment. Chnage gfc_match_small_int
- to gfc_match_small_int_expr. Check for C interoperable kind.
- (match_type_spec): Clear the current binding label.
- (match_attr_spec): Add DECL_IS_BIND_C. If BIND(C) is found, use it
- to set attributes.
- (set_binding_label): New function.
- (set_com_block_bind_c): Ditto.
- (verify_c_interop): Ditto.
- (verify_com_block_vars_c_interop): Ditto.
- (verify_bind_c_sym): Ditto.
- (set_verify_bind_c_sym): Ditto.
- (set_verify_bind_c_com_block): Ditto.
- (get_bind_c_idents): Ditto.
- (gfc_match_bind_c_stmt): Ditto.
- (gfc_match_data_decl): Use num_idents_on_line.
- (match_result): Deal with right paren in BIND(C).
- (gfc_match_suffix): New function.
- (gfc_match_function_decl): Use it. Code is re-arranged to deal with
- ISO C Binding result clauses.
- (gfc_match_subroutine): Deal with BIND(C).
- (gfc_match_bind_c): New function.
- (gfc_get_type_attr_spec): New function. Code is re-arranged in and
- taken from gfc_match_derived_decl.
- (gfc_match_derived_decl): Add check for BIND(C).
- * trans-common.c: Forward declare gfc_get_common.
- (gfc_sym_mangled_common_id): Change arg from 'const char *name' to
- 'gfc_common_head *com'. Check for ISO C Binding of the common block.
- (build_common_decl): 'com->name' to 'com in SET_DECL_ASSEMBLER_NAME.
- * gfortran.h: Add GFC_MAX_BINDING_LABEL_LEN
- (bt): Add BT_VOID
- (sym_flavor): Add FL_VOID.
- (iso_fortran_env_symbol, iso_c_binding_symbol, intmod_id): New enum
- (CInteropKind_t): New struct.
- (c_interop_kinds_table): Use it. Declare an array of structs.
- (symbol_attribute): Add is_bind_c, is_c_interop, and is_iso_c
- bitfields.
- (gfc_typespec): Add is_c_interop; is_iso_c, and f90_type members.
- (gfc_symbol): Add from_intmod, intmod_sym_id, binding_label, and
- common_block members.
- (gfc_common_head): Add binding_label and is_bind_c members.
- (gfc_gsymbol): Add sym_name, mod_name, and binding_label members.
- Add prototypes for get_c_kind, gfc_validate_c_kind,
- gfc_check_any_c_kind, gfc_add_is_bind_c, gfc_add_value,
- verify_c_interop, verify_c_interop_param, verify_bind_c_sym,
- verify_bind_c_derived_type, verify_com_block_vars_c_interop,
- generate_isocbinding_symbol, get_iso_c_sym, gfc_iso_c_sub_interface
- * iso-c-binding.def: New file. This file contains the definitions
- of the types provided by the Fortran 2003 ISO_C_BINDING intrinsic
- module.
- * trans-const.c (gfc_conv_constant_to_tree): Deal with C_NULL_PTR
- or C_NULL_FUNPTR expressions.
- * expr.c (gfc_copy_expr): Add BT_VOID case. For BT_CHARACTER, the
- ISO C Binding requires a minimum string length of 1 for '\0'.
- * module.c (intmod_sym): New struct.
- (pointer_info): Add binding_label member.
- (write_atom): Set len to 0 for NULL pointers. Check for NULL p and *p.
- (ab_attribute): Add AB_IS_BIND_C, AB_IS_C_INTEROP and AB_IS_ISO_C.
- (attr_bits): Add "IS_BIND_C", "IS_C_INTEROP", and "IS_ISO_C".
- (mio_symbol_attribute): Deal with ISO C Binding attributes.
- (bt_types): Add "VOID".
- (mio_typespec): Deal with ISO C Binding components.
- (mio_namespace_ref): Add intmod variable.
- (mio_symbol): Check for symbols from an intrinsic module.
- (load_commons): Check for BIND(C) common block.
- (read_module): Read binding_label and use it.
- (write_common): Add label. Write BIND(C) info.
- (write_blank_common): Blank commons are not BIND(C). Explicitly
- set is_bind_c=0.
- (write_symbol): Deal with binding_label.
- (sort_iso_c_rename_list): New function.
- (import_iso_c_binding_module): Ditto.
- (create_int_parameter): Add to args.
- (use_iso_fortran_env_module): Adjust to deal with iso_c_binding
- intrinsic module.
- * trans-types.c (c_interop_kinds_table): new array of structs.
- (gfc_validate_c_kind): New function.
- (gfc_check_any_c_kind): Ditto.
- (get_real_kind_from_node): Ditto.
- (get_int_kind_from_node): Ditto.
- (get_int_kind_from_width): Ditto.
- (get_int_kind_from_minimal_width): Ditto.
- (init_c_interop_kinds): Ditto.
- (gfc_init_kinds): call init_c_interop_kinds.
- (gfc_typenode_for_spec): Adjust for BT_VOID and ISO C Binding pointers.
- Adjust handling of BT_DERIVED.
- (gfc_sym_type): Whitespace.
- (gfc_get_derived_type): Account for iso_c_binding derived types
- * resolve.c (is_scalar_expr_ptr): New function.
- (gfc_iso_c_func_interface): Ditto.
- (resolve_function): Use gfc_iso_c_func_interface.
- (set_name_and_label): New function.
- (gfc_iso_c_sub_interface): Ditto.
- (resolve_specific_s0): Use gfc_iso_c_sub_interface.
- (resolve_bind_c_comms): New function.
- (resolve_bind_c_derived_types): Ditto.
- (gfc_verify_binding_labels): Ditto.
- (resolve_fl_procedure): Check for ISO C interoperability.
- (resolve_symbol): Check C interoperability.
- (resolve_types): Walk the namespace. Check COMMON blocks.
- * trans-decl.c (gfc_sym_mangled_identifier): Prevent the mangling
- of identifiers that have an assigned binding label.
- (gfc_sym_mangled_function_id): Use the binding label rather than
- the mangled name.
- (gfc_finish_var_decl): Put variables that are BIND(C) into a common
- segment of the object file, because this is what C would do.
- (gfc_create_module_variable): Conver to proper types
- (set_tree_decl_type_code): New function.
- (generate_local_decl): Check dummy variables and derived types for
- ISO C Binding attributes.
- * match.c (gfc_match_small_int_expr): New function.
- (gfc_match_name_C): Ditto.
- (match_common_name): Deal with ISO C Binding in COMMON blocks
- * trans-io.c (transfer_expr): Deal with C_NULL_PTR or C_NULL_FUNPTR
- expressions
- * match.h: Add prototypes for gfc_match_small_int_expr,
- gfc_match_name_C, match_common_name, set_com_block_bind_c,
- set_binding_label, set_verify_bind_c_sym,
- set_verify_bind_c_com_block, get_bind_c_idents,
- gfc_match_bind_c_stmt, gfc_match_suffix, gfc_match_bind_c,
- gfc_get_type_attr_spec
- * parse.c (decode_statement): Use gfc_match_bind_c_stmt
- (parse_derived): Init *derived_sym = NULL, and gfc_current_block
- later for valiadation.
- * primary.c (got_delim): Set ISO C Binding components of ts.
- (match_logical_constant): Ditto.
- (match_complex_constant): Ditto.
- (match_complex_constant): Ditto.
- (gfc_match_rvalue): Check for existence of at least one arg for
- C_LOC, C_FUNLOC, and C_ASSOCIATED.
- * misc.c (gfc_clear_ts): Clear ISO C Bindoing components in ts.
- (get_c_kind): New function.
-
-2007-07-01 Janne Blomqvist <jb@gcc.gnu.org>
-
- PR fortran/32239
- * trans-expr.c (gfc_conv_power_op): Use builtin_powi for
- real**int4 powers.
- * f95-lang.c (gfc_init_builtin_functions): Add builtin_powi to the
- builtins table.
-
-2007-07-01 Janne Blomqvist <jb@gcc.gnu.org>
-
- * trans.h: Remove decls for 64-bit allocation functions.
- * trans-array.c (gfc_grow_array): Always pick the standard realloc
- function decl.
- (gfc_array_allocate): Likewise.
- * trans-decl.c: Remove trees for 64-bit allocation functions.
- (gfc_build_builtin_function_decls): Don't build fndecls for 64-bit
- allocations functions, use index_int_type for normal allocation
- functions.
-
-2007-06-30 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/20373
- * intrinsic.c (add_functions): Additional function types.
- (gfc_convert_type_warn): Remove intrinsic-flag from
- conversion functions.
- * resolve.c (resolve_symbol): Added type checks to
- explicitly defined intrinsics.
-
-2007-06-30 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/32555
- * io.c (check_format): Allow zero to precede the
- P edit descriptor.
-
-2007-06-30 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/32472
- * simplify.c (gfc_simplify_repeat): Add handling of character
- literal for first argument.
-
-2007-06-29 Daniel Franke <franke.daniel@gmail.com>
-
- * resolve.c (resolve_operator): Added check whether a user
- defined operator is available.
-
-2007-06-29 Daniel Franke <franke.daniel@gmail.com>
-
- * openmp.c (resolve_omp_clauses): Adjust error message to
- better reflect the actual requirement.
-
-2007-06-29 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/32483
- * io.c (format_lex): Fix FMT_ZERO.
- (check_format,check_format_string,gfc_match_format,
- check_io_constraints) Additional checking for READ.
-
-2007-06-28 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR other/31400
- * lang.opt (static-libgfortran): New option.
- * gfortranspec.c (ADD_ARG_LIBGFORTRAN): New macro.
- (Option): Add OPTION_static and OPTION_static_libgfortran.
- (lookup_option): Handle the new -static-libgfortran option.
- (lang_specific_driver): Check whether -static is passed.
- Handle the new -static-libgfortran option.
- * options.c (gfc_handle_option): If -static-libgfortran is
- passed and isn't supported on this configuration, error out.
-
-2007-06-27 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/32467
- * openmp.c (resolve_omp_clauses): Emit error on allocatable
- components in COPYIN, COPYPRIVATE, FIRSTPRIVATE and LASTPRIVATE
- clauses.
-
-2007-06-25 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/32464
- * resolve.c (check_host_association): Return if the old symbol
- is use associated. Introduce retval to reduce the number of
- evaluations of the first-order return value.
-
- PR fortran/31494
- * match.c (gfc_match_call): If a host associated symbol is not
- a subroutine, build a new symtree/symbol in the current name
- space.
-
-2007-06-24 Tobias Burnus <burnus@net-de>
-
- PR fortran/32460
- * interface.c (gfc_compare_derived_types): Add access check.
- * symbol.c (gfc_find_component): Ditto.
- (gfc_set_component_attr,gfc_get_component_attr) Copy access state.
- * dump-parse-tree.c (gfc_show_components): Dump access state.
- * gfortran.h (struct gfc_component): Add gfc_access.
- * module.c (mio_component): Add access state.
- * (gfc_match_structure_constructor): Check for private access state.
-
-2007-06-24 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/32298
- PR fortran/31726
- * trans-intrinsic.c (gfc_conv_intrinsic_minmaxloc): Calculate
- the offset between the loop counter and the position as
- defined. Add the offset within the loop so that the mask acts
- correctly. Do not advance the location on the basis that it
- is zero.
-
-2007-06-22 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/31473
- * symbol.c (gfc_copy_attr): Emit errors for duplicate
- EXTERNAL/INTRINSIC statements.
-
-2007-06-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/32360
- * expr.c (gfc_check_assign): If the rvalue expression type is NULL_EXPR,
- check to see if the lvalue has attribute pointer and data.
-
-2007-06-21 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/31162
- * resolve.c (gfc_resolve_iterator_expr): Add check for REAL using
- gfc_notify_standard. (gfc_resolve_iterator): Remove check.
- (resolve_branch): Change "Obsolete" to "Deleted feature".
- * io.c (resolve_tag): Ditto.
- * match.c (gfc_match_pause, gfc_match_assign, gfc_match_goto): Ditto.
-
-2007-06-20 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/32361
- * match.c (gfc_match_common): If the symbol value expression type is
- NULL_EXPR, don't error if previously initialized.
-
-2007-06-20 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/25061
- * decl.c (get_proc_name) Check symbol for generic interface
- and issue an error.
-
-2007-06-20 Andrew Pinski <andrew_pinski@playstation.sony.com>
- Richard Guenther <rguenther@suse.de>
-
- PR fortran/32140
- * trans.c (gfc_build_addr_expr): Use the correct types.
-
-2007-06-19 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/20863
- PR fortran/20882
- * resolve.c (resolve_code): Use gfc_impure_variable as a
- condition for rejecting derived types with pointers, in pure
- procedures.
- (gfc_impure_variable): Add test for dummy arguments of pure
- procedures; any for functions and INTENT_IN for subroutines.
-
- PR fortran/32236
- * data.c (gfc_assign_data_value): Change the ICE on an array
- reference initializer not being an array into an error and
- clear init to prevent a repetition of the error.
-
-2007-06-17 Janne Blomqvist <jb@gcc.gnu.org>
-
- * gfortran.texi: Add documentation for GFORTRAN_UNBUFFERED_n
- environment variables. Fix documentation for
- GFORTRAN_UNBUFFERED_ALL environment variable.
-
-2007-06-15 Andrew Pinski <andrew_pinski@playstation.sony.com>
-
- * trans-intrinsic.c (gfc_conv_intrinsic_repeat): Use
- POINTER_PLUS_EXPR instead of PLUS_EXPR for pointer addition.
- * trans-expr.c (gfc_trans_string_copy): Create
- POINTER_PLUS_EXPR instead of a PLUS_EXPR
- for pointer types.
-
-2007-06-14 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/32302
- * trans-common.c (build_common_decl): If resizing of common
- decl is needed, update the TREE_TYPE.
-
-2007-06-13 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/32323
- * interface.c (has_vector_section): New.
- (compare_actual_formal): Check for array sections with vector subscript.
-
-2007-06-12 Dirk Mueller <dmueller@suse.de>
-
- * trans-stmt.c (gfc_trans_call): fix gcc_assert to
- a comparison, not an assignment.
-
-2007-06-12 Paul Thomas <pault@gcc.gnu.org>
-
- * trans-common.c (create_common): Initialize 'field_init'.
-
-2007-06-12 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/29786
- PR fortran/30875
- * trans-common.c (get_init_field): New function.
- (create_common): Call get_init_field for overlapping
- initializers in equivalence blocks.
- * resolve.c (resolve_equivalence_derived, resolve_equivalence):
- Remove constraints on initializers in equivalence blocks.
- * target-memory.c (expr_to_char, gfc_merge_initializers):
- New functions.
- (encode_derived): Add the bit offset to the byte offset to get
- the total offset to the field.
- * target-memory.h : Add prototype for gfc_merge_initializers.
-
-2007-06-11 Rafael Avila de Espindola <espindola@google.com>
-
- * trans-types.c (gfc_signed_type): Remove.
- * trans-types.h (gfc_signed_type): Remove.
- * f95-lang.c (LANG_HOOKS_SIGNED_TYPE): Remove.
-
-2007-06-08 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * trans-intrinsic.c: Revert Lee's 2007-06-04 patch.
-
-2007-06-07 Steven G. Kargl <kargl@gcc.gnu.org>
- Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/32223
- * match.c (gfc_match_special_char): New function. Match special char.
- Add handling '\0'.
- * match.h: Add prototype.
- * io.c (next_char): Use it.
- * primary.c (next_string_char): Ditto.
-
-2007-06-06 Steven G. Kargl <kargl@gcc.gnu.org>
-
- * decl.c: Miscellaneous whitespace fixes.
- * expr.c: Likewise.
- * gfortran.h: Likewise.
- * interface.c : Likewise.
- * io.c: Likewise.
- * match.c: Likewise.
- * match.h: Likewise.
- * module.c: Likewise.
- * parse.c: Likewise.
- * resolve.c: Likewise.
- * symbol.c: Likewise.
- * trans-array.c: Likewise.
- * trans-common.c: Likewise.
- * trans-decl.c: Likewise.
- * trans-intrinsic.c: Likewise.
- * trans-io.c: Likewise.
- * trans-stmt.c: Likewise.
- * trans-types.c: Likewise.
-
-2007-06-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/18923
- * parse.c (decode_statement): Don't call gfc_undo_symbols on MATCH_ERROR
- for ST_FUNCTION since it is called in reject_statement.
- (parse_contained): If error, loop back after reject_statement and try
- again. Free the namespace if an error occured.
-
-2007-06-04 Lee Millward <lee.millward@codesourcery.com>
-
- * trans-intrinsic.c (gfc_conv_intrinsic_function_args): Adjust
- to operate on a stack allocated array for the intrinsic arguments
- instead of creating a TREE_LIST. Add two new parameters for the
- array and the number of elements. Update all callers to allocate
- an array of the correct length to pass in. Update comment.
- (gfc_intrinsic_argument_list_length): New function.
- (gfc_conv_intrinsic_mnimax): Call it.
- (gfc_conv_intrinsic_merge): Likewise.
- (gfc_conv_intrinsic_lib_function): Call it. Use new CALL_EXPR
- constructors.
- (gfc_conv_intrinsic_cmplx): Likewise.
- (gfc_conv_intrinsic_ctime): Likewise.
- (gfc_covn_intrinsic_fdate): Likewise.
- (gfc_conv_intrinsic_ttynam): Likewise.
- (gfc_conv_intrinsic_ishftc): Likewise.
- (gfc_conv_intrinsic_index): Likewise.
- (gfc_conv_intrinsic_scan): Likewise.
- (gfc_conv_intrinsic_verify): Likewise.
- (gfc_conv_intrinsic_trim): Likewise.
- (gfc_conv_intrinsic_aint): Use new CALL_EXPR constructors.
- (gfc_conv_intrinsic_exponent): Likewise.
- (gfc_conv_intrinsic_bound): Likewise.
- (gfc_conv_intrinsic_abs): Likewise.
- (gfc_conv_intrinsic_mod): Likewise.
- (gfc_conv_intrinsic_sign): Likewise.
- (gfc_conv_intrinsic_len): Likewise.
- (gfc_conv_intrinsic_adjust): Likewise.
- (gfc_conv_intrinsic_si_kind): Likewise.
-
-2007-06-04 Steve Ellcey <sje@cup.hp.com>
-
- * trans-array.c (gfc_conv_array_parameter): Initialize tmp.
-
-2007-05-31 Richard Guenther <rguenther@suse.de>
-
- * trans-expr.c (gfc_conv_expr_op): Use zero constant
- that matches the lse type.
- (gfc_trans_string_copy): Use sizetype zero constant.
- * intrinsic.c (add_functions): The sizeof intrinsic has
- index type result.
- * trans-types.c (gfc_get_dtype): Convert size to index
- type before shifting.
- * trans-array.c (gfc_trans_array_constructor_value): Use
- index type for offset computation.
- * trans-intrinsic.c (gfc_conv_associated): Use correct type
- for zero constant.
-
-2007-05-31 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/32156
- * trans-array.c (gfc_trans_array_constructor): Treat the case
- where the ss expression charlen is missing.
-
-22007-05-31 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/32103
- * module.c (mio_symtree_ref): If an equivalence group member
- is not used, give it a hidden symbol and set the pointer_info.
- (load_equiv): Only free the equivalence if none of the members
- are used.
-
-2007-05-29 Daniel Franke <franke.daniel@gmail.com>
-
- * gfortran.h: Renamed 'enum gfc_generic_isym_id' to 'enum gfc_isym_id',
- added missing GFC_ISYM_* enumerators, ordered alphabetically.
- (struct gfc_intrinsic_sym): Renamed 'generic_id' to 'id'.
- (gfc_find_subroutine): New prototype.
- * intrinsic.c (add_sym, add_sym_*): Added argument 'id' and changed all callers.
- (find_subroutine): Renamed to 'gfc_find_subroutine', removed static.
- * dependency.c: Changed usage of isym->generic_id to isym->id.
- * openmp.c: Likewise.
- * resolve.c: Likewise.
- * trans-array.c: Likewise.
- * trans-expr.c: Likewise.
- * trans-intrinsic.c: Likewise.
- * trans-openmp.c: Likewise.
-
-2007-05-28 Tobias Schlüter <tobi@gcc.gnu.org>
-
- * gfortran.h (gfc_generic_isym_id): Add GFC_ISYM_SIZEOF.
- * intrinsic.c (add_functions): Add stuff for SIZEOF intrinsic.
- * intrinsic.h (gfc_check_sizeof): Add prototype of ...
- * check.c (gfc_check_sizeof): .. new function.
- * trans-intrinsic.c (gfc_conv_intrinsic_sizeof): New function.
- (gfc_conv_intrinsic_strcmp): Whitespace fix.
- (gfc_conv_intrinsic_array_transfer): Remove double initialization,
- use fold_build. where appropriate.
- (gfc_conv_intrinsic_function): Add case for SIZEOF.
- * intrinsic.texi: Add documentation for SIZEOF.
-
-2007-05-28 Brooks Moses <brooks.moses@codesourcery.com>
-
- * trans-array.c (gfc_conv_expr_descriptor): Edit comment.
-
-2007-05-28 Brooks Moses <brooks.moses@codesourcery.com>
-
- PR fortran/31972
- * target-memory.c (gfc_target_expr_size): Add handling
- for size of BT_HOLLERITH variables.
- * check.c (gfc_check_transfer): Reject BT_HOLLERITH
- variables in MOLD argument of TRANSFER.
-
-2007-05-28 Brooks Moses <brooks.moses@codesourcery.com>
-
- * gfortran.h (gfc_expr): Remove from_H, add "representation"
- struct.
- * primary.c (match_hollerith_constant): Store the representation
- of the Hollerith in representation, not in value.character.
- * arith.c: Add dependency on target-memory.h.
- (eval_intrinsic): Remove check for from_H.
- (hollerith2representation): New function.
- (gfc_hollerith2int): Determine value of the new constant.
- (gfc_hollerith2real): Likewise.
- (gfc_hollerith2complex): Likewise.
- (gfc_hollerith2logical): Likewise.
- (gfc_hollerith2character): Point both representation.string and
- value.character.string at the value string.
- * data.c (create_character_initializer): For BT_HOLLERITH
- rvalues, get the value from the representation rather than
- value.character.
- * expr.c (free_expr0): Update handling of BT_HOLLERITH values
- and values with representation.string.
- (gfc_copy_expr): Likewise.
- * intrinsic.c (do_simplify): Remove special treatement of
- variables resulting from Hollerith constants.
- * dump-parse-trees.c (gfc_show_expr): Update handling of
- Holleriths.
- * trans-const.c (gfc_conv_constant_to_tree): Replace from_H
- check with check for representation.string; get Hollerith
- representation from representation.string, not value.character.
- * trans-expr.c (is_zero_initializer_p): Replace from_H check
- with check for representation.string.
- * trans-stmt.c (gfc_trans_integer_select): Use
- gfc_conv_mpz_to_tree for case values, so as to avoid picking up
- the memory representation if the case is given by a transfer
- expression.
- * target-memory.c (gfc_target_encode_expr): Use the known memory
- representation rather than the value, if it exists.
- (gfc_target_interpret_expr): Store the memory representation of
- the interpreted expression as well as its value.
- (interpret_integer): Move to gfc_interpret_integer, make
- non-static.
- (interpret_float): Move to gfc_interpret_float, make non-static.
- (interpret_complex): Move to gfc_interpret_complex, make
- non-static.
- (interpret_logical): Move to gfc_interpret_logical, make
- non-static.
- (interpret_character): Move to gfc_interpret_character, make
- non-static.
- (interpret_derived): Move to gfc_interpret_derived, make
- non-static.
- * target-memory.h: Add prototypes for newly-exported
- gfc_interpret_* functions.
-
-2007-05-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/31812
- * parse.c (next_statement): Warn for truncated lines if source is free
- form.
-
-2007-05-27 Paul Thomas <pault@gcc.gnu.org>
- Tobias Burnus <burnus@net-b.de>
-
- PR fortran/32088
- * symbol.c (gfc_check_function_type): Copy dimensions of
- result variable.
- * resolve.c (resolve_contained_fntype): Improve symbol output in
- the error message.
-
-2007-05-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/31813
- * io.c (check_format): Add warning for H specifier in format.
-
-2007-05-26 Tobias Burnus <burnus@net-b.de>
-
- * gfortran.texi: Document the GFORTRAN_ERROR_DUMPCORE and
- GFORTRAN_ERROR_BACKTRACE environment variables.
-
-2007-05-26 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31219
- * trans.h : Add no_function_call bitfield to gfc_se structure.
- Add stmtblock_t argument to prototype of get_array_ctor_strlen.
- * trans-array.c (get_array_ctor_all_strlen): New function.
- (get_array_ctor_strlen): Add new stmtblock_t argument and call
- new function for character elements that are not constants,
- arrays or variables.
- (gfc_conv_array_parameter): Call get_array_ctor_strlen to get
- good string length.
- * trans-intrinsic (gfc_conv_intrinsic_len): Add new argument
- to call of get_array_ctor_strlen.
-
-2007-05-25 Kazu Hirata <kazu@codesourcery.com>
-
- * intrinsic.texi: Fix typos.
-
-2007-05-25 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/32047
- * trans-expr.c (gfc_apply_interface_mapping_to_expr): Change
- order in logic under EXPR_FUNCTION to handle functions with
- no arguments.
-
-2007-05-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/31716
- * array.c (spec_dimen_size): Test for correct BT_INTEGER type.
-
-2007-05-23 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/32046
- * trans-expr.c (gfc_trans_zero_assign): Convert the result of
- TYPE_SIZE_UNIT into a signed type.
- (gfc_trans_array_copy): Likewise.
- (gfc_trans_array_constructor_copy): Likewise.
- * trans-array.c (gfc_trans_create_temp_array): Likewise.
- (gfc_grow_array): Likewise.
- (gfc_array_init_size): Likewise.
- (gfc_duplicate_allocatable): Likewise.
- * trans-stmt.c (allocate_temp_for_forall_nest_1): Likewise.
-
-2007-05-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/18923
- * resolve.c (resolve_function): Don't call resolve_global_procedure if
- there is no name. Delete duplicated statement in ELSE clause.
-
-2007-05-22 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31627
- * trans-array.c (gfc_trans_array_bound_check): Take extra argument to
- indicate whether we should check the upper bound in that dimension.
- (gfc_conv_array_index_offset): Check only the lower bound of the
- last dimension for assumed-size arrays.
- (gfc_conv_array_ref): Likewise.
- (gfc_conv_ss_startstride): Likewise.
-
-2007-05-21 Jerry DeLisle <jvdelisle@gcc.gnu.org>
- Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/32002
- * resolve.c (resolve_actual_arglist): Resolve actual argument after
- being identified as variable.
-
-2007-05-21 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/32027
- * trans-stmt.c (gfc_trans_do): Fix the value of loop variable
- when the loop ends.
-
-2007-05-21 H.J. Lu <hongjiu.lu@intel.com>
-
- * trans-stmt.c (gfc_trans_do): Fix a typo in comment.
-
-2007-05-21 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31867
- PR fortran/31994
- * trans-array.c (gfc_conv_expr_descriptor): Obtain the stored
- offset for non-descriptor, source arrays and correct for stride
- not equal to one before writing to field of output descriptor.
-
-2007-05-20 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/32001
- * check.c (check_rest): Improved argument conformance check and
- fixed error message generation.
-
-2007-05-19 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/30820
- * Make-lang.in: Remove use of -Wno-error for expr.o, resolve.o,
- simplify.o and trans-common.o.
-
-2007-05-19 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31974
- * trans-array.c (gfc_trans_auto_array_allocation): Avoid
- multiplication of mismatched types.
-
-2007-05-18 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/24633
- * symbol.c (gfc_add_flavor): Add the NAME to error message if
- available.
-
-2007-05-15 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/31919
- PR fortran/31929
- PR fortran/31930
- * intrinsic.c (check_specific): Check elemental intrinsics for
- rank and shape.
- (add_functions): Fixed dummy argument names of BESJN and BESYN.
- Fixed elemental status of MCLOCK and MCLOCK8.
- * check.c (check_rest): Added check for array conformance.
- (gfc_check_merge): Removed check for array conformance.
- (gfc_check_besn): Removed check for scalarity.
- * intrinsic.texi (CSHIFT, EOSHIFT): Fixed typos.
- (BESJN, BESYN): Clarified documentation.
-
-2007-05-17 Tobias Burnus <burnus@net-b.de>
-
- * gfortran.texi (GFORTRAN_CONVERT_UNIT): Improve documentation.
-
-2007-05-16 Brooks Moses <brooks.moses@codesourcery.com>
-
- PR fortran/18769
- PR fortran/30881
- PR fortran/31194
- PR fortran/31216
- PR fortran/31427
- * target-memory.c: New file.
- * target-memory.h: New file.
- * simplify.c: Add #include "target-memory.h".
- (gfc_simplify_transfer): Implement constant-
- folding for TRANSFER intrinsic.
- * Make-lang.in: Add dependencies on new target-memory.* files.
-
-2007-05-15 Paul Brook <paul@codesourcery.com>
-
- * trans-types.c (gfc_type_for_size): Handle signed TImode.
-
-2007-05-14 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/30723
- * trans.h (gfor_fndecl_internal_malloc, gfor_fndecl_internal_malloc64,
- gfor_fndecl_internal_free): Remove prototypes.
- (gfor_fndecl_os_error, gfc_call_free, gfc_call_malloc): Add prototypes.
- * trans.c (gfc_call_malloc, gfc_call_free): New functions.
- * f95-lang.c (gfc_init_builtin_functions): Add __builtin_free
- and __builtin_malloc builtins.
- * trans-decl.c (gfor_fndecl_internal_malloc,
- gfor_fndecl_internal_malloc64, gfor_fndecl_internal_free): Remove.
- (gfor_fndecl_os_error): Add.
- (gfc_build_builtin_function_decls): Don't create internal_malloc,
- internal_malloc64 and internal_free library function declaration.
- Create os_error library call function declaration.
- * trans-array.c (gfc_trans_allocate_array_storage,
- gfc_trans_auto_array_allocation, gfc_trans_dummy_array_bias,
- gfc_conv_array_parameter, gfc_duplicate_allocatable): Use
- gfc_call_malloc and gfc_call_free instead of building calls to
- internal_malloc and internal_free.
- * trans-expr.c (gfc_conv_string_tmp): Likewise.
- * trans-stmt.c (gfc_do_allocate, gfc_trans_assign_need_temp,
- gfc_trans_pointer_assign_need_temp, gfc_trans_forall_1,
- gfc_trans_where_2: Likewise.
- * trans-intrinsic.c (gfc_conv_intrinsic_ctime,
- gfc_conv_intrinsic_fdate, gfc_conv_intrinsic_ttynam,
- gfc_conv_intrinsic_array_transfer, gfc_conv_intrinsic_trim): Likewise.
-
-2007-05-14 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31725
- * trans-expr.c (gfc_conv_substring): Evaluate substring bounds
- only once.
-
-2007-05-14 Rafael Avila de Espindola <espindola@google.com>
-
- * f95-lang.c (LANG_HOOKS_UNSIGNED_TYPE): Remove.
- * trans-intrinsic.c (gfc_conv_intrinsic_ishft): Use unsigned_type_for
- instead of gfc_unsigned_type.
- * trans-stmt.c (gfc_trans_do): Use unsigned_type_for instead of
- gfc_unsigned_type.
- * trans-types.c (gfc_unsigned_type): Remove.
- * trans-types.h (gfc_unsigned_type): Remove.
-
-2007-05-12 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30746
- * resolve.c (check_host_association): New function that detects
- incorrect host association and corrects it.
- (gfc_resolve_expr): Call the new function for variables and
- functions.
- * match.h : Remove prototype for gfc_match_rvalue.
- * gfortran.h : Add prototype for gfc_match_rvalue.
-
-2007-05-11 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30876
- * trans-expr.c (gfc_conv_function_call): Reduce indirection for
- direct assignments of recursive array valued functions.
- * primary.c (gfc_match_rvalue): Correct error for recursive
- function calls such that directly recursive calls of scalar
- function without an explicit result are disallowed.
-
-2007-05-11 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30878
- * resolve.c (resolve_fl_namelist): It is not an error if the
- namelist element is the result variable of the enclosing
- function. Search for the symbol in current and all parent
- namespaces for a potential conflict.
- * symbol.c (check_conflict): Remove the conflict between
- 'in_namelist' and 'FL_PROCEDURE' because the symbol info
- is not available to exclude function result variables.
- * trans-io.c (nml_get_addr_expr): Use the fake result decl
- if the symbol is an implicit result variable.
-
-2007-05-11 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31474
- * decl.c (get_proc_name): If an entry has already been declared
- as a module procedure, pick up the symbol and the symtree and
- use them for the entry.
-
-2007-05-08 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31630
- * resolve.c (resolve_symbol): Remove the flagging mechanism from the
- formal namespace resolution and instead check that the formal
- namespace is not the current namespace.
-
-2007-05-08 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31692
- * trans-array.c (gfc_conv_array_parameter): Convert full array
- references to the result of the procedure enclusing the call.
-
-2007-05-08 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/29397
- PR fortran/29400
- * decl.c (add_init_expr_to_sym): Expand a scalar initializer
- for a parameter array into an array expression with the right
- shape.
- * array.c (spec_dimen_size): Remove static attribute.
- * gfortran.h : Prototype for spec_dimen_size.
-
-2007-05-07 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31399
- * trans-stmt.c (gfc_trans_do): Handle large loop counts.
-
-2007-05-07 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31764
- * simplify.c (gfc_simplify_new_line): NEW_LINE can be simplified
- even for non constant arguments.
-
-2007-05-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
- Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31201
- * gfortran.h: Add runtime error codes from libgfortran.h. Define
- MAX_UNIT_NUMBER.
- * trans.c (gfc_trans_runtime_check): Update the format of runtime error
- messages to match library runtime errors. Use call to new library
- function runtime_error_at().
- * trans.h: Add prototype for new function gfc_trans_io_runtime_check.
- Add declaration for library functions runtime_error_at and
- generate_error.
- * trans_io.c (gfc_trans_io_runtime_check): New function.
- (set_parameter_value): Add error checking for UNIT numbers.
- (set_parameter_ref): Initialize the users variable to zero.
- (gfc_trans_open): Move setting of unit number to after setting of common
- flags so that runtime error trapping can be detected.
- (gfc_trans_close): Likewise. (build_filepos): Likewise.
- (gfc_trans_inquire): Likewise. (build_dt): Likewise.
- * trans-decl.c: Add declarations for runtime_error_at and
- generate_error. (gfc_build_builtin_function_decls): Build function
- declarations for runtime_error_at and generate_error.
-
-2007-05-06 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31540
- * resolve.c (resolve_fl_procedure): Resolve constant character
- lengths.
-
-2007-05-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/31251
- * decl.c (match_char_spec): Add check for invalid character lengths.
-
-2007-05-04 Brooks Moses <brooks.moses@codesourcery.com>
-
- * intrinsic.texi (CMPLX): Document result kind.
- (COMPLEX): Add documentation.
-
-2007-05-04 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/31760
- * intrinsic.c (add_functions): Replaced calls to gfc_check_g77_math1
- by gfc_check_fn_r to avoid checks for scalarity.
- * check.c (gfc_check_besn): Removed check for scalarity.
- (gfc_check_g77_math1): Removed.
- * intrinsic.h (gfc_check_g77_math1): Removed.
-
-2007-05-04 Daniel Franke <franke.daniel@gmail.com>
-
- * check.c (gfc_check_fseek_sub): Fixed typo.
-
-2007-05-04 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/22359
- * intrinsic.c (add_subroutines): Added FSEEK.
- * intrinsic.h (gfc_resolve_fseek_sub, gfc_check_fseek_sub): New.
- * iresolve.c (gfc_resolve_fseek_sub): New.
- * check.c (gfc_check_fseek_sub): New.
- * intrinsic.texi (FSEEK): Updated.
-
-2007-05-04 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/31803
- * expr.c (gfc_check_pointer_assign): Check for NULL pointer.
-
-2007-05-04 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/31251
- * simplify.c (gfc_simplify_len): Only simplify integer lengths.
-
-2007-05-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31781
- * simplify.c (gfc_simplify_repeat): Don't put function call with
- side effect in a gcc_assert().
-
-2007-05-04 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/25071
- * interface.c (compare_actual_formal): Check character length.
-
-2007-05-01 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR fortran/31732
- * dependency.c (gfc_full_array_ref_p): If the reference is
- to a single element, check that the array has a single
- element and that the correct element is referenced.
-
-2007-05-01 Daniel Franke <franke.daniel@gmail.com>
-
- * intrinsic.c (add_functions): Fixed ELEMENTAL specifications.
- (add_subroutines): Replaced magic numbers in function calls by
- ELEMENTAL and NOT_ELEMENTAL respectively.
- * intrinsic.texi (MVBITS): Changed class to elemental subroutine.
- (RANDOM_NUMBER): Changed class to subroutine.
- (HUGE, TINY): Changed class to inquiry function.
-
-2007-04-30 Brooks Moses <brooks.moses@codesourcery.com>
-
- * trans-const.c (gfc_conv_mpz_to_tree): Use mpz_get_double_int.
- (gfc_conv_tree_to_mpz): New function.
- (gfc_conv_mpfr_to_tree): Use real_from_mpfr.
- (gfc_conv_tree_to_mpfr): New function.
- * trans-const.h: (gfc_conv_tree_to_mpz): New prototype.
- (gfc_conv_tree_to_mpfr): New prototype.
-
-2007-04-30 Daniel Franke <franke.daniel@gmail.com>
-
- * intrinsic.texi (IERRNO): Changed class to non-elemental function.
- (LOG10): Removed COMPLEX as accepted argument type.
- (NEW_LINE): Changed class from elemental to inquiry function.
- (SIGN): Removed requirement of scalar arguments.
- (SNGL): Changed class to elemental function.
-
-2007-04-29 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31591
- * simplify.c (simplify_bound_dim): New function.
- (simplify_bound): Use the above. Perform simplification of LBOUND
- and UBOUND when DIM argument is not present.
-
-2007-04-29 Daniel Franke <franke.daniel@gmail.com>
-
- * gfortran.texi: Cleaned up keyword index.
- * invoke.texi: Likewise.
- * intrinsic.texi: Likewise.
-
-2007-04-29 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31645
- * scanner.c (load_file): Discard the byte order mark if one is
- found on the first non-preprocessor line of a file.
-
-2007-04-29 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31711
- * trans-array.c (gfc_conv_resolve_dependencies): Create a temp
- whenever a dependency is found.
-
-2007-04-28 Tobias Schlüter <tobi@gcc.gnu.org>
-
- * options.c (gfc_handle_option): Ensure requested free form line
- length is not too small.
-
-2007-04-27 Brooks Moses <brooks.moses@codesourcery.com>
-
- * intrinsic.texi (Transfer): Improve documentation.
-
-2007-04-27 Brooks Moses <brooks.moses@codesourcery.com>
-
- * gfortran.texi (Option Index): Add @samp as needed.
-
-2007-04-27 Daniel Franke <franke.daniel@gmail.com>
-
- * gfortran.texi: Added node and menu entry for an option index.
- * invoke.texi: Moved command line option related entries of the concept
- index to the option index.
-
-2007-04-27 Daniel Franke <franke.daniel@gmail.com>
-
- * intrinsic.texi (AND, FPUT, FPUTC, MODULO, OR, SET_EXPONENT,
- XOR): Fixed examples.
-
-2007-04-27 Daniel Franke <franke.daniel@gmail.com>
-
- * intrinsic.texi (PRODUCT, RESHAPE, SPACING, SPREAD, SUM,
- SYSTEM_CLOCK, TRANSFER, UNPACK): New.
- (DATE_AND_TIME, CPU_TIME, RRSPACING): Added cross references.
-
-2007-04-26 Daniel Franke <franke.daniel@gmail.com>
-
- * intrinsic.texi (NULL, PACK, PRESENT, REPEAT, SCAN, SHAPE,
- SIZE, TRANSPOSE, TRIM, VERIFY): New.
- (ADJUSTL, ADJUSTR, INDEX): Added cross references.
- (INT, INT2, INT8, LONG): Enabled section header.
-
-2007-04-25 Janne Blomqvist <jb@gcc.gnu.org>
-
- * module.c (module_char): Replace fgetc() with
- getc().
- (write_char): Replace fputc() with putc().
- * scanner.c (load_line): Replace fgetc() with getc().
- (gfc_read_orig_filename): Likewise.
-
-2007-04-25 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/31668
- * error.c (error_print): Fix %% support.
- * intrinsic.c (sort_actual): Improve error message.
- * resolve.c (resolve_actual_arglist): Allow %VAL for
- interfaces defined in the module declaration part.
-
-2007-04-25 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR libfortran/31299
- * intrinsic.texi (GETLOG): Update documentation to reflect
- library changes.
-
-2007-04-24 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31587
- * module.c (write_char): Add character to the MD5 buffer.
- (read_md5_from_module_file): New function.
- (gfc_dump_module): Compute MD5 for new module file. Call
- read_md5_from_module_file. Only overwrite old module file
- if the new MD5 is different.
-
-2007-04-23 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31630
- * resolve.c (resolve_symbol): Allow resolution of formal
- namespaces nested within formal namespaces coming from modules.
-
- PR fortran/31620
- * trans-expr.c (gfc_trans_assignment): Make the call to
- gfc_trans_zero_assign conditional on the lhs array ref being
- the only reference.
-
-2007-04-23 Tobias Burnus <burnus@net-b.de>
-
- * primary.c (match_integer_constant): Mention -fno-range-check
- in the error message.
-
-2007-04-21 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/31495
- * scanner.c (load_line): Remove check for comment after ampersand and
- adjust tracking of ampersand.
-
-2007-04-21 Andrew Pinski <andrew_pinski@playstation.sony.com>
-
- * f95-lang.c (lang_tree_node): Use GENERIC_NEXT
- instead of checking GIMPLE_STMT_P in chain_next.
-
-2007-04-17 Tobias Schlüter <tobi@gcc.gnu.org>
-
- * trans-types.h (gfc_packed): New enum.
- (gfc_get_nodesc_array_type): Change prototype to use new enum.
- * trans-types.c (gfc_get_nodesc_array): Use gfc_packed for
- argument packed. Adapt all references to values accordingly.
- (gfc_sym_type): Use enum values in call to gfc_get_nodesc_array.
- (gfc_get_derived_type): Likewise.
- * trans-array.c (gfc_build_constant_array_constructor): Likewise.
- * trans-expr.c (gfc_get_interface_mapping_charlen): Changed packed
- argument to type gfc_packed.
- (gfc_add_interface_mapping): Use enum values in call to
- gfc_get_interface_mapping.
- * trans-decl.c (gfc_build_dummy_array_decl): Adapt to use enum
- values when determining packing.
-
- * trans-decl.c (gfc_finish_decl): Remove unused second argument
- 'init'. Simplify code accordingly. Remove calls to
- gfc_fatal_error in favor of gcc_assert.
- (create_function_arglist): Remove second argument from calls to
- gfc_finish-decl.
- (gfc_trans_dummy_character): Likewise.
-
- * arith.h: Update copyright years.
- * dependency.h: Likewise.
- * gfortran.h: Likewise.
- * lang-specs.h: Likewise.
- * parse.h: Likewise.
- * symbol.c: Likewise.
- * trans.h: Likewise.
- * trans.c: Likewise.
- * trans-array.c: Likewise.
- * trans-common.c: Likewise.
- * trans-const.h: Likewise.
- * trans-const.c: Likewise.
- * trans-decl.c: Likewise.
- * trans-expr.c: Likewise.
- * trans-io.c: Likewise.
- * trans-openmp.c: Likewise.
- * trans-types.h: Likewise.
- * types.def: Likewise.
-
-2007-04-17 Tobias Schlüter <tobi@gcc.gnu.org>
-
- PR fortran/31144
- * decl.c (gfc_sym_mangled_identifier): Use capital letters in name
- mangling.
- (gfc_sym_mangled_function_id): Likewise.
-
-2007-04-15 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31204
- * primary.c (check_for_implicit_index): New function to check
- that a host associated variable is not an undeclared implied
- do loop index.
- (gfc_match_rvalue, match_variable): Use it and reset the
- implied_index attribute.
- * gfortran.h : Add the implied_index field to symbol_attribute.
- * match.c (gfc_match_iterator): Mark the iterator variable
- with the new attribute.
- * decl.c (build_sym): Reset the new attribute.
-
-2007-04-15 Kazu Hirata <kazu@codesourcery.com>
-
- * gfc-internals.texi: Fix typos.
- * simplify.c: Fix a comment typo.
-
-2007-04-14 Bernhard Fischer <aldot@gcc.gnu.org>
-
- * primary.c: Commentary typo fix; Add question about redundant (?)
- set.
-
-2007-04-14 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/29507
- PR fortran/31404
- * expr.c (scalarize_intrinsic_call): New function to
- scalarize elemental intrinsic functions in initialization
- expressions.
- (check_init_expr): Detect elemental intrinsic functions
- in initalization expressions and call previous.
-
-2007-04-13 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/31559
- * primary.c (match_variable): External functions
- are no variables.
-
-2007-04-13 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31550
- * trans-types.c (copy_dt_decls_ifequal): Do not get pointer
- derived type components.
-
-2007-04-13 Tobias Schlüter <tobi@gcc.gnu.org>
-
- PR fortran/18937
- * resolve.c: Include obstack.h and bitmap.h. New variable
- labels_obstack.
- (code_stack): Add tail and reachable_labels fields.
- (reachable_labels): New function.
- (resolve_branch): Rework to use new fields in code_stack.
- (resolve_code): Call reachable_labels.
- (resolve_codes): Allocate and free labels_obstack.
-
-2007-04-12 Tobias Schlüter <tobi@gcc.gnu.org>
-
- PR fortran/31250
- * decl.c (match_char_spec): Move check for negative CHARACTER
- length ...
- * resolve.c (resolve_charlen): ... here.
- (resolve_types): Resolve CHARACTER lengths earlier.
-
-2007-04-12 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/31234
- * intrinsic.texi (RANDOM_SEED, RANDOM_NUMBER): New.
-
-2007-04-12 Tobias Schlüter <tobi@gcc.gnu.org>
-
- PR fortran/31266
- * primary.c (gfc_variable_attr): Don't copy string length if it
- doesn't make sense.
- * resolve.c (resolve_code): Clarify error message.
-
- PR fortran/31471
- * decl.c (gfc_match_end): Also check for construct name in END
- FORALL and END WERE statements.
- * match.c (match_case_eos): Use uppercase for statement name in
- error message.
- (match_elsewhere): Construct name may appear iff construct has a
- name.
-
- * trans-types.c: Update copyright years. Reformat long comment
- explaining array descriptor format. Remove obsolete mention of
- TYPE_SET.
-
- * arith.c (gfc_arith_uplus): Rename to ...
- (gfc_arith_identity): ... this.
- (gfc_parentheses): New function.
- (gfc_uplus): Adapt to renamed function.
- * arith.h (gfc_parentheses): Add prototype.
- * expr.c (gfc_copy_expr): Deal with INTRINSIC_PARENTHESES.
- (simplifiy_intrinsic_op): Treat INTRINSIC_UPLUS separately from
- INTRINSIC_PARENTHESES.
-
-2007-04-12 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/31472
- * decl.c (match_attr_spec): Allow PRIVATE/PUBLIC
- attribute in type definitions.
- (gfc_match_private): Allow PRIVATE statement only
- in specification part of modules.
- (gfc_match_public): Ditto for PUBLIC.
- (gfc_match_derived_decl): Allow PRIVATE/PUBLIC attribute only in
- specificification part of modules.
-
-2007-04-07 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31257
- * intrinsic.c (add_functions): Add ref. to gfc_resolve_achar.
- * intrinsic.h : Add prototype for gfc_resolve_achar.
- * iresolve.c (gfc_resolve_achar): New function.
-
-2007-04-07 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30880
- * resolve.c (resolve_fl_variable): Set flag to 2 for automatic
- arrays. Make condition for automatic array error explicit.
- If a dummy, no error on an INTENT(OUT) derived type.
-
-2007-04-07 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30872
- * expr.c (find_array_element): Correct arithmetic for rank > 1.
-
-2007-04-07 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31222
- * check.c (numeric_check): If an expresson has not got a type,
- see if it is a symbol for which a default type applies.
-
-2007-04-07 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31214
- * trans-decl.c (gfc_get_symbol_decl): Allow unreferenced use
- associated symbols.
-
-2007-04-07 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31293
- * symbol.c (gfc_check_function_type): New function.
- * gfortran.h : Add prototype for previous.
- * parse.c (parse_progunit): Call it after parsing specification
- statements.
-
-2007-04-05 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31483
- * trans-expr.c (gfc_conv_function_call): Give a dummy
- procedure the correct type if it has alternate returns.
-
-2007-04-05 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31292
- * decl.c (gfc_match_modproc): Go up to the top of the namespace
- tree to find the module namespace for gfc_get_symbol.
-
-2007-04-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31304
- * fortran/gfortran.h (gfc_charlen_int_kind): New prototype.
- * fortran/trans-types.c (gfc_charlen_int_kind): New variable.
- (gfc_init_types): Define gfc_charlen_int_kind.
- * fortran/trans.h (gfor_fndecl_string_repeat): Remove prototype.
- * fortran/trans-decl.c (gfor_fndecl_string_repeat): Delete.
- (gfc_build_intrinsic_function_decls): Don't set
- gfor_fndecl_string_repeat.
- * fortran/trans-intrinsic.c (gfc_conv_intrinsic_repeat): Rewrite
- so that we don't have to call a library function.
- * fortran/simplify.c (gfc_simplify_repeat): Perform the necessary
- checks on the NCOPIES argument, and work with arbitrary size
- arguments.
-
-2007-03-31 Tobias Burnus <burnus@net-b.de>
-
- * intrinsic.c (add_functions): Fix name of dummy argument
- for new_line and exit intrinsic.
-
-2007-03-31 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31160
- * gfortran.texi: Add a section for the %VAL, %REF and %LOC
- extensions.
-
-2007-03-30 Rafael Avila de Espindola <espindola@google.com>
-
- * trans-types.c (gfc_signed_or_unsigned_type): Remove.
- (gfc_unsigned_type): Use get_signed_or_unsigned_type instead of
- gfc_signed_or_unsigned_type.
- (gfc_signed_type): Ditto.
- * trans-types.h (gfc_signed_or_unsigned_type): Remove.
- * f95-lang.c (LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): Remove.
-
-2007-03-30 Tobias Schlüter <tobi@gcc.gnu.org>
-
- * symbol.c (gfc_find_gsymbol): Simplify, don't unconditionally
- descend into all branches.
-
-2007-03-29 Tobias Schlüter <tobi@gcc.gnu.org>
-
- * intrinsic.c (conv_name): Let gfc_get_string handle the format.
- (find_conv): Compare pointers instead of calling strcmp.
- (find_sym): Likewise, but ensure that the compared pointer is in
- the global string table.
-
-2007-03-28 Tobias Schlüter <tobi@gcc.gnu.org>
-
- * gfc-internals.texi: Fix output filename. Merge type index into
- concept index. Start documentation of gfc_code structure.
-
-2007-03-26 Brooks Moses <brooks.moses@codesourcery.com>
-
- * gfc-internals.texi: New file,
- * Make-lang.in: Add rules to convert it to dvi, pdf, and info.
-
-2007-03-26 Brooks Moses <brooks.moses@codesourcery.com>
-
- * error.c (show_locus): Remove always-false test.
-
-2007-03-26 Brooks Moses <brooks.moses@codesourcery.com>
-
- * lang.opt: Minor edits to descriptions.
-
-2007-03-25 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/30877
- * fortran/interface.c (check_operator_interface): Implement
- the standard checks on user operators extending intrinsic operators.
- * fortran/resolve.c (resolve_operator): If the ranks of operators
- don't match, don't error out but try the user-defined ones first.
-
-2007-03-24 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/30655
- * expr.c (check_dimension): Fix logic of comparisons.
-
-2007-03-24 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31215
- * trans-expr.c (gfc_apply_interface_mapping_to_expr): Return
- int result that is non-zero if the expression is the function
- result. Only the characteristics of the result expression
- can be used in a procedure interface, so simplify LEN in situ
- using its character length.
-
- PR fortran/31209
- PR fortran/31200
- * trans-expr.c (gfc_conv_function_call): Do not use
- gfc_conv_expr_reference for actual pointer function with formal
- target because a temporary is created that does not transfer
- the reference correctly. Do not indirect formal pointer
- functions since it is the function reference that is needed.
-
-2007-03-24 Brooks Moses <brooks.moses@codesourcery.com>
-
- * gfortran.h: Edit comments on GFC_STD_*.
-
-2007-03-23 Brooks Moses <brooks.moses@codesourcery.com>
-
- * invoke.texi: Misc. small typo fixes.
- (-Wcharacter-truncation): Add.
- (-Wnonstd-intrinsics): Correct spelling.
- (-std=): Edit.
- (-fintrinsic-modules-path): Add.
-
-2007-03-23 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/30834
- * arith.c (complex_pow): Rewrite to handle large power.
- (gfc_arith_power): Handle large power in the real and integer
- cases.
-
-2007-03-22 Francois-Xavier Coudert <coudert@clipper.ens.fr>
-
- PR fortran/31262
- * trans-const.c (gfc_conv_mpz_to_tree): Allow integer constants
- larger than twice the width of a HOST_WIDE_INT.
-
-2006-03-22 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31193
- * trans-intrinsic.c (gfc_size_in_bytes): Remove function.
- (gfc_conv_intrinsic_array_transfer): Remove calls to previous.
- Explicitly extract TREE_TYPEs for source and mold. Use these
- to calculate length of source and mold, except for characters,
- where the se string_length is used. For mold, the TREE_TYPE is
- recalculated using gfc_get_character_type_len so that the
- result is correctly cast for character literals and substrings.
- Do not use gfc_typenode_for_spec for the final cast.
-
-2007-03-22 Tobias Schlüter <tobi@gcc.gnu.org>
-
- PR fortran/20897
- * decl.c (gfc_match_derived_decl): Reliably reject
- 'doubleprecision' and 'doublecomplex' as type names.
-
-2007-03-19 Francois-Xavier Coudert <coudert@clipper.ens.fr>
-
- PR fortran/31203
- * trans-expr.c (gfc_trans_init_string_length): Length should
- never be negative.
- (gfc_conv_function_call): Likewise.
-
-2007-03-18 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30531
- PR fortran/31086
- * symbo.c : Add gfc_derived_types.
- (gfc_free_dt_list): Free derived type list gfc_derived_types.
- (gfc_free_namespace): Remove call to gfc_free_dt_list.
- (gfc_symbol_done_2): Call gfc_free_dt_list.
- * gfortran.h : Declare gfc_derived_types to be external. Remove
- derived types field from gfc_namespace.
- * resolve.c (resolve_fl_derived): Refer to gfc_derived types
- rather than namespace derived_types.
- (resolve_fntype): Remove special treatment for module
- derived type functions.
- * trans-types.c (gfc_get_derived_type): Remove search for like
- derived types. Finish by copying back end declaration to like
- derived types in the derived type list gfc_derived_types.
-
- 2007-03-17 Francois-Xavier Coudert <coudert@clipper.ens.fr>
-
- PR fortran/31120
- * trans-expr.c (gfc_conv_powi): Make n argument unsigned hwi.
- (gfc_conv_cst_int_power): Handle integer exponent with care,
- since it might be too large for us.
-
-2007-03-17 Francois-Xavier Coudert <coudert@clipper.ens.fr>
-
- PR fortran/31184
- * invoke.texi: Fix typo.
-
-2007-03-16 Tobias Burnus <burnus@net-b.de>
-
- * trans-decl.c (gfc_generate_function_code): Use all arguments of
- set_std.
-
-2007-03-15 Francois-Xavier Coudert <coudert@clipper.ens.fr>
-
- * gfortran.h (gfc_option_t): Add flag_backtrace field.
- * lang.opt: Add -fbacktrace option.
- * invoke.texi: Document the new option.
- * trans-decl.c (gfc_build_builtin_function_decls): Add new
- option to the call to set_std.
- * options.c (gfc_init_options, gfc_handle_option): Handle the
- new option.
-
-2007-03-15 Tobias Burnus <burnus@gcc.gnu.org>
- Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30922
- * decl.c (gfc_match_import): If the parent of the current name-
- space is null, try looking for an imported symbol in the parent
- of the proc_name interface.
- * resolve.c (resolve_fl_variable): Do not check for blocking of
- host association by a same symbol, if the symbol is in an
- interface body.
-
-2007-03-15 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30879
- * decl.c (match_data_constant): Before going on to try to match
- a name, try to match a structure component.
-
-
- PR fortran/30870
- * resolve.c (resolve_actual_arglist): Do not reject a generic
- actual argument if it has a same name specific interface.
-
- PR fortran/31163
- * trans-array.c (parse_interface): Do not nullify allocatable
- components if the symbol has the saved attribute.
-
-2007-03-14 Francois-Xavier Coudert <coudert@clipper.ens.fr>
-
- * trans-array.c (gfc_trans_auto_array_allocation): Replace
- fold(convert()) by fold_convert().
- (gfc_duplicate_allocatable): Likewise.
- * trans-intrinsic.c (gfc_conv_intrinsic_dot_product): Use
- build_int_cst instead of converting an integer_zero_node
- to the final type.
-
-2007-03-14 Jakub Jelinek <jakub@redhat.com>
-
- * module.c (mio_typespec): Don't look at ts->cl if not BT_CHARACTER.
-
-2007-03-13 Brooks Moses <brooks.moses@codesourcery.com>
-
- PR fortran/30933
- PR fortran/30948
- PR fortran/30953
- * intrinsics.texi (CHDIR): Fix argument names, note
- that STATUS must be a default integer.
- (CTIME): Fix argument names, note that RESULT must
- be a default integer.
- (EXIT): Note that STATUS must be a default integer.
-
-2007-03-13 Brooks Moses <brooks.moses@codesourcery.com>
-
- PR fortran/28068
- * intrinsic.texi: General whitespace cleanup, remove
- comment about missing intrinsics.
- (menu): Add lines for new entries listed below.
- (ACOSH): Mention specific function DACOSH, correct
- description phrasing.
- (ASINH): Mention specific function DASINH, correct
- description phrasing.
- (ATANH): Mention specific function DATANH, correct
- description phrasing.
- (COS): Add index entry for CCOS.
- (CPU_TIME): Correct "REAL" to "REAL(*)".
- (EXP): Add index entry for CEXP.
- (INT): Correct argument name to "A".
- (INT2): New entry.
- (INT8): New entry.
- (LONG): New entry.
- (MAX): Add index entries for specific variants.
- (MCLOCK): New entry.
- (MCLOCK8): New entry.
- (SECNDS): Adjust to a more standard form.
- (SECOND): New entry.
- (TIME): Add cross-reference to MCLOCK.
- (TIME8): Add cross-reference to MCLOCK8.
-
-2007-03-11 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30883
- * parse.c (parse_interface): Use the default types from the
- formal namespace if a function or its result do not have a type
- after parsing the specification statements.
-
-2007-03-08 Brooks Moses <brooks.moses@codesourcery.com>
-
- * intrinsic.texi: (ICHAR) Improve internal I/O note.
- (ACHAR): Reference it.
- (CHAR): Reference it.
- (IACHAR): Reference it.
-
-2007-03-08 Brooks Moses <brooks.moses@codesourcery.com>
-
- * intrinsic.texi: (LINK) Document function form.
- (RENAME): Likewise.
- (SYMLNK): Likewise.
- (SYSTEM): Likewise.
- (UNLINK): Likewise.
-
-2007-03-08 Brooks Moses <brooks.moses@codesourcery.com>
-
- * intrinsic.texi: minor typo fixes, removed prologue.
- (FSEEK): moved to correct place in alphabetical order.
-
-2007-03-08 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/30947
- * check.c (gfc_check_alarm_sub): Added check for default integer
- kind of status argument.
- * iresolve.c (gfc_resolve_alarm_sub): Removed conversion of
- status argument.
- * intrinsic.texi (ALARM): Extended documentation.
-
-2007-03-08 Daniel Franke <franke.daniel@gmail.com>
-
- * intrinsic.texi (GERROR, ISATTY, TTYNAM): New.
- (ABORT, FLUSH, FNUM, IRAND, MALLOC, SIGNAL, SRAND): Fixed typo.
- * intrinsic.c (add_subroutines): Adjusted dummy argument names
- of GERROR and TTYNAM.
-
-2007-07-08 Tobias Burnus <burnus@net-b.de>
-
- * module.c (gfc_match_use): Support renaming of operators
- in USE statements.
- * gfortran.texi (Fortran 2003 Status): Document support of
- renaming of operators.
-
-2007-07-08 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/30973
- * module.c (read_module): Always import module name as symbol.
- (gfc_match_use): Disallow module name in the only clause of
- a use statement.
-
-2007-03-08 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/31011
- * expr.c (find_array_section): Correct arithmetic for section
- size.
-
-2007-03-07 Brooks Moses <brooks.moses@codesourcery.com>
-
- * iresolve.c (gfc_resolve_ishftc): Correct s_kind value.
-
-2007-03-06 Daniel Franke <franke.daniel@gmail.com>
-
- PR documentation/30950
- * intrinsic.texi (AND, CPU_TIME): Fix dummy argument names.
- (FREE): Fix call syntax.
-
-2007-03-06 Brooks Moses <brooks.moses@codesourcery.com>
-
- * intrinsic.texi: Limit column widths to a total of .85.
-
-2007-03-05 Brooks Moses <brooks.moses@codesourcery.com>
-
- * gfortran.texi (GFortran and G77): Rewrite completely.
-
-2007-03-05 Brooks Moses <brooks.moses@codesourcery.com>
-
- * match.c (gfc_match_name): Expanded comment.
-
-2007-03-05 Brooks Moses <brooks.moses@codesourcery.com>
-
- * gfortran.texi (Old-style kind specifications): Document
- special handling of old-style kind specifiers for COMPLEX.
- * decl.c (gfc_match_old_kind_spec): Document kind/bytesize
- assumptions for COMPLEX in comment.
-
-2007-03-05 Brooks Moses <brooks.moses@codesourcery.com>
-
- PR 31050
- * gfortranspec.c (lang_specific_driver): Update program
- name and copyright date.
-
-2007-03-03 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30882
- * check.c (dim_rank_check): The shape of subsections of
- assumed-size arrays is known.
-
-2007-03-02 Paul Thomas <pault@gcc.gnu.org>
- Tobias Burnus <burnus@net-b.de>
-
- PR fortran/30873
- * decl.c (gfc_match_entry): Remove erroneous entry result check.
-
-2007-03-01 Brooks Moses <brooks.moses@codesourcery.com>
-
- * Make-lang.in: Add install-pdf target as copied from
- automake v1.10 rules.
-
-2007-03-01 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/30865
- * trans-intrinsic.c (gfc_conv_intrinsic_size): Compare pointers.
-
-2007-02-28 Tobias Burnus <burnus@net-b.de>
- Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30888
- PR fortran/30887
- * resolve.c (resolve_actual_arglist): Allow by-value
- arguments and non-default-kind for %VAL().
- * trans-expr.c (conv_arglist_function): Allow
- non-default-kind for %VAL().
-
-2007-02-28 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/30968
- * primary.c (next_string_char): Correct reading a character
- after the delimiter.
- (match_string_constant): Print warning message only once.
-
-2007-02-27 Richard Guenther <rguenther@suse.de>
-
- * trans-array.c (structure_alloc_comps): Use correct type
- for null pointer constant.
-
-2007-02-26 Brooks Moses <brooks.moses@codesourcery.com>
-
- * gfortran.texi: Standardize title page, remove version number
- from copyright page.
-
-2007-02-26 Thomas Koenig <Thomas.Koenig@online.de>
- Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30865
- * trans-intrinsic.c (gfc_conv_intrinsic_size):
- If dim is an optional argument, check for its
- presence and call size0 or size1, respectively.
-
-2007-02-23 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30660
- * resolve.c (has_default_initializer): New function.
- (resolve_fl_variable): Call has_default_initializer to determine if
- the derived type has a default initializer to its ultimate
- components.
-
-
-2007-02-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- * options.c (set_default_std_flags): New function to consolidate
- setting the flags.
- (gfc_init_options): Use new function.
- (gfc_handle_option): Use new function.
-
-2007-02-22 Brooks Moses <brooks.moses@codesourcery.com>
-
- * gfortran.texi (Old-style kind specifications): Document
- special handling of old-style kind specifiers for COMPLEX.
- * decl.c (gfc_match_old_kind_spec): Documented kind/bytesize
- assumptions in comment.
-
-2007-02-21 Bernhard Fischer <aldot@gcc.gnu.org>
-
- * parse.c (next_free): Gooble spaces after OpenMP sentinel.
-
-2007-02-20 Thomas Koenig <Thomas.Koenig@online.de>
-
- PR fortran/30869
- * match.c (gfc_match_iterator): Remove conflict between
- loop variable and pointer.
-
-2007-02-20 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/30522
- * symbol.c (gfc_add_volatile): Allow to set VOLATILE
- attribute for host-associated variables.
- * gfortran.h (symbol_attribute): Save namespace
- where VOLATILE has been set.
- * trans-decl.c (gfc_finish_var_decl): Move variable
- declaration to the top.
-
-2007-02-20 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/30783
- * resolve.c (resolve_symbol): Add character dummy VALUE check.
-
-2007-02-19 Thomas Koenig <Thomas.Koenig@online.de>
-
- PR libfortran/30533
- * fortran/iresolve.c (gfc_resolve_maxloc): Remove coercion of
- argument to default integer.
- (gfc_resolve_minloc): Likewise.
-
-2007-02-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/30681
- * options.c (gfc_init_options): Relax warning level for obsolescent.
- * match.c (match_arithmetic_if): Change to obsolescent from deleted.
- (gfc_match_if): Same.
-
-2007-02-18 Roger Sayle <roger@eyesopen.com>
-
- * trans-array.c (gfc_build_constant_array_constructor): When the
- shape of the constructor is known, use that to construct the
- gfc_array_spec.
- (gfc_trans_constant_array_constructor): Initialize the "info"
- information for all of the dimensions of the array constructor.
- (constant_array_constructor_loop_size): New function.
- (gfc_trans_array_constructor): Use it to determine whether a
- loop is suitable for "constant array constructor" optimization.
-
- * trans-intrinsic.c (gfc_conv_intrinsic_anyall): Use fold_build2
- instead of build2, to avoid conditions like "(a != b) != 0".
-
-2007-02-18 Roger Sayle <roger@eyesopen.com>
- Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30400
- * match.c (match_forall_iterator): Use gfc_match_expr instead
- of gfc_match_variable to match the iterator variable. Return
- MATCH_NO if not a variable. Remove the reset of the symbol's
- flavor in cleanup.
-
-2007-02-16 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/30793
- * trans-decl.c (gfc_generate_function_code): Do not initialize
- pointers to derived components.
-
-2007-02-15 Sandra Loosemore <sandra@codesourcery.com>
- Brooks Moses <brooks.moses@codesourcery.com>
- Lee Millward <lee.millward@codesourcery.com>
-
- * trans-expr.c (gfc_conv_power_op): Use build_call_expr.
- (gfc_conv_string_tmp): Likewise.
- (gfc_conv_concat_op): Likewise.
- (gfc_build_compare_string): Likewise.
- (gfc_conv_function_call): Use build_call_list instead of build3.
-
- * trans-array.c (gfc_trans_allocate_array_storage): Use
- build_call_expr.
- (gfc_grow_array): Likewise.
- (gfc_trans_array_ctor_element): Likewise.
- (gfc_trans_array_constructor_value): Likewise.
- (gfc_array_allocate): Likewise.
- (gfc_array_deallocate): Likewise.
- (gfc_trans_auto_array_allocation): Likewise.
- (gfc_trans_dummy_array_bias): Likewise.
- (gfc_conv_array_parameter): Likewise.
- (gfc_trans_dealloc_allocated): Likewise.
- (gfc_duplicate_allocatable): Likewise.
-
- * trans-openmp.c (gfc_trans_omp_barrier): Use build_call_expr.
- (gfc_trans_omp_flush): Likewise.
-
- * trans-stmt.c (gfc_conv_elementel_dependencies): Use build_call_expr.
- (gfc_trans_pause): Likewise.
- (gfc_trans_stop): Likewise.
- (gfc_trans_character_select): Likewise.
- (gfc_do_allocate): Likewise.
- (gfc_trans_assign_need_temp): Likewise.
- (gfc_trans_pointer_assign_need_temp): Likewise.
- (gfc_trans_forall_1): Likewise.
- (gfc_trans_where_2): Likewise.
- (gfc_trans_allocate): Likewise.
- (gfc_trans_deallocate): Likewise.
-
- * trans.c (gfc_trans_runtime_check): Use build_call_expr.
-
- * trans-io.c (gfc_trans_open): Use build_call_expr.
- (gfc_trans_close): Likewise.
- (build_filepos): Likewise.
- (gfc_trans_inquire): Likewise.
- (NML_FIRST_ARG): Delete.
- (NML_ADD_ARG): Delete.
- (transfer_namelist_element): Use build_call_expr.
- (build_dt): Likewise.
- (gfc_trans_dt_end): Likewise.
- (transfer_expr): Likewise.
- (transfer_array-desc): Likewise.
-
- * trans-decl.c (gfc_generate_function_code): Use build_call_expr.
- (gfc_generate_constructors): Likewise.
-
- * trans-intrinsic.c (gfc_conv_intrinsic_ctime): Use build_call_expr.
- (gfc_conv_intrinsic_fdate): Likewise.
- (gfc_conv_intrinsic_ttynam): Likewise.
- (gfc_conv_intrinsic_array_transfer): Likewise.
- (gfc_conv_associated): Likewise.
- (gfc_conv_intrinsic_si_kind): Likewise.
- (gfc_conv_intrinsic_trim): Likewise.
- (gfc_conv_intrinsic_repeat: Likewise.
- (gfc_conv_intrinsic_iargc): Likewise.
-
-2007-02-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/30779
- * scanner.c (gfc_next_char_literal): Add check for end of file after
- call to advance_line.
-
-2007-02-14 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/30799
- * primary.c (match_logical_constant): Return MATCH_ERROR on invalid
- kind.
-
-2007-02-14 Steven G. Kargl <kargl@gcc.gnu.org>
-
- * misc.c (gfc_typename): Fix potential buffer overflow.
-
-2007-02-13 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30554
- * module.c (read_module): Set pointer_info to referenced if the
- symbol has no namespace.
-
-2007-02-12 Nick Clifton <nickc@redhat.com>
-
- * lang.opt: Add Warning attribute to warning options.
-
-2007-02-11 Daniel Franke <franke.daniel@gmail.com>
-
- * intrinsic.texi (HOSTNM): Fix typographical error in syntax.
- (SLEEP): Added section and documentation.
-
-2007-02-11 Tobias Schlüter <tobi@gcc.gnu.org>
-
- PR fortran/30478
- * decl.c (add_init_expr_to_sym): Remove ENUM specific code.
- (variable_decl): Likewise. Rewrap comment.
- (match_attr_spec): Remove ENUM specific code.
- (gfc_match_enum): Fix typo in error message.
- (enumerator_decl): New function.
- (gfc_match_enumerator_def): Use enumerator_decl instead of
- variable_decl. Adapt code accordingly.
-
-2007-02-11 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30554
- * module.c (find_symtree_for_symbol): New function to return
- a symtree that is not a "unique symtree" given a symbol.
- (read_module): Do not automatically set pointer_info to
- referenced because this inhibits the generation of a unique
- symtree. Recycle the existing symtree if possible by calling
- find_symtree_for_symbol.
-
- PR fortran/30319
- * decl.c (add_init_expr_to_sym): Make new charlen for an array
- constructor initializer.
-
-2007-02-10 Richard Henderson <rth@redhat.com>, Jakub Jelinek <jakub@redhat.com>
-
- * f95-lang.c (gfc_init_builtin_functions): Add __emutls_get_address
- and __emutls_register_common.
- * openmp.c (gfc_match_omp_threadprivate): Don't error if !have_tls.
- * trans-common.c (build_common_decl): Don't check have_tls.
- * trans-decl.c (gfc_finish_var_decl): Likewise.
- * types.def (BT_WORD, BT_FN_PTR_PTR): New.
- (BT_FN_VOID_PTR_WORD_WORD_PTR): New.
-
-2007-02-09 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/30512
- * trans-intrinsic.c (gfc_conv_intrinsic_minmaxloc,
- gfc_conv_intrinsic_minmaxval): Use HUGE-1 for most negative integer.
-
-2007-02-09 Francois-Xavier Coudert <coudert@clipper.ens.fr>
-
- PR fortran/30720
- * trans-array.c (gfc_trans_create_temp_array): Remove use of the
- function argument. Always generate code for negative extent.
- Simplify said code.
- * trans-array.h (gfc_trans_create_temp_array): Change prototype.
- * trans-expr.c (gfc_conv_function_call): Remove use of last argument
- of gfc_trans_create_temp_array.
- * trans-intrinsic.c (gfc_conv_intrinsic_array_transfer): Likewise.
- * trans-stmt.c (gfc_conv_elemental_dependencies): Likewise.
-
-2007-02-08 Roger Sayle <roger@eyesopen.com>
-
- * trans-stmt.c (gfc_trans_forall_1): Optimize the cases where the
- mask expression is a compile-time constant (".true." or ".false.").
-
-2007-02-04 Francois-Xavier Coudert <coudert@clipper.ens.fr>
-
- PR fortran/30611
- * trans-intrinsic.c (gfc_conv_intrinsic_repeat): Evaluate
- arguments only once. Generate check that NCOPIES argument is not
- negative.
-
-2007-02-04 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/30605
- * fortran/invoke.texi: Update documentation.
- * fortran/options.c (gfc_post_options): Deal with tabs with -std=f2003
- and -pedantic.
-
-2007-02-03 Kazu Hirata <kazu@codesourcery.com>
-
- * trans-array.c: Fix a comment typo.
-
-2007-02-03 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30514
- * array.c (match_array_element_spec): If the length of an array is
- negative, adjust the upper limit to make it zero length.
-
- PR fortran/30660
- * resolve.c (pure_function, resolve_function): Initialize name to
- null to clear up build warnings.
- (resolve_fl_variable): Look at components explicitly to check for
- default initializer, rather than using gfc_default_initializer.
-
-2007-02-02 Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/30683
- * resolve.c (resolve_generic_f): Check for non-NULL sym.
-
-2007-02-02 Roger Sayle <roger@eyesopen.com>
-
- * trans.c (gfc_build_array_ref): Use STRIP_TYPE_NOPS to eliminate
- NON_LVALUE_EXPR nodes and useless type conversions.
-
-2007-02-02 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30284
- PR fortran/30626
- * trans-expr.c (gfc_conv_aliased_arg): Remove static attribute
- from function and make sure that substring lengths are
- translated.
- (is_aliased_array): Remove static attribute.
- * trans.c : Add prototypes for gfc_conv_aliased_arg and
- is_aliased_array.
- * trans-io.c (set_internal_unit): Add the post block to the
- arguments of the function. Use is_aliased_array to check if
- temporary is needed; if so call gfc_conv_aliased_arg.
- (build_dt): Pass the post block to set_internal_unit and
- add to the block after all io activiy is done.
-
-2007-02-01 Roger Sayle <roger@eyesopen.com>
-
- * trans-array.c (gfc_conv_expr_descriptor): We don't need to use
- a temporary array to pass a constant non-character array constructor.
- Generalize the descriptor generation code to handle scalarizer
- "info" without an array reference.
-
-2007-02-01 Roger Sayle <roger@eyesopen.com>
-
- * dependency.c (gfc_check_dependency) <EXPR_ARRAY>: Implement
- dependency checking for array constructors.
-
-2007-02-01 Roger Sayle <roger@eyesopen.com>
-
- * trans-stmt.c (compute_overall_iter_number): Document function
- arguments. Generalize "unconditional forall nest with constant
- bounds" optimization to eliminate unconditional inner loops with
- constant bounds.
-
-2007-01-31 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/30520
- * interface.c (compare_actual_formal): Check conformance between
- actual and VOLATILE dummy arguments.
- * symbol.c (gfc_add_volatile): Allow setting of VOLATILE
- multiple times in different scopes.
- * decl.c (gfc_match_volatile): Search symbol in host association.
-
-2007-01-31 Kazu Hirata <kazu@codesourcery.com>
-
- * simplify.c, trans-array.c: Fix comment typos.
-
-2007-01-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
-
- * invoke.texi (Code Gen Options): Fix abbreviation typo.
- * intrinsic.texi (ACCESS, LSHIFT, RSHIFT): Fix typos.
-
-2007-01-30 Steve Ellcey <sje@cup.hp.com>
-
- PR fortran/30432
- * trans-types.c (gfc_get_function_type): Do not add void_type_node
- to empty arg list.
- * trans-decl.c (create_function_arglist): Change assert.
-
-2007-01-29 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30554
- * module.c (read_module): If a symbol is excluded by an ONLY
- clause, check to see if there is a symtree already loaded. If
- so, attach the symtree to the pointer_info.
-
-2007-01-28 Thomas Koenig <Thomas.Koenig@online.de>
-
- PR libfortran/30389
- * gfortran.h: Remove gfc_simplify_init_1.
- * arith.h: Remove third argument from gfc_compare_string.
- * arith.c (gfc_compare_expression): Remove third argument
- from call to gfc_compare_string.
- (gfc_compare_string): Remove third argument xcoll_table.
- Remove use of xcoll_table.
- * misc.c (gfc_init_1): Remove call to gfc_simplify_init_1.
- * simplify.c (ascii_table): Remove.
- (xascii_table): Likewise.
- (gfc_simplify_achar): ICE if extract_int fails. Remove use of
- ascii_table. Warn if -Wsurprising and value < 0 or > 127.
- (gfc_simplify_char): ICE if extract_int fails. Error if
- value < 0 or value > 255.
- (gfc_simplify_iachar): Remove use of xascii_table.
- Char values outside of 0..255 are an ICE.
- (gfc_simplify_lge): Remove use of xascii_table.
- (gfc_simplify_lgt): Likewise.
- (gfc_simplify_lle): Likewise.
- (gfc_simplify_llt): Likewise.
- (invert_table): Remove.
- (gfc_simplify_init_1): Remove.
-
-2007-01-27 Roger Sayle <roger@eyesopen.com>
-
- * trans-stmt.c (forall_info): Replace the next_nest and outer
- fields that previously implemented a doubly-linked list with a
- single prev_nest field (singly-linked list).
- (gfc_trans_nested_forall_loop): The nested_forall_info argument
- now denotes the innermost FORALL in the loop nest.
- (compute_overall_iter_number): Use prev_nest instead of next_nest.
- (gfc_trans_forall_1): Link/cons the new "info" to the head of the
- nested_forall_info linked list. Free the current "info" when done.
-
-2007-01-27 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30407
- * trans-expr.c (gfc_conv_operator_assign): New function.
- * trans.h : Add prototype for gfc_conv_operator_assign.
- * trans-stmt.c (gfc_trans_where_assign): Add a gfc_symbol for
- a potential operator assignment subroutine. If it is non-NULL
- call gfc_conv_operator_assign instead of the first assignment.
- ( gfc_trans_where_2): In the case of an operator assignment,
- extract the argument expressions from the code for the
- subroutine call and pass the symbol to gfc_trans_where_assign.
- resolve.c (resolve_where, gfc_resolve_where_code_in_forall,
- gfc_resolve_forall_body): Resolve the subroutine call for
- operator assignments.
-
-2007-01-26 Steven Bosscher <stevenb.gcc@gmail.com>
- Steven G. Kargl <kargl@gcc.gnu.org>
-
- PR fortran/30278
- * fortran/io.c (next_char): Deal with backslash escaped characters.
- Issue warnings in non -std=gnu cases.
- * fortran/primary.c (next_string_char): Issue warnings in non
-
-2007-01-26 Tobias Burnus <burnus@net-b.de>
-
- * lang-specs.h: Add support for .f03 and .F03 extensions.
- * gfortran.texi: Document .f03 extension.
- * options.c (form_from_filename): Recognize .f03.
-
-2007-01-25 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
-
- PR fortran/30437
- * lang.opt (Wall): Remove RejectNegative.
- * options.c (gfc_handle_option): Wall can be disabled.
- (set_Wall): Add a parameter for disabling Wall.
-
-2007-01-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/30532
- * scanner.c (load_line): Remove check fot ctrl-z and don't gobble.
-
-2007-01-23 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30481
- * match.c (gfc_match_namelist): Add check for assumed size character
- in namelist and provide error if found.
-
-2007-01-21 Brooks Moses <brooks.moses@codesourcery.com>
-
- * intrinsic.texi (ACHAR): Added cross-references.
- (CHAR): Put cross-references in alphabetical order.
- (IACHAR): Added cross-references.
- (ICHAR): Added cross-references.
-
-2007-01-20 Brooks Moses <brooks.moses@codesourcery.com>
-
- * intrinsic.texi: Edited all "Syntax" examples to a consistent form.
- (MAXVAL): Corrected description of result characteristics.
- (MINVAL): Same.
- (UMASK): Added documentation.
-
-2007-01-20 Steven G. Kargl <kargl@gcc.gnu.org>
-
- * openmp.c, matchexp.c, module.c, scanner.c, resolve.c, st.c,
- parse.c, primary.c, options.c, misc.c, simplify.c: Next installment
- in the massive whitespace patch.
-
-2007-01-20 Roger Sayle <roger@eyesopen.com>
-
- * module.c (mio_array_ref): The dimen_type fields of an array ref
- are an enumerated type and can't be read/written directly with a
- call to mio_integer. Instead loop over and cast each element.
-
-2007-01-20 Roger Sayle <roger@eyesopen.com>
-
- * dependency.c (gfc_full_array_ref_p): Check that ref->next is NULL,
- i.e. that the ARRAY_REF doesn't mention components.
- * trans-array.c (gfc_constant_array_constructor_p): Export external
- function renamed from constant_array_constructor_p.
- (gfc_build_constant_array_constructor): Export.
- (gfc_trans_array_constructor): Update call to the renamed function
- constant_array_constructor_p.
- * trans-array.h (gfc_constant_array_constructor_p): Prototype here.
- (gfc_build_constant_array_constructor): Likewise.
- * trans-expr.c (gfc_build_memcpy_call): New helper function split
- out from gfc_trans_array_copy.
- (gfc_trans_array_copy): Use gfc_build_memcpy_call.
- (gfc_trans_array_constructor_copy): New function to optimize
- assigning an entire array from a constant array constructor.
- (gfc_trans_assignment): Call gfc_trans_array_constructor_copy
- when appropriate.
-
-2007-01-20 Roger Sayle <roger@eyesopen.com>
-
- * trans-intrinsic.c (gfc_conv_intrinsic_sign): New branchless
- implementation for the SIGN intrinsic with integral operands.
- (gfc_conv_intrinsic_minmax): Fix whitespace.
-
-2007-01-20 Francois-Xavier Coudert <coudert@clipper.ens.fr>
-
- * gfortran.h (gfc_options_t): Add flag_allow_leading_underscore.
- * lang.opt: Add -fallow-leading-underscore.
- * match.c (gfc_match_name): Allow leading underscore in symbol
- name if -fallow-leading-underscore is used.
- * symbol.c (gfc_get_default_type): Add special case for symbol
- names beginning with an underscore.
- * trans-decl.c (gfc_get_extern_function_decl,
- gfc_build_intrinsic_function_decls): Add _gfortran prefix to
- library symbols selected_int_kind, selected_real_kind and
- all specifics.
- * options.c (gfc_init_options, gfc_handle_option): Handle the
- new -fallow-leading-underscore option.
-
-2007-01-20 Francois-Xavier Coudert <coudert@clipper.ens.fr>
-
- PR fortran/30446
- * options.c (gfc_handle_module_path_options): Path used in -J
- option is now added to the module search path.
-
-2007-01-20 Richard Guenther <rguenther@suse.de>
-
- PR fortran/30223
- * f95-lang.c (gfc_init_builtin_functions): Provide cbrt and
- cexpi builtins if we have TARGET_C99_FUNCTIONS. Provide
- sincos builtins if the target has sincos.
-
-2007-01-19 Brooks Moses <brooks.moses@codesourcery.com>
-
- * intrinsic.texi (MATMUL): Corrected a typo.
- (MAX): Separated @var arguments.
- (MIN): Separated @var arguments.
-
-2007-01-19 Brooks Moses <brooks.moses@codesourcery.com>
-
- * intrinsic.texi: general whitespace cleanup.
- (menu): Added TIME8, removed UNMASK.
- (AINT): Clarified argument requirement.
- (ANINT): Clarified argument requirement.
- (CEILING): Clarified argument requirement.
- (CHAR): Clarified argument requirement.
- (CMPLX): Clarified argument requirement.
- (DCMPLX): Clarified argument requirement.
- (FGET): Line rewrapping.
- (FLOOR): Clarified argument requirement.
- (GMTIME): Added documentation.
- (IAND): Added cross-reference.
- (IBCLR): Added cross-reference.
- (IBSET): Added cross-reference.
- (IEOR): Added cross-reference.
- (INT): Collapsed examples, clarified argument requirement.
- (IOR): Added cross-references.
- (LEN_TRIM): Corrected result kind.
- (LINK): Added cross-reference.
- (LLT): Removed "documentation pending".
- (LOGICAL): Added documentation.
- (LSHIFT): Added documentation.
- (LTIME): Added documentation.
- (MATMUL): Added documentation.
- (MAX): Added documentation.
- (MAXLOC): Added documentation.
- (MAXVAL): Added documentation.
- (MERGE): Added documentation.
- (MIN): Added documentation.
- (MINLOC): Added documentation.
- (MINVAL): Added documentation.
- (MVBITS): Moved to correct place, added documentation.
- (NOT): Added documentation.
- (PERROR): Added documentation.
- (RAN): Moved to correct place, added documentation.
- (REAL): Clarified argument requirement.
- (RENAME): Added documentation.
- (RSHIFT): Clarified argument requirement.
- (SIGN): Corrected table specification.
- (SYMLNK): Added documentation.
- (SYSTEM): Added documentation.
- (TIME): Added documentation.
- (TIME8): Added section and documentation.
- (UNMASK): Removed erroneous section.
-
-2007-01-18 H.J. Lu <hongjiu.lu@intel.com>
-
- * trans-stmt.c (compute_overall_iter_number): Fix a typo.
-
-2007-01-18 Roger Sayle <roger@eyesopen.com>
-
- * trans-expr.c (copyable_array_p): Consider user derived types without
- allocatable components to be copyable.
-
-2007-01-18 Roger Sayle <roger@eyesopen.com>
-
- * trans-stmt.c (compute_overall_iter_number): Enhance to precompute
- the number of interations in unconditional FORALL nests with constant
- bounds.
-
-2007-01-18 Francois-Xavier Coudert <coudert@clipper.ens.fr>
- Tobias Burnus <burnus@net-b.de>
-
- PR libfortran/29649
- * gfortran.h (gfc_option_t): Add flag_dump_core.
- * lang.opt: Add -fdump-core option.
- * invoke.texi: Document the new options.
- * trans-decl.c (gfc_build_builtin_function_decls): Add new
- options to the call to set_std.
- * options.c (gfc_init_options, gfc_handle_option): Set the
- new options.
-
-2007-01-17 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30476
- * module.c (load_generic_interfaces): Make the marking of the
- symbol as ambiguous conditional on the module names being
- different.
- (write_generic): Ensure that the generic interface has a
- non-NULL module field.
-
-2007-01-16 Roger Sayle <roger@eyesopen.com>
-
- PR fortran/30404
- * trans-stmt.c (forall_info): Remove pmask field.
- (gfc_trans_forall_loop): Remove NVAR argument, instead assume that
- NVAR covers all the interation variables in the current forall_info.
- Add an extra OUTER parameter, which specified the loop header in
- which to place mask index initializations.
- (gfc_trans_nested_forall_loop): Remove NEST_FLAG argument.
- Change the semantics of MASK_FLAG to only control the mask in the
- innermost loop.
- (compute_overall_iter_number): Optimize the trivial case of a
- top-level loop having a constant number of iterations. Update
- call to gfc_trans_nested_forall_loop. Calculate the number of
- times the inner loop will be executed, not to size of the
- iteration space.
- (allocate_temp_for_forall_nest_1): Reuse SIZE as BYTESIZE when
- sizeof(type) == 1. Tidy up.
- (gfc_trans_assign_need_temp): Remove NEST_FLAG argument from calls
- to gfc_trans_nested_forall_loop.
- (gfc_trans_pointer_assign_need_temp): Likewise.
- (gfc_trans_forall_1): Remove unused BYTESIZE, TMPVAR, SIZEVAR and
- LENVAR local variables. Split mask allocation into a separate
- hunk/pass from mask population. Use allocate_temp_for_forall_nest
- to allocate the FORALL mask with the correct size. Update calls
- to gfc_trans_nested_forall_loop.
- (gfc_evaluate_where_mask): Update call to
- gfc_trans_nested_forall_loop.
- (gfc_trans_where_2): Likewise.
-
-2007-01-15 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/28172
- * trans-stmt.c (gfc_trans_call): If it does not have one, get
- a backend_decl for an alternate return.
-
- PR fortran/29389
- * resolve.c (pure_function): Statement functions are pure. Note
- that this will have to recurse to comply fully with F95.
-
- PR fortran/29712
- * resolve.c (resolve_function): Only a reference to the final
- dimension of an assumed size array is an error in an inquiry
- function.
-
- PR fortran/30283
- * resolve.c (resolve_function): Make sure that the function
- expression has a type.
-
-2007-01-14 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30410
- * trans-decl.c (gfc_sym_mangled_function_id): Module, external
- symbols must not have the module name prepended.
-
-2007-01-11 Thomas Koenig <Thomas.Koenig@online.de>
-
- PR libfortran/30415
- * iresolve.c (gfc_resolve_maxloc): If the rank
- of the return array is nonzero and we process an
- integer array smaller than default kind, coerce
- the array to default integer.
- * iresolve.c (gfc_resolve_minloc): Likewise.
-
-2007-01-11 Brooks Moses <brooks.moses@codesourcery.com>
-
- * simplify.c: Update copyright to 2007.
- * scanner.c: Same.
-
-2007-01-11 Francois-Xavier Coudert <coudert@clipper.ens.fr>
-
- PR fortran/30430
- * scanner.c (gfc_release_include_path): Free gfc_option.module_dir
- only once!
-
-2007-01-09 Brooks Moses <brooks.moses@codesourcery.com>
-
- * simplify.c (gfc_simplify_ibclr): Fix POS comparison.
- (gfc_simplify_ibset): Same.
-
-2007-01-09 Brooks Moses <brooks.moses@codesourcery.com>
-
- PR 30381
- PR 30420
- * simplify.c (convert_mpz_to_unsigned): New function.
- (convert_mpz_to_signed): New function, largely based on
- twos_complement().
- (twos_complement): Removed.
- (gfc_simplify_ibclr): Add conversions to and from an
- unsigned representation before bit-twiddling.
- (gfc_simplify_ibset): Same.
- (gfc_simplify_ishftc): Add checks for overly large
- constant arguments, only check the third argument if
- it's present, carry over high bits into the result as
- appropriate, and perform the final conversion back to
- a signed representation using the correct sign bit.
- (gfc_simplify_not): Removed unnecessary masking.
-
-2007-01-09 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30408
- * resolve.c (resolve_code): Use the code->expr character length
- directly to set length of llen.
-
-2007-01-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/30408
- * lang.opt: Add Wcharacter_truncation option.
- * options.c (gfc_init_options): Initialize
- gfc_option.warn_character_truncation to zero.
- (gfc_handle_option): Add case for OPT_Wcharacter_truncation.
-
-2007-01-08 Steven G. Kargl <kargl@gcc.gnu.org>
-
- * interface.c, intrinsic.c, gfortranspec.c, io.c, f95-lang.c,
- iresolve.c, match.c: Update Copyright years. Whitespace.
-
-2007-01-08 Richard Guenther <rguenther@suse.de>
-
- * trans-io.c (transfer_array_desc): Use build_int_cst instead
- of build_int_cstu.
-
-2007-01-08 Roger Sayle <roger@eyesopen.com>
-
- * trans-array.c (constant_array_constructor_p): New function to
- determine whether an array constructor consists only of constant
- elements, and if so return it's size.
- (gfc_build_constant_array_constructor): Construct a statically
- initialized gfortran array for a given EXPR_ARRAY.
- (gfc_trans_constant_array_constructor): Efficiently scalarize
- a constant array constructor.
- (gfc_trans_array_constructor): Tidy up use of CONST_STRING.
- Special case scalarization of constant array constructors, all of
- whose elements are specified, using constant_array_constructor_p
- and gfc_trans_constant_array_constructor.
- (gfc_conv_scalarized_array_ref): Check whetger info->offset is zero
- before adding it to index, to avoid creating a NON_LVALUE_EXPR.
-
-2007-01-08 Kazu Hirata <kazu@codesourcery.com>
-
- gfortran.texi: Fix typos.
-
-2007-01-07 Steven G. Kargl <kargl@gcc.gnu.org>
-
- * decl.c, dump-parse-tree.c, error.c, data.c, expr.c, dependency.c,
- convert.c: Update Copyright dates. Fix whitespace.
-
-2007-01-07 Bernhard Fischer <aldot@gcc.gnu.org>
-
- * data.c (gfc_assign_data_value): Fix whitespace.
-
-2007-01-07 Bernhard Fischer <aldot@gcc.gnu.org>
-
- * trans-array.c (gfc_trans_create_temp_array, gfc_array_init_size):
- Commentary typo fix.
-
-2007-01-07 Bernhard Fischer <aldot@gcc.gnu.org>
-
- PR fortran/27698
- * match.c (gfc_match_name): Print diagnostics for invalid
- character in names.
-
-2007-01-06 Steven G. Kargl <kargl@gcc.gnu.org>
-
- * array.c: Fix whitespace in comment table.
-
-2007-01-06 Steven G. Kargl <kargl@gcc.gnu.org>
-
- * array.c, bbt.c, check.c: Update copyright years. Whitespace.
-
-2007-01-06 Steven G. Kargl <kargl@gcc.gnu.org>
-
- * arith.c: Update copyright years. Whitespace.
-
-2007-01-05 Roger Sayle <roger@eyesopen.com>
-
- * trans-expr.c (gfc_trans_assignment_1): New subroutine to scalarize
- array assignments split out from gfc_trans_assignment.
- (gfc_trans_array_copy): New function to implement array to array
- copies via calls to __builtin_memcpy.
- (copyable_array_p): New helper function to identify an array of
- simple/POD types, that may be copied/assigned using memcpy.
- (gfc_trans_assignment): Use gfc_trans_array_copy to handle simple
- whole array assignments considered suitable by copyable_array_p.
- Invoke gfc_trans_assignment_1 to perform the fallback scalarization.
-
-2007-01-05 Roger Sayle <roger@eyesopen.com>
-
- * trans-array.c (gfc_trans_array_constructor_value): Make the
- static const "data" array as TREE_READONLY.
- * trans-stmt.c (gfc_trans_character_select): Likewise.
-
-2007-01-05 Roger Sayle <roger@eyesopen.com>
-
- * trans-array.c (gfc_conv_loop_setup): Test whether the loop
- stride is one, to avoid fold_build2 introducing a useless
- NON_LVALUE_EXPR node.
-
-2007-01-05 Tobias Burnus <burnus@net-b.de>
-
- * symbol.c (check_conflict): Fix error message.
-
-2007-01-05 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/23232
- * decl.c (gfc_in_match_data, gfc_set_in_match_data): New
- functions to signal that a DATA statement is being matched.
- (gfc_match_data): Call gfc_set_in_match_data on entry and on
- exit.
- * gfortran.h : Add prototypes for above.
- * expr.c (check_init_expr): Avoid check on parameter or
- variable if gfc_in_match_data is true.
- (gfc_match_init_expr): Do not call error on non-reduction of
- expression if gfc_in_match_data is true.
-
- PR fortran/27996
- PR fortran/27998
- * decl.c (gfc_set_constant_character_len): Add boolean arg to
- flag array constructor resolution. Warn if string is being
- truncated. Standard dependent error if string is padded. Set
- new arg to false for all three calls to
- gfc_set_constant_character_len.
- * match.h : Add boolean arg to prototype for
- gfc_set_constant_character_len.
- * gfortran.h : Add warn_character_truncation to gfc_options.
- * options.c (set_Wall): Set warn_character_truncation if -Wall
- is set.
- * resolve.c (resolve_code): Warn if rhs string in character
- assignment has to be truncated.
- * array.c (gfc_resolve_character_array_constructor): Set new
- argument to true for call to gfc_set_constant_character_len.
-
-2007-01-05 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/29624
- * interface.c (compare_parameter_intent): New function.
- (check_intents): Support pointer intents.
- * symbol.c (check_conflict): Support pointer intents,
- better conflict_std message.
- * expr.c (gfc_check_assign,gfc_check_pointer_assign):
- Support pointer intents.
- * resolve.c (resolve_deallocate_expr,resolve_allocate_expr):
- Support pointer intents.
-
-2007-01-03 Brooks Moses <brooks.moses@codesourcery.com>
-
- PR 30371
- * check.c (gfc_check_kill_sub): Add checks for non-scalar
- arguments.
-
-2007-01-04 Brooks Moses <brooks.moses@codesourcery.com>
-
- * intrinsic.texi: Minor cleanup, reflowing overlong
- paragraphs, and correcting whitespace.
-
-2007-01-04 Brooks Moses <brooks.moses@codesourcery.com>
-
- * intrinsic.texi (LBOUND): Add documentation.
- (LGE): Add documentation.
- (LGT): Add documentation.
- (LINK): Add documentation.
- (LLE): Add documentation.
- (LLT): Add documentation.
- (LNBLNK): Add documentation.
- (UBOUND): Add documentation.
- (UNLINK): Add documentation.
-
-2007-01-04 Brooks Moses <brooks.moses@codesourcery.com>
-
- * intrinsic.texi (IAND): Clarify argument specifications.
- (IBCLR): Add documentation.
- (IBITS): Add documentation.
- (IBSET): Add documentation.
- (IEOR): Add documentation.
- (IERRNO): Add documentation.
- (INDEX): Add documentation.
- (IOR): Add documentation.
- (ISHFT): Add documentation.
- (ISHFTC): Add documentation.
- (KILL): Add documentation.
- (LEN_TRIM): Add documentation.
-
-2007-01-04 Brooks Moses <brooks.moses@codesourcery.com>
-
- PR 30235
- * interface.c (compare_actual_formal): check for
- alternate returns when iterating over non-present
- arguments.
-
-2007-01-04 Brooks Moses <brooks.moses@codesourcery.com>
-
- * invoke.texi: Update manpage copyright to include 2007.
-
-2007-01-04 Brooks Moses <brooks.moses@codesourcery.com>
-
- * gfortran.texi: Update copyright to include 2007.
- * intrinsic.texi: Update copyright to include 2007.
- * invoke.texi: Update copyright to include 2007.
-
-2007-01-02 Tobias Burnus <burnus@net-b.de>
- Jakub Jelinek <jakub@redhat.com>
-
- PR fortran/30276
- * scanner.c (open_included_file): Revert patch.
- (gfc_open_included_file): Support absolute pathnames.
- (gfc_open_intrinsic_module): Support absolute pathnames.
-
-2007-01-03 Brooks Moses <brooks.moses@codesourcery.com>
-
- * gfortran.texi (GNU Fortran and GCC): Rewrite
-
-2007-01-03 Brooks Moses <brooks.moses@codesourcery.com>
-
- * gfortran.texi (Introduction): Lower "Part I:
- Introduction" to a chapter, renumber Parts II and III to
- Parts I and II.
- * intrinsic.texi (Introduction): Rename to "Introduction
- to Intrinsics" to avoid conflict with the new chapter.
-
-2007-01-03 Brooks Moses <brooks.moses@codesourcery.com>
-
- * intrinsic.texi (Introduction): Rewrite first paragraph.
-
-2007-01-03 Brooks Moses <brooks.moses@codesourcery.com>
-
- * invoke.texi (OpenMP): Added index entry.
- * gfortran.texi (title page): Removed erroneous '*'.
-
-2007-01-03 Brooks Moses <brooks.moses@codesourcery.com>
-
- * gfortran.texi (GFORTRAN_DEFAULT_RECL): Added units
- to description.
- (Extensions): Miscellaneous minor rewriting and copyediting.
- (BOZ-literal constants): Renamed from Hexadecimal constants.
- (Hollerith constants support): Added explanation and
- suggestions for standard-conforming modern equivalents.
-
-2007-01-03 Brooks Moses <brooks.moses@codesourcery.com>
-
- * intrinsic.texi: Improvements to index entries; change
- @findex entries to @cindex entries.
- * invoke.texi: Standardize and improve index entries.
- * gfortran.texi: Fix @code in one index entry.
-
-2007-01-03 Brooks Moses <brooks.moses@codesourcery.com>
-
- * invoke.texi: Change @code-type macros to appropriate
- variants (@command, @option, etc.)
- * gfortran.texi: Same.
-
-2007-01-03 Brooks Moses <brooks.moses@codesourcery.com>
-
- * intrinsic.texi: Various minor cleanups.
-
-2007-01-02 Steven G. Kargl <kargls@comcast.net>
-
- * trans-intrinsic.c (gfc_conv_intrinsic_ibits): Fix call to
- build_int_cst.
-
-2007-01-02 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/30276
- * scanner.c (open_included_file): Support full-path filenames.
-
-2007-01-02 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/20896
- * interface.c (check_sym_interfaces): Remove call to
- resolve_global_procedure.
- gfortran.h : Remove prototype for resolve_global_procedure.
- resolve.c (resolve_global_procedure): Add static attribute
- to function declaration.
-
-2007-01-01 Steven G. Kargl <kargls@comcast.net>
-
- * ChangeLog: Copy to ...
- * ChangeLog-2006: here.
--- /dev/null
+2007-12-31 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/34558
+ * interface.c (gfc_compare_types): Prevent linked lists from
+ putting this function into an endless recursive loop.
+
+2007-12-26 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/34532
+ * gfortran.texi: Fixed section about implicit conversion of
+ logical and integer variables.
+
+2007-12-25 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34514
+ * decl.c (attr_decl1): Reject specifying the DIMENSION for
+ already initialized variable.
+ (do_parm): Reject PARAMETER for already initialized variable.
+
+2007-12-25 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/34533
+ * intrinsic.h (gfc_check_etime): Renamed to ...
+ (gfc_check_dtime_etime): ... this.
+ (gfc_check_etime_sub): Renamed to ...
+ (gfc_check_dtime_etime_sub): ... this.
+ (gfc_resolve_dtime_sub): New prototype.
+ * check.c (gfc_check_etime): Renamed to ...
+ (gfc_check_dtime_etime): ... this.
+ (gfc_check_etime_sub): Renamed to ...
+ (gfc_check_dtime_etime_sub): ... this.
+ * iresolve.c (gfc_resolve_dtime_sub): New implementation.
+ * intrinsic.c (add_functions): Removed alias from ETIME to DTIME,
+ added stand-alone intrinsic DTIME.
+ (add_subroutines): Adjusted check and resolve function names for
+ DTIME and ETIME.
+ * trans-intrinsic.c (gfc_conv_intrinsic_function): Added DTIME
+ to known functions in switch.
+ * intrinsic.texi (DTIME): Added paragraph about thread-safety,
+ fixed return value section.
+ (CPU_TIME): Clarified intent and added implementation notes.
+
+2007-12-23 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34421
+ * resolve.c (resolve_entries): Add standard error for functions
+ returning characters with different length.
+
+2007-12-23 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/34536
+ * matchexp.c (match_ext_mult_operand): Print warning for unary
+ operators following arithmetic ones by default.
+ (match_ext_add_operand): Likewise.
+
+2007-12-22 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/34559
+ * simplify.c (gfc_simplify_repeat): Added safeguard for empty
+ string literals.
+
+2007-12-22 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/34549
+ * check.c (gfc_check_cshift): Add check that shift is
+ type INTEGER.
+
+2007-12-21 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/34540
+ * iresolve.c (gfc_resolve_cshift): Take optional dim path
+ only if the argument is an optional itself.
+ * iresolve.c (gfc_resolve_eoshift): Same.
+
+2007-12-21 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/34438
+ * trans-decl.c (gfc_finish_var_decl): Do not mark derived types
+ with default initializers as TREE_STATIC unless they are in the
+ main program scope.
+ (gfc_get_symbol_decl): Pass derived types with a default
+ initializer to gfc_defer_symbol_init.
+ (init_default_dt): Apply default initializer to a derived type.
+ (init_intent_out_dt): Call init_default_dt.
+ (gfc_trans_deferred_vars): Ditto.
+
+ * module.c (read_module): Check sym->module is there before
+ using it in a string comparison.
+
+>>>>>>> .r131138
+2007-12-20 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34482
+ * gfortran.texi (BOZ): Document behavior for complex
+ numbers.
+ * target-memory.h (gfc_convert_boz): Update prototype.
+ * target-memory.c (gfc_convert_boz): Add error check
+ and convert BOZ to smallest possible bit size.
+ * resolve.c (resolve_ordinary_assign): Check return value.
+ * expr.c (gfc_check_assign): Ditto.
+ * simplify.c (simplify_cmplx, gfc_simplify_dble,
+ gfc_simplify_float, gfc_simplify_real): Ditto.
+
+2007-12-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/34325
+ * match.h: New function declaration.
+ * match.c (gfc_match_parens): New function to look for mismatched
+ parenthesis. (gfc_match_if): Use new function to catch missing '('.
+
+2007-12-19 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/34495
+ * expr.c (check_init_expr): Check whether variables with flavor
+ FL_PARAMETER do have a value assigned. Added error messages where
+ appropriate.
+ * simplify.c (gfc_simplify_transfer): Added check if the MOLD
+ argument is a constant if working with initialization
+ expressions.
+
+2007-12-17 Tobias Burnus <burnus@net-b.de>
+
+ * intrinsic.c (add_functions): Undo change; mark float and
+ sngl as STD_F77.
+ * intrinsic.texi (FLOAT, SNGL): Change standard to F77 and later.
+ * gfortran.texi (BOZ): Make note about FLOAT etc. clearer.
+
+2007-12-16 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34495
+ * intrinsic.c (add_functions): Mark float and sngl as STD_GNU.
+ (gfc_intrinsic_func_interface): Reject REAL, DBLE and CMPLX
+ in initialization expressions for -std=f95.
+
+2007-12-16 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/34305
+ * resolve.c (compare_bound): If either of the types of
+ the arguments isn't INTEGER, return CMP_UNKNOWN.
+
+2007-12-16 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34246
+ * trans-types.c (gfc_init_types): Change build_type_variant
+ to build_qualified_type.
+ (gfc_sym_type): Return gfc_character1_type_node for
+ character-returning bind(C) functions.
+ * trans-expr.c (gfc_conv_function_call): Do not set
+ se->string_length for character-returning bind(c) functions.
+ (gfc_trans_string_copy,gfc_trans_scalar_assign):
+ Support also single characters.
+
+2007-12-16 Bernhard Fischer <aldot@gcc.gnu.org>
+
+ * errors.c (gfc_notify_std): As originally stated but improperly
+ changed, disregard warnings_are_errors for deciding which buffer
+ to use for warnings.
+
+2007-12-16 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31213
+ PR fortran/33888
+ PR fortran/33998
+ * trans-array.c (gfc_trans_array_constructor_value): If the
+ iterator variable does not have a backend_decl, use a local
+ temporary.
+ (get_elemental_fcn_charlen): New function to map the character
+ length of an elemental function onto its actual arglist.
+ (gfc_conv_expr_descriptor): Call the above so that the size of
+ the temporary can be evaluated.
+ * trans-expr.c : Include arith.h and change prototype of
+ gfc_apply_interface_mapping_to_expr to return void. Change all
+ references to gfc_apply_interface_mapping_to_expr accordingly.
+ (gfc_free_interface_mapping): Free the 'expr' field.
+ (gfc_add_interface_mapping): Add an argument for the actual
+ argument expression. This is copied to the 'expr' field of the
+ mapping. Only stabilize the backend_decl if the se is present.
+ Copy the character length expression and only add it's backend
+ declaration if se is present. Return without working on the
+ backend declaration for the new symbol if se is not present.
+ (gfc_map_intrinsic_function) : To simplify intrinsics 'len',
+ 'size', 'ubound' and 'lbound' and then to map the result.
+ (gfc_map_fcn_formal_to_actual): Performs the formal to actual
+ mapping for the case of a function found in a specification
+ expression in the interface being mapped.
+ (gfc_apply_interface_mapping_to_ref): Remove seen_result and
+ all its references. Remove the inline simplification of LEN
+ and call gfc_map_intrinsic_function instead. Change the
+ order of mapping of the actual arguments and simplifying
+ intrinsic functions. Finally, if a function maps to an
+ actual argument, call gfc_map_fcn_formal_to_actual.
+ (gfc_conv_function_call): Add 'e' to the call to
+ gfc_add_interface_mapping.
+ * dump-parse-tree.c (gfc_show_symbol_n): New function for
+ diagnostic purposes.
+ * gfortran.h : Add prototype for gfc_show_symbol_n.
+ * trans.h : Add 'expr' field to gfc_add_interface_mapping.
+ Add 'expr' to prototype for gfc_show_symbol_n.
+ * resolve.c (resolve_generic_f0): Set specific function as
+ referenced.
+
+2007-12-14 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34438
+ * resolve.c (resolve_symbol): Do not emit public-variable-
+ of-private-derived-type error for non-module variables.
+
+2007-12-14 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34398
+ * expr.c (gfc_check_assign): Add range checks for assignments of BOZs.
+ * resolve.c (resolve_ordinary_assign): Ditto.
+ * arith.c (gfc_range_check): Fix return value for complex numbers.
+
+2007-12-14 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/34324
+ * module.c (parse_atom): Fixed parsing of modules files whose
+ lines are terminated by CRLF.
+
+2007-12-13 Anton Korobeynikov <asl@math.spbu.ru>
+
+ * trans-decl.c (gfc_build_builtin_function_decls): Correct decl
+ construction for select_string() and internal_unpack()
+
+2007-12-13 Duncan Sands <baldrick@free.fr>
+ Anton Korobeynikov <asl@math.spbu.ru>
+
+ * trans-expr.c (gfc_conv_structure): Make sure record constructors
+ for static variables are marked constant.
+
+2007-12-12 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34254
+ * decl.c (match_char_kind): Support use-associated/imported
+ kind parameters.
+ (gfc_match_kind_spec): Support als BT_CHARACTER, when
+ re-scanning kind spec.
+
+2007-12-11 Aldy Hernandez <aldyh@redhat.com>
+
+ * decl.c (add_global_entry): Make type unsigned.
+
+2007-12-11 Bernhard Fischer <aldot@gcc.gnu.org>
+
+ * decl.c (match_prefix): Make seen_type a boolean.
+ (add_global_entry): Cache type distinction.
+ * trans-decl.c: Whitespace cleanup.
+
+2007-12-10 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34425
+ * interface.c (get_expr_storage_size): Use signed integer when
+ obtaining the bounds.
+
+2007-12-09 Jakub Jelinek <jakub@redhat.com>
+
+ PR fortran/22244
+ * trans.h (struct array_descr_info): Forward declaration.
+ (gfc_get_array_descr_info): New prototype.
+ (enum gfc_array_kind): New type.
+ (struct lang_type): Add akind field.
+ (GFC_TYPE_ARRAY_AKIND): Define.
+ * trans-types.c: Include dwarf2out.h.
+ (gfc_build_array_type): Add akind argument. Adjust
+ gfc_get_array_type_bounds call.
+ (gfc_get_nodesc_array_type): Include proper debug info even for
+ assumed-size arrays.
+ (gfc_get_array_type_bounds): Add akind argument, set
+ GFC_TYPE_ARRAY_AKIND to it.
+ (gfc_sym_type, gfc_get_derived_type): Adjust gfc_build_array_type
+ callers.
+ (gfc_get_array_descr_info): New function.
+ * trans-array.c (gfc_trans_create_temp_array,
+ gfc_conv_expr_descriptor): Adjust gfc_get_array_type_bounds
+ callers.
+ * trans-stmt.c (gfc_trans_pointer_assign_need_temp): Likewise.
+ * trans-types.h (gfc_get_array_type_bounds): Adjust prototype.
+ * Make-lang.in (fortran/trans-types.o): Depend on dwarf2out.h.
+ * f95-lang.c (LANG_HOOKS_GET_ARRAY_DESCR_INFO): Define.
+
+2007-12-09 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/32129
+ * dump-parse-tree.c (gfc_show_expr_n): New function for
+ debugging.
+ * gfortran.h : Add prototype for gfc_show_expr_n.
+ * expr.c (simplify_constructor): Copy the constructor
+ expression and try to simplify that. If success, replace the
+ original. Otherwise discard the copy, keep going through
+ the structure and return success.
+
+ PR fortran/31487
+ * decl.c (build_struct): Pad out default initializers with
+ spaces to the component character length.
+
+2007-12-08 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34342
+ PR fortran/34345
+ PR fortran/18026
+ PR fortran/29471
+ * gfortran.texi (BOZ literal constants): Improve documentation
+ and adapt for BOZ changes.
+ * Make-lang.ini (resolve.o): Add target-memory.h dependency.
+ * gfortran.h (gfc_expr): Add is_boz flag.
+ * expr.c: Include target-memory.h.
+ (gfc_check_assign): Support transferring BOZ for real/cmlx.
+ * resolve.c: Include target-memory.h
+ (resolve_ordinary_assign): Support transferring BOZ for real/cmlx.
+ * target-memory.c (gfc_convert_boz): New function.
+ * target-memory.c (gfc_convert_boz): Add prototype.
+ * primary.c (match_boz_constant): Set is_boz, enable F95 error
+ also without -pedantic, and allow for Fortran 2003 BOZ.
+ (match_real_constant): Fix comment.
+ * simplify.c (simplify_cmplx,gfc_simplify_dble,gfc_simplify_float,
+ gfc_simplify_real): Support Fortran 2003 BOZ.
+
+2007-12-08 Jakub Jelinek <jakub@redhat.com>
+
+ PR fortran/34359
+ * gfortran.h (gfc_file): Remove sibling and down fields.
+ * scanner.c (file_changes, file_changes_cur, file_changes_count,
+ file_changes_allocated): New variables.
+ (add_file_change, report_file_change): New functions.
+ (change_file): Remove.
+ (gfc_start_source_files, gfc_end_source_files): Call
+ report_file_change instead of change_file.
+ (gfc_advance_line): Call report_file_change instead of change_file,
+ call it even if lb->file == lb->next->file.
+ (get_file): Revert last changes.
+ (preprocessor_line): Call add_file_change when entering or leaving
+ a file.
+ (load_file): Likewise. Set file_change[...].lb for all newly added
+ file changes.
+
+2007-12-06 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34333
+ * primary.c (match_boz_constant): Add gfc_notify_std diagnostics.
+
+2007-12-06 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/34335
+ * module.c (find_symbol): Do not return symtrees with unique
+ names, which shows that they are private.
+
+2007-12-05 Jakub Jelinek <jakub@redhat.com>
+
+ PR debug/33739
+ * gfortran.h (gfc_file): Remove included_by field, add sibling and
+ down.
+ (gfc_start_source_files, gfc_end_source_files): New prototypes.
+ * parse.c (gfc_parse_file): Call gfc_start_source_files and
+ gfc_end_source_files instead of calling the debugging hooks directly.
+ * error.c (show_locus): Use up field instead of included_by.
+ * scanner.c (change_file, gfc_start_source_files,
+ gfc_end_source_files): New functions.
+ (gfc_advance_line): Call change_file instead of calling debug hooks
+ directly.
+ (get_file): Set up rather than included_by. Initialize down and
+ sibling.
+ (preprocessor_line, load_file): Don't set up field here.
+
+2007-12-05 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34333
+ * arith.h (gfc_compare_expr): Add operator argument, needed
+ for compare_real.
+ * arith.c (gfc_arith_init_1): Use mpfr_min instead of mpfr_cmp/set
+ to account for NaN.
+ (compare_real): New function, as mpfr_cmp but takes NaN into account.
+ (gfc_compare_expr): Use compare_real.
+ (compare_complex): Take NaN into account.
+ (gfc_arith_eq,gfc_arith_ne,gfc_arith_gt,gfc_arith_ge,gfc_arith_lt,
+ gfc_arith_le): Pass operator to gfc_compare_expr.
+ * resolve.c (compare_cases,resolve_select): Pass operator
+ to gfc_compare_expr.
+ * simplify.c (simplify_min_max): Take NaN into account.
+
+2007-12-04 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34318
+ * module.c (mio_gmp_real): Properly write NaN and Infinity.
+
+2007-12-02 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34186
+ * symbol.c (generate_isocbinding_symbol): Fix setting string length.
+
+2007-11-30 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34133
+ * match.h: Add bool allow_binding_name to gfc_match_bind_c.
+ * decl.c (match_attr_spec,gfc_match_bind_c_stmt,gfc_match_entry):
+ Adjust accordingly.
+ (gfc_match_bind_c): Add allow_binding_name argument, reject
+ binding name for dummy arguments.
+ (gfc_match_suffix,gfc_match_subroutine): Make use of
+ allow_binding_name.
+
+2007-11-30 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34186
+ * symbol.c (generate_isocbinding_symbol): Set string length.
+ * dump-parse-tree.c (gfc_show_attr): Show BIND(C) attribute.
+ * misc.c (gfc_basic_typename): Handle BT_VOID.
+
+2007-11-29 Steven G. Kargl <kargls@comcast.net>
+
+ PR fortran/34230
+ * fortran/arith.c (gfc_check_real_range): Set intermediate values
+ to +-Inf and 0 when -fno-range-check is in effect.
+ * fortran/invoke.texi: Improve -fno-range-check description.
+
+ PR fortran/34203
+ * fortran/invoke.texi: Document the C escaped characters activated
+ by -fbackslash.
+
+2007-11-29 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34248
+ * trans-decl.c (generate_dependency_declarations): Check
+ for NULL pointers before accessing the string length.
+
+2007-11-29 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34262
+ * intrinsic.c (gfc_get_intrinsic_sub_symbol): Add comment.
+ (gfc_intrinsic_sub_interface): Copy elemental state if needed.
+ * iresolve.c (gfc_resolve_mvbits): Mark procedure as elemental.
+
+2007-11-28 Jakub Jelinek <jakub@redhat.com>
+
+ * trans-expr.c (gfc_trans_string_copy): Convert both dest and
+ src to void *.
+
+ PR fortran/34247
+ * trans-openmp.c (gfc_omp_privatize_by_reference): For REFERENCE_TYPE
+ pass by reference only PARM_DECLs or non-artificial decls.
+
+2007-11-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/32928
+ * decl.c (match_data_constant): Use gfc_match_init_expr to match the
+ array spec and set the initializer expression.
+
+2007-11-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/34227
+ * match.c (gfc_match_common): Add additional check for BLOCK DATA.
+
+2007-11-27 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/29389
+ *resolve.c (resolve_ordinary_assign): Use find_sym_in_expr to
+ test if a temporary should be written for a vector subscript
+ on the lhs.
+
+ PR fortran/33850
+ * restore.c (pure_stmt_function): Add prototype and new
+ function. Calls impure_stmt_fcn.
+ (pure_function): Call it.
+ (impure_stmt_fcn): New function.
+
+ * expr.c (gfc_traverse_expr): Call *func for all expression
+ types, not just variables. Add traversal of character lengths,
+ iterators and component character lengths and arrayspecs.
+ (expr_set_symbols_referenced): Return false if not a variable.
+ * trans-stmt.c (forall_replace, forall_restore): Ditto.
+ * resolve.c (forall_index): Ditto.
+ (sym_in_expr): New function.
+ (find_sym_in_expr): Rewrite to traverse expression calling
+ sym_in_expr.
+ *trans-decl.c (expr_decls): New function.
+ (generate_expr_decls): Rewrite to traverse expression calling
+ expr_decls.
+ *match.c (check_stmt_fcn): New function.
+ (recursive_stmt_fcn): Rewrite to traverse expression calling
+ check_stmt_fcn.
+
+2007-11-27 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/33541
+ *interface.c (compare_actual_formal): Exclude assumed size
+ arrays from the possibility of scalar to array mapping.
+ * decl.c (get_proc_name): Fix whitespace problem.
+
+ PR fortran/34231
+ * gfortran.h : Add 'use_rename' bit to symbol_attribute.
+ * module.c : Add 'renamed' field to pointer_info.u.rsym.
+ (load_generic_interfaces): Add 'renamed' that is set after the
+ number_use_names is called. This is used to set the attribute
+ use_rename, which, in its turn identifies those symbols that
+ have not been renamed.
+ (load_needed): If pointer_info.u.rsym->renamed is set, then
+ set the use_rename attribute of the symbol.
+ (read_module): Correct an erroneous use of use_flag. Use the
+ renamed flag and the use_rename attribute to determine which
+ symbols are not renamed.
+
+2007-11-26 Steven G. Kargl <kargls@comcast.net>
+
+ PR fortran/34203
+ * options.c: Change default behavior of backslash processing.
+ * invoke.texi: Update documentation.
+
+2007-11-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/33152
+ * decl.c (add_init_expr_to_sym): Remove error message.
+ * resolve.c (check_data_variable): Add new check for a data variable
+ that has an array spec, but no ref and issue an error.
+ * match.c (gfc_match_common): Remove error message.
+
+2007-11-25 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34079
+ * trans-types.c (gfc_return_by_reference,
+ gfc_get_function_type): Do not return result of
+ character-returning bind(C) functions as argument.
+ * trans-expr.c (gfc_conv_function_call): Ditto.
+
+2007-11-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/34175
+ * gfortran.texi: Document default forms assumed for various file
+ extensions.
+
+2007-11-25 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/33499
+ * decl.c (get_proc_name): If ENTRY statement occurs before type
+ specification, set the symbol untyped and ensure that it is in
+ the procedure namespace.
+
+2007-11-24 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/33541
+ * module.c (find_symtree_for_symbol): Move to new location.
+ (find_symbol): New function.
+ (load_generic_interfaces): Rework completely so that symtrees
+ have the local name and symbols have the use name. Renamed
+ generic interfaces exclude the use of the interface without an
+ ONLY clause (11.3.2).
+ (read_module): Implement 11.3.2 in the same way as for generic
+ interfaces.
+
+2007-11-23 Christopher D. Rickett <crickett@lanl.gov>
+
+ * trans-common.c (build_common_decl): Fix the alignment for
+ BIND(C) common blocks.
+
+2007-11-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/34209
+ * iresolve.c (gfc_resolve_nearest): If sign variable kind does not match
+ kind of input variable, convert it to match.
+
+ PR fortran/33317
+ * trans.h: Modify prototype for gfc_conv_missing_dummy.
+ * trans-expr.c (gfc_conv_missing_dummy): Modify to pass an integer kind
+ parameter in. Set the type of the dummy to the kind given.
+ (gfc_conv_function_call): Pass representation.length to
+ gfc_conv_missing_dummy.
+ * iresolve.c (gfc_resolve_cshift): Determine the correct kind to use and
+ if appropriate set representation.length to this kind value.
+ (gfc_resolve_eoshift): Likewise.
+ * check.c (gfc_check_cshift): Enable dim_check to allow DIM as an
+ optional argument. (gfc_check_eoshift): Likewise.
+ * trans_intrinsic.c (gfc_conv_intrinsic_function_args): Update call to
+ gfc_conv_missing_dummy.
+
+2007-11-23 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34187
+ * module.c (load_needed): Ensure binding_label is not lost.
+
+ * decl.c (set_binding_label,gfc_match_bind_c): Replace
+ strncpy by strcpy.
+
+2007-11-23 Tobias Burnus <burnus@net-b.de>
+ Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/34192
+ * simplify.c (gfc_simplify_nearest): Fix NEAREST for
+ subnormal numbers.
+
+2007-11-23 Aldy Hernandez <aldyh@redhat.com>
+
+ * trans-expr.c (gfc_trans_string_copy): Use "void *" when building a
+ memset.
+
+2007-11-22 Tobias Burnus <burnus@net-b.de>
+
+ * primary.c (gfc_match_structure_constructor): Allow
+ constructor for types without components.
+
+2007-11-22 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34079
+ * trans-expr.c (gfc_conv_function_call): Do not append
+ string length arguments when calling bind(c) procedures.
+ * trans-decl.c (create_function_arglist): Do not append
+ string length arguments when declaring bind(c) procedures.
+
+2007-11-21 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/34083
+ * resolve.c (resolve_structure_cons): Also check for zero rank.
+
+2007-11-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/33317
+ * trans-expr.c (gfc_conv_missing_dummy): Revert.
+ * iresolve.c (gfc_resolve_cshift): Revert.
+ (gfc_resolve_eoshift): Likewise.
+ * check.c (gfc_check_cshift): Revert.
+ (gfc_check_eoshift): Likewise.
+
+2007-11-19 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34079
+ * decl.c (gfc_match_entry): Support BIND(C).
+ (gfc_match_subroutine): Fix comment typo.
+
+2007-11-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/33317
+ * trans-expr.c (gfc_conv_missing_dummy): Set the type of the dummy
+ argument to default integer if flagged to do so. Fix typo in comment.
+ * resolve.c (gfc_resolve_dim_arg): Whitespace cleanup.
+ * iresolve.c (gfc_resolve_cshift): Do not convert type, mark attribute
+ for converting the DIM type appropriately in trans-expr.c.
+ (gfc_resolve_eoshift): Likewise.
+ * check.c (dim_check): Remove pre-existing dead code.
+ (gfc_check_cshift): Enable dim_check to allow DIM as an optional.
+ (gfc_check_eoshift): Likewise.
+ * trans_intrinsic.c (gfc_conv_intrinsic_function_args): Fix whitespace.
+
+2007-11-18 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31608
+ * trans-array.c (gfc_conv_expr_descriptor): Remove exception
+ for indirect references in the call to gfc_trans_scalar_assign.
+ * trans-expr.c (gfc_conv_string_parameter): Instead of asserting
+ that the expression is not an indirect reference, cast it to a
+ pointer type of the length given by se->string_length.
+
+2007-11-18 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34137
+ * primary.c (match_variable): Reject non-result entry symbols.
+ * resolve.c (resolve_contained_fntype): Do not check entry master
+ functions.
+
+2007-11-17 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * trans-types.c (gfc_init_types): Use wider buffer.
+
+2007-11-17 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * trans-types.c (gfc_init_types): Use Fortran-90-style type
+ names, with kinds.
+
+2007-11-17 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34133
+ * decl.c (gfc_match_suffix,gfc_match_subroutine): Disallow
+ bind(c) attribute for internal procedures.
+
+2007-11-17 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/25252
+ * interface.c (gfc_current_interface_head,
+ gfc_set_current_interface_head): New functions.
+ * decl.c (gfc_match_modproc): Move check for syntax error earlier.
+ On syntax error, restore previous state of the interface.
+ * gfortran.h (gfc_current_interface_head,
+ gfc_set_current_interface_head): New prototypes.
+
+2007-11-17 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/30285
+ * module.c (struct written_common, written_commons): New structure.
+ (compare_written_commons, free_written_common, write_common_0):
+ New functions.
+ (write_common): Call recursive function write_common_0.
+
+2007-11-17 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/34108
+ * io.c (check_format_string): Only check character expressions.
+ (match_dt_format): Return MATCH_ERROR if that is what
+ gfc_match_st_label said.
+
+2007-11-16 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33957
+ * expr.c (check_inquiry): Don't call gfc_error now.
+
+2007-11-16 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33739
+ PR fortran/34084
+ * scanner.c (start_source_file, end_source_file,
+ exit_remaining_files, gfc_advance_line): Revert rev. 130016.
+
+2007-11-16 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/34008
+ * trans-stmt.c (gfc_conv_elemental_dependencies): Add check for
+ INTENT_INOUT as well as INTENT_OUT.
+ (gfc_trans_call): Remove redundant gcc_asserts in dependency
+ check.
+
+2007-11-16 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/33986
+ * trans-array.c (gfc_conv_array_parameter ): Allow allocatable
+ function results.
+
+2007-11-15 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/33917
+ * decl.c (match_procedure_decl): Pre-resolve interface.
+ * resolve.c (resolve_symbol): Reject interfaces later
+ declared in procedure statements.
+
+2007-11-13 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/33162
+ * decl.c (match_procedure_decl): Remove TODO and allow intrinsics in
+ PROCEDURE declarations. Set attr.untyped to allow the interface to be
+ resolved later where the symbol type will be set.
+ * interface.c (compare_intr_interfaces): Remove static from pointer
+ declarations. Add type and kind checks for dummy function arguments.
+ (compare_actual_formal_intr): New function to compare an actual
+ argument with an intrinsic function. (gfc_procedures_use): Add check for
+ interface that points to an intrinsic function, use the new function.
+ * resolve.c (resolve_specific_f0): Resolve the intrinsic interface.
+ (resolve_specific_s0): Ditto.
+
+2007-11-13 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/34080
+ * iresolve.c (gfc_resolve_transfer): Do not try to convert
+ to a constant MOLD expression, if it is an assumed size
+ dummy.
+
+2007-11-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * trans-common.c: Remove prototype for gfc_get_common.
+
+2007-11-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33592
+ * trans.c (gfc_call_realloc): Fix the logic and rename variables.
+
+2007-11-08 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33739
+ * scanner.c (start_source_file, end_source_file,
+ exit_remaining_files): New functions.
+ (gfc_advance_line): Use the new functions.
+
+2007-11-08 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/34028
+ * trans-intrinsic.c (gfc_conv_intrinsic_ishft): Use correct type.
+
+2007-11-08 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/33917
+ * interface.c (check_sym_interfaces): Disallow PROCEDURE-declared
+ procedures for MODULE PROCEDURE.
+ * decl.c (match_procedure_in_interface): Do not mark as procedure.
+
+2007-11-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33881
+ * trans-array.c (gfc_conv_array_parameter): Evaluate
+ se->string_length instead of the expr->ts.cl->backend_decl.
+
+2007-11-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * gfortran.h: Shorten comment.
+ * trans-types.c (gfc_get_function_type): Allow argument to have
+ flavor FL_PROGRAM.
+ * trans-decl.c (gfc_sym_mangled_function_id): Mangle main program
+ name into MAIN__.
+ (build_function_decl): Fix comment.
+ * parse.c (main_program_symbol): Give the main program its proper
+ name, if any. Set its flavor to FL_PROGRAM.
+ (gfc_parse_file): Likewise.
+
+2007-11-02 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * intrinsic.texi (ALLOCATED): Fix typo.
+
+2007-10-31 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/33941
+ * modules.c (intrinsics): Use only alphabetic names for
+ intrinsic operators.
+
+2007-10-31 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/33162
+ * interface.c (compare_intr_interfaces): New function to check intrinsic
+ function arguments against formal arguments. (compare_interfaces): Fix
+ logic in comparison of function and subroutine attributes.
+ (compare_parameter): Use new function for intrinsic as argument.
+ * resolve.c (resolve_actual_arglist): Allow an intrinsic without
+ function attribute to be checked further. Set function attribute if
+ intrinsic symbol is found, return FAILURE if not.
+
+2007-10-31 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/33897
+ * decl.c (gfc_match_entry): Do not make ENTRY name
+ global for contained procedures.
+ * parse.c (gfc_fixup_sibling_symbols): Fix code for
+ determining whether a procedure is external.
+
+2007-10-30 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33596
+ * trans-intrinsic.c (gfc_conv_intrinsic_isnan): Strip NOP_EXPR
+ from the result of build_call_expr.
+
+2007-10-29 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31217
+ PR fortran/33811
+ PR fortran/33686
+
+ * trans-array.c (gfc_conv_loop_setup): Send a complete type to
+ gfc_trans_create_temp_array if the temporary is character.
+ * trans-stmt.c (gfc_trans_assign_need_temp): Do likewise for
+ allocate_temp_for_forall_nest.
+ (forall_replace): New function.
+ (forall_replace_symtree): New function.
+ (forall_restore): New function.
+ (forall_restore_symtree): New function.
+ (forall_make_variable_temp): New function.
+ (check_forall_dependencies): New function.
+ (cleanup_forall_symtrees): New function.
+ gfc_trans_forall_1): Add and initialize pre and post blocks.
+ Call check_forall_dependencies to check for all dependencies
+ and either trigger second forall block to copy temporary or
+ copy lval, outside the forall construct and replace all
+ dependent references. After assignment clean-up and coalesce
+ the blocks at the end of the function.
+ * gfortran.h : Add prototypes for gfc_traverse_expr and
+ find_forall_index.
+ expr.c (gfc_traverse_expr): New function to traverse expression
+ and visit all subexpressions, under control of a logical flag,
+ a symbol and an integer pointer. The slave function is caller
+ defined and is only called on EXPR_VARIABLE.
+ (expr_set_symbols_referenced): Called by above to set symbols
+ referenced.
+ (gfc_expr_set_symbols_referenced): Rework of this function to
+ use two new functions above.
+ * resolve.c (find_forall_index): Rework with gfc_traverse_expr,
+ using forall_index.
+ (forall_index): New function used by previous.
+ * dependency.c (gfc_check_dependency): Use gfc_dep_resolver for
+ all references, not just REF_ARRAY.
+ (gfc_dep_resolver): Correct the logic for substrings so that
+ overlapping arrays are handled correctly.
+
+2007-10-28 Tobias Schlüter <tobi@gcc.gnu.org>
+
+ PR fortran/32147
+ * module.c (write_symbol): Fix whitespace.
+ (write_symbol0): Walk symtree from left-to-right instead
+ breadth-first.
+ (write_symbol1): Similarly change walk of pointer info tree.
+ (write_module): Insert linebreak.
+ * symbol.c (gfc_traverse_symtree): Change to left-to-right order.
+ (traverse_ns): Likewise.
+
+2007-10-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/31306
+ * decl.c (char_len_param_value): Add check for conflicting attributes of
+ function argument.
+
+2007-10-27 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/33862
+ * lang-specs.h: Support .ftn and .FTN extension, use CPP for .FOR.
+ * options.c (form_from_filename): Support .ftn extension.
+ * gfortran.texi: Document support of .for and .ftn file extension.
+
+2007-10-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/33162
+ * intrinsic.h: Add prototypes for four new functions, gfc_check_datan2,
+ gfc_check_dprod, gfc_check_fn_d, and gfc_check_x_yd.
+ * intrinsic.c (add_functions): Add double precision checks for dabs,
+ dacos, dacosh, dasin, dasinh, datan, datanh, datan2, dbesj0, dbesj1,
+ dbesy0, dbesy1, dcos, dcosh, ddim, derf, derfc, dexp, dgamma,
+ dlgama, dlog, dlog10, dmod, dsign, dsin, dsinh, dsqrt, dtan, and dtanh.
+ Add real check dprod.
+ * check.c (gfc_check_datan2): New function to check for double precision
+ argumants. (gfc_check_dprod, gfc_check_fn_d, and gfc_check_x_yd): Ditto.
+
+2007-10-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ * invoke.texi: Fix typo in -fmax-errors=.
+
+2007-10-26 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/29784
+ * gfortran.texi: Document that there is no logical/integer
+ conversion performed during I/O operations.
+
+2007-10-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/33849
+ * resolve.c (resolve_actual_arglist): Fix error message text.
+
+2007-10-22 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/31244
+ * gfortran.h (gfc_data_value): Change repeat from unsigned int
+ to mpz_t.
+ * decl.c(top_val_list): Remove msg variable. Use mpz_t for
+ repeat count.
+ * resolve.c (values): Change left from unsigned int to mpz_t.
+ (next_data_value): Change for mpz_t.
+ (check_data_variable): Change ??? to FIXME in a comment. Use
+ "mpz_t left".
+ (resolve_data ): Use "mpz_t left".
+
+2007-10-21 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/33749
+ * resolve.c (resolve_ordinary_assign): New function that takes
+ the code to resolve an assignment from resolve_code. In
+ addition, it makes a temporary of any vector index, on the
+ lhs, using gfc_get_parentheses.
+ (resolve_code): On EXEC_ASSIGN call the new function.
+
+2007-10-20 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/33818
+ * resolve.c (resolve_variable): Check that symbol is in the same
+ namespace as the entry function.
+
+2007-10-20 Paul Thomas <pault@gcc.gnu.org>
+ FX Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31608
+ * trans-array.c (gfc_conv_expr_descriptor): For all except
+ indirect references, use gfc_trans_scalar_assign instead of
+ gfc_add_modify_expr.
+ * iresolve.c (check_charlen_present): Separate creation of cl
+ if necessary and add code to treat an EXPR_ARRAY.
+ (gfc_resolve_char_achar): New function.
+ (gfc_resolve_achar, gfc_resolve_char): Call it.
+ (gfc_resolve_transfer): If the MOLD expression does not have a
+ character length expression, get it from a constant length.
+
+2007-10-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/33544
+ * simplify.c (gfc_simplify_transfer): Only warn for short transfer when
+ -Wsurprising is given.
+ * invoke.texi: Document revised behavior.
+
+2007-10-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/33795
+ * gfortran.texi: Document GFORTRAN_UNBUFFERED_PRECONNECTED
+ environment variable. Delete mention of environment variable
+ GFORTRAN_UNBUFFERED_n.
+
+2007-10-18 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/33233
+ * resolve.c (check_host_association): Check singly contained
+ namespaces and start search for symbol in current namespace.
+
+2007-10-18 Paul Thomas <pault@gcc.gnu.org>
+ Dominique d'Humieres <dominiq@lps.ens.fr>
+
+ PR fortran/33733
+ * simplify.c (gfc_simplify_transfer): Return null if the source
+ expression is EXPR_FUNCTION.
+
+2007-10-17 Christopher D. Rickett <crickett@lanl.gov>
+
+ PR fortran/33760
+ * symbol.c (gen_special_c_interop_ptr): Remove code to create
+ constructor for c_null_ptr and c_null_funptr with value of 0.
+ * expr.c (check_init_expr): Prevent check on constructors for
+ iso_c_binding derived types.
+ * resolve.c (resolve_structure_cons): Verify that the user isn't
+ trying to invoke a structure constructor for one of the
+ iso_c_binding derived types.
+
+2007-10-15 Christopher D. Rickett <crickett@lanl.gov>
+
+ PR fortran/32600
+ * trans-expr.c (gfc_conv_function_call): Generate code to inline
+ c_associated.
+ * symbol.c (get_iso_c_sym): Preserve from_intmod and intmod_sym_id
+ attributes in the resolved symbol.
+ * resolve.c (gfc_iso_c_sub_interface): Remove dead code.
+
+2007-10-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/33055
+ * trans-io.c (create_dummy_iostat): New function to create a unique
+ dummy variable expression to use with IOSTAT.
+ (gfc_trans_inquire): Use the new function to pass unit number error info
+ to run-time library if a regular IOSTAT variable was not given.
+
+2007-10-14 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/33745
+ * trans-array.c (gfc_conv_ss_startstride): Fix dimension check.
+ (gfc_trans_array_bound_check, gfc_conv_array_ref,
+ gfc_conv_ss_startstride): Simplify error message.
+ * resolve.c (check_dimension): Fix dimension-type switch;
+ improve error message.
+
+2007-10-13 Tobias Schlüter <tobi@gcc.gnu.org>
+ Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/33254
+ PR fortran/33727
+ * trans-array.c (get_array_ctor_var_strlen): Check upper bound for
+ constness instead of lower bound.
+ (get_array_ctor_strlen): Add bounds-checking code.
+
+2007-10-12 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/33542
+ * resolve.c (resolve_actual_arglist): If the actual argument is
+ ambiguous, then there is an error.
+
+2007-10-12 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/33664
+ * expr.c (gfc_specification_expr): If a function is not
+ external, intrinsic or pure is an error. Set the symbol pure
+ to prevent repeat errors.
+
+2007-10-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33636
+ * expr.c (find_array_section): Check for constructor constantness.
+
+2007-10-08 Tobias Schlüter <tobi@gcc.gnu.org>
+
+ PR fortran/33689
+ * resolve.c (gfc_resolve_expr): Fix indentation.
+ (resolve_fl_variable_derived): Rename argument.
+ (resolve_fl_variable): Fix case in message. Clarify logic.
+ Correctly simplify array bounds.
+
+2007-10-07 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR libfortran/33683
+ * mathbuiltins.def (GAMMA): Change function name to
+ "tgamma" instad of "gamma".
+
+2007-10-07 Tobias Schlüter <tobi@gcc.gnu.org>
+
+ PR fortran/20851
+ * expr.c (check_inquiry): Typo fix in error message.
+ (check_init_expr): Same * 3.
+ (check_restricted): Verify that no dummy arguments appear in
+ restricted expressions in ELEMENTAL procedures.
+ * resolve.c (resolve_fl_variable): Exchange order of checks to
+ avoid side-effect.
+
+2007-10-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/33609
+ * simplify.c (range_check): Return gfc_bad_expr if incoming expression
+ is NULL.
+
+2007-10-06 Tobias Schlüter <tobi@gcc.gnu.org>
+
+ * simplify.c (gfc_simplify_size): Fix typo.
+
+2007-10-06 Tobias Schlüter <tobi@gcc.gnu.org>
+
+ PR fortran/25076
+ * resolve.c (gfc_find_forall_index): Move towards top,
+ renaming to ...
+ (find_forall_index): ... this. Add check for NULL expr.
+ (resolve_forall_iterators): Verify additional constraint.
+ (resolve_forall): Remove checks obsoleted by new code in
+ resolve_forall_iterators.
+
+2007-10-05 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * gfortran.h (gfc_get_data_variable, gfc_get_data_value,
+ gfc_get_data): Move to decl.c.
+ (global_used): Rename into gfc_global_used.
+ (gfc_formalize_init_value, gfc_get_section_index,
+ gfc_assign_data_value, gfc_assign_data_value_range,
+ gfc_advance_section): Move to data.h.
+ (gfc_set_in_match_data): Remove.
+ * decl.c (gfc_get_data_variable, gfc_get_data_value,
+ gfc_get_data): Move here.
+ (gfc_set_in_match_data): Rename into set_in_match_data.
+ (gfc_match_data): Likewise.
+ (add_global_entry): Rename global_used into gfc_global_used.
+ * data.c: Include data.h.
+ * trans.h (gfc_todo_error): Remove.
+ * trans-array.c (gfc_trans_array_constructor,
+ gfc_conv_ss_startstride, gfc_conv_loop_setup): Change
+ gfc_todo_error into assertions.
+ * resolve.c (resolve_global_procedure): Rename global_used into
+ gfc_global_used.
+ * parse.c (gfc_global_used, parse_module, add_global_procedure,
+ add_global_program): Likewise.
+ * trans-intrinsic.c (gfc_walk_intrinsic_function): Rename
+ global_used into gfc_global_used.
+ * Make-lang.in: Add dependencies on fortran/data.h.
+ * data.h: New file.
+
+2007-10-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33529
+ * decl.c (match_char_kind): New function.
+ (match_char_spec): Use match_char_kind.
+
+2007-10-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33502
+ * scanner.c (gfc_advance_line): Call debug_hooks->end_source_file
+ and debug_hooks->start_source_file when appropriate, and set
+ dbg_emitted.
+ (gfc_define_undef_line): New function.
+ (load_file): Don't error out on #define and #undef lines.
+ * parse.c (next_statement): Call gfc_define_undef_line.
+ (gfc_parse_file): Call debug_hooks->start_source_file and
+ debug_hooks->end_source_file for the main source file if
+ required.
+ * gfortran.h (gfc_linebuf): Add dbg_emitted field.
+ (gfc_define_undef_line): New prototype.
+
+2007-10-04 Tobias Schlüter <tobi@gcc.gnu.org>
+
+ PR fortran/33626
+ * resolve.c (resolve_operator): Always copy the type for
+ expressions in parentheses.
+
+2007-10-04 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/33646
+ PR fortran/33542
+ * interface.c (check_interface1): Revert patch of 10-02.
+
+2007-10-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/26682
+ * trans-decl.c (build_function_decl): Set "externally_visible"
+ attribute on the MAIN program decl.
+
+2007-10-03 Tobias Schlüter <tobi@gcc.gnu.org>
+
+ PR fortran/33198
+ * resolve.c (has_default_initializer): Move to top. Make bool.
+ (resolve_common_blocks): Simplify logic. Add case for derived
+ type initialization.
+ (resolve_fl_variable_derived): Split out from ...
+ (resolve_fl_variable): ... here, while adapting to new h_d_i
+ interface.
+
+2007-10-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/26682
+ * options.c (gfc_post_options): Issue an error when
+ -fwhole-program is used.
+
+2007-10-02 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/33542
+ * interface.c (check_interface1): Specific procedures are
+ always ambiguous if they have the same name.
+
+2007-10-02 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/33566
+ * primary.c (gfc_match_rvalue): Make all expressions with array
+ references to structure parameters into variable expressions.
+
+2007-10-02 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/33554
+ * trans-decl.c (init_intent_out_dt): New function.
+ (gfc_trans_deferred_vars): Remove the code for default
+ initialization of INTENT(OUT) derived types and put it
+ in the new function. Call it earlier than before, so
+ that array offsets and lower bounds are available.
+
+2007-10-02 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/33550
+ * decl.c (get_proc_name): Return rc if rc is non-zero; ie. if
+ the name is a reference to an ambiguous symbol.
+
+2007-10-02 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31154
+ PR fortran/31229
+ PR fortran/33334
+ * decl.c : Declare gfc_function_kind_locs and
+ gfc_function_type_locus.
+ (gfc_match_kind_spec): Add second argument kind_expr_only.
+ Store locus before trying to match the expression. If the
+ current state corresponds to a function declaration and there
+ is no match to the expression, read to the parenthesis, return
+ kind = -1, dump the expression and return.
+ (gfc_match_type_spec): Renamed from match_type_spec and all
+ references changed. If an interface or an external function,
+ store the locus, set kind = -1 and return. Otherwise, if kind
+ is already = -1, use gfc_find_symbol to try to find a use
+ associated or imported type.
+ match.h : Prototype for gfc_match_type_spec.
+ * parse.c (match_deferred_characteristics): New function.
+ (parse_spec): If in a function, statement is USE or IMPORT
+ or DERIVED_DECL and the function kind=-1, call
+ match_deferred_characteristics. If kind=-1 at the end of the
+ specification expressions, this is an error.
+ * parse.h : Declare external gfc_function_kind_locs and
+ gfc_function_type_locus.
+
+2007-09-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * module.c (mio_expr): Avoid -Wcast-qual warning.
+
+2007-09-27 Tobias Schlüter <tobi@gcc.gnu.org>
+
+ * arith.c (reduce_binary_aa): Fix capitalization.
+ * check.c (gfc_check_dot_product): Likewise.
+ (gfc_check_matmul): Likewise.
+ * expr.c (gfc_check_conformance): Likewise.
+ (gfc_check_assign): Likewise.
+ (gfc_default_initializer): Simplify logic.
+ * trans.c (gfc_msg_bounds): Make const.
+ (gfc_msg_fault): Likewise.
+ (gfc_msg_wrong_return): Likewise.
+ * trans.h: Add const to corresponding extern declarations.
+
+2007-09-27 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/33568
+ * trans-intrinsic.c (gfc_conv_intrinsic_aint): Allow for the
+ possibility of the optional KIND argument by making arg
+ an array, counting the number of arguments and using arg[0].
+
+2007-09-26 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/30780
+ * invoke.texi: Add note to -ffpe-trap option. Fix typos.
+
+2007-09-23 Tobias Schlüter <tobi@gcc.gnu.org>
+
+ PR fortran/33269
+ * io.c (check_format_string): Move NULL and constant checks into
+ this function.
+ (check_io_constraints): Call gfc_simplify_expr() before calling
+ check_format_string(). Remove NULL and constant checks.
+
+2007-09-24 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33538
+ * scanner.c, parse.c, gfortran.h: Revert revision 128671.
+
+2007-09-23 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33528
+ * scanner.c (preprocessor_line): Call linemap_add when exiting
+ a file.
+ (gfc_new_file): Adjust debug code for USE_MAPPED_LOCATION.
+
+2007-09-22 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33522
+ * trans-types.c (gfc_get_desc_dim_type): Mark artificial
+ variables with TREE_NO_WARNING.
+ (gfc_get_array_descriptor_base): Likewise.
+
+2007-09-22 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/33337
+ PR fortran/33376
+ * trans-decl.c (gfc_create_module_variable): Output
+ derived type parameters.
+ * arith.c (gfc_parentheses): Return the argument if
+ it is a constant expression.
+ * primary.c (gfc_match_rvalue): Remove the clearing of
+ the module name and the use_assoc attribute for derived
+ type parameter expressions.
+
+2007-09-22 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33502
+ * scanner.c (gfc_advance_line): Call debug_hooks->start_source_file
+ and debug_hooks->end_source_file when entering and exiting
+ included files.
+ (gfc_define_undef_line): New function.
+ (load_file): Ignore #define and #undef preprocessor lines
+ while reading source files.
+ * parse.c (next_statement): Handle #define and #undef
+ preprocessor lines.
+ (gfc_parse_file): Call debug_hooks->start_source_file and
+ debug_hooks->end_source_file for the main source file if
+ requested by the debug format.
+ * gfortran.h (gfc_define_undef_line): Add prototype.
+
+2007-09-22 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/33445
+ * scanner.c (skip_free_comments): Warn if !$OMP& is used
+ if no OpenMP directive is to be continued.
+
+2007-09-21 Paul Thomas <pault@gcc.gnu.org>
+
+ *trans-expr.c (gfc_trans_pointer_assignment): Convert array
+ descriptor for subref pointer assignements, rather than using
+ the loop info version.
+
+2007-09-21 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/33037
+ * simplify.c (gfc_simplify_transfer): Warn if source size
+ is smaller than result size.
+
+2007-09-20 Asher Langton <langton2@llnl.gov>
+
+ PR fortran/20441
+ * gfortran.h : Add init_local_* enums and init_flag_* flags to
+ gfc_option_t.
+ * lang.opt: Add -finit-local-zero, -finit-real, -finit-integer,
+ -finit-character, and -finit-logical flags.
+ * invoke.texi: Document new options.
+ * resolve.c (build_init_assign): New function.
+ (apply_init_assign): Move part of function into build_init_assign.
+ (build_default_init_expr): Build local initializer (-finit-*).
+ (apply_default_init_local): Apply local initializer (-finit-*).
+ (resolve_fl_variable): Try to add local initializer (-finit-*).
+ * options.c (gfc_init_options, gfc_handle_option,
+ gfc_post_options): Handle -finit-local-zero, -finit-real,
+ -finit-integer, -finit-character, and -finit-logical flags.
+
+2007-09-20 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33221
+ * gfortran.h (symbol_attribute): Add zero_comp field.
+ * symbol.c (gfc_use_derived): Handle case of emtpy derived types.
+ * decl.c (gfc_match_data_decl): Likewise.
+ (gfc_match_derived_decl): Likewise.
+ * module.c (ab_attribute, attr_bits): Add AB_ZERO_COMP member.
+ (mio_symbol_attribute): Write and read AB_ZERO_COMP.
+ * resolve.c (resolve_symbol): Handle case of emtpy derived types.
+ * parse.c (parse_derived): Likewise.
+
+2007-09-20 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33288
+ * arith.c (reduce_unary, reduce_binary_ac, reduce_binary_ca,
+ reduce_binary_aa): Call ourselves recursively if an element of
+ the constructor is itself a constant array.
+
+2007-09-20 Tobias Schlüter <tobi@gcc.gnu.org>
+
+ * io.c (resolve_tag_format): New function using code split out
+ and simplified from ...
+ (resolve_tag): ... this function. Simplify logic. Unify
+ IOSTAT, IOLENGTH and SIZE handling.
+
+2007-09-20 Christopher D. Rickett <crickett@lanl.gov>
+
+ PR fortran/33497
+ * resolve.c (gfc_iso_c_func_interface): Use information from
+ subcomponent if applicable.
+
+2007-09-20 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/33325
+ * intrinsic.text: Add documentation of the intrinsic modules.
+ * gfortran.texi: Link to intrinsic-modules section and to
+ the GOMP manual.
+
+2007-09-18 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31119
+ * trans-array.c (gfc_conv_ss_startstride): Only perform bounds
+ checking for optional args when they are present.
+
+2007-09-18 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/33231
+ * resolve.c (resolve_elemental_actual): Check for conformance
+ of intent out/inout dummies.
+
+2007-09-17 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/33106
+ * resolve.c (resolve_symbol): Reject public variable of
+ private derived-types for Fortran 95.
+
+2007-09-17 Tobias Burnus <burnus@net-b.de>
+
+ * resolve.c (resolve_fl_procedure): Allow private dummies
+ for Fortran 2003.
+
+2007-09-17 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * trans-types.c (gfc_get_desc_dim_type): Do not to try
+ emit debug info.
+ (gfc_get_array_descriptor_base): Likewise.
+ (gfc_get_mixed_entry_union): Likewise
+ (gfc_get_derived_type): Set decl location for fields and
+ derived type itself.
+
+2007-09-16 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/29396
+ PR fortran/29606
+ PR fortran/30625
+ PR fortran/30871
+ * trans.h : Add extra argument to gfc_build_array_ref. Rename
+ gfc_conv_aliased_arg to gfc_conv_subref_array_arg. Move
+ prototype of is_aliased_array to gfortran.h and rename it
+ gfc_is_subref_array. Add field span to lang_decl, add a new
+ decl lang specific flag accessed by GFC_DECL_SUBREF_ARRAY_P
+ and a new type flag GFC_DECL_SUBREF_ARRAY_P.
+ * trans.c (gfc_build_array_ref): Add the new argument, decl.
+ If this is a subreference array pointer, use the lang_decl
+ field 'span' to calculate the offset in bytes and use pointer
+ arithmetic to address the element.
+ * trans-array.c (gfc_conv_scalarized_array_ref,
+ gfc_conv_array_ref): Add the backend declaration as the third
+ field, if it is likely to be a subreference array pointer.
+ (gfc_conv_descriptor_dimension, gfc_trans_array_ctor_element,
+ gfc_trans_array_constructor_element, structure_alloc_comps,
+ gfc_conv_array_index_offset): For all other references to
+ gfc_build_array_ref, set the third argument to NULL.
+ (gfc_get_dataptr_offset): New function.
+ (gfc_conv_expr_descriptor): If the rhs of a pointer assignment
+ is a subreference array, then calculate the offset to the
+ subreference of the first element and set the descriptor data
+ pointer to this, using gfc_get_dataptr_offset.
+ trans-expr.c (gfc_get_expr_charlen): Use the expression for the
+ character length for a character subreference.
+ (gfc_conv_substring, gfc_conv_subref_array_arg): Add NULL for
+ third argument in call to gfc_build_array_ref.
+ (gfc_conv_aliased_arg): Rename to gfc_conv_subref_array_arg.
+ (is_aliased_array): Remove.
+ (gfc_conv_function_call): Change reference to is_aliased_array
+ to gfc_is_subref_array and reference to gfc_conv_aliased_arg to
+ gfc_conv_subref_array_arg.
+ (gfc_trans_pointer_assignment): Add the array element length to
+ the lang_decl 'span' field.
+ * gfortran.h : Add subref_array_pointer to symbol_attribute and
+ add the prototype for gfc_is_subref_array.
+ * trans-stmt.c : Add NULL for third argument in all references
+ to gfc_build_array_ref.
+ * expr.c (gfc_is_subref_array): Renamed is_aliased_array.
+ If this is a subreference array pointer, return true.
+ (gfc_check_pointer_assign): If the rhs is a subreference array,
+ set the lhs subreference_array_pointer attribute.
+ * trans-decl.c (gfc_get_symbol_decl): Allocate the lang_decl
+ field if the symbol is a subreference array pointer and set an
+ initial value of zero for the 'span' field.
+ * trans-io.c (set_internal_unit): Refer to is_subref_array and
+ gfc_conv_subref_array_arg.
+ (nml_get_addr_expr): Add NULL third argument to
+ gfc_build_array_ref.
+ (gfc_trans_transfer): Use the scalarizer for a subreference
+ array.
+
+2007-09-13 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ * iresolve.c (resolve_mask_arg): If a mask is an array
+ expression, convert it to kind=1.
+
+2007-09-13 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/33343
+ * expr.c (gfc_check_conformance): Print ranks in the error message.
+ * resolve.c (resolve_elemental_actual): Check also conformance of
+ the actual arguments for elemental functions.
+
+2007-09-13 Tobias Burnus <burnus@net-b.de>
+
+ * symbol.c (gfc_add_elemental,gfc_add_pure,gfc_add_recursive):
+ Allow prefixes only to be specified once.
+
+2007-09-13 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/33412
+ * symbol.c (check_conflict): Add conflict of ELEMENTAL with Bind(C).
+
+2007-09-12 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/33297
+ * check.c (scalar_check): Move up in the file.
+ (kind_check): Call scalar_check.
+ (dim_check): If optional, do not call nonoptional_check; use
+ bool for optional.
+ (gfc_check_all_any,gfc_check_count,gfc_check_cshift,gfc_check_eoshift,
+ gfc_check_lbound,gfc_check_minloc_maxloc,check_reduction,
+ gfc_check_spread,gfc_check_ubound): Use true/false instead of 0/1
+ for dim_check; honor changed meaning of optional.
+ (gfc_check_int): Replace checks by kind_check.
+ (gfc_check_size): Replace checks by dim_check.
+
+2007-09-12 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/33284
+ PR fortran/33310
+ * symbol.c (check_conflict): Add conflict between INTRINSIC and ENTRY
+ and between BIND(C) and PARAMETER.
+
+2007-09-12 Tobias Burnus <burnus@net-b.de>
+
+ * trans-expr.c (gfc_conv_initializer): Fix expr == NULL check.
+
+2007-09-12 Jan Hubicka <jh@suse.cz>
+
+ * f95-lang.c (LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Kill.
+
+2007-09-12 Christopher D. Rickett <crickett@lanl.gov>
+
+ PR fortran/33395
+ * trans-expr.c (gfc_conv_initializer): Remove unnecessary test for
+ intmod_sym_id and use derived symbol to set new kind of C_NULL_PTR
+ and C_NULL_FUNPTR expressions.
+
+2007-09-11 Christopher D. Rickett <crickett@lanl.gov>
+
+ PR fortran/33040
+ * trans-expr.c (gfc_trans_structure_assign): Convert component
+ C_NULL_PTR and C_NULL_FUNPTR component initializers to (void *).
+ * trans-types.c (gfc_get_derived_type): Create a backend_decl for
+ the c_address field of C_PTR and C_FUNPTR and ensure initializer
+ is of proper type/kind for (void *).
+
+2007-09-11 Jan Hubicka <jh@suse.cz>
+
+ * f95-lang.c (gfc_expand_function): Kill.
+ (LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Kill.
+
+2007-09-08 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/31547
+ * gfortran.texi: Document when CPP is called.
+
+ * intrinsic.texi (IOR): Fix typos.
+
+2007-09-10 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/33370
+ * trans-expr.c (copyable_array_p): Add tests that expression
+ is a variable, that it has no subreferences and that it is a
+ full array.
+ (gfc_trans_assignment): Change conditions to suit modifications
+ to copyable_array_p.
+
+2007-09-06 Tom Tromey <tromey@redhat.com>
+
+ * scanner.c (get_file): Update.
+ (load_file): Update.
+ (gfc_next_char_literal): Use gfc_linebuf_linenum.
+ * f95-lang.c (gfc_init): Update.
+ * gfortran.h (gfc_linebuf_linenum): New macro.
+
+2007-09-05 Sandra Loosemore <sandra@codesourcery.com>
+
+ * trans-decl.c (build_entry_thunks): Use set_cfun.
+ (gfc_generate_function_code): Likewise.
+
+2007-09-05 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31564
+ * primary.c (gfc_match_rvalue): Make expressions that refer
+ to derived type parameters that have array references into
+ variable expressions. Remove references to use association
+ from the symbol.
+
+ PR fortran/33241
+ * decl.c (add_init_expr_to_sym): Provide assumed character
+ length parameters with the length of the initialization
+ expression, if a constant, or that of the first element of
+ an array.
+
+2007-09-04 Janus Weil <jaydub66@gmail.com>
+ Paul Thomas <pault@gcc.gnu.org>
+
+ * decl.c (match_procedure_decl,match_procedure_in_interface,
+ gfc_match_procedure): Handle PROCEDURE statements.
+ * gfortran.h (struct gfc_symbol): New member "gfc_symbol *interface".
+ (enum gfc_statement): New element "ST_PROCEDURE".
+ (strcut symbol_attribute): New member "unsigned procedure".
+ * interface.c (check_interface0): Extended error checking.
+ * match.h: Add gfc_match_procedure prototype.
+ * parse.c (decode_statement,next_statement,gfc_ascii_statement,
+ parse_derived,parse_interface): Implement PROCEDURE statements.
+ * resolve.c (resolve_symbol): Ditto.
+ * symbol.c (check_conflict): Ditto.
+ (gfc_add_proc): New function for setting the procedure attribute.
+ (copy_formal_args): New function for copying formal argument lists.
+
+2007-09-03 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * Make-lang.in (gfortranspec.o): Remove SHLIB_MULTILIB.
+
+2007-09-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gfortranspec.c (lang_specific_driver): Use CONST_CAST2.
+ * options.c (gfc_post_options): Supply a TYPE for CONST_CAST.
+ * parse.c (parse_omp_structured_block): Likewise,
+ * st.c (gfc_free_statement): Likewise,
+
+2007-09-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31675
+ * libgfortran.h: New file.
+ * iso-fortran-env.def: Use macros in the new header instead of
+ hardcoded integer constants.
+ * Make-lang.in (F95_PARSER_OBJS, GFORTRAN_TRANS_DEPS): Add
+ fortran/libgfortran.h.
+ * gfortran.h (GFC_STD_*, GFC_FPE_*, options_convert,
+ ioerror_codes): Remove.
+ * trans.c (ERROR_ALLOCATION): Remove.
+ (gfc_call_malloc, gfc_allocate_with_status,
+ gfc_allocate_array_with_status): Use LIBERROR_ALLOCATION.
+ * trans-types.h (GFC_DTYPE_*): Remove.
+ * trans-decl.c (gfc_generate_function_code): Use
+ GFC_CONVERT_NATIVE instead of CONVERT_NATIVE.
+ * trans-io.c (set_parameter_value, set_parameter_ref): Use
+ LIBERROR_* macros instead of IOERROR_ macros.
+ * trans-intrinsic.c (gfc_conv_intrinsic_function): Use
+ LIBERROR_END and LIBERROR_EOR instead of hardcoded constants.
+ * options.c (gfc_init_options): Use GFC_CONVERT_NATIVE instead of
+ CONVERT_NATIVE.
+ (gfc_handle_option): Use GFC_CONVERT_* macros instead of CONVERT_*.
+
+2007-09-02 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * invoke.texi: Fix the -frange-checking option entry.
+
+2007-09-02 Roger Sayle <roger@eyesopen.com>
+
+ * decl.c (match_string_p): New helper function to explicitly match
+ a string of characters.
+ (match_attr_spec): Remove no longer needed DECL_COLON from decl_types.
+ Delete decls array and peek_char. Rewrite decl attribute parser to
+ avoid calling gfc_match_strings.
+ * match.c (gfc_match_strings): Delete unused function.
+ * match.h (gfc_match_strings): Delete prototype.
+
+2007-09-02 Tobias Schlüuter <tobi@gcc.gnu.org>
+
+ * dump-parse-tree.c (show_char_const): New function.
+ (gfc_show_expr): Use it.
+ * expr.c (find_substring_ref): Rework to not keep characters
+ dangling beyond end of string.
+
+2007-09-02 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR fortran/33276
+ * array.c (expand_iterator): Initialize frame.prev.
+
+2007-08-31 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/33232
+ * io.c (match_io): Also diagnose extra comma for READ.
+
+2007-08-31 Joseph Myers <joseph@codesourcery.com>
+
+ * intrinsic.texi (LGAMMA): Remove empty @cindex line.
+
+2007-08-31 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31879
+ PR fortran/31197
+ PR fortran/31258
+ PR fortran/32703
+ * gfortran.h : Add prototype for gfc_resolve_substring_charlen.
+ * resolve.c (gfc_resolve_substring_charlen): New function.
+ (resolve_ref): Call gfc_resolve_substring_charlen.
+ (gfc_resolve_character_operator): New function.
+ (gfc_resolve_expr): Call the new functions in cases where the
+ character length is missing.
+ * iresolve.c (cshift, eoshift, merge, pack, reshape, spread,
+ transpose, unpack): Call gfc_resolve_substring_charlen for
+ source expressions that are character and have a reference.
+ * trans.h (gfc_trans_init_string_length) Change name to
+ gfc_conv_string_length; modify references in trans-expr.c,
+ trans-array.c and trans-decl.c.
+ * trans-expr.c (gfc_trans_string_length): Handle case of no
+ backend_decl.
+ (gfc_conv_aliased_arg): Remove code for treating substrings
+ and replace with call to gfc_trans_string_length.
+ * trans-array.c (gfc_conv_expr_descriptor): Remove code for
+ treating strings and call gfc_trans_string_length instead.
+
+2007-08-30 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/33228
+ * interface.c (check_interface0): Improve error for external procs.
+ (check_sym_interfaces): Fix checking of module procedures.
+
+2007-08-29 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/32989
+ * iresolve.c (gfc_resolve_getarg): Handle non-default integer
+ kinds.
+ * check.c (gfc_check_getarg): New function
+ * intrinsic.h: Add prototype for gfc_check_getarg.
+ * intrinsic.c (add_subroutines): Add reference to gfc_check_getarg.
+ * intrinsic.texi (GETARG): Adjust documentation.
+
+2007-08-29 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+ Tobias Burnus <burnus@gcc.gnu.org>
+
+ PR fortran/33105
+ * intrinsic.c (add_functions): Add IS_IOSTAT_END and
+ IS_IOSTAT_EOR intrinsics.
+ * gfortran.h (gfc_isym_id): Add GFC_ISYM_IS_IOSTAT_END and
+ GFC_ISYM_IS_IOSTAT_EOR.
+ * trans-intrinsic.c (gfc_conv_has_intvalue): New function.
+ (gfc_conv_intrinsic_function): Call gfc_conv_has_intvalue for
+ GFC_ISYM_IS_IOSTAT_END and GFC_ISYM_IS_IOSTAT_EOR.
+ * intrinsic.texi: Add IS_IOSTAT_END and IS_IOSTAT_EOR.
+
+2007-08-28 Christopher D. Rickett <crickett@lanl.gov>
+
+ PR fortran/33215
+ * decl.c (build_sym): Pass number of identifiers on line to
+ set_binding_label.
+ (set_binding_label): Verify that only one identifier given if
+ NAME= specified, even if the given binding label has zero length.
+ (gfc_match_bind_c): Remove declaration for has_name_equals because
+ it hides the static global one that is needed.
+
+2007-08-29 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * trans-array.c (gfc_grow_array): Use gfc_call_realloc.
+ (gfc_array_allocate): Use gfc_allocate_with_status and
+ gfc_allocate_array_with_status.
+ (gfc_array_deallocate): Use gfc_deallocate_with_status.
+ (gfc_trans_dealloc_allocated): Use gfc_deallocate_with_status.
+ * trans-stmt.c (gfc_trans_allocate): Use gfc_allocate_with_status.
+ (gfc_trans_deallocate): Use gfc_deallocate_with_status.
+ * trans.c (gfc_allocate_with_status, gfc_allocate_array_with_status,
+ gfc_deallocate_with_status, gfc_call_realloc): New functions.
+ * trans.h (gfc_allocate_with_status, gfc_allocate_array_with_status,
+ gfc_deallocate_with_status, gfc_call_realloc): New prototypes.
+ (gfor_fndecl_internal_realloc, gfor_fndecl_allocate,
+ gfor_fndecl_allocate_array, gfor_fndecl_deallocate): Remove.
+ * f95-lang.c (gfc_init_builtin_functions): Create decl for
+ BUILT_IN_REALLOC.
+ * trans-decl.c (gfor_fndecl_internal_realloc,
+ gfor_fndecl_allocate, gfor_fndecl_allocate_array,
+ gfor_fndecl_deallocate): Remove function decls.
+ (gfc_build_builtin_function_decls): Likewise.
+
+2007-08-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/33055
+ Revert previous patch.
+
+2007-08-28 Jakub Jelinek <jakub@redhat.com>
+
+ PR fortran/22244
+ * Make-lang.in (fortran/trans-types.o): Depend on $(FLAGS_H).
+ * trans-types.c: Include flags.h.
+ (gfc_get_nodesc_array_type): Add TYPE_DECL TYPE_NAME with
+ correct bounds and dimensions for packed arrays.
+
+2007-08-27 Tobias Burnus <burnus@net-b.de>
+
+ * simplify.c (gfc_simplify_lgamma): Fix mpfr_lgamma call.
+
+2007-08-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/33055
+ * trans-io.c (create_dummy_iostat): New function to create a unique
+ dummy variable expression to use with IOSTAT.
+ (gfc_trans_inquire): Use the new function to pass unit number error info
+ to run-time library if a regular IOSTAT variable was not given.
+
+2007-08-26 H.J. Lu <hongjiu.lu@intel.com>
+
+ * gfortran.h (gfc_isym_id): Add GFC_ISYM_GAMMA and
+ GFC_ISYM_LGAMMA.
+
+2007-08-26 Asher Langton <langton2@llnl.gov>
+ Tobias Burnus <burnus@net-b.de>
+
+ * gfortran.h (gfc_option_t): Add flag_recursive.
+ * lang.opt: Add -frecursive option and update -fopenmp.
+ * invoke.texi (-frecursive): Document new option.
+ (-fopenmp,-fno-automatic,-fmax-stack-var-size): Update.
+ * options.c (gfc_init_options, gfc_post_options,
+ gfc_handle_option): Add -frecursive and modify -fopenmp.
+ (gfc_post_options): Add warning for conflicting flags.
+
+2007-08-26 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/31298
+ * module.c (mio_symbol_ref,mio_interface_rest): Return pointer_info.
+ (load_operator_interfaces): Support multible loading of an operator.
+
+2007-08-26 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/32985
+ * match.c (gfc_match_common): Remove SEQUENCE diagnostics.
+ * resolve.c (resolve_common_blocks): Add SEQUENCE diagnostics;
+ fix walking through the tree.
+
+2007-08-26 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/32980
+ * intrinsic.h (gfc_simplify_gamma,gfc_simplify_lgamma,
+ gfc_resolve_gamma,gfc_resolve_lgamma): New function declations.
+ * mathbuiltins.def: Define GAMMA and LGAMMA.
+ * intrinsic.c (add_functions): Add GAMMA, DGAMMA, LGAMMA, ALGAMA
+ and DLGAMA.
+ * simplify.c (gfc_simplify_gamma,gfc_simplify_lgamma): New functions.
+ * iresolve.c (gfc_resolve_gamma,gfc_resolve_lgamma): New functions.
+ * intrinsic.texi: Add documentation for GAMMA and LGAMMA.
+
+2007-08-26 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/33188
+ * parse.c (parse_derived): Support empty derived type
+ definitions for Fortran 2003.
+
+2007-08-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * trans-openmp.c (gfc_omp_privatize_by_reference): Constify.
+ * trans.h (gfc_omp_privatize_by_reference): Likewise.
+
+2007-08-24 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/33178
+ * intrinsic.c (gfc_intrinsic_func_interface): Fix initialization
+ expression check.
+
+2007-08-24 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/32972
+ * iresolve.c: Don't convert array masks.
+
+2007-08-24 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/33139
+ * trans-array.c (gfc_conv_expr_descriptor): Copy bounds for
+ whole-array pointer assignments.
+
+2007-08-23 Jakub Jelinek <jakub@redhat.com>
+
+ * decl.c (variable_decl): Don't share charlen structs if
+ length == NULL.
+ * trans-decl.c (create_function_arglist): Assert
+ f->sym->ts.cl->backend_decl is NULL instead of unsharing
+ charlen struct here.
+
+2007-08-23 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33095
+ * trans-intrinsic.c (gfc_conv_intrinsic_minmax): Remove
+ runtime error checking.
+
+2007-08-22 Roger Sayle <roger@eyesopen.com>
+ Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
+
+ * match.c (intrinsic_operators): Delete.
+ (gfc_match_intrinsic_op): Rewrite matcher to avoid calling
+ gfc_match_strings.
+
+2007-08-22 Christopher D. Rickett <crickett@lanl.gov>
+
+ PR fortran/33020
+ * resolve.c (gfc_iso_c_sub_interface): Remove setting of type and
+ kind for optional SHAPE parameter of C_F_POINTER.
+
+2007-08-22 Janus Weil <jaydub66@gmail.com>
+
+ * decl.c (match_attr_spec): Pass on errors from gfc_match_bind_c.
+ (gfc_match_bind_c): Bugfix in check for NAME= with abstract interfaces.
+ (gfc_match_mopdproc): Bugfix to reject module procedures in
+ abstract interfaces.
+
+2007-08-22 Kai Tietz <kai.tietz@onevision.com>
+
+ * f95-lang.c: (gfc_init_decl_processing): Choose sizetype by using
+ Pmode.
+
+2007-08-21 Paul Brook <paul@codesourcery.com>
+ Nathan Sidwell <nathan@codesourcery.com>
+ Mark Mitchell <mark@codesourcery.com>
+ Joseph Myers <joseph@codesourcery.com>
+
+ * gfortranspec.c (lang_specific_driver): Use pkgversion_string.
+ * Make-lang.in (gfortran.pod): Define BUGURL.
+ * invoke.texi: Use BUGURL for bug-reporting instructions.
+
+2007-08-19 Roger Sayle <roger@eyesopen.com>
+
+ * match.c (intrinsic_operators): Make static.
+ (gfc_op2string): New function for converting a gfc_intrinsic_op to
+ to a "const char*", replacing the macro of the same name.
+ * gfortran.h (intrinsic_operators): Delete prototype.
+ (gfc_op2string): Replace macro with function prototype.
+
+2007-08-18 Tobias Burnus <burnus@net-b.de>
+
+ * gfortran.h (gfc_is_intrinsic_typename): Add declaration.
+ * symbol.c (gfc_is_intrinsic_typename): New function.
+ * parse.c (decode_statement): Check for space in ABSTRACT INTERFACE.
+ (parse_interface): Use gfc_is_intrinsic_typename.
+ * decl.c (gfc_match_derived_decl): Ditto.
+ * module.c (gfc_match_use): Use gcc_unreachable() for
+ INTERFACE_ABSTRACT in switch().
+
+2007-08-18 Roger Sayle <roger@eyesopen.com>
+
+ * primary.c (match_logical_constant_string): New function to match
+ a ".true." or a ".false.".
+ (match_logical_constant): Use it instead of gfc_match_strings.
+
+2007-08-18 Paul Thomas <pault@gcc.gnu.org>
+ Janus Weil <jaydub66@gmail.com>
+
+ * interface.c (gfc_match_interface,gfc_match_abstract_interface,
+ gfc_match_end_interface,gfc_add_interface): Add abstract interface.
+ * dump-parse-tree.c (gfc_show_attr): Ditto.
+ * gfortran.h (interface_type,symbol_attribute): Ditto.
+ * module.c (gfc_match_use,ab_attribute,attr_bits,
+ mio_symbol_attribute): Ditto.
+ * resolve.c (resolve_function): Ditto.
+ * match.h: Ditto.
+ * parse.c (decode_statement): Ditto.
+ (parse_interface): Ditto, check for C1203 (name of abstract interface
+ cannot be the same as an intrinsic type).
+ * decl.c (gfc_match_bind_c): Check for NAME= with abstract interfaces.
+ (access_attr_decl): Handle Abstract interfaces.
+
+2007-08-18 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/32881
+ * expr.c (gfc_check_pointer_assign): If the rhs is the
+ initialization expression for the rhs, there is no error.
+
+2007-08-18 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/32875
+ * trans-array.c (get_array_ctor_strlen): Set the character
+ length of a zero length array to zero.
+
+2007-08-16 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/33072
+ * module.c (gfc_match_use): Mark user operators as such.
+ (find_use_name_n): Distinguish between operators and other symbols.
+ (find_use_name,number_use_names,mio_namelist,
+ load_operator_interfaces,load_generic_interfaces,read_module,
+ write_generic): Update find_use_name_n calls.
+
+2007-08-15 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/29459
+ * trans.c (gfc_create_var_np): Do not emit warnings for
+ anonymous variables.
+
+2007-08-15 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33066
+ * decl.c (gfc_get_type_attr_spec): Fix whitespace.
+ (gfc_match_derived_decl): Fix logic.
+
+2007-08-14 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33073
+ * trans-intrinsic.c (build_fixbound_expr): Convert to result type
+ in all cases.
+
+2007-08-14 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/32594
+ * trans-expr.c (gfc_conv_substring_expr): Only call
+ gfc_conv_substring if expr->ref is not NULL.
+ * expr.c (gfc_is_constant_expr): If e->ref is NULL, the substring
+ expression might be a constant.
+ (gfc_simplify_expr): Handle missing start and end, as well as
+ missing ref.
+
+2007-08-13 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/32926
+ * match.c (gfc_match_call): Do not create a new symtree in the
+ case where the existing symbol is external and not referenced.
+
+2007-08-13 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/32827
+ * decl.c (variable_decl): Check for an imported symbol
+ by looking for its symtree and testing for the imported
+ attribute.
+ (gfc_match_import): Remove change of symbol's namespace
+ and set the attribute imported instead.
+ * symbol.c (gfc_get_sym_tree): It is not an error if a
+ symbol is imported.
+ * gfortran.h : Add the 'imported' to symbol_attribute.
+
+2007-08-13 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/32962
+ * trans-array.c (gfc_conv_array_transpose): Set the offset
+ of the destination to zero if the loop is zero based.
+
+2007-08-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/29600
+ * intrinsic.c (add_functions): Add optional KIND argument to ACHAR.
+ * iresolve.c (gfc_resolve_achar): Handle the KIND argument.
+ * check.c (gfc_check_achar): Check for the optional KIND argument.
+ * simplify.c (gfc_simplify_achar): Use KIND argument.
+ * intrinsic.h (gfc_check_achar, gfc_simplify_achar,
+ gfc_resolve_achar): Adjust prototypes.
+
+2007-08-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/30964
+ PR fortran/33054
+ * trans-expr.c (gfc_conv_function_call): When no formal argument
+ list is available, we still substitute missing optional arguments.
+ * check.c (gfc_check_random_seed): Correct the check on the
+ number of arguments to RANDOM_SEED.
+ * intrinsic.c (add_subroutines): Add a resolution function to
+ RANDOM_SEED.
+ * iresolve.c (gfc_resolve_random_seed): New function.
+ * intrinsic.h (gfc_resolve_random_seed): New prototype.
+
+2007-08-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/32860
+ * error.c (error_uinteger): New function.
+ (error_integer): Call error_uinteger.
+ (error_print): Handle %u, %lu, %li and %ld format specifiers.
+ * interface.c (compare_actual_formal): Use the new %lu specifier.
+
+2007-08-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31629
+ * lang.opt (-fmodule-private): New option.
+ * gfortran.h (gfc_option_t): Add flag_module_private member.
+ * invoke.texi (-fmodule-private): Document the new option.
+ * module.c (gfc_check_access): Allow the -fmodule-private option
+ to modify the default behaviour.
+ * options.c (gfc_init_options): Initialize flag_module_private.
+ (gfc_handle_option): Handle -fmodule-private.
+
+2007-08-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/29600
+ * intrinsic.c (add_functions): Add KIND arguments to COUNT,
+ IACHAR, ICHAR, INDEX, LBOUND, LEN, LEN_TRIM, SCAN, SIZE, UBOUND
+ and VERIFY.
+ * iresolve.c (gfc_resolve_count): Add kind argument.
+ (gfc_resolve_iachar): New function.
+ (gfc_resolve_ichar): Add kind argument.
+ (gfc_resolve_index_func): Likewise.
+ (gfc_resolve_lbound): Likewise.
+ (gfc_resolve_len): Likewise.
+ (gfc_resolve_len_trim): Likewise.
+ (gfc_resolve_scan): Likewise.
+ (gfc_resolve_size): New function.
+ (gfc_resolve_ubound): Add kind argument.
+ (gfc_resolve_verify): Likewise.
+ * trans-decl.c (gfc_get_extern_function_decl): Allow specific
+ intrinsics to have 4 arguments.
+ * check.c (gfc_check_count): Add kind argument.
+ (gfc_check_ichar_iachar): Likewise.
+ (gfc_check_index): Likewise.
+ (gfc_check_lbound): Likewise.
+ (gfc_check_len_lentrim): New function.
+ (gfc_check_scan): Add kind argument.
+ (gfc_check_size): Likewise.
+ (gfc_check_ubound): Likewise.
+ (gfc_check_verify): Likewise.
+ * intrinsic.texi: Update documentation for COUNT, IACHAR, ICHAR,
+ INDEX, LBOUND, LEN, LEN_TRIM, SCAN, SIZE, UBOUND and VERIFY.
+ * simplify.c (get_kind): Whitespace fix.
+ (int_expr_with_kind): New function.
+ (gfc_simplify_iachar): Add kind argument.
+ (gfc_simplify_iachar): Likewise.
+ (gfc_simplify_ichar): Likewise.
+ (gfc_simplify_index): Likewise.
+ (simplify_bound_dim): Likewise.
+ (simplify_bound): Likewise.
+ (gfc_simplify_lbound): Likewise.
+ (gfc_simplify_len): Likewise.
+ (gfc_simplify_len_trim): Likewise.
+ (gfc_simplify_scan): Likewise.
+ (gfc_simplify_shape): Pass NULL as kind argument to gfc_simplify_size.
+ (gfc_simplify_size): Add kind argument.
+ (gfc_simplify_ubound): Likewise.
+ (gfc_simplify_verify): Likewise.
+ * intrinsic.h: Update prototypes and add new ones.
+ * trans-intrinsic.c (gfc_conv_intrinsic_index): Rename into
+ gfc_conv_intrinsic_index_scan_verify.
+ (gfc_conv_intrinsic_scan, gfc_conv_intrinsic_verify): Remove.
+ (gfc_conv_intrinsic_function): Call
+ gfc_conv_intrinsic_index_scan_verify to translate the INDEX,
+ SCAN and VERIFY intrinsics.
+
+2007-08-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31189
+ * invoke.texi (-fbacktrace): Document the new behaviour.
+
+2007-08-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/32937
+ * trans-array.c (gfc_conv_expr_descriptor): Use
+ gfc_conv_const_charlen to generate backend_decl of right type.
+ * trans-expr.c (gfc_conv_expr_op): Use correct return type.
+ (gfc_build_compare_string): Use int type instead of default
+ integer kind for single character comparison.
+ (gfc_conv_aliased_arg): Give backend_decl the right type.
+ * trans-decl.c (gfc_build_intrinsic_function_decls): Make
+ compare_string return an int.
+
+2007-08-11 Ian Lance Taylor <iant@google.com>
+
+ * f95-lang.c (gfc_get_alias_set): Change return type to
+ alias_set_type.
+
+2007-08-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31270
+ * trans.c (gfc_trans_runtime_check): Reorder arguments and
+ add extra variable arguments. Hand them to the library function.
+ * trans.h (gfc_trans_runtime_check): Update prototype.
+ * trans-array.c (gfc_trans_array_bound_check): Issue more
+ detailled error messages.
+ (gfc_conv_array_ref): Likewise.
+ (gfc_conv_ss_startstride): Likewise.
+ (gfc_trans_dummy_array_bias): Reorder arguments to
+ gfc_trans_runtime_check.
+ * trans-expr.c (gfc_conv_substring): Issue more detailled
+ error messages.
+ (gfc_conv_function_call): Reorder arguments to gfc_trans_runtime_check.
+ * trans-stmt.c (gfc_trans_goto): Likewise.
+ * trans-io.c (set_string): Reorder arguments to
+ gfc_trans_runtime_check and issue a more detailled error message.
+ * trans-decl.c (gfc_build_builtin_function_decls): Make
+ runtime_error and runtime_error_at handle a variable number of
+ arguments.
+ * trans-intrinsic.c (gfc_conv_intrinsic_bound): Reorder arguments
+ to gfc_trans_runtime_check.
+ (gfc_conv_intrinsic_minmax): Likewise.
+ (gfc_conv_intrinsic_repeat): Issue more detailled error messages.
+
+2007-08-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gfortranspec.c (lang_specific_driver): Use CONST_CAST.
+ * options.c (gfc_post_options): Likewise.
+ * parse.c (parse_omp_structured_block): Likewise.
+ * st.c (gfc_free_statement): Likewise.
+
+2007-08-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/32933
+ * trans-decl.c (gfc_build_builtin_function_decls): Change
+ prototype for associated.
+ * trans-intrinsic.c (gfc_conv_intrinsic_minmax): Convert the
+ result of __builtin_isnan into a boolean.
+ (gfc_conv_intrinsic_strcmp): Cleanup.
+ (gfc_conv_associated): Convert the result of the associated
+ function into a boolean.
+
+2007-08-09 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/32987
+ * io.c (format_token): Add FMT_ERROR.
+ (next_char_not_space): Print error/warning when
+ '\t' are used in format specifications.
+ (format_lex): Propagate error.
+ (check_format): Ditto.
+
+2007-08-09 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/33001
+ * arith.c (arith_error): Point in the error message
+ to -fno-range-check.
+
+2007-08-09 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/32902
+ * intrinsic.texi (SIZEOF): Add mention to C_SIZE_T.
+
+2007-08-06 Christopher D. Rickett <crickett@lanl.gov>
+
+ PR fortran/32732
+ * trans-expr.c (gfc_conv_scalar_char_value): Convert the tree and
+ actual arg expressions for scalar characters passed by-value to
+ bind(c) routines.
+ (gfc_conv_function_call): Call gfc_conv_scalar_char_value.
+ * trans.h: Add prototype for gfc_conv_scalar_char_value.
+ * trans-decl.c (generate_local_decl): Convert by-value character
+ dummy args of bind(c) procedures using
+ gfc_conv_scalar_char_value.
+
+2007-08-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/30947
+ * iresolve.c (gfc_resolve_alarm_sub): Suffix the subroutine name
+ with the kind of the STATUS argument.
+
+2007-08-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/30948
+ * intrinsic.c (add_functions): Fix name of argument to CHDIR.
+
+2007-08-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/30933
+ * iresolve.c (gfc_resolve_exit): Convert argument to default
+ integer kind.
+
+2007-08-06 Daniel Franke <franke.daniel@gmail.com>
+
+ * resolve.c (derived_pointer): Removed, replaced callers by access
+ to appropiate attribute bit.
+ (derived_inaccessable): Shortcut recursion depth.
+ (resolve_fl_namelist): Fixed checks for private components in namelists.
+
+2007-08-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/29828
+ * trans.h (gfor_fndecl_string_minmax): New prototype.
+ * trans-decl.c (gfor_fndecl_string_minmax): New variable.
+ (gfc_build_intrinsic_function_decls): Create gfor_fndecl_string_minmax.
+ * check.c (gfc_check_min_max): Allow for character arguments.
+ * trans-intrinsic.c (gfc_conv_intrinsic_minmax_char): New function.
+ (gfc_conv_intrinsic_function): Add special case for MIN and MAX
+ intrinsics with character arguments.
+ * simplify.c (simplify_min_max): Add simplification for character
+ arguments.
+
+2007-08-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31612
+ * invoke.texi: Adjust documentation for option -fsyntax-only.
+
+2007-08-05 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+ Tobias Burnus <burnus@gcc.gnu.org>
+
+ PR fortran/32979
+ * intrinsic.h (gfc_check_isnan): Add prototype.
+ * gfortran.h (gfc_isym_id): Add GFC_ISYM_ISNAN.
+ * intrinsic.c (add_functions): Add ISNAN intrinsic.
+ * check.c (gfc_check_isnan): New function.
+ * trans-intrinsic.c (gfc_conv_intrinsic_isnan): New function.
+ (gfc_conv_intrinsic_function): Call gfc_conv_intrinsic_isnan
+ to translate ISNAN.
+ * intrinsic.texi: Document ISNAN.
+
+2007-08-04 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31214
+ * symbol.c (get_unique_symtree): Moved from module.c.
+ * module.c (get_unique_symtree): Moved to symbol.c.
+ * decl.c (get_proc_name): Transfer the typespec from the local
+ symbol to the module symbol, in the case that an entry is also
+ a module procedure. Ensure the local symbol is cleaned up by
+ pointing to it with a unique symtree.
+
+ * dump_parse_tree (gfc_show_code_node): Add EXEC_ASSIGN_CALL.
+
+2008-08-04 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/32969
+ * iresolve.c (gfc_resolve_rrspacing): Convert argument(s) to
+ expected KIND.
+ (gfc_resolve_scale): Ditto.
+ (gfc_resolve_set_exponent): Ditto.
+ (gfc_resolve_spacing): Ditto.
+
+ PR fortran/32968
+ * trans-intrinsic.c (gfc_conv_intrinsic_si_kind,
+ gfc_conv_intrinsic_sr_kind): Convert the argument(s) to the
+ expected KIND, and fold the result to the expected KIND.
+
+2007-08-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31202
+ * f95-lang.c (gfc_init_builtin_functions): Defin builtins for
+ lround{f,,l} and llround{f,,l}.
+ * trans-intrinsic.c (build_fix_expr): Generate calls to the
+ {l,}round{f,,l} functions.
+
+2007-08-01 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR libfortran/32954
+ * intrinsic.c (resolve_mask_arg): New function.
+ (gfc_resolve_maxloc): Use resolve_mask_arg for mask resolution.
+ (gfc_resolve_maxval): Likewise.
+ (gfc_resolve_minloc): Likewise.
+ (gfc_resolve_minval): Likewise.
+ (gfc_resolve_pack): Likewise.
+ (gfc_resolve_product): Likewise.
+ (gfc_resolve_sum): Likewise.
+ (gfc_resolve_unpack): Likewise.
+
+2007-08-01 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/32936
+ * match.c (gfc_match_allocate): Better check that STAT is
+ a variable.
+
+ * check.c (gfc_check_allocated): Reorder checks to improve
+ error message.
+
+2007-08-01 Nick Clifton <nickc@redhat.com>
+
+ * arith.c: Change copyright header to refer to version 3 of the
+ GNU General Public License and to point readers at the COPYING3
+ file and the FSF's license web page.
+ * openmp.c, interface.c, intrinsic.c, trans-array.c, trans-expr.c,
+ symbol.c, iso-fortran-env.def, intrinsic.h, decl.c, trans-array.h,
+ matchexp.c, dump-parse-tree.c, trans-common.c, array.c,
+ Make-lang.in, trans-openmp.c, gfortran.h, error.c,
+ iso-c-binding.def, lang.opt, data.c, trans-const.c, trans-stmt.c,
+ expr.c, trans-const.h, trans-stmt.h, module.c, trans.c, scanner.c,
+ trans-types.c, trans.h, gfortranspec.c, trans-types.h,
+ lang-specs.h, io.c, bbt.c, resolve.c, f95-lang.c, st.c,
+ iresolve.c, match.c, trans-decl.c, trans-io.c, target-memory.c,
+ match.h, target-memory.h, parse.c, arith.h, check.c, dependency.c,
+ parse.h, types.def, convert.c, dependency.h, primary.c,
+ trans-intrinsic.c, options.c, misc.c, simplify.c: Likewise.
+
+2007-08-01 Daniel Franke <franke.daniel@gmail.com>
+
+ * trans-decl.c (generate_local_decl): Emit warning on unused parameter
+ on "-Wall -Wextra" or "-Wunused-parameter" but not on "-Wall", changed
+ messages that start with lower case to upper case.
+ * invoke.texi (-Wparameter-unused): Document differences between gcc
+ and gfortran regarding this option.
+
+2007-08-01 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/32945
+ * expr.c (check_specification_function): Skip check if no symtree
+ is available.
+
+2007-08-01 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31609
+ * resolve.c (resolve_entries): Entries declared to be module
+ procedures must point to the function namespace.
+
+2007-07-31 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/32938
+ * trans-stmt.c (gfc_trans_return): Convert to correct type.
+
+2007-07-31 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/32942
+ * trans-intrinsic.c (gfc_conv_intrinsic_exponent): Convert to correct
+ type.
+
+2007-07-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ * invoke.texi: Document -fsign-zero flag.
+
+2007-07-29 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31211
+ * trans-expr.c (gfc_conv_expr_reference): Add block for case of
+ scalar pointer functions so that NULL result is correctly
+ handled.
+
+ PR fortran/32682
+ * trans-array.c (gfc_trans_array_constructor): On detecting a
+ multi-dimensional parameter array, set the loop limits.
+
+2007-07-29 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/32906
+ * resolve.c (resolve_fl_parameter): Check for constant shape arrays,
+ adjusted error message.
+
+2007-07-29 Daniel Franke <franke.daniel@gmail.com>
+
+ * invoke.texi: Removed -w from option summary.
+
+2007-07-29 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/32879
+ * intrinsic.texi (IRAND, RAND, RANDOM_NUMBER): Document algorithm
+ used for random number generator.
+
+2007-07-28 Kazu Hirata <kazu@codesourcery.com>
+
+ * gfortran.h, interface.c, resolve.c, symbol.c: Fix comment
+ typos.
+ * intrinsic.texi, invoke.texi: Fix typos.
+
+2007-07-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/31609
+ * resolve.c (generic_sym): Check for a same symbol and if so, return to
+ avoid infinite recursion.
+
+2007-07-28 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/31818
+ PR fortran/32876
+ PR fortran/32905
+ * gfortran.h (symbol_attribute): Added bits for pointer_comp,
+ private_comp.
+ * parse.c (parse_derived): Set pointer_comp/private_comp bits if
+ the derived type ultimately contains pointer components or private
+ components.
+ * module.c (ab_attribute): New values AB_POINTER_COMP, AB_PRIVATE_COMP.
+ (attr_bits): Added names for new ab_attributes.
+ (mio_symbol_attribute): Save/restore new attribute bits in modules.
+ * match.c (gfc_match_namelist): Removed check for namelist objects
+ of assumed shape.
+ * resolve.c (resolve_fl_namelist): Added check for pointer or
+ private components in nested types. Added check for namelist objects
+ of assumed shape.
+
+2007-07-28 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/32880
+ * trans-expr.c (gfc_trans_scalar_assign): Revert to fixed order
+ for lse and rse pre expressions, for derived types with
+ allocatable components. Instead, assign the lhs to a temporary
+ and deallocate after the assignment.
+
+2007-07-28 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR fortran/32909
+ * trans-stmt.c (gfc_trans_character_select): Replace occurrences
+ of gfc_c_int_type_node with integer_type_node.
+ * trans-decl.c (gfc_build_intrinsic_function_decls): Likewise.
+ (gfc_build_builtin_function_decls): Likewise.
+ (gfc_generate_function_code): Likewise.
+ * trans-io.c (gfc_build_io_library_fndecls): Likewise.
+
+2007-07-27 Janne Blomqvist <jb@gcc.gnu.org>
+
+ * trans-decl.c (gfc_build_builtin_function_decls): Use existing
+ gfc_array_index_type rather than creating another typenode for
+ gfc_index_integer_kind.
+
+2007-07-27 Janne Blomqvist <jb@gcc.gnu.org>
+
+ * trans-io.c (gfc_build_io_library_fndecls): Change to use
+ gfc_array_index_type for array descriptor triplets instead of
+ gfc_int4_type_node.
+
+2007-07-26 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/32899
+ * resolve.c (resolve_operator): Add INTRINSIC_EQ_OS comparison.
+
+2007-07-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+ Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/32760
+ * primary.c (match_variable): Do not call gfc_add_flavor if symbol has
+ attribute of ACCESS_PUBLIC or ACCESS_PRIVATE already marked.
+
+2007-07-27 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/32035
+ * trans-stmt.c (gfc_trans_character_select): Replace the
+ mechanism with labels by a SWITCH_EXPR.
+ * trans-decl.c (gfc_build_builtin_function_decls): Change
+ return type for select_string.
+
+2007-07-27 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/32903
+ * trans-decl.c (gfc_trans_deferred_vars): Set intent(out)
+ derived types as referenced, if they have the the default
+ initializer set.
+
+2007-07-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * gfortran.h (generate_isocbinding_symbol): Constify.
+ * symbol.c (gen_special_c_interop_ptr, gen_cptr_param,
+ generate_isocbinding_symbol): Likewise.
+
+2007-07-24 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31205
+ PR fortran/32842
+ * trans-expr.c (gfc_conv_function_call): Remove the default
+ initialization of intent(out) derived types.
+ * symbol.c (gfc_lval_expr_from_sym): New function.
+ * matchexp.c (gfc_get_parentheses): Return argument, if it is
+ character and posseses a ref.
+ * gfortran.h : Add prototype for gfc_lval_expr_from_sym.
+ * resolve.c (has_default_initializer): Move higher up in file.
+ (resolve_code): On detecting an interface assignment, check
+ if the rhs and the lhs are the same symbol. If this is so,
+ enclose the rhs in parenetheses to generate a temporary and
+ prevent any possible aliasing.
+ (apply_default_init): Remove code making the lval and call
+ gfc_lval_expr_from_sym instead.
+ (resolve_operator): Give a parentheses expression a type-
+ spec if it has no type.
+ * trans-decl.c (gfc_trans_deferred_vars): Apply the a default
+ initializer, if any, to an intent(out) derived type, using
+ gfc_lval_expr_from_sym and gfc_trans_assignment. Check if
+ the dummy is present.
+
+2007-07-24 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/32867
+ * expr.c (check_init_expr): Simplify matched functions.
+
+2007-07-24 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/32778
+ * intrinsic.c (add_sym): Do not exclude any symbols, even if not part
+ of the selected standard.
+ (make generic): Likewise.
+ (make alias): Likewise, set standard the alias belongs to.
+ (add_subroutines): Call make_noreturn unconditionally.
+ (check_intrinsic_standard): Change return value to try.
+ (gfc_intrinsic_func_interface): Check return value of above function.
+ (gfc_intrinsic_sub_interface): Likewise.
+
+2007-07-24 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/30814
+ * trans-decl.c (generate_function_code): Add argument
+ for flag_bounds_check to the array for set_options.
+ * invoke.texi (-fbounds-check): Document new libarary run-time
+ behaviour.
+
+2007-07-23 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/25104
+ PR fortran/31639
+ * expr.c (check_transformational): Reject valid transformational
+ intrinsics to avoid ICE.
+ (check_inquiry): Report error for assumed character lengths for
+ all supported standards.
+ (check_init_expr): Whitespace fix.
+
+2007-07-23 Christopher D. Rickett <crickett@lanl.gov>
+
+ PR fortran/32797
+ PR fortran/32800
+ * decl.c (verify_bind_c_sym): Use the result symbol for functions
+ with a result clause. Warn if implicitly typed. Verify the type
+ and rank of the SHAPE argument, if given.
+ * resolve.c (gfc_iso_c_sub_interface): Use gfc_procedure_use to
+ check the actual args against the formal, sorting them if
+ necessary.
+ * symbol.c (gen_shape_param): Initialize type of SHAPE param to
+ BT_VOID.
+
+2007-07-23 Christopher D. Rickett <crickett@lanl.gov>
+
+ PR fortran/32732
+ * trans-decl.c (generate_local_decl): Convert the TREE_TYPE for by
+ value character dummy args of BIND(C) procedures.
+ * trans-expr.c (gfc_conv_variable): Do not build address
+ expression for BT_CHARACTER dummy args.
+
+2007-07-23 Christopher D. Rickett <crickett@lanl.gov>
+ Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/32600
+ * trans-expr.c (gfc_conv_function_call): Handle c_funloc.
+ * trans-types.c: Add pfunc_type_node.
+ (gfc_init_types,gfc_typenode_for_spec): Use it.
+ * resolve.c (gfc_iso_c_func_interface): Fix whitespace and
+ improve error message.
+
+2007-07-22 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/32710
+ * parse.c (gfc_fixup_sibling_symbols): No replacement of symbols if
+ the current is a namelist.
+
+2007-07-22 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/29962
+ PR fortran/31253
+ PR fortran/31265
+ PR fortran/31639
+ * gfortran.h (gfc_intrinsic_sym): Changed members elemental, pure,
+ generic, specific, actual_ok, noreturn into bits of a bitfield,
+ added bits for inquiry, transformational, conversion.
+ * check.c (non_init_transformational): Removed, removed all callers.
+ * intrinsic.c (enum class): New.
+ (add_sym*): Replaced argument elemetal by enum class. Changed all
+ callers.
+ (add_functions): Assign appropriate classes to intrinsic functions.
+ (add_subroutines): Assign appropriate classes to intrinsic subroutines.
+ (add_conv): Set conversion attribute.
+ (gfc_init_expr_extensions): Removed, removed all callers.
+ (gfc_intrinsic_func_interface): Reimplemented check for non-standard
+ initializatione expressions.
+ * expr.c (check_specification_function): New.
+ (gfc_is_constant_expr): Added check for specification functions.
+ (check_init_expr_arguments): New.
+ (check_inquiry): Changed return value to MATCH, added checks for
+ inquiry functions defined by F2003.
+ (check_transformational): New.
+ (check_null): New.
+ (check_elemental): New.
+ (check_conversion): New.
+ (check_init_expr): Call new check functions, add more specific error
+ messages.
+
+2007-07-21 Christopher D. Rickett <crickett@lanl.gov>
+
+ PR fortran/32627
+ * resolve.c (set_name_and_label): Set kind number for character
+ version of c_f_pointer.
+ (gfc_iso_c_sub_interface): Set the kind of the SHAPE formal arg to
+ that of the actual SHAPE arg.
+ * symbol.c (gen_shape_param): Initialize kind for SHAPE arg.
+
+2007-07-21 Christopher D. Rickett <crickett@lanl.gov>
+
+ PR fortran/32801
+ * symbol.c (generate_isocbinding_symbol): Remove unnecessary
+ conditional.
+
+ PR fortran/32804
+ * resolve.c (gfc_iso_c_func_interface): Reject assumed-shape and
+ deferred-shape arrays as args to C_LOC. Fix bug in testing
+ character args to C_LOC.
+
+2007-07-21 Lee Millward <lee.millward@gmail.com>
+
+ PR fortran/32823
+ * trans-intrinsic.c (gfc_conv_intrinsic_int): Evaluate all
+ arguments passed, not just the first one. Adjust code to
+ refer to "args[0]" instead of "arg" as a result.
+
+2007-07-19 Christopher D. Rickett <crickett@lanl.gov>
+
+ PR fortran/32600
+ * trans-expr.c (gfc_conv_function_call): Inline C_LOC.
+
+2007-07-18 Christopher D. Rickett <crickett@lanl.gov>
+
+ PR fortran/32801
+ * symbol.c (generate_isocbinding_symbol): Fix bug where
+ ISOCBINDING_FUNPTR was generated for C_LOC instead of the needed
+ ISOCBINDING_PTR.
+
+2007-07-17 Janus Weil <jaydub66@gmail.com>
+
+ PR fortran/32535
+ * resolve.c (resolve_fl_namelist): Check for namelist private
+ components in contained subprograms.
+
+2007-07-17 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31320
+ PR fortran/32665
+ * trans-expr.c (gfc_trans_subcomponent_assign): Ensure that
+ renormalization unity base is done independently of existing
+ lbound value.
+ (gfc_trans_scalar_assign): If rhs is not a variable, put
+ lse->pre after rse->pre to ensure that de-allocation of lhs
+ occurs after evaluation of rhs.
+
+2007-07-16 Lee Millward <lee.millward@gmail.com>
+
+ PR fortran/32222
+ PR fortran/32238
+ PR fortran/32242
+ * trans-intrinsic.c (gfc_conv_intrinsic_function_args): Adjust
+ to operate on a stack allocated array for the intrinsic arguments
+ instead of creating a TREE_LIST. Add two new parameters for the
+ array and the number of elements. Update all callers to allocate
+ an array of the correct length to pass in. Update comment.
+ (gfc_intrinsic_argument_list_length): New function.
+ (gfc_conv_intrinsic_conversion): Call it.
+ (gfc_conv_intrinsic_mnimax): Likewise.
+ (gfc_conv_intrinsic_merge): Likewise.
+ (gfc_conv_intrinsic_lib_function): Call it. Use new CALL_EXPR
+ constructors.
+ (gfc_conv_intrinsic_cmplx): Likewise.
+ (gfc_conv_intrinsic_ctime): Likewise.
+ (gfc_covn_intrinsic_fdate): Likewise.
+ (gfc_conv_intrinsic_ttynam): Likewise.
+ (gfc_conv_intrinsic_ishftc): Likewise.
+ (gfc_conv_intrinsic_index): Likewise.
+ (gfc_conv_intrinsic_scan): Likewise.
+ (gfc_conv_intrinsic_verify): Likewise.
+ (gfc_conv_intrinsic_trim): Likewise.
+ (gfc_conv_intrinsic_aint): Use new CALL_EXPR constructors.
+ (gfc_conv_intrinsic_exponent): Likewise.
+ (gfc_conv_intrinsic_bound): Likewise.
+ (gfc_conv_intrinsic_abs): Likewise.
+ (gfc_conv_intrinsic_mod): Likewise.
+ (gfc_conv_intrinsic_sign): Likewise.
+ (gfc_conv_intrinsic_len): Likewise.
+ (gfc_conv_intrinsic_adjust): Likewise.
+ (gfc_conv_intrinsic_si_kind): Likewise.
+
+2007-07-16 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR fortran/32748
+ * trans-decl.c (gfc_build_builtin_function_decls): Remove
+ DECL_IS_MALLOC attribute from internal_realloc, thus reverting
+ part of my 2007-07-03 patch.
+
+2007-07-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+ Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/32611
+ * gfortran.h (gfc_option_t): Add flag_sign_zero field.
+ * lang.opt (-fsign-zero): New option.
+ * trans.h: Rename gfor_fndecl_set_std into gfor_fndecl_set_options.
+ * trans-decl.c (gfc_build_builtin_function_decls): Build the function
+ declaration to pass an array containing the options to be used by the
+ runtime library. (gfc_generate_function_code): Build an array that
+ contains option values to be passed to the runtime library and the call
+ to the function.
+ * options.c (gfc_init_options): Initialize the flag_sign_zero field.
+ (gfc_handle_option): Handle the -fsign-zero option.
+
+2007-07-15 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/32036
+ * trans-array.c (gfc_conv_array_ref): Only evaluate index once.
+
+2007-07-15 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/32357
+ * iresolve.c (gfc_resolve_mvbits): Convert FROMPOS, LEN and TOPOS
+ to C int.
+
+2007-07-14 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR libfortran/32731
+ * iresolve.c(gfc_resolve_pack): A scalar mask has
+ to be kind=4, an array mask with kind<4 is converted
+ to gfc_default_logical_kind automatically.
+ (gfc_resolve_unpack): Convert mask to gfc_default_lotical_kind
+ if it has a kind<4.
+
+2007-07-14 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/32724
+ * parse.c (parse_spec): Emit error on unexpected statement
+ function.
+
+2007-07-13 Daniel Franke <franke.daniel@gmail.com>
+
+ * invoke.texi: Unified upper- and lower-case in menus.
+ (-w, -W): Removed, documented by gcc.
+ * intrinsic.texi: Unified Class-section entries, added
+ subroutine/function warning where appropiate.
+
+2007-07-12 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/31639
+ * decl.c (gfc_match_suffix): Removed surplus general error that hides
+ a more specific message.
+ * resolve.c (resolve_fl_variable): Reject illegal initializiers only
+ if not already done.
+ (resolve_fl_procedure): Added check for initializers of functions.
+
+2007-07-12 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/32704
+ * invoke.texi (-static-libgfortran): Document new option.
+
+2007-07-12 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/32634
+ PR fortran/32727
+ * module.c (write_generic): Restore patch of 2007-07-10 and use
+ symbol name if there are no use names.
+
+2007-07-12 Christopher D. Rickett <crickett@lanl.gov>
+
+ PR fortran/32599
+ * decl.c (verify_c_interop_param): Require character string dummy
+ args to BIND(C) procedures to have length 1.
+ * resolve.c (resolve_fl_procedure): Modify parameter checking for
+ BIND(C) procedures.
+
+ PR fortran/32601
+ * resolve.c (gfc_iso_c_func_interface): Verify that a valid
+ expression is given as an argument to C_LOC and C_ASSOCIATED.
+ * trans-io.c (transfer_expr): Add argument for code block. Add
+ standards check to determine if an error message should be
+ reported for printing C_PTR or C_FUNPTR.
+ (transfer_array_component): Update arguments to transfer_expr.
+ (gfc_trans_transfer): Ditto.
+
+ * symbol.c (gen_cptr_param): Fix whitespace.
+
+2007-07-12 Jakub Jelinek <jakub@redhat.com>
+
+ PR fortran/32550
+ * trans.h (GFC_POINTER_TYPE_P): Define.
+ * trans-types.c (gfc_sym_type): Set it for types on attr->sym.pointer.
+ * trans-openmp.c (gfc_omp_privatize_by_reference): Return false
+ if GFC_POINTER_TYPE_P is set on the type.
+
+2007-07-12 Richard Guenther <rguenther@suse.de>
+
+ * trans-intrinsic.c (gfc_conv_intrinsic_repeat): Convert
+ arguments to gfc_charlen_type_node.
+ * trans-io.c (gfc_convert_array_to_string): Convert type
+ size to gfc_array_index_type.
+
+2007-07-12 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/32634
+ PR fortran/32727
+ * module.c: Reverted Paul's patch from 2007-07-10.
+
+2007-07-11 Richard Guenther <rguenther@suse.de>
+
+ * trans-array.c (gfc_conv_array_parameter): Use correct
+ types for comparison.
+ * trans-intrinsic.c (gfc_conv_intrinsic_repeat): Use
+ correct types for POINTER_PLUS_EXPR.
+ * trans-stmt.c (gfc_trans_forall_loop): Use correct type
+ for integer one constant.
+
+2007-07-10 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/32157
+ * resolve.c (is_external_proc): New function. Adds test that
+ the symbol is not an intrinsic procedure.
+ * (resolve_function, resolve_call): Replace logical statements
+ with call to is_external_proc.
+
+ PR fortran/32689
+ * simplify.c (gfc_simplify_transfer): If mold has rank, the
+ result is an array.
+
+ PR fortran/32634
+ * module.c (write_generic): Write the local name of the
+ interface.
+
+2007-07-09 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/29459
+ * trans-array.c (gfc_trans_array_constructor): Mark offset field
+ with TREE_NO_WARNING.
+ * trans-decl.c (gfc_build_qualified_array): Mark lbound, ubound,
+ stride and size variables with TREE_NO_WARNING.
+
+2007-07-09 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * trans-decl.c (set_tree_decl_type_code): Remove function.
+ (generate_local_decl): Remove reference to set_tree_decl_type_code.
+
+2007-07-09 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/31129
+ * trans-decl.c (generate_local_decl) Emit a warning if an unused
+ parameter is found.
+
+2007-07-08 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/29876
+ * module.c (gfc_match_use): Do not set an non-existant
+ intrinsic operator if a user-defined operator is found.
+
+2007-07-08 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/24784
+ PR fortran/28004
+ * trans-decl.c (generate_local_decl): Adjusted warning on unused
+ dummy arguments, tell middle-end not to emit additional warnings.
+
+2007-07-08 Daniel Franke <franke.daniel@gmail.com>
+ Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
+
+ PR fortran/17711
+ * gfortran.h (gfc_intrinsic_op): Added INTRINSIC_EQ_OS,
+ INTRINSIC_NE_OS, INTRINSIC_GT_OS, INTRINSIC_GE_OS,
+ INTRINSIC_LT_OS and INTRINSIC_LE_OS.
+ * arith.c (eval_intrinsic, eval_type_intrinsic0): Likewise.
+ * arith.h (gfc_eq, gfc_ne, gfc_gt, gfc_ge, gfc_lt, gfc_le):
+ Added gfc_intrinsic_op as third argument type.
+ * dump-parse-tree.c (gfc_show_expr): Account for new enum values.
+ * expr.c (simplify_intrinsic_op, check_intrinsic_op): Likewise.
+ * interface.c (check_operator_interface): Likewise.
+ (gfc_check_interfaces): Added cross-checks for FORTRAN 77 and
+ Fortran 90 style operators using new enum values.
+ (gfc_extend_expr): Likewise.
+ (gfc_add_interface): Likewise.
+ * match.c (intrinsic_operators): Distinguish FORTRAN 77 style
+ operators from Fortran 90 style operators using new enum values.
+ * matchexp.c (match_level_4): Account for new enum values.
+ * module.c (mio_expr): Likewise.
+ * resolve.c (resolve_operator): Deal with new enum values, fix
+ inconsistent error messages.
+ * trans-expr.c (gfc_conv_expr_op): Account for new enum values.
+
+2007-07-08 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/32669
+ * interface.c (get_expr_storage_size): Properly obtain lower bound.
+ (compare_actual_formal): Add space before parenthesis.
+
+2007-07-08 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/25094
+ * resolve.c (resolve_fl_procedure): Added check for PRIVATE types
+ in PUBLIC interfaces.
+
+2007-07-07 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/32644
+ * decl.c (match_attr_spec): Don't return MATCH_ERROR if comma found and
+ gfc_match_bind_c does not return MATCH_YES.
+
+2007-07-07 Kazu Hirata <kazu@codesourcery.com>
+
+ * decl.c, gfortran.h, interface.c, module.c, resolve.c,
+ trans-array.c, trans-decl.c: Fix comment typos. Follow
+ spelling conventions.
+ * intrinsic.texi: Fix typos. Follow spelling conventions.
+
+2007-05-06 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/32633
+ * symbol.c (save_status): New.
+ * gfortran.h (save_status): Added external declaration.
+ (check_conflict): Check for conflicting explicite SAVE statements
+ only.
+ (gen_special_c_interop_ptr): Use SAVE_EXPLICIT constant.
+ * module.c (ab_attribute, attr_bits): Removed enumerator value
+ AB_SAVE for save attribute.
+ (mio_symbol_attribute): Import/export the full SAVE status,
+ removed usage of AB_SAVE.
+ * dump-parse-tree.c (gfc_show_attr): Dump full SAVE status.
+ * decl.c (add_init_expr_to_sym): Set SAVE_IMPLICIT only if not
+ already explicit.
+
+2007-07-05 Daniel Franke <franke.daniel@gmail.com>
+ Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/32359
+ * gfortran.h (symbol_attribute): Change save attribute into an enum.
+ * decl.c (add_init_expr_to_sym): Set it to SAVE_IMPLICIT.
+ * symbol.c (gfc_add_save): Check for SAVE_EXPLICIT.
+ * resolve.c (resolve_fl_variable): Check for SAVE_EXPLICIT.
+ (resolve_symbol): Allow OMP threadprivate with
+ initialization SAVEd and save_all variable.
+ * trans-decl.c (gfc_finish_var_decl): Remove obsolete sym->value check.
+
+2007-07-05 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/32526
+ * match.c (gfc_match_call): Check, in all cases, that a symbol
+ is neither generic nor a subroutine before trying to add it as
+ a subroutine.
+
+ PR fortran/32613
+ * match.c (gfc_match_do): Reset the implied_index attribute.
+
+2007-07-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31198
+ * trans-intrinsic.c (trans-intrinsic.c): Handle optional
+ arguments correctly for MIN and MAX intrinsics.
+
+2007-07-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/32545
+ * io.c (check_format): Always call gfc_error for errors.
+ (check_format_string): Change type of this function to try and
+ return the result of check_format.
+ (check_io_constraints): Return MATCH_ERROR if check_format_string
+ returns FAILURE.
+
+2007-07-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/32612
+ * decl.c (get_proc_name): Include attr->mod_proc in check for error.
+
+2007-07-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/32432
+ * gfortran.h: Change type of gfc_assign_data_value from void to try.
+ * data.c (gfc_assign_data_value): Return FAILURE if error found.
+ * resolve.c (check_data_variable): If gfc_assign_data_value returns
+ failure, break out of loop and return failure.
+
+2007-07-03 Christopher D. Rickett <crickett@lanl.gov>
+
+ PR fortran/32579
+ * symbol.c (gen_cptr_param): Generate C_PTR and C_FUNPTR if necessary.
+ (build_formal_args): Pass intrinsic module symbol id to
+ gen_cptr_param.
+
+2007-07-03 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/25062
+ * resolve.c (resolve_common_blocks): New check function.
+ (resolve_types): Use it.
+
+2007-07-03 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/30940
+ * interface.c (get_sym_storage_size): New function.
+ (get_sym_storage_size): New function.
+ (compare_actual_formal): Enhance sequence association
+ support and improve checking.
+
+2007-07-03 Janne Blomqvist <jb@gcc.gnu.org>
+
+ * trans-decl.c (gfc_build_builtin_function_decls): Mark
+ internal_realloc as a malloc function.
+
+2007-07-03 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/20888
+ * resolve.c (resolve_operator): Check for NULL as operand.
+
+2007-07-02 Tobias Burnus <burnus@net-b.de>
+
+ * gfortran.texi (Fortran 2003): Add ISO Bind C.
+ * intrinsic.texi (C_ASSOCIATED,C_F_POINTER,C_F_PROCPOINTER,
+ C_FUNLOC,C_LOC): Document new ISO Bind C intrinsics.
+
+2007-07-01 Christopher D. Rickett <crickett@lanl.gov>
+
+ * interface.c (gfc_compare_derived_types): Special case for comparing
+ derived types across namespaces.
+ (gfc_compare_types): Deal with BT_VOID.
+ (compare_parameter): Use BT_VOID to accept ISO C Binding pointers.
+ * trans-expr.c (gfc_conv_function_call): Remove setting parm_kind
+ to SCALAR
+ (gfc_conv_initializer): Deal with ISO C Binding NULL_PTR and
+ NULL_FUNPTR.
+ (gfc_conv_expr): Convert expressions for ISO C Binding derived types.
+ * symbol.c (gfc_set_default_type): BIND(C) variables should not be
+ Implicitly declared.
+ (check_conflict): Add BIND(C) and check for conflicts.
+ (gfc_add_explicit_interface): Whitespace.
+ (gfc_add_is_bind_c): New function.
+ (gfc_copy_attr): Use it.
+ (gfc_new_symbol): Initialize ISO C Binding objects.
+ (get_iso_c_binding_dt): New function.
+ (verify_bind_c_derived_type): Ditto.
+ (gen_special_c_interop_ptr): Ditto.
+ (add_formal_arg): Ditto.
+ (gen_cptr_param): Ditto.
+ (gen_fptr_param): Ditto.
+ (gen_shape_param): Ditto.
+ (add_proc_interface): Ditto.
+ (build_formal_args): Ditto.
+ (generate_isocbinding_symbol): Ditto.
+ (get_iso_c_sym): Ditto.
+ * decl.c (num_idents_on_line, has_name_equals): New variables.
+ (verify_c_interop_param): New function.
+ (build_sym): Finish binding labels and deal with COMMON blocks.
+ (add_init_expr_to_sym): Check if the initialized expression is
+ an iso_c_binding named constants
+ (variable_decl): Set ISO C Binding type_spec components.
+ (gfc_match_kind_spec): Check match for C interoperable kind.
+ (match_char_spec): Fix comment. Chnage gfc_match_small_int
+ to gfc_match_small_int_expr. Check for C interoperable kind.
+ (match_type_spec): Clear the current binding label.
+ (match_attr_spec): Add DECL_IS_BIND_C. If BIND(C) is found, use it
+ to set attributes.
+ (set_binding_label): New function.
+ (set_com_block_bind_c): Ditto.
+ (verify_c_interop): Ditto.
+ (verify_com_block_vars_c_interop): Ditto.
+ (verify_bind_c_sym): Ditto.
+ (set_verify_bind_c_sym): Ditto.
+ (set_verify_bind_c_com_block): Ditto.
+ (get_bind_c_idents): Ditto.
+ (gfc_match_bind_c_stmt): Ditto.
+ (gfc_match_data_decl): Use num_idents_on_line.
+ (match_result): Deal with right paren in BIND(C).
+ (gfc_match_suffix): New function.
+ (gfc_match_function_decl): Use it. Code is re-arranged to deal with
+ ISO C Binding result clauses.
+ (gfc_match_subroutine): Deal with BIND(C).
+ (gfc_match_bind_c): New function.
+ (gfc_get_type_attr_spec): New function. Code is re-arranged in and
+ taken from gfc_match_derived_decl.
+ (gfc_match_derived_decl): Add check for BIND(C).
+ * trans-common.c: Forward declare gfc_get_common.
+ (gfc_sym_mangled_common_id): Change arg from 'const char *name' to
+ 'gfc_common_head *com'. Check for ISO C Binding of the common block.
+ (build_common_decl): 'com->name' to 'com in SET_DECL_ASSEMBLER_NAME.
+ * gfortran.h: Add GFC_MAX_BINDING_LABEL_LEN
+ (bt): Add BT_VOID
+ (sym_flavor): Add FL_VOID.
+ (iso_fortran_env_symbol, iso_c_binding_symbol, intmod_id): New enum
+ (CInteropKind_t): New struct.
+ (c_interop_kinds_table): Use it. Declare an array of structs.
+ (symbol_attribute): Add is_bind_c, is_c_interop, and is_iso_c
+ bitfields.
+ (gfc_typespec): Add is_c_interop; is_iso_c, and f90_type members.
+ (gfc_symbol): Add from_intmod, intmod_sym_id, binding_label, and
+ common_block members.
+ (gfc_common_head): Add binding_label and is_bind_c members.
+ (gfc_gsymbol): Add sym_name, mod_name, and binding_label members.
+ Add prototypes for get_c_kind, gfc_validate_c_kind,
+ gfc_check_any_c_kind, gfc_add_is_bind_c, gfc_add_value,
+ verify_c_interop, verify_c_interop_param, verify_bind_c_sym,
+ verify_bind_c_derived_type, verify_com_block_vars_c_interop,
+ generate_isocbinding_symbol, get_iso_c_sym, gfc_iso_c_sub_interface
+ * iso-c-binding.def: New file. This file contains the definitions
+ of the types provided by the Fortran 2003 ISO_C_BINDING intrinsic
+ module.
+ * trans-const.c (gfc_conv_constant_to_tree): Deal with C_NULL_PTR
+ or C_NULL_FUNPTR expressions.
+ * expr.c (gfc_copy_expr): Add BT_VOID case. For BT_CHARACTER, the
+ ISO C Binding requires a minimum string length of 1 for '\0'.
+ * module.c (intmod_sym): New struct.
+ (pointer_info): Add binding_label member.
+ (write_atom): Set len to 0 for NULL pointers. Check for NULL p and *p.
+ (ab_attribute): Add AB_IS_BIND_C, AB_IS_C_INTEROP and AB_IS_ISO_C.
+ (attr_bits): Add "IS_BIND_C", "IS_C_INTEROP", and "IS_ISO_C".
+ (mio_symbol_attribute): Deal with ISO C Binding attributes.
+ (bt_types): Add "VOID".
+ (mio_typespec): Deal with ISO C Binding components.
+ (mio_namespace_ref): Add intmod variable.
+ (mio_symbol): Check for symbols from an intrinsic module.
+ (load_commons): Check for BIND(C) common block.
+ (read_module): Read binding_label and use it.
+ (write_common): Add label. Write BIND(C) info.
+ (write_blank_common): Blank commons are not BIND(C). Explicitly
+ set is_bind_c=0.
+ (write_symbol): Deal with binding_label.
+ (sort_iso_c_rename_list): New function.
+ (import_iso_c_binding_module): Ditto.
+ (create_int_parameter): Add to args.
+ (use_iso_fortran_env_module): Adjust to deal with iso_c_binding
+ intrinsic module.
+ * trans-types.c (c_interop_kinds_table): new array of structs.
+ (gfc_validate_c_kind): New function.
+ (gfc_check_any_c_kind): Ditto.
+ (get_real_kind_from_node): Ditto.
+ (get_int_kind_from_node): Ditto.
+ (get_int_kind_from_width): Ditto.
+ (get_int_kind_from_minimal_width): Ditto.
+ (init_c_interop_kinds): Ditto.
+ (gfc_init_kinds): call init_c_interop_kinds.
+ (gfc_typenode_for_spec): Adjust for BT_VOID and ISO C Binding pointers.
+ Adjust handling of BT_DERIVED.
+ (gfc_sym_type): Whitespace.
+ (gfc_get_derived_type): Account for iso_c_binding derived types
+ * resolve.c (is_scalar_expr_ptr): New function.
+ (gfc_iso_c_func_interface): Ditto.
+ (resolve_function): Use gfc_iso_c_func_interface.
+ (set_name_and_label): New function.
+ (gfc_iso_c_sub_interface): Ditto.
+ (resolve_specific_s0): Use gfc_iso_c_sub_interface.
+ (resolve_bind_c_comms): New function.
+ (resolve_bind_c_derived_types): Ditto.
+ (gfc_verify_binding_labels): Ditto.
+ (resolve_fl_procedure): Check for ISO C interoperability.
+ (resolve_symbol): Check C interoperability.
+ (resolve_types): Walk the namespace. Check COMMON blocks.
+ * trans-decl.c (gfc_sym_mangled_identifier): Prevent the mangling
+ of identifiers that have an assigned binding label.
+ (gfc_sym_mangled_function_id): Use the binding label rather than
+ the mangled name.
+ (gfc_finish_var_decl): Put variables that are BIND(C) into a common
+ segment of the object file, because this is what C would do.
+ (gfc_create_module_variable): Conver to proper types
+ (set_tree_decl_type_code): New function.
+ (generate_local_decl): Check dummy variables and derived types for
+ ISO C Binding attributes.
+ * match.c (gfc_match_small_int_expr): New function.
+ (gfc_match_name_C): Ditto.
+ (match_common_name): Deal with ISO C Binding in COMMON blocks
+ * trans-io.c (transfer_expr): Deal with C_NULL_PTR or C_NULL_FUNPTR
+ expressions
+ * match.h: Add prototypes for gfc_match_small_int_expr,
+ gfc_match_name_C, match_common_name, set_com_block_bind_c,
+ set_binding_label, set_verify_bind_c_sym,
+ set_verify_bind_c_com_block, get_bind_c_idents,
+ gfc_match_bind_c_stmt, gfc_match_suffix, gfc_match_bind_c,
+ gfc_get_type_attr_spec
+ * parse.c (decode_statement): Use gfc_match_bind_c_stmt
+ (parse_derived): Init *derived_sym = NULL, and gfc_current_block
+ later for valiadation.
+ * primary.c (got_delim): Set ISO C Binding components of ts.
+ (match_logical_constant): Ditto.
+ (match_complex_constant): Ditto.
+ (match_complex_constant): Ditto.
+ (gfc_match_rvalue): Check for existence of at least one arg for
+ C_LOC, C_FUNLOC, and C_ASSOCIATED.
+ * misc.c (gfc_clear_ts): Clear ISO C Bindoing components in ts.
+ (get_c_kind): New function.
+
+2007-07-01 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR fortran/32239
+ * trans-expr.c (gfc_conv_power_op): Use builtin_powi for
+ real**int4 powers.
+ * f95-lang.c (gfc_init_builtin_functions): Add builtin_powi to the
+ builtins table.
+
+2007-07-01 Janne Blomqvist <jb@gcc.gnu.org>
+
+ * trans.h: Remove decls for 64-bit allocation functions.
+ * trans-array.c (gfc_grow_array): Always pick the standard realloc
+ function decl.
+ (gfc_array_allocate): Likewise.
+ * trans-decl.c: Remove trees for 64-bit allocation functions.
+ (gfc_build_builtin_function_decls): Don't build fndecls for 64-bit
+ allocations functions, use index_int_type for normal allocation
+ functions.
+
+2007-06-30 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/20373
+ * intrinsic.c (add_functions): Additional function types.
+ (gfc_convert_type_warn): Remove intrinsic-flag from
+ conversion functions.
+ * resolve.c (resolve_symbol): Added type checks to
+ explicitly defined intrinsics.
+
+2007-06-30 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/32555
+ * io.c (check_format): Allow zero to precede the
+ P edit descriptor.
+
+2007-06-30 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/32472
+ * simplify.c (gfc_simplify_repeat): Add handling of character
+ literal for first argument.
+
+2007-06-29 Daniel Franke <franke.daniel@gmail.com>
+
+ * resolve.c (resolve_operator): Added check whether a user
+ defined operator is available.
+
+2007-06-29 Daniel Franke <franke.daniel@gmail.com>
+
+ * openmp.c (resolve_omp_clauses): Adjust error message to
+ better reflect the actual requirement.
+
+2007-06-29 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/32483
+ * io.c (format_lex): Fix FMT_ZERO.
+ (check_format,check_format_string,gfc_match_format,
+ check_io_constraints) Additional checking for READ.
+
+2007-06-28 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR other/31400
+ * lang.opt (static-libgfortran): New option.
+ * gfortranspec.c (ADD_ARG_LIBGFORTRAN): New macro.
+ (Option): Add OPTION_static and OPTION_static_libgfortran.
+ (lookup_option): Handle the new -static-libgfortran option.
+ (lang_specific_driver): Check whether -static is passed.
+ Handle the new -static-libgfortran option.
+ * options.c (gfc_handle_option): If -static-libgfortran is
+ passed and isn't supported on this configuration, error out.
+
+2007-06-27 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/32467
+ * openmp.c (resolve_omp_clauses): Emit error on allocatable
+ components in COPYIN, COPYPRIVATE, FIRSTPRIVATE and LASTPRIVATE
+ clauses.
+
+2007-06-25 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/32464
+ * resolve.c (check_host_association): Return if the old symbol
+ is use associated. Introduce retval to reduce the number of
+ evaluations of the first-order return value.
+
+ PR fortran/31494
+ * match.c (gfc_match_call): If a host associated symbol is not
+ a subroutine, build a new symtree/symbol in the current name
+ space.
+
+2007-06-24 Tobias Burnus <burnus@net-de>
+
+ PR fortran/32460
+ * interface.c (gfc_compare_derived_types): Add access check.
+ * symbol.c (gfc_find_component): Ditto.
+ (gfc_set_component_attr,gfc_get_component_attr) Copy access state.
+ * dump-parse-tree.c (gfc_show_components): Dump access state.
+ * gfortran.h (struct gfc_component): Add gfc_access.
+ * module.c (mio_component): Add access state.
+ * (gfc_match_structure_constructor): Check for private access state.
+
+2007-06-24 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/32298
+ PR fortran/31726
+ * trans-intrinsic.c (gfc_conv_intrinsic_minmaxloc): Calculate
+ the offset between the loop counter and the position as
+ defined. Add the offset within the loop so that the mask acts
+ correctly. Do not advance the location on the basis that it
+ is zero.
+
+2007-06-22 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/31473
+ * symbol.c (gfc_copy_attr): Emit errors for duplicate
+ EXTERNAL/INTRINSIC statements.
+
+2007-06-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/32360
+ * expr.c (gfc_check_assign): If the rvalue expression type is NULL_EXPR,
+ check to see if the lvalue has attribute pointer and data.
+
+2007-06-21 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/31162
+ * resolve.c (gfc_resolve_iterator_expr): Add check for REAL using
+ gfc_notify_standard. (gfc_resolve_iterator): Remove check.
+ (resolve_branch): Change "Obsolete" to "Deleted feature".
+ * io.c (resolve_tag): Ditto.
+ * match.c (gfc_match_pause, gfc_match_assign, gfc_match_goto): Ditto.
+
+2007-06-20 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/32361
+ * match.c (gfc_match_common): If the symbol value expression type is
+ NULL_EXPR, don't error if previously initialized.
+
+2007-06-20 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/25061
+ * decl.c (get_proc_name) Check symbol for generic interface
+ and issue an error.
+
+2007-06-20 Andrew Pinski <andrew_pinski@playstation.sony.com>
+ Richard Guenther <rguenther@suse.de>
+
+ PR fortran/32140
+ * trans.c (gfc_build_addr_expr): Use the correct types.
+
+2007-06-19 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/20863
+ PR fortran/20882
+ * resolve.c (resolve_code): Use gfc_impure_variable as a
+ condition for rejecting derived types with pointers, in pure
+ procedures.
+ (gfc_impure_variable): Add test for dummy arguments of pure
+ procedures; any for functions and INTENT_IN for subroutines.
+
+ PR fortran/32236
+ * data.c (gfc_assign_data_value): Change the ICE on an array
+ reference initializer not being an array into an error and
+ clear init to prevent a repetition of the error.
+
+2007-06-17 Janne Blomqvist <jb@gcc.gnu.org>
+
+ * gfortran.texi: Add documentation for GFORTRAN_UNBUFFERED_n
+ environment variables. Fix documentation for
+ GFORTRAN_UNBUFFERED_ALL environment variable.
+
+2007-06-15 Andrew Pinski <andrew_pinski@playstation.sony.com>
+
+ * trans-intrinsic.c (gfc_conv_intrinsic_repeat): Use
+ POINTER_PLUS_EXPR instead of PLUS_EXPR for pointer addition.
+ * trans-expr.c (gfc_trans_string_copy): Create
+ POINTER_PLUS_EXPR instead of a PLUS_EXPR
+ for pointer types.
+
+2007-06-14 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/32302
+ * trans-common.c (build_common_decl): If resizing of common
+ decl is needed, update the TREE_TYPE.
+
+2007-06-13 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/32323
+ * interface.c (has_vector_section): New.
+ (compare_actual_formal): Check for array sections with vector subscript.
+
+2007-06-12 Dirk Mueller <dmueller@suse.de>
+
+ * trans-stmt.c (gfc_trans_call): fix gcc_assert to
+ a comparison, not an assignment.
+
+2007-06-12 Paul Thomas <pault@gcc.gnu.org>
+
+ * trans-common.c (create_common): Initialize 'field_init'.
+
+2007-06-12 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/29786
+ PR fortran/30875
+ * trans-common.c (get_init_field): New function.
+ (create_common): Call get_init_field for overlapping
+ initializers in equivalence blocks.
+ * resolve.c (resolve_equivalence_derived, resolve_equivalence):
+ Remove constraints on initializers in equivalence blocks.
+ * target-memory.c (expr_to_char, gfc_merge_initializers):
+ New functions.
+ (encode_derived): Add the bit offset to the byte offset to get
+ the total offset to the field.
+ * target-memory.h : Add prototype for gfc_merge_initializers.
+
+2007-06-11 Rafael Avila de Espindola <espindola@google.com>
+
+ * trans-types.c (gfc_signed_type): Remove.
+ * trans-types.h (gfc_signed_type): Remove.
+ * f95-lang.c (LANG_HOOKS_SIGNED_TYPE): Remove.
+
+2007-06-08 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * trans-intrinsic.c: Revert Lee's 2007-06-04 patch.
+
+2007-06-07 Steven G. Kargl <kargl@gcc.gnu.org>
+ Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/32223
+ * match.c (gfc_match_special_char): New function. Match special char.
+ Add handling '\0'.
+ * match.h: Add prototype.
+ * io.c (next_char): Use it.
+ * primary.c (next_string_char): Ditto.
+
+2007-06-06 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * decl.c: Miscellaneous whitespace fixes.
+ * expr.c: Likewise.
+ * gfortran.h: Likewise.
+ * interface.c : Likewise.
+ * io.c: Likewise.
+ * match.c: Likewise.
+ * match.h: Likewise.
+ * module.c: Likewise.
+ * parse.c: Likewise.
+ * resolve.c: Likewise.
+ * symbol.c: Likewise.
+ * trans-array.c: Likewise.
+ * trans-common.c: Likewise.
+ * trans-decl.c: Likewise.
+ * trans-intrinsic.c: Likewise.
+ * trans-io.c: Likewise.
+ * trans-stmt.c: Likewise.
+ * trans-types.c: Likewise.
+
+2007-06-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/18923
+ * parse.c (decode_statement): Don't call gfc_undo_symbols on MATCH_ERROR
+ for ST_FUNCTION since it is called in reject_statement.
+ (parse_contained): If error, loop back after reject_statement and try
+ again. Free the namespace if an error occured.
+
+2007-06-04 Lee Millward <lee.millward@codesourcery.com>
+
+ * trans-intrinsic.c (gfc_conv_intrinsic_function_args): Adjust
+ to operate on a stack allocated array for the intrinsic arguments
+ instead of creating a TREE_LIST. Add two new parameters for the
+ array and the number of elements. Update all callers to allocate
+ an array of the correct length to pass in. Update comment.
+ (gfc_intrinsic_argument_list_length): New function.
+ (gfc_conv_intrinsic_mnimax): Call it.
+ (gfc_conv_intrinsic_merge): Likewise.
+ (gfc_conv_intrinsic_lib_function): Call it. Use new CALL_EXPR
+ constructors.
+ (gfc_conv_intrinsic_cmplx): Likewise.
+ (gfc_conv_intrinsic_ctime): Likewise.
+ (gfc_covn_intrinsic_fdate): Likewise.
+ (gfc_conv_intrinsic_ttynam): Likewise.
+ (gfc_conv_intrinsic_ishftc): Likewise.
+ (gfc_conv_intrinsic_index): Likewise.
+ (gfc_conv_intrinsic_scan): Likewise.
+ (gfc_conv_intrinsic_verify): Likewise.
+ (gfc_conv_intrinsic_trim): Likewise.
+ (gfc_conv_intrinsic_aint): Use new CALL_EXPR constructors.
+ (gfc_conv_intrinsic_exponent): Likewise.
+ (gfc_conv_intrinsic_bound): Likewise.
+ (gfc_conv_intrinsic_abs): Likewise.
+ (gfc_conv_intrinsic_mod): Likewise.
+ (gfc_conv_intrinsic_sign): Likewise.
+ (gfc_conv_intrinsic_len): Likewise.
+ (gfc_conv_intrinsic_adjust): Likewise.
+ (gfc_conv_intrinsic_si_kind): Likewise.
+
+2007-06-04 Steve Ellcey <sje@cup.hp.com>
+
+ * trans-array.c (gfc_conv_array_parameter): Initialize tmp.
+
+2007-05-31 Richard Guenther <rguenther@suse.de>
+
+ * trans-expr.c (gfc_conv_expr_op): Use zero constant
+ that matches the lse type.
+ (gfc_trans_string_copy): Use sizetype zero constant.
+ * intrinsic.c (add_functions): The sizeof intrinsic has
+ index type result.
+ * trans-types.c (gfc_get_dtype): Convert size to index
+ type before shifting.
+ * trans-array.c (gfc_trans_array_constructor_value): Use
+ index type for offset computation.
+ * trans-intrinsic.c (gfc_conv_associated): Use correct type
+ for zero constant.
+
+2007-05-31 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/32156
+ * trans-array.c (gfc_trans_array_constructor): Treat the case
+ where the ss expression charlen is missing.
+
+22007-05-31 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/32103
+ * module.c (mio_symtree_ref): If an equivalence group member
+ is not used, give it a hidden symbol and set the pointer_info.
+ (load_equiv): Only free the equivalence if none of the members
+ are used.
+
+2007-05-29 Daniel Franke <franke.daniel@gmail.com>
+
+ * gfortran.h: Renamed 'enum gfc_generic_isym_id' to 'enum gfc_isym_id',
+ added missing GFC_ISYM_* enumerators, ordered alphabetically.
+ (struct gfc_intrinsic_sym): Renamed 'generic_id' to 'id'.
+ (gfc_find_subroutine): New prototype.
+ * intrinsic.c (add_sym, add_sym_*): Added argument 'id' and changed all callers.
+ (find_subroutine): Renamed to 'gfc_find_subroutine', removed static.
+ * dependency.c: Changed usage of isym->generic_id to isym->id.
+ * openmp.c: Likewise.
+ * resolve.c: Likewise.
+ * trans-array.c: Likewise.
+ * trans-expr.c: Likewise.
+ * trans-intrinsic.c: Likewise.
+ * trans-openmp.c: Likewise.
+
+2007-05-28 Tobias Schlüter <tobi@gcc.gnu.org>
+
+ * gfortran.h (gfc_generic_isym_id): Add GFC_ISYM_SIZEOF.
+ * intrinsic.c (add_functions): Add stuff for SIZEOF intrinsic.
+ * intrinsic.h (gfc_check_sizeof): Add prototype of ...
+ * check.c (gfc_check_sizeof): .. new function.
+ * trans-intrinsic.c (gfc_conv_intrinsic_sizeof): New function.
+ (gfc_conv_intrinsic_strcmp): Whitespace fix.
+ (gfc_conv_intrinsic_array_transfer): Remove double initialization,
+ use fold_build. where appropriate.
+ (gfc_conv_intrinsic_function): Add case for SIZEOF.
+ * intrinsic.texi: Add documentation for SIZEOF.
+
+2007-05-28 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * trans-array.c (gfc_conv_expr_descriptor): Edit comment.
+
+2007-05-28 Brooks Moses <brooks.moses@codesourcery.com>
+
+ PR fortran/31972
+ * target-memory.c (gfc_target_expr_size): Add handling
+ for size of BT_HOLLERITH variables.
+ * check.c (gfc_check_transfer): Reject BT_HOLLERITH
+ variables in MOLD argument of TRANSFER.
+
+2007-05-28 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * gfortran.h (gfc_expr): Remove from_H, add "representation"
+ struct.
+ * primary.c (match_hollerith_constant): Store the representation
+ of the Hollerith in representation, not in value.character.
+ * arith.c: Add dependency on target-memory.h.
+ (eval_intrinsic): Remove check for from_H.
+ (hollerith2representation): New function.
+ (gfc_hollerith2int): Determine value of the new constant.
+ (gfc_hollerith2real): Likewise.
+ (gfc_hollerith2complex): Likewise.
+ (gfc_hollerith2logical): Likewise.
+ (gfc_hollerith2character): Point both representation.string and
+ value.character.string at the value string.
+ * data.c (create_character_initializer): For BT_HOLLERITH
+ rvalues, get the value from the representation rather than
+ value.character.
+ * expr.c (free_expr0): Update handling of BT_HOLLERITH values
+ and values with representation.string.
+ (gfc_copy_expr): Likewise.
+ * intrinsic.c (do_simplify): Remove special treatement of
+ variables resulting from Hollerith constants.
+ * dump-parse-trees.c (gfc_show_expr): Update handling of
+ Holleriths.
+ * trans-const.c (gfc_conv_constant_to_tree): Replace from_H
+ check with check for representation.string; get Hollerith
+ representation from representation.string, not value.character.
+ * trans-expr.c (is_zero_initializer_p): Replace from_H check
+ with check for representation.string.
+ * trans-stmt.c (gfc_trans_integer_select): Use
+ gfc_conv_mpz_to_tree for case values, so as to avoid picking up
+ the memory representation if the case is given by a transfer
+ expression.
+ * target-memory.c (gfc_target_encode_expr): Use the known memory
+ representation rather than the value, if it exists.
+ (gfc_target_interpret_expr): Store the memory representation of
+ the interpreted expression as well as its value.
+ (interpret_integer): Move to gfc_interpret_integer, make
+ non-static.
+ (interpret_float): Move to gfc_interpret_float, make non-static.
+ (interpret_complex): Move to gfc_interpret_complex, make
+ non-static.
+ (interpret_logical): Move to gfc_interpret_logical, make
+ non-static.
+ (interpret_character): Move to gfc_interpret_character, make
+ non-static.
+ (interpret_derived): Move to gfc_interpret_derived, make
+ non-static.
+ * target-memory.h: Add prototypes for newly-exported
+ gfc_interpret_* functions.
+
+2007-05-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/31812
+ * parse.c (next_statement): Warn for truncated lines if source is free
+ form.
+
+2007-05-27 Paul Thomas <pault@gcc.gnu.org>
+ Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/32088
+ * symbol.c (gfc_check_function_type): Copy dimensions of
+ result variable.
+ * resolve.c (resolve_contained_fntype): Improve symbol output in
+ the error message.
+
+2007-05-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/31813
+ * io.c (check_format): Add warning for H specifier in format.
+
+2007-05-26 Tobias Burnus <burnus@net-b.de>
+
+ * gfortran.texi: Document the GFORTRAN_ERROR_DUMPCORE and
+ GFORTRAN_ERROR_BACKTRACE environment variables.
+
+2007-05-26 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31219
+ * trans.h : Add no_function_call bitfield to gfc_se structure.
+ Add stmtblock_t argument to prototype of get_array_ctor_strlen.
+ * trans-array.c (get_array_ctor_all_strlen): New function.
+ (get_array_ctor_strlen): Add new stmtblock_t argument and call
+ new function for character elements that are not constants,
+ arrays or variables.
+ (gfc_conv_array_parameter): Call get_array_ctor_strlen to get
+ good string length.
+ * trans-intrinsic (gfc_conv_intrinsic_len): Add new argument
+ to call of get_array_ctor_strlen.
+
+2007-05-25 Kazu Hirata <kazu@codesourcery.com>
+
+ * intrinsic.texi: Fix typos.
+
+2007-05-25 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/32047
+ * trans-expr.c (gfc_apply_interface_mapping_to_expr): Change
+ order in logic under EXPR_FUNCTION to handle functions with
+ no arguments.
+
+2007-05-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/31716
+ * array.c (spec_dimen_size): Test for correct BT_INTEGER type.
+
+2007-05-23 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/32046
+ * trans-expr.c (gfc_trans_zero_assign): Convert the result of
+ TYPE_SIZE_UNIT into a signed type.
+ (gfc_trans_array_copy): Likewise.
+ (gfc_trans_array_constructor_copy): Likewise.
+ * trans-array.c (gfc_trans_create_temp_array): Likewise.
+ (gfc_grow_array): Likewise.
+ (gfc_array_init_size): Likewise.
+ (gfc_duplicate_allocatable): Likewise.
+ * trans-stmt.c (allocate_temp_for_forall_nest_1): Likewise.
+
+2007-05-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/18923
+ * resolve.c (resolve_function): Don't call resolve_global_procedure if
+ there is no name. Delete duplicated statement in ELSE clause.
+
+2007-05-22 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31627
+ * trans-array.c (gfc_trans_array_bound_check): Take extra argument to
+ indicate whether we should check the upper bound in that dimension.
+ (gfc_conv_array_index_offset): Check only the lower bound of the
+ last dimension for assumed-size arrays.
+ (gfc_conv_array_ref): Likewise.
+ (gfc_conv_ss_startstride): Likewise.
+
+2007-05-21 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+ Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/32002
+ * resolve.c (resolve_actual_arglist): Resolve actual argument after
+ being identified as variable.
+
+2007-05-21 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/32027
+ * trans-stmt.c (gfc_trans_do): Fix the value of loop variable
+ when the loop ends.
+
+2007-05-21 H.J. Lu <hongjiu.lu@intel.com>
+
+ * trans-stmt.c (gfc_trans_do): Fix a typo in comment.
+
+2007-05-21 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31867
+ PR fortran/31994
+ * trans-array.c (gfc_conv_expr_descriptor): Obtain the stored
+ offset for non-descriptor, source arrays and correct for stride
+ not equal to one before writing to field of output descriptor.
+
+2007-05-20 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/32001
+ * check.c (check_rest): Improved argument conformance check and
+ fixed error message generation.
+
+2007-05-19 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/30820
+ * Make-lang.in: Remove use of -Wno-error for expr.o, resolve.o,
+ simplify.o and trans-common.o.
+
+2007-05-19 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31974
+ * trans-array.c (gfc_trans_auto_array_allocation): Avoid
+ multiplication of mismatched types.
+
+2007-05-18 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/24633
+ * symbol.c (gfc_add_flavor): Add the NAME to error message if
+ available.
+
+2007-05-15 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/31919
+ PR fortran/31929
+ PR fortran/31930
+ * intrinsic.c (check_specific): Check elemental intrinsics for
+ rank and shape.
+ (add_functions): Fixed dummy argument names of BESJN and BESYN.
+ Fixed elemental status of MCLOCK and MCLOCK8.
+ * check.c (check_rest): Added check for array conformance.
+ (gfc_check_merge): Removed check for array conformance.
+ (gfc_check_besn): Removed check for scalarity.
+ * intrinsic.texi (CSHIFT, EOSHIFT): Fixed typos.
+ (BESJN, BESYN): Clarified documentation.
+
+2007-05-17 Tobias Burnus <burnus@net-b.de>
+
+ * gfortran.texi (GFORTRAN_CONVERT_UNIT): Improve documentation.
+
+2007-05-16 Brooks Moses <brooks.moses@codesourcery.com>
+
+ PR fortran/18769
+ PR fortran/30881
+ PR fortran/31194
+ PR fortran/31216
+ PR fortran/31427
+ * target-memory.c: New file.
+ * target-memory.h: New file.
+ * simplify.c: Add #include "target-memory.h".
+ (gfc_simplify_transfer): Implement constant-
+ folding for TRANSFER intrinsic.
+ * Make-lang.in: Add dependencies on new target-memory.* files.
+
+2007-05-15 Paul Brook <paul@codesourcery.com>
+
+ * trans-types.c (gfc_type_for_size): Handle signed TImode.
+
+2007-05-14 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/30723
+ * trans.h (gfor_fndecl_internal_malloc, gfor_fndecl_internal_malloc64,
+ gfor_fndecl_internal_free): Remove prototypes.
+ (gfor_fndecl_os_error, gfc_call_free, gfc_call_malloc): Add prototypes.
+ * trans.c (gfc_call_malloc, gfc_call_free): New functions.
+ * f95-lang.c (gfc_init_builtin_functions): Add __builtin_free
+ and __builtin_malloc builtins.
+ * trans-decl.c (gfor_fndecl_internal_malloc,
+ gfor_fndecl_internal_malloc64, gfor_fndecl_internal_free): Remove.
+ (gfor_fndecl_os_error): Add.
+ (gfc_build_builtin_function_decls): Don't create internal_malloc,
+ internal_malloc64 and internal_free library function declaration.
+ Create os_error library call function declaration.
+ * trans-array.c (gfc_trans_allocate_array_storage,
+ gfc_trans_auto_array_allocation, gfc_trans_dummy_array_bias,
+ gfc_conv_array_parameter, gfc_duplicate_allocatable): Use
+ gfc_call_malloc and gfc_call_free instead of building calls to
+ internal_malloc and internal_free.
+ * trans-expr.c (gfc_conv_string_tmp): Likewise.
+ * trans-stmt.c (gfc_do_allocate, gfc_trans_assign_need_temp,
+ gfc_trans_pointer_assign_need_temp, gfc_trans_forall_1,
+ gfc_trans_where_2: Likewise.
+ * trans-intrinsic.c (gfc_conv_intrinsic_ctime,
+ gfc_conv_intrinsic_fdate, gfc_conv_intrinsic_ttynam,
+ gfc_conv_intrinsic_array_transfer, gfc_conv_intrinsic_trim): Likewise.
+
+2007-05-14 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31725
+ * trans-expr.c (gfc_conv_substring): Evaluate substring bounds
+ only once.
+
+2007-05-14 Rafael Avila de Espindola <espindola@google.com>
+
+ * f95-lang.c (LANG_HOOKS_UNSIGNED_TYPE): Remove.
+ * trans-intrinsic.c (gfc_conv_intrinsic_ishft): Use unsigned_type_for
+ instead of gfc_unsigned_type.
+ * trans-stmt.c (gfc_trans_do): Use unsigned_type_for instead of
+ gfc_unsigned_type.
+ * trans-types.c (gfc_unsigned_type): Remove.
+ * trans-types.h (gfc_unsigned_type): Remove.
+
+2007-05-12 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30746
+ * resolve.c (check_host_association): New function that detects
+ incorrect host association and corrects it.
+ (gfc_resolve_expr): Call the new function for variables and
+ functions.
+ * match.h : Remove prototype for gfc_match_rvalue.
+ * gfortran.h : Add prototype for gfc_match_rvalue.
+
+2007-05-11 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30876
+ * trans-expr.c (gfc_conv_function_call): Reduce indirection for
+ direct assignments of recursive array valued functions.
+ * primary.c (gfc_match_rvalue): Correct error for recursive
+ function calls such that directly recursive calls of scalar
+ function without an explicit result are disallowed.
+
+2007-05-11 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30878
+ * resolve.c (resolve_fl_namelist): It is not an error if the
+ namelist element is the result variable of the enclosing
+ function. Search for the symbol in current and all parent
+ namespaces for a potential conflict.
+ * symbol.c (check_conflict): Remove the conflict between
+ 'in_namelist' and 'FL_PROCEDURE' because the symbol info
+ is not available to exclude function result variables.
+ * trans-io.c (nml_get_addr_expr): Use the fake result decl
+ if the symbol is an implicit result variable.
+
+2007-05-11 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31474
+ * decl.c (get_proc_name): If an entry has already been declared
+ as a module procedure, pick up the symbol and the symtree and
+ use them for the entry.
+
+2007-05-08 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31630
+ * resolve.c (resolve_symbol): Remove the flagging mechanism from the
+ formal namespace resolution and instead check that the formal
+ namespace is not the current namespace.
+
+2007-05-08 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31692
+ * trans-array.c (gfc_conv_array_parameter): Convert full array
+ references to the result of the procedure enclusing the call.
+
+2007-05-08 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/29397
+ PR fortran/29400
+ * decl.c (add_init_expr_to_sym): Expand a scalar initializer
+ for a parameter array into an array expression with the right
+ shape.
+ * array.c (spec_dimen_size): Remove static attribute.
+ * gfortran.h : Prototype for spec_dimen_size.
+
+2007-05-07 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31399
+ * trans-stmt.c (gfc_trans_do): Handle large loop counts.
+
+2007-05-07 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31764
+ * simplify.c (gfc_simplify_new_line): NEW_LINE can be simplified
+ even for non constant arguments.
+
+2007-05-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+ Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31201
+ * gfortran.h: Add runtime error codes from libgfortran.h. Define
+ MAX_UNIT_NUMBER.
+ * trans.c (gfc_trans_runtime_check): Update the format of runtime error
+ messages to match library runtime errors. Use call to new library
+ function runtime_error_at().
+ * trans.h: Add prototype for new function gfc_trans_io_runtime_check.
+ Add declaration for library functions runtime_error_at and
+ generate_error.
+ * trans_io.c (gfc_trans_io_runtime_check): New function.
+ (set_parameter_value): Add error checking for UNIT numbers.
+ (set_parameter_ref): Initialize the users variable to zero.
+ (gfc_trans_open): Move setting of unit number to after setting of common
+ flags so that runtime error trapping can be detected.
+ (gfc_trans_close): Likewise. (build_filepos): Likewise.
+ (gfc_trans_inquire): Likewise. (build_dt): Likewise.
+ * trans-decl.c: Add declarations for runtime_error_at and
+ generate_error. (gfc_build_builtin_function_decls): Build function
+ declarations for runtime_error_at and generate_error.
+
+2007-05-06 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31540
+ * resolve.c (resolve_fl_procedure): Resolve constant character
+ lengths.
+
+2007-05-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/31251
+ * decl.c (match_char_spec): Add check for invalid character lengths.
+
+2007-05-04 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * intrinsic.texi (CMPLX): Document result kind.
+ (COMPLEX): Add documentation.
+
+2007-05-04 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/31760
+ * intrinsic.c (add_functions): Replaced calls to gfc_check_g77_math1
+ by gfc_check_fn_r to avoid checks for scalarity.
+ * check.c (gfc_check_besn): Removed check for scalarity.
+ (gfc_check_g77_math1): Removed.
+ * intrinsic.h (gfc_check_g77_math1): Removed.
+
+2007-05-04 Daniel Franke <franke.daniel@gmail.com>
+
+ * check.c (gfc_check_fseek_sub): Fixed typo.
+
+2007-05-04 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/22359
+ * intrinsic.c (add_subroutines): Added FSEEK.
+ * intrinsic.h (gfc_resolve_fseek_sub, gfc_check_fseek_sub): New.
+ * iresolve.c (gfc_resolve_fseek_sub): New.
+ * check.c (gfc_check_fseek_sub): New.
+ * intrinsic.texi (FSEEK): Updated.
+
+2007-05-04 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/31803
+ * expr.c (gfc_check_pointer_assign): Check for NULL pointer.
+
+2007-05-04 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/31251
+ * simplify.c (gfc_simplify_len): Only simplify integer lengths.
+
+2007-05-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31781
+ * simplify.c (gfc_simplify_repeat): Don't put function call with
+ side effect in a gcc_assert().
+
+2007-05-04 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/25071
+ * interface.c (compare_actual_formal): Check character length.
+
+2007-05-01 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/31732
+ * dependency.c (gfc_full_array_ref_p): If the reference is
+ to a single element, check that the array has a single
+ element and that the correct element is referenced.
+
+2007-05-01 Daniel Franke <franke.daniel@gmail.com>
+
+ * intrinsic.c (add_functions): Fixed ELEMENTAL specifications.
+ (add_subroutines): Replaced magic numbers in function calls by
+ ELEMENTAL and NOT_ELEMENTAL respectively.
+ * intrinsic.texi (MVBITS): Changed class to elemental subroutine.
+ (RANDOM_NUMBER): Changed class to subroutine.
+ (HUGE, TINY): Changed class to inquiry function.
+
+2007-04-30 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * trans-const.c (gfc_conv_mpz_to_tree): Use mpz_get_double_int.
+ (gfc_conv_tree_to_mpz): New function.
+ (gfc_conv_mpfr_to_tree): Use real_from_mpfr.
+ (gfc_conv_tree_to_mpfr): New function.
+ * trans-const.h: (gfc_conv_tree_to_mpz): New prototype.
+ (gfc_conv_tree_to_mpfr): New prototype.
+
+2007-04-30 Daniel Franke <franke.daniel@gmail.com>
+
+ * intrinsic.texi (IERRNO): Changed class to non-elemental function.
+ (LOG10): Removed COMPLEX as accepted argument type.
+ (NEW_LINE): Changed class from elemental to inquiry function.
+ (SIGN): Removed requirement of scalar arguments.
+ (SNGL): Changed class to elemental function.
+
+2007-04-29 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31591
+ * simplify.c (simplify_bound_dim): New function.
+ (simplify_bound): Use the above. Perform simplification of LBOUND
+ and UBOUND when DIM argument is not present.
+
+2007-04-29 Daniel Franke <franke.daniel@gmail.com>
+
+ * gfortran.texi: Cleaned up keyword index.
+ * invoke.texi: Likewise.
+ * intrinsic.texi: Likewise.
+
+2007-04-29 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31645
+ * scanner.c (load_file): Discard the byte order mark if one is
+ found on the first non-preprocessor line of a file.
+
+2007-04-29 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31711
+ * trans-array.c (gfc_conv_resolve_dependencies): Create a temp
+ whenever a dependency is found.
+
+2007-04-28 Tobias Schlüter <tobi@gcc.gnu.org>
+
+ * options.c (gfc_handle_option): Ensure requested free form line
+ length is not too small.
+
+2007-04-27 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * intrinsic.texi (Transfer): Improve documentation.
+
+2007-04-27 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * gfortran.texi (Option Index): Add @samp as needed.
+
+2007-04-27 Daniel Franke <franke.daniel@gmail.com>
+
+ * gfortran.texi: Added node and menu entry for an option index.
+ * invoke.texi: Moved command line option related entries of the concept
+ index to the option index.
+
+2007-04-27 Daniel Franke <franke.daniel@gmail.com>
+
+ * intrinsic.texi (AND, FPUT, FPUTC, MODULO, OR, SET_EXPONENT,
+ XOR): Fixed examples.
+
+2007-04-27 Daniel Franke <franke.daniel@gmail.com>
+
+ * intrinsic.texi (PRODUCT, RESHAPE, SPACING, SPREAD, SUM,
+ SYSTEM_CLOCK, TRANSFER, UNPACK): New.
+ (DATE_AND_TIME, CPU_TIME, RRSPACING): Added cross references.
+
+2007-04-26 Daniel Franke <franke.daniel@gmail.com>
+
+ * intrinsic.texi (NULL, PACK, PRESENT, REPEAT, SCAN, SHAPE,
+ SIZE, TRANSPOSE, TRIM, VERIFY): New.
+ (ADJUSTL, ADJUSTR, INDEX): Added cross references.
+ (INT, INT2, INT8, LONG): Enabled section header.
+
+2007-04-25 Janne Blomqvist <jb@gcc.gnu.org>
+
+ * module.c (module_char): Replace fgetc() with
+ getc().
+ (write_char): Replace fputc() with putc().
+ * scanner.c (load_line): Replace fgetc() with getc().
+ (gfc_read_orig_filename): Likewise.
+
+2007-04-25 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/31668
+ * error.c (error_print): Fix %% support.
+ * intrinsic.c (sort_actual): Improve error message.
+ * resolve.c (resolve_actual_arglist): Allow %VAL for
+ interfaces defined in the module declaration part.
+
+2007-04-25 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR libfortran/31299
+ * intrinsic.texi (GETLOG): Update documentation to reflect
+ library changes.
+
+2007-04-24 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31587
+ * module.c (write_char): Add character to the MD5 buffer.
+ (read_md5_from_module_file): New function.
+ (gfc_dump_module): Compute MD5 for new module file. Call
+ read_md5_from_module_file. Only overwrite old module file
+ if the new MD5 is different.
+
+2007-04-23 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31630
+ * resolve.c (resolve_symbol): Allow resolution of formal
+ namespaces nested within formal namespaces coming from modules.
+
+ PR fortran/31620
+ * trans-expr.c (gfc_trans_assignment): Make the call to
+ gfc_trans_zero_assign conditional on the lhs array ref being
+ the only reference.
+
+2007-04-23 Tobias Burnus <burnus@net-b.de>
+
+ * primary.c (match_integer_constant): Mention -fno-range-check
+ in the error message.
+
+2007-04-21 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/31495
+ * scanner.c (load_line): Remove check for comment after ampersand and
+ adjust tracking of ampersand.
+
+2007-04-21 Andrew Pinski <andrew_pinski@playstation.sony.com>
+
+ * f95-lang.c (lang_tree_node): Use GENERIC_NEXT
+ instead of checking GIMPLE_STMT_P in chain_next.
+
+2007-04-17 Tobias Schlüter <tobi@gcc.gnu.org>
+
+ * trans-types.h (gfc_packed): New enum.
+ (gfc_get_nodesc_array_type): Change prototype to use new enum.
+ * trans-types.c (gfc_get_nodesc_array): Use gfc_packed for
+ argument packed. Adapt all references to values accordingly.
+ (gfc_sym_type): Use enum values in call to gfc_get_nodesc_array.
+ (gfc_get_derived_type): Likewise.
+ * trans-array.c (gfc_build_constant_array_constructor): Likewise.
+ * trans-expr.c (gfc_get_interface_mapping_charlen): Changed packed
+ argument to type gfc_packed.
+ (gfc_add_interface_mapping): Use enum values in call to
+ gfc_get_interface_mapping.
+ * trans-decl.c (gfc_build_dummy_array_decl): Adapt to use enum
+ values when determining packing.
+
+ * trans-decl.c (gfc_finish_decl): Remove unused second argument
+ 'init'. Simplify code accordingly. Remove calls to
+ gfc_fatal_error in favor of gcc_assert.
+ (create_function_arglist): Remove second argument from calls to
+ gfc_finish-decl.
+ (gfc_trans_dummy_character): Likewise.
+
+ * arith.h: Update copyright years.
+ * dependency.h: Likewise.
+ * gfortran.h: Likewise.
+ * lang-specs.h: Likewise.
+ * parse.h: Likewise.
+ * symbol.c: Likewise.
+ * trans.h: Likewise.
+ * trans.c: Likewise.
+ * trans-array.c: Likewise.
+ * trans-common.c: Likewise.
+ * trans-const.h: Likewise.
+ * trans-const.c: Likewise.
+ * trans-decl.c: Likewise.
+ * trans-expr.c: Likewise.
+ * trans-io.c: Likewise.
+ * trans-openmp.c: Likewise.
+ * trans-types.h: Likewise.
+ * types.def: Likewise.
+
+2007-04-17 Tobias Schlüter <tobi@gcc.gnu.org>
+
+ PR fortran/31144
+ * decl.c (gfc_sym_mangled_identifier): Use capital letters in name
+ mangling.
+ (gfc_sym_mangled_function_id): Likewise.
+
+2007-04-15 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31204
+ * primary.c (check_for_implicit_index): New function to check
+ that a host associated variable is not an undeclared implied
+ do loop index.
+ (gfc_match_rvalue, match_variable): Use it and reset the
+ implied_index attribute.
+ * gfortran.h : Add the implied_index field to symbol_attribute.
+ * match.c (gfc_match_iterator): Mark the iterator variable
+ with the new attribute.
+ * decl.c (build_sym): Reset the new attribute.
+
+2007-04-15 Kazu Hirata <kazu@codesourcery.com>
+
+ * gfc-internals.texi: Fix typos.
+ * simplify.c: Fix a comment typo.
+
+2007-04-14 Bernhard Fischer <aldot@gcc.gnu.org>
+
+ * primary.c: Commentary typo fix; Add question about redundant (?)
+ set.
+
+2007-04-14 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/29507
+ PR fortran/31404
+ * expr.c (scalarize_intrinsic_call): New function to
+ scalarize elemental intrinsic functions in initialization
+ expressions.
+ (check_init_expr): Detect elemental intrinsic functions
+ in initalization expressions and call previous.
+
+2007-04-13 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/31559
+ * primary.c (match_variable): External functions
+ are no variables.
+
+2007-04-13 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31550
+ * trans-types.c (copy_dt_decls_ifequal): Do not get pointer
+ derived type components.
+
+2007-04-13 Tobias Schlüter <tobi@gcc.gnu.org>
+
+ PR fortran/18937
+ * resolve.c: Include obstack.h and bitmap.h. New variable
+ labels_obstack.
+ (code_stack): Add tail and reachable_labels fields.
+ (reachable_labels): New function.
+ (resolve_branch): Rework to use new fields in code_stack.
+ (resolve_code): Call reachable_labels.
+ (resolve_codes): Allocate and free labels_obstack.
+
+2007-04-12 Tobias Schlüter <tobi@gcc.gnu.org>
+
+ PR fortran/31250
+ * decl.c (match_char_spec): Move check for negative CHARACTER
+ length ...
+ * resolve.c (resolve_charlen): ... here.
+ (resolve_types): Resolve CHARACTER lengths earlier.
+
+2007-04-12 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/31234
+ * intrinsic.texi (RANDOM_SEED, RANDOM_NUMBER): New.
+
+2007-04-12 Tobias Schlüter <tobi@gcc.gnu.org>
+
+ PR fortran/31266
+ * primary.c (gfc_variable_attr): Don't copy string length if it
+ doesn't make sense.
+ * resolve.c (resolve_code): Clarify error message.
+
+ PR fortran/31471
+ * decl.c (gfc_match_end): Also check for construct name in END
+ FORALL and END WERE statements.
+ * match.c (match_case_eos): Use uppercase for statement name in
+ error message.
+ (match_elsewhere): Construct name may appear iff construct has a
+ name.
+
+ * trans-types.c: Update copyright years. Reformat long comment
+ explaining array descriptor format. Remove obsolete mention of
+ TYPE_SET.
+
+ * arith.c (gfc_arith_uplus): Rename to ...
+ (gfc_arith_identity): ... this.
+ (gfc_parentheses): New function.
+ (gfc_uplus): Adapt to renamed function.
+ * arith.h (gfc_parentheses): Add prototype.
+ * expr.c (gfc_copy_expr): Deal with INTRINSIC_PARENTHESES.
+ (simplifiy_intrinsic_op): Treat INTRINSIC_UPLUS separately from
+ INTRINSIC_PARENTHESES.
+
+2007-04-12 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/31472
+ * decl.c (match_attr_spec): Allow PRIVATE/PUBLIC
+ attribute in type definitions.
+ (gfc_match_private): Allow PRIVATE statement only
+ in specification part of modules.
+ (gfc_match_public): Ditto for PUBLIC.
+ (gfc_match_derived_decl): Allow PRIVATE/PUBLIC attribute only in
+ specificification part of modules.
+
+2007-04-07 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31257
+ * intrinsic.c (add_functions): Add ref. to gfc_resolve_achar.
+ * intrinsic.h : Add prototype for gfc_resolve_achar.
+ * iresolve.c (gfc_resolve_achar): New function.
+
+2007-04-07 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30880
+ * resolve.c (resolve_fl_variable): Set flag to 2 for automatic
+ arrays. Make condition for automatic array error explicit.
+ If a dummy, no error on an INTENT(OUT) derived type.
+
+2007-04-07 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30872
+ * expr.c (find_array_element): Correct arithmetic for rank > 1.
+
+2007-04-07 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31222
+ * check.c (numeric_check): If an expresson has not got a type,
+ see if it is a symbol for which a default type applies.
+
+2007-04-07 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31214
+ * trans-decl.c (gfc_get_symbol_decl): Allow unreferenced use
+ associated symbols.
+
+2007-04-07 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31293
+ * symbol.c (gfc_check_function_type): New function.
+ * gfortran.h : Add prototype for previous.
+ * parse.c (parse_progunit): Call it after parsing specification
+ statements.
+
+2007-04-05 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31483
+ * trans-expr.c (gfc_conv_function_call): Give a dummy
+ procedure the correct type if it has alternate returns.
+
+2007-04-05 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31292
+ * decl.c (gfc_match_modproc): Go up to the top of the namespace
+ tree to find the module namespace for gfc_get_symbol.
+
+2007-04-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31304
+ * fortran/gfortran.h (gfc_charlen_int_kind): New prototype.
+ * fortran/trans-types.c (gfc_charlen_int_kind): New variable.
+ (gfc_init_types): Define gfc_charlen_int_kind.
+ * fortran/trans.h (gfor_fndecl_string_repeat): Remove prototype.
+ * fortran/trans-decl.c (gfor_fndecl_string_repeat): Delete.
+ (gfc_build_intrinsic_function_decls): Don't set
+ gfor_fndecl_string_repeat.
+ * fortran/trans-intrinsic.c (gfc_conv_intrinsic_repeat): Rewrite
+ so that we don't have to call a library function.
+ * fortran/simplify.c (gfc_simplify_repeat): Perform the necessary
+ checks on the NCOPIES argument, and work with arbitrary size
+ arguments.
+
+2007-03-31 Tobias Burnus <burnus@net-b.de>
+
+ * intrinsic.c (add_functions): Fix name of dummy argument
+ for new_line and exit intrinsic.
+
+2007-03-31 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31160
+ * gfortran.texi: Add a section for the %VAL, %REF and %LOC
+ extensions.
+
+2007-03-30 Rafael Avila de Espindola <espindola@google.com>
+
+ * trans-types.c (gfc_signed_or_unsigned_type): Remove.
+ (gfc_unsigned_type): Use get_signed_or_unsigned_type instead of
+ gfc_signed_or_unsigned_type.
+ (gfc_signed_type): Ditto.
+ * trans-types.h (gfc_signed_or_unsigned_type): Remove.
+ * f95-lang.c (LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): Remove.
+
+2007-03-30 Tobias Schlüter <tobi@gcc.gnu.org>
+
+ * symbol.c (gfc_find_gsymbol): Simplify, don't unconditionally
+ descend into all branches.
+
+2007-03-29 Tobias Schlüter <tobi@gcc.gnu.org>
+
+ * intrinsic.c (conv_name): Let gfc_get_string handle the format.
+ (find_conv): Compare pointers instead of calling strcmp.
+ (find_sym): Likewise, but ensure that the compared pointer is in
+ the global string table.
+
+2007-03-28 Tobias Schlüter <tobi@gcc.gnu.org>
+
+ * gfc-internals.texi: Fix output filename. Merge type index into
+ concept index. Start documentation of gfc_code structure.
+
+2007-03-26 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * gfc-internals.texi: New file,
+ * Make-lang.in: Add rules to convert it to dvi, pdf, and info.
+
+2007-03-26 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * error.c (show_locus): Remove always-false test.
+
+2007-03-26 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * lang.opt: Minor edits to descriptions.
+
+2007-03-25 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/30877
+ * fortran/interface.c (check_operator_interface): Implement
+ the standard checks on user operators extending intrinsic operators.
+ * fortran/resolve.c (resolve_operator): If the ranks of operators
+ don't match, don't error out but try the user-defined ones first.
+
+2007-03-24 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/30655
+ * expr.c (check_dimension): Fix logic of comparisons.
+
+2007-03-24 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31215
+ * trans-expr.c (gfc_apply_interface_mapping_to_expr): Return
+ int result that is non-zero if the expression is the function
+ result. Only the characteristics of the result expression
+ can be used in a procedure interface, so simplify LEN in situ
+ using its character length.
+
+ PR fortran/31209
+ PR fortran/31200
+ * trans-expr.c (gfc_conv_function_call): Do not use
+ gfc_conv_expr_reference for actual pointer function with formal
+ target because a temporary is created that does not transfer
+ the reference correctly. Do not indirect formal pointer
+ functions since it is the function reference that is needed.
+
+2007-03-24 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * gfortran.h: Edit comments on GFC_STD_*.
+
+2007-03-23 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * invoke.texi: Misc. small typo fixes.
+ (-Wcharacter-truncation): Add.
+ (-Wnonstd-intrinsics): Correct spelling.
+ (-std=): Edit.
+ (-fintrinsic-modules-path): Add.
+
+2007-03-23 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/30834
+ * arith.c (complex_pow): Rewrite to handle large power.
+ (gfc_arith_power): Handle large power in the real and integer
+ cases.
+
+2007-03-22 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ PR fortran/31262
+ * trans-const.c (gfc_conv_mpz_to_tree): Allow integer constants
+ larger than twice the width of a HOST_WIDE_INT.
+
+2006-03-22 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31193
+ * trans-intrinsic.c (gfc_size_in_bytes): Remove function.
+ (gfc_conv_intrinsic_array_transfer): Remove calls to previous.
+ Explicitly extract TREE_TYPEs for source and mold. Use these
+ to calculate length of source and mold, except for characters,
+ where the se string_length is used. For mold, the TREE_TYPE is
+ recalculated using gfc_get_character_type_len so that the
+ result is correctly cast for character literals and substrings.
+ Do not use gfc_typenode_for_spec for the final cast.
+
+2007-03-22 Tobias Schlüter <tobi@gcc.gnu.org>
+
+ PR fortran/20897
+ * decl.c (gfc_match_derived_decl): Reliably reject
+ 'doubleprecision' and 'doublecomplex' as type names.
+
+2007-03-19 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ PR fortran/31203
+ * trans-expr.c (gfc_trans_init_string_length): Length should
+ never be negative.
+ (gfc_conv_function_call): Likewise.
+
+2007-03-18 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30531
+ PR fortran/31086
+ * symbo.c : Add gfc_derived_types.
+ (gfc_free_dt_list): Free derived type list gfc_derived_types.
+ (gfc_free_namespace): Remove call to gfc_free_dt_list.
+ (gfc_symbol_done_2): Call gfc_free_dt_list.
+ * gfortran.h : Declare gfc_derived_types to be external. Remove
+ derived types field from gfc_namespace.
+ * resolve.c (resolve_fl_derived): Refer to gfc_derived types
+ rather than namespace derived_types.
+ (resolve_fntype): Remove special treatment for module
+ derived type functions.
+ * trans-types.c (gfc_get_derived_type): Remove search for like
+ derived types. Finish by copying back end declaration to like
+ derived types in the derived type list gfc_derived_types.
+
+ 2007-03-17 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ PR fortran/31120
+ * trans-expr.c (gfc_conv_powi): Make n argument unsigned hwi.
+ (gfc_conv_cst_int_power): Handle integer exponent with care,
+ since it might be too large for us.
+
+2007-03-17 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ PR fortran/31184
+ * invoke.texi: Fix typo.
+
+2007-03-16 Tobias Burnus <burnus@net-b.de>
+
+ * trans-decl.c (gfc_generate_function_code): Use all arguments of
+ set_std.
+
+2007-03-15 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ * gfortran.h (gfc_option_t): Add flag_backtrace field.
+ * lang.opt: Add -fbacktrace option.
+ * invoke.texi: Document the new option.
+ * trans-decl.c (gfc_build_builtin_function_decls): Add new
+ option to the call to set_std.
+ * options.c (gfc_init_options, gfc_handle_option): Handle the
+ new option.
+
+2007-03-15 Tobias Burnus <burnus@gcc.gnu.org>
+ Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30922
+ * decl.c (gfc_match_import): If the parent of the current name-
+ space is null, try looking for an imported symbol in the parent
+ of the proc_name interface.
+ * resolve.c (resolve_fl_variable): Do not check for blocking of
+ host association by a same symbol, if the symbol is in an
+ interface body.
+
+2007-03-15 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30879
+ * decl.c (match_data_constant): Before going on to try to match
+ a name, try to match a structure component.
+
+
+ PR fortran/30870
+ * resolve.c (resolve_actual_arglist): Do not reject a generic
+ actual argument if it has a same name specific interface.
+
+ PR fortran/31163
+ * trans-array.c (parse_interface): Do not nullify allocatable
+ components if the symbol has the saved attribute.
+
+2007-03-14 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ * trans-array.c (gfc_trans_auto_array_allocation): Replace
+ fold(convert()) by fold_convert().
+ (gfc_duplicate_allocatable): Likewise.
+ * trans-intrinsic.c (gfc_conv_intrinsic_dot_product): Use
+ build_int_cst instead of converting an integer_zero_node
+ to the final type.
+
+2007-03-14 Jakub Jelinek <jakub@redhat.com>
+
+ * module.c (mio_typespec): Don't look at ts->cl if not BT_CHARACTER.
+
+2007-03-13 Brooks Moses <brooks.moses@codesourcery.com>
+
+ PR fortran/30933
+ PR fortran/30948
+ PR fortran/30953
+ * intrinsics.texi (CHDIR): Fix argument names, note
+ that STATUS must be a default integer.
+ (CTIME): Fix argument names, note that RESULT must
+ be a default integer.
+ (EXIT): Note that STATUS must be a default integer.
+
+2007-03-13 Brooks Moses <brooks.moses@codesourcery.com>
+
+ PR fortran/28068
+ * intrinsic.texi: General whitespace cleanup, remove
+ comment about missing intrinsics.
+ (menu): Add lines for new entries listed below.
+ (ACOSH): Mention specific function DACOSH, correct
+ description phrasing.
+ (ASINH): Mention specific function DASINH, correct
+ description phrasing.
+ (ATANH): Mention specific function DATANH, correct
+ description phrasing.
+ (COS): Add index entry for CCOS.
+ (CPU_TIME): Correct "REAL" to "REAL(*)".
+ (EXP): Add index entry for CEXP.
+ (INT): Correct argument name to "A".
+ (INT2): New entry.
+ (INT8): New entry.
+ (LONG): New entry.
+ (MAX): Add index entries for specific variants.
+ (MCLOCK): New entry.
+ (MCLOCK8): New entry.
+ (SECNDS): Adjust to a more standard form.
+ (SECOND): New entry.
+ (TIME): Add cross-reference to MCLOCK.
+ (TIME8): Add cross-reference to MCLOCK8.
+
+2007-03-11 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30883
+ * parse.c (parse_interface): Use the default types from the
+ formal namespace if a function or its result do not have a type
+ after parsing the specification statements.
+
+2007-03-08 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * intrinsic.texi: (ICHAR) Improve internal I/O note.
+ (ACHAR): Reference it.
+ (CHAR): Reference it.
+ (IACHAR): Reference it.
+
+2007-03-08 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * intrinsic.texi: (LINK) Document function form.
+ (RENAME): Likewise.
+ (SYMLNK): Likewise.
+ (SYSTEM): Likewise.
+ (UNLINK): Likewise.
+
+2007-03-08 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * intrinsic.texi: minor typo fixes, removed prologue.
+ (FSEEK): moved to correct place in alphabetical order.
+
+2007-03-08 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/30947
+ * check.c (gfc_check_alarm_sub): Added check for default integer
+ kind of status argument.
+ * iresolve.c (gfc_resolve_alarm_sub): Removed conversion of
+ status argument.
+ * intrinsic.texi (ALARM): Extended documentation.
+
+2007-03-08 Daniel Franke <franke.daniel@gmail.com>
+
+ * intrinsic.texi (GERROR, ISATTY, TTYNAM): New.
+ (ABORT, FLUSH, FNUM, IRAND, MALLOC, SIGNAL, SRAND): Fixed typo.
+ * intrinsic.c (add_subroutines): Adjusted dummy argument names
+ of GERROR and TTYNAM.
+
+2007-07-08 Tobias Burnus <burnus@net-b.de>
+
+ * module.c (gfc_match_use): Support renaming of operators
+ in USE statements.
+ * gfortran.texi (Fortran 2003 Status): Document support of
+ renaming of operators.
+
+2007-07-08 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/30973
+ * module.c (read_module): Always import module name as symbol.
+ (gfc_match_use): Disallow module name in the only clause of
+ a use statement.
+
+2007-03-08 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/31011
+ * expr.c (find_array_section): Correct arithmetic for section
+ size.
+
+2007-03-07 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * iresolve.c (gfc_resolve_ishftc): Correct s_kind value.
+
+2007-03-06 Daniel Franke <franke.daniel@gmail.com>
+
+ PR documentation/30950
+ * intrinsic.texi (AND, CPU_TIME): Fix dummy argument names.
+ (FREE): Fix call syntax.
+
+2007-03-06 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * intrinsic.texi: Limit column widths to a total of .85.
+
+2007-03-05 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * gfortran.texi (GFortran and G77): Rewrite completely.
+
+2007-03-05 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * match.c (gfc_match_name): Expanded comment.
+
+2007-03-05 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * gfortran.texi (Old-style kind specifications): Document
+ special handling of old-style kind specifiers for COMPLEX.
+ * decl.c (gfc_match_old_kind_spec): Document kind/bytesize
+ assumptions for COMPLEX in comment.
+
+2007-03-05 Brooks Moses <brooks.moses@codesourcery.com>
+
+ PR 31050
+ * gfortranspec.c (lang_specific_driver): Update program
+ name and copyright date.
+
+2007-03-03 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30882
+ * check.c (dim_rank_check): The shape of subsections of
+ assumed-size arrays is known.
+
+2007-03-02 Paul Thomas <pault@gcc.gnu.org>
+ Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/30873
+ * decl.c (gfc_match_entry): Remove erroneous entry result check.
+
+2007-03-01 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * Make-lang.in: Add install-pdf target as copied from
+ automake v1.10 rules.
+
+2007-03-01 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/30865
+ * trans-intrinsic.c (gfc_conv_intrinsic_size): Compare pointers.
+
+2007-02-28 Tobias Burnus <burnus@net-b.de>
+ Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30888
+ PR fortran/30887
+ * resolve.c (resolve_actual_arglist): Allow by-value
+ arguments and non-default-kind for %VAL().
+ * trans-expr.c (conv_arglist_function): Allow
+ non-default-kind for %VAL().
+
+2007-02-28 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/30968
+ * primary.c (next_string_char): Correct reading a character
+ after the delimiter.
+ (match_string_constant): Print warning message only once.
+
+2007-02-27 Richard Guenther <rguenther@suse.de>
+
+ * trans-array.c (structure_alloc_comps): Use correct type
+ for null pointer constant.
+
+2007-02-26 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * gfortran.texi: Standardize title page, remove version number
+ from copyright page.
+
+2007-02-26 Thomas Koenig <Thomas.Koenig@online.de>
+ Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30865
+ * trans-intrinsic.c (gfc_conv_intrinsic_size):
+ If dim is an optional argument, check for its
+ presence and call size0 or size1, respectively.
+
+2007-02-23 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30660
+ * resolve.c (has_default_initializer): New function.
+ (resolve_fl_variable): Call has_default_initializer to determine if
+ the derived type has a default initializer to its ultimate
+ components.
+
+
+2007-02-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ * options.c (set_default_std_flags): New function to consolidate
+ setting the flags.
+ (gfc_init_options): Use new function.
+ (gfc_handle_option): Use new function.
+
+2007-02-22 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * gfortran.texi (Old-style kind specifications): Document
+ special handling of old-style kind specifiers for COMPLEX.
+ * decl.c (gfc_match_old_kind_spec): Documented kind/bytesize
+ assumptions in comment.
+
+2007-02-21 Bernhard Fischer <aldot@gcc.gnu.org>
+
+ * parse.c (next_free): Gooble spaces after OpenMP sentinel.
+
+2007-02-20 Thomas Koenig <Thomas.Koenig@online.de>
+
+ PR fortran/30869
+ * match.c (gfc_match_iterator): Remove conflict between
+ loop variable and pointer.
+
+2007-02-20 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/30522
+ * symbol.c (gfc_add_volatile): Allow to set VOLATILE
+ attribute for host-associated variables.
+ * gfortran.h (symbol_attribute): Save namespace
+ where VOLATILE has been set.
+ * trans-decl.c (gfc_finish_var_decl): Move variable
+ declaration to the top.
+
+2007-02-20 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/30783
+ * resolve.c (resolve_symbol): Add character dummy VALUE check.
+
+2007-02-19 Thomas Koenig <Thomas.Koenig@online.de>
+
+ PR libfortran/30533
+ * fortran/iresolve.c (gfc_resolve_maxloc): Remove coercion of
+ argument to default integer.
+ (gfc_resolve_minloc): Likewise.
+
+2007-02-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/30681
+ * options.c (gfc_init_options): Relax warning level for obsolescent.
+ * match.c (match_arithmetic_if): Change to obsolescent from deleted.
+ (gfc_match_if): Same.
+
+2007-02-18 Roger Sayle <roger@eyesopen.com>
+
+ * trans-array.c (gfc_build_constant_array_constructor): When the
+ shape of the constructor is known, use that to construct the
+ gfc_array_spec.
+ (gfc_trans_constant_array_constructor): Initialize the "info"
+ information for all of the dimensions of the array constructor.
+ (constant_array_constructor_loop_size): New function.
+ (gfc_trans_array_constructor): Use it to determine whether a
+ loop is suitable for "constant array constructor" optimization.
+
+ * trans-intrinsic.c (gfc_conv_intrinsic_anyall): Use fold_build2
+ instead of build2, to avoid conditions like "(a != b) != 0".
+
+2007-02-18 Roger Sayle <roger@eyesopen.com>
+ Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30400
+ * match.c (match_forall_iterator): Use gfc_match_expr instead
+ of gfc_match_variable to match the iterator variable. Return
+ MATCH_NO if not a variable. Remove the reset of the symbol's
+ flavor in cleanup.
+
+2007-02-16 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/30793
+ * trans-decl.c (gfc_generate_function_code): Do not initialize
+ pointers to derived components.
+
+2007-02-15 Sandra Loosemore <sandra@codesourcery.com>
+ Brooks Moses <brooks.moses@codesourcery.com>
+ Lee Millward <lee.millward@codesourcery.com>
+
+ * trans-expr.c (gfc_conv_power_op): Use build_call_expr.
+ (gfc_conv_string_tmp): Likewise.
+ (gfc_conv_concat_op): Likewise.
+ (gfc_build_compare_string): Likewise.
+ (gfc_conv_function_call): Use build_call_list instead of build3.
+
+ * trans-array.c (gfc_trans_allocate_array_storage): Use
+ build_call_expr.
+ (gfc_grow_array): Likewise.
+ (gfc_trans_array_ctor_element): Likewise.
+ (gfc_trans_array_constructor_value): Likewise.
+ (gfc_array_allocate): Likewise.
+ (gfc_array_deallocate): Likewise.
+ (gfc_trans_auto_array_allocation): Likewise.
+ (gfc_trans_dummy_array_bias): Likewise.
+ (gfc_conv_array_parameter): Likewise.
+ (gfc_trans_dealloc_allocated): Likewise.
+ (gfc_duplicate_allocatable): Likewise.
+
+ * trans-openmp.c (gfc_trans_omp_barrier): Use build_call_expr.
+ (gfc_trans_omp_flush): Likewise.
+
+ * trans-stmt.c (gfc_conv_elementel_dependencies): Use build_call_expr.
+ (gfc_trans_pause): Likewise.
+ (gfc_trans_stop): Likewise.
+ (gfc_trans_character_select): Likewise.
+ (gfc_do_allocate): Likewise.
+ (gfc_trans_assign_need_temp): Likewise.
+ (gfc_trans_pointer_assign_need_temp): Likewise.
+ (gfc_trans_forall_1): Likewise.
+ (gfc_trans_where_2): Likewise.
+ (gfc_trans_allocate): Likewise.
+ (gfc_trans_deallocate): Likewise.
+
+ * trans.c (gfc_trans_runtime_check): Use build_call_expr.
+
+ * trans-io.c (gfc_trans_open): Use build_call_expr.
+ (gfc_trans_close): Likewise.
+ (build_filepos): Likewise.
+ (gfc_trans_inquire): Likewise.
+ (NML_FIRST_ARG): Delete.
+ (NML_ADD_ARG): Delete.
+ (transfer_namelist_element): Use build_call_expr.
+ (build_dt): Likewise.
+ (gfc_trans_dt_end): Likewise.
+ (transfer_expr): Likewise.
+ (transfer_array-desc): Likewise.
+
+ * trans-decl.c (gfc_generate_function_code): Use build_call_expr.
+ (gfc_generate_constructors): Likewise.
+
+ * trans-intrinsic.c (gfc_conv_intrinsic_ctime): Use build_call_expr.
+ (gfc_conv_intrinsic_fdate): Likewise.
+ (gfc_conv_intrinsic_ttynam): Likewise.
+ (gfc_conv_intrinsic_array_transfer): Likewise.
+ (gfc_conv_associated): Likewise.
+ (gfc_conv_intrinsic_si_kind): Likewise.
+ (gfc_conv_intrinsic_trim): Likewise.
+ (gfc_conv_intrinsic_repeat: Likewise.
+ (gfc_conv_intrinsic_iargc): Likewise.
+
+2007-02-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/30779
+ * scanner.c (gfc_next_char_literal): Add check for end of file after
+ call to advance_line.
+
+2007-02-14 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/30799
+ * primary.c (match_logical_constant): Return MATCH_ERROR on invalid
+ kind.
+
+2007-02-14 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * misc.c (gfc_typename): Fix potential buffer overflow.
+
+2007-02-13 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30554
+ * module.c (read_module): Set pointer_info to referenced if the
+ symbol has no namespace.
+
+2007-02-12 Nick Clifton <nickc@redhat.com>
+
+ * lang.opt: Add Warning attribute to warning options.
+
+2007-02-11 Daniel Franke <franke.daniel@gmail.com>
+
+ * intrinsic.texi (HOSTNM): Fix typographical error in syntax.
+ (SLEEP): Added section and documentation.
+
+2007-02-11 Tobias Schlüter <tobi@gcc.gnu.org>
+
+ PR fortran/30478
+ * decl.c (add_init_expr_to_sym): Remove ENUM specific code.
+ (variable_decl): Likewise. Rewrap comment.
+ (match_attr_spec): Remove ENUM specific code.
+ (gfc_match_enum): Fix typo in error message.
+ (enumerator_decl): New function.
+ (gfc_match_enumerator_def): Use enumerator_decl instead of
+ variable_decl. Adapt code accordingly.
+
+2007-02-11 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30554
+ * module.c (find_symtree_for_symbol): New function to return
+ a symtree that is not a "unique symtree" given a symbol.
+ (read_module): Do not automatically set pointer_info to
+ referenced because this inhibits the generation of a unique
+ symtree. Recycle the existing symtree if possible by calling
+ find_symtree_for_symbol.
+
+ PR fortran/30319
+ * decl.c (add_init_expr_to_sym): Make new charlen for an array
+ constructor initializer.
+
+2007-02-10 Richard Henderson <rth@redhat.com>, Jakub Jelinek <jakub@redhat.com>
+
+ * f95-lang.c (gfc_init_builtin_functions): Add __emutls_get_address
+ and __emutls_register_common.
+ * openmp.c (gfc_match_omp_threadprivate): Don't error if !have_tls.
+ * trans-common.c (build_common_decl): Don't check have_tls.
+ * trans-decl.c (gfc_finish_var_decl): Likewise.
+ * types.def (BT_WORD, BT_FN_PTR_PTR): New.
+ (BT_FN_VOID_PTR_WORD_WORD_PTR): New.
+
+2007-02-09 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/30512
+ * trans-intrinsic.c (gfc_conv_intrinsic_minmaxloc,
+ gfc_conv_intrinsic_minmaxval): Use HUGE-1 for most negative integer.
+
+2007-02-09 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ PR fortran/30720
+ * trans-array.c (gfc_trans_create_temp_array): Remove use of the
+ function argument. Always generate code for negative extent.
+ Simplify said code.
+ * trans-array.h (gfc_trans_create_temp_array): Change prototype.
+ * trans-expr.c (gfc_conv_function_call): Remove use of last argument
+ of gfc_trans_create_temp_array.
+ * trans-intrinsic.c (gfc_conv_intrinsic_array_transfer): Likewise.
+ * trans-stmt.c (gfc_conv_elemental_dependencies): Likewise.
+
+2007-02-08 Roger Sayle <roger@eyesopen.com>
+
+ * trans-stmt.c (gfc_trans_forall_1): Optimize the cases where the
+ mask expression is a compile-time constant (".true." or ".false.").
+
+2007-02-04 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ PR fortran/30611
+ * trans-intrinsic.c (gfc_conv_intrinsic_repeat): Evaluate
+ arguments only once. Generate check that NCOPIES argument is not
+ negative.
+
+2007-02-04 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/30605
+ * fortran/invoke.texi: Update documentation.
+ * fortran/options.c (gfc_post_options): Deal with tabs with -std=f2003
+ and -pedantic.
+
+2007-02-03 Kazu Hirata <kazu@codesourcery.com>
+
+ * trans-array.c: Fix a comment typo.
+
+2007-02-03 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30514
+ * array.c (match_array_element_spec): If the length of an array is
+ negative, adjust the upper limit to make it zero length.
+
+ PR fortran/30660
+ * resolve.c (pure_function, resolve_function): Initialize name to
+ null to clear up build warnings.
+ (resolve_fl_variable): Look at components explicitly to check for
+ default initializer, rather than using gfc_default_initializer.
+
+2007-02-02 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/30683
+ * resolve.c (resolve_generic_f): Check for non-NULL sym.
+
+2007-02-02 Roger Sayle <roger@eyesopen.com>
+
+ * trans.c (gfc_build_array_ref): Use STRIP_TYPE_NOPS to eliminate
+ NON_LVALUE_EXPR nodes and useless type conversions.
+
+2007-02-02 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30284
+ PR fortran/30626
+ * trans-expr.c (gfc_conv_aliased_arg): Remove static attribute
+ from function and make sure that substring lengths are
+ translated.
+ (is_aliased_array): Remove static attribute.
+ * trans.c : Add prototypes for gfc_conv_aliased_arg and
+ is_aliased_array.
+ * trans-io.c (set_internal_unit): Add the post block to the
+ arguments of the function. Use is_aliased_array to check if
+ temporary is needed; if so call gfc_conv_aliased_arg.
+ (build_dt): Pass the post block to set_internal_unit and
+ add to the block after all io activiy is done.
+
+2007-02-01 Roger Sayle <roger@eyesopen.com>
+
+ * trans-array.c (gfc_conv_expr_descriptor): We don't need to use
+ a temporary array to pass a constant non-character array constructor.
+ Generalize the descriptor generation code to handle scalarizer
+ "info" without an array reference.
+
+2007-02-01 Roger Sayle <roger@eyesopen.com>
+
+ * dependency.c (gfc_check_dependency) <EXPR_ARRAY>: Implement
+ dependency checking for array constructors.
+
+2007-02-01 Roger Sayle <roger@eyesopen.com>
+
+ * trans-stmt.c (compute_overall_iter_number): Document function
+ arguments. Generalize "unconditional forall nest with constant
+ bounds" optimization to eliminate unconditional inner loops with
+ constant bounds.
+
+2007-01-31 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/30520
+ * interface.c (compare_actual_formal): Check conformance between
+ actual and VOLATILE dummy arguments.
+ * symbol.c (gfc_add_volatile): Allow setting of VOLATILE
+ multiple times in different scopes.
+ * decl.c (gfc_match_volatile): Search symbol in host association.
+
+2007-01-31 Kazu Hirata <kazu@codesourcery.com>
+
+ * simplify.c, trans-array.c: Fix comment typos.
+
+2007-01-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * invoke.texi (Code Gen Options): Fix abbreviation typo.
+ * intrinsic.texi (ACCESS, LSHIFT, RSHIFT): Fix typos.
+
+2007-01-30 Steve Ellcey <sje@cup.hp.com>
+
+ PR fortran/30432
+ * trans-types.c (gfc_get_function_type): Do not add void_type_node
+ to empty arg list.
+ * trans-decl.c (create_function_arglist): Change assert.
+
+2007-01-29 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30554
+ * module.c (read_module): If a symbol is excluded by an ONLY
+ clause, check to see if there is a symtree already loaded. If
+ so, attach the symtree to the pointer_info.
+
+2007-01-28 Thomas Koenig <Thomas.Koenig@online.de>
+
+ PR libfortran/30389
+ * gfortran.h: Remove gfc_simplify_init_1.
+ * arith.h: Remove third argument from gfc_compare_string.
+ * arith.c (gfc_compare_expression): Remove third argument
+ from call to gfc_compare_string.
+ (gfc_compare_string): Remove third argument xcoll_table.
+ Remove use of xcoll_table.
+ * misc.c (gfc_init_1): Remove call to gfc_simplify_init_1.
+ * simplify.c (ascii_table): Remove.
+ (xascii_table): Likewise.
+ (gfc_simplify_achar): ICE if extract_int fails. Remove use of
+ ascii_table. Warn if -Wsurprising and value < 0 or > 127.
+ (gfc_simplify_char): ICE if extract_int fails. Error if
+ value < 0 or value > 255.
+ (gfc_simplify_iachar): Remove use of xascii_table.
+ Char values outside of 0..255 are an ICE.
+ (gfc_simplify_lge): Remove use of xascii_table.
+ (gfc_simplify_lgt): Likewise.
+ (gfc_simplify_lle): Likewise.
+ (gfc_simplify_llt): Likewise.
+ (invert_table): Remove.
+ (gfc_simplify_init_1): Remove.
+
+2007-01-27 Roger Sayle <roger@eyesopen.com>
+
+ * trans-stmt.c (forall_info): Replace the next_nest and outer
+ fields that previously implemented a doubly-linked list with a
+ single prev_nest field (singly-linked list).
+ (gfc_trans_nested_forall_loop): The nested_forall_info argument
+ now denotes the innermost FORALL in the loop nest.
+ (compute_overall_iter_number): Use prev_nest instead of next_nest.
+ (gfc_trans_forall_1): Link/cons the new "info" to the head of the
+ nested_forall_info linked list. Free the current "info" when done.
+
+2007-01-27 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30407
+ * trans-expr.c (gfc_conv_operator_assign): New function.
+ * trans.h : Add prototype for gfc_conv_operator_assign.
+ * trans-stmt.c (gfc_trans_where_assign): Add a gfc_symbol for
+ a potential operator assignment subroutine. If it is non-NULL
+ call gfc_conv_operator_assign instead of the first assignment.
+ ( gfc_trans_where_2): In the case of an operator assignment,
+ extract the argument expressions from the code for the
+ subroutine call and pass the symbol to gfc_trans_where_assign.
+ resolve.c (resolve_where, gfc_resolve_where_code_in_forall,
+ gfc_resolve_forall_body): Resolve the subroutine call for
+ operator assignments.
+
+2007-01-26 Steven Bosscher <stevenb.gcc@gmail.com>
+ Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/30278
+ * fortran/io.c (next_char): Deal with backslash escaped characters.
+ Issue warnings in non -std=gnu cases.
+ * fortran/primary.c (next_string_char): Issue warnings in non
+
+2007-01-26 Tobias Burnus <burnus@net-b.de>
+
+ * lang-specs.h: Add support for .f03 and .F03 extensions.
+ * gfortran.texi: Document .f03 extension.
+ * options.c (form_from_filename): Recognize .f03.
+
+2007-01-25 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
+
+ PR fortran/30437
+ * lang.opt (Wall): Remove RejectNegative.
+ * options.c (gfc_handle_option): Wall can be disabled.
+ (set_Wall): Add a parameter for disabling Wall.
+
+2007-01-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/30532
+ * scanner.c (load_line): Remove check fot ctrl-z and don't gobble.
+
+2007-01-23 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30481
+ * match.c (gfc_match_namelist): Add check for assumed size character
+ in namelist and provide error if found.
+
+2007-01-21 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * intrinsic.texi (ACHAR): Added cross-references.
+ (CHAR): Put cross-references in alphabetical order.
+ (IACHAR): Added cross-references.
+ (ICHAR): Added cross-references.
+
+2007-01-20 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * intrinsic.texi: Edited all "Syntax" examples to a consistent form.
+ (MAXVAL): Corrected description of result characteristics.
+ (MINVAL): Same.
+ (UMASK): Added documentation.
+
+2007-01-20 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * openmp.c, matchexp.c, module.c, scanner.c, resolve.c, st.c,
+ parse.c, primary.c, options.c, misc.c, simplify.c: Next installment
+ in the massive whitespace patch.
+
+2007-01-20 Roger Sayle <roger@eyesopen.com>
+
+ * module.c (mio_array_ref): The dimen_type fields of an array ref
+ are an enumerated type and can't be read/written directly with a
+ call to mio_integer. Instead loop over and cast each element.
+
+2007-01-20 Roger Sayle <roger@eyesopen.com>
+
+ * dependency.c (gfc_full_array_ref_p): Check that ref->next is NULL,
+ i.e. that the ARRAY_REF doesn't mention components.
+ * trans-array.c (gfc_constant_array_constructor_p): Export external
+ function renamed from constant_array_constructor_p.
+ (gfc_build_constant_array_constructor): Export.
+ (gfc_trans_array_constructor): Update call to the renamed function
+ constant_array_constructor_p.
+ * trans-array.h (gfc_constant_array_constructor_p): Prototype here.
+ (gfc_build_constant_array_constructor): Likewise.
+ * trans-expr.c (gfc_build_memcpy_call): New helper function split
+ out from gfc_trans_array_copy.
+ (gfc_trans_array_copy): Use gfc_build_memcpy_call.
+ (gfc_trans_array_constructor_copy): New function to optimize
+ assigning an entire array from a constant array constructor.
+ (gfc_trans_assignment): Call gfc_trans_array_constructor_copy
+ when appropriate.
+
+2007-01-20 Roger Sayle <roger@eyesopen.com>
+
+ * trans-intrinsic.c (gfc_conv_intrinsic_sign): New branchless
+ implementation for the SIGN intrinsic with integral operands.
+ (gfc_conv_intrinsic_minmax): Fix whitespace.
+
+2007-01-20 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ * gfortran.h (gfc_options_t): Add flag_allow_leading_underscore.
+ * lang.opt: Add -fallow-leading-underscore.
+ * match.c (gfc_match_name): Allow leading underscore in symbol
+ name if -fallow-leading-underscore is used.
+ * symbol.c (gfc_get_default_type): Add special case for symbol
+ names beginning with an underscore.
+ * trans-decl.c (gfc_get_extern_function_decl,
+ gfc_build_intrinsic_function_decls): Add _gfortran prefix to
+ library symbols selected_int_kind, selected_real_kind and
+ all specifics.
+ * options.c (gfc_init_options, gfc_handle_option): Handle the
+ new -fallow-leading-underscore option.
+
+2007-01-20 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ PR fortran/30446
+ * options.c (gfc_handle_module_path_options): Path used in -J
+ option is now added to the module search path.
+
+2007-01-20 Richard Guenther <rguenther@suse.de>
+
+ PR fortran/30223
+ * f95-lang.c (gfc_init_builtin_functions): Provide cbrt and
+ cexpi builtins if we have TARGET_C99_FUNCTIONS. Provide
+ sincos builtins if the target has sincos.
+
+2007-01-19 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * intrinsic.texi (MATMUL): Corrected a typo.
+ (MAX): Separated @var arguments.
+ (MIN): Separated @var arguments.
+
+2007-01-19 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * intrinsic.texi: general whitespace cleanup.
+ (menu): Added TIME8, removed UNMASK.
+ (AINT): Clarified argument requirement.
+ (ANINT): Clarified argument requirement.
+ (CEILING): Clarified argument requirement.
+ (CHAR): Clarified argument requirement.
+ (CMPLX): Clarified argument requirement.
+ (DCMPLX): Clarified argument requirement.
+ (FGET): Line rewrapping.
+ (FLOOR): Clarified argument requirement.
+ (GMTIME): Added documentation.
+ (IAND): Added cross-reference.
+ (IBCLR): Added cross-reference.
+ (IBSET): Added cross-reference.
+ (IEOR): Added cross-reference.
+ (INT): Collapsed examples, clarified argument requirement.
+ (IOR): Added cross-references.
+ (LEN_TRIM): Corrected result kind.
+ (LINK): Added cross-reference.
+ (LLT): Removed "documentation pending".
+ (LOGICAL): Added documentation.
+ (LSHIFT): Added documentation.
+ (LTIME): Added documentation.
+ (MATMUL): Added documentation.
+ (MAX): Added documentation.
+ (MAXLOC): Added documentation.
+ (MAXVAL): Added documentation.
+ (MERGE): Added documentation.
+ (MIN): Added documentation.
+ (MINLOC): Added documentation.
+ (MINVAL): Added documentation.
+ (MVBITS): Moved to correct place, added documentation.
+ (NOT): Added documentation.
+ (PERROR): Added documentation.
+ (RAN): Moved to correct place, added documentation.
+ (REAL): Clarified argument requirement.
+ (RENAME): Added documentation.
+ (RSHIFT): Clarified argument requirement.
+ (SIGN): Corrected table specification.
+ (SYMLNK): Added documentation.
+ (SYSTEM): Added documentation.
+ (TIME): Added documentation.
+ (TIME8): Added section and documentation.
+ (UNMASK): Removed erroneous section.
+
+2007-01-18 H.J. Lu <hongjiu.lu@intel.com>
+
+ * trans-stmt.c (compute_overall_iter_number): Fix a typo.
+
+2007-01-18 Roger Sayle <roger@eyesopen.com>
+
+ * trans-expr.c (copyable_array_p): Consider user derived types without
+ allocatable components to be copyable.
+
+2007-01-18 Roger Sayle <roger@eyesopen.com>
+
+ * trans-stmt.c (compute_overall_iter_number): Enhance to precompute
+ the number of interations in unconditional FORALL nests with constant
+ bounds.
+
+2007-01-18 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+ Tobias Burnus <burnus@net-b.de>
+
+ PR libfortran/29649
+ * gfortran.h (gfc_option_t): Add flag_dump_core.
+ * lang.opt: Add -fdump-core option.
+ * invoke.texi: Document the new options.
+ * trans-decl.c (gfc_build_builtin_function_decls): Add new
+ options to the call to set_std.
+ * options.c (gfc_init_options, gfc_handle_option): Set the
+ new options.
+
+2007-01-17 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30476
+ * module.c (load_generic_interfaces): Make the marking of the
+ symbol as ambiguous conditional on the module names being
+ different.
+ (write_generic): Ensure that the generic interface has a
+ non-NULL module field.
+
+2007-01-16 Roger Sayle <roger@eyesopen.com>
+
+ PR fortran/30404
+ * trans-stmt.c (forall_info): Remove pmask field.
+ (gfc_trans_forall_loop): Remove NVAR argument, instead assume that
+ NVAR covers all the interation variables in the current forall_info.
+ Add an extra OUTER parameter, which specified the loop header in
+ which to place mask index initializations.
+ (gfc_trans_nested_forall_loop): Remove NEST_FLAG argument.
+ Change the semantics of MASK_FLAG to only control the mask in the
+ innermost loop.
+ (compute_overall_iter_number): Optimize the trivial case of a
+ top-level loop having a constant number of iterations. Update
+ call to gfc_trans_nested_forall_loop. Calculate the number of
+ times the inner loop will be executed, not to size of the
+ iteration space.
+ (allocate_temp_for_forall_nest_1): Reuse SIZE as BYTESIZE when
+ sizeof(type) == 1. Tidy up.
+ (gfc_trans_assign_need_temp): Remove NEST_FLAG argument from calls
+ to gfc_trans_nested_forall_loop.
+ (gfc_trans_pointer_assign_need_temp): Likewise.
+ (gfc_trans_forall_1): Remove unused BYTESIZE, TMPVAR, SIZEVAR and
+ LENVAR local variables. Split mask allocation into a separate
+ hunk/pass from mask population. Use allocate_temp_for_forall_nest
+ to allocate the FORALL mask with the correct size. Update calls
+ to gfc_trans_nested_forall_loop.
+ (gfc_evaluate_where_mask): Update call to
+ gfc_trans_nested_forall_loop.
+ (gfc_trans_where_2): Likewise.
+
+2007-01-15 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/28172
+ * trans-stmt.c (gfc_trans_call): If it does not have one, get
+ a backend_decl for an alternate return.
+
+ PR fortran/29389
+ * resolve.c (pure_function): Statement functions are pure. Note
+ that this will have to recurse to comply fully with F95.
+
+ PR fortran/29712
+ * resolve.c (resolve_function): Only a reference to the final
+ dimension of an assumed size array is an error in an inquiry
+ function.
+
+ PR fortran/30283
+ * resolve.c (resolve_function): Make sure that the function
+ expression has a type.
+
+2007-01-14 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30410
+ * trans-decl.c (gfc_sym_mangled_function_id): Module, external
+ symbols must not have the module name prepended.
+
+2007-01-11 Thomas Koenig <Thomas.Koenig@online.de>
+
+ PR libfortran/30415
+ * iresolve.c (gfc_resolve_maxloc): If the rank
+ of the return array is nonzero and we process an
+ integer array smaller than default kind, coerce
+ the array to default integer.
+ * iresolve.c (gfc_resolve_minloc): Likewise.
+
+2007-01-11 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * simplify.c: Update copyright to 2007.
+ * scanner.c: Same.
+
+2007-01-11 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ PR fortran/30430
+ * scanner.c (gfc_release_include_path): Free gfc_option.module_dir
+ only once!
+
+2007-01-09 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * simplify.c (gfc_simplify_ibclr): Fix POS comparison.
+ (gfc_simplify_ibset): Same.
+
+2007-01-09 Brooks Moses <brooks.moses@codesourcery.com>
+
+ PR 30381
+ PR 30420
+ * simplify.c (convert_mpz_to_unsigned): New function.
+ (convert_mpz_to_signed): New function, largely based on
+ twos_complement().
+ (twos_complement): Removed.
+ (gfc_simplify_ibclr): Add conversions to and from an
+ unsigned representation before bit-twiddling.
+ (gfc_simplify_ibset): Same.
+ (gfc_simplify_ishftc): Add checks for overly large
+ constant arguments, only check the third argument if
+ it's present, carry over high bits into the result as
+ appropriate, and perform the final conversion back to
+ a signed representation using the correct sign bit.
+ (gfc_simplify_not): Removed unnecessary masking.
+
+2007-01-09 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30408
+ * resolve.c (resolve_code): Use the code->expr character length
+ directly to set length of llen.
+
+2007-01-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/30408
+ * lang.opt: Add Wcharacter_truncation option.
+ * options.c (gfc_init_options): Initialize
+ gfc_option.warn_character_truncation to zero.
+ (gfc_handle_option): Add case for OPT_Wcharacter_truncation.
+
+2007-01-08 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * interface.c, intrinsic.c, gfortranspec.c, io.c, f95-lang.c,
+ iresolve.c, match.c: Update Copyright years. Whitespace.
+
+2007-01-08 Richard Guenther <rguenther@suse.de>
+
+ * trans-io.c (transfer_array_desc): Use build_int_cst instead
+ of build_int_cstu.
+
+2007-01-08 Roger Sayle <roger@eyesopen.com>
+
+ * trans-array.c (constant_array_constructor_p): New function to
+ determine whether an array constructor consists only of constant
+ elements, and if so return it's size.
+ (gfc_build_constant_array_constructor): Construct a statically
+ initialized gfortran array for a given EXPR_ARRAY.
+ (gfc_trans_constant_array_constructor): Efficiently scalarize
+ a constant array constructor.
+ (gfc_trans_array_constructor): Tidy up use of CONST_STRING.
+ Special case scalarization of constant array constructors, all of
+ whose elements are specified, using constant_array_constructor_p
+ and gfc_trans_constant_array_constructor.
+ (gfc_conv_scalarized_array_ref): Check whetger info->offset is zero
+ before adding it to index, to avoid creating a NON_LVALUE_EXPR.
+
+2007-01-08 Kazu Hirata <kazu@codesourcery.com>
+
+ gfortran.texi: Fix typos.
+
+2007-01-07 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * decl.c, dump-parse-tree.c, error.c, data.c, expr.c, dependency.c,
+ convert.c: Update Copyright dates. Fix whitespace.
+
+2007-01-07 Bernhard Fischer <aldot@gcc.gnu.org>
+
+ * data.c (gfc_assign_data_value): Fix whitespace.
+
+2007-01-07 Bernhard Fischer <aldot@gcc.gnu.org>
+
+ * trans-array.c (gfc_trans_create_temp_array, gfc_array_init_size):
+ Commentary typo fix.
+
+2007-01-07 Bernhard Fischer <aldot@gcc.gnu.org>
+
+ PR fortran/27698
+ * match.c (gfc_match_name): Print diagnostics for invalid
+ character in names.
+
+2007-01-06 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * array.c: Fix whitespace in comment table.
+
+2007-01-06 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * array.c, bbt.c, check.c: Update copyright years. Whitespace.
+
+2007-01-06 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * arith.c: Update copyright years. Whitespace.
+
+2007-01-05 Roger Sayle <roger@eyesopen.com>
+
+ * trans-expr.c (gfc_trans_assignment_1): New subroutine to scalarize
+ array assignments split out from gfc_trans_assignment.
+ (gfc_trans_array_copy): New function to implement array to array
+ copies via calls to __builtin_memcpy.
+ (copyable_array_p): New helper function to identify an array of
+ simple/POD types, that may be copied/assigned using memcpy.
+ (gfc_trans_assignment): Use gfc_trans_array_copy to handle simple
+ whole array assignments considered suitable by copyable_array_p.
+ Invoke gfc_trans_assignment_1 to perform the fallback scalarization.
+
+2007-01-05 Roger Sayle <roger@eyesopen.com>
+
+ * trans-array.c (gfc_trans_array_constructor_value): Make the
+ static const "data" array as TREE_READONLY.
+ * trans-stmt.c (gfc_trans_character_select): Likewise.
+
+2007-01-05 Roger Sayle <roger@eyesopen.com>
+
+ * trans-array.c (gfc_conv_loop_setup): Test whether the loop
+ stride is one, to avoid fold_build2 introducing a useless
+ NON_LVALUE_EXPR node.
+
+2007-01-05 Tobias Burnus <burnus@net-b.de>
+
+ * symbol.c (check_conflict): Fix error message.
+
+2007-01-05 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/23232
+ * decl.c (gfc_in_match_data, gfc_set_in_match_data): New
+ functions to signal that a DATA statement is being matched.
+ (gfc_match_data): Call gfc_set_in_match_data on entry and on
+ exit.
+ * gfortran.h : Add prototypes for above.
+ * expr.c (check_init_expr): Avoid check on parameter or
+ variable if gfc_in_match_data is true.
+ (gfc_match_init_expr): Do not call error on non-reduction of
+ expression if gfc_in_match_data is true.
+
+ PR fortran/27996
+ PR fortran/27998
+ * decl.c (gfc_set_constant_character_len): Add boolean arg to
+ flag array constructor resolution. Warn if string is being
+ truncated. Standard dependent error if string is padded. Set
+ new arg to false for all three calls to
+ gfc_set_constant_character_len.
+ * match.h : Add boolean arg to prototype for
+ gfc_set_constant_character_len.
+ * gfortran.h : Add warn_character_truncation to gfc_options.
+ * options.c (set_Wall): Set warn_character_truncation if -Wall
+ is set.
+ * resolve.c (resolve_code): Warn if rhs string in character
+ assignment has to be truncated.
+ * array.c (gfc_resolve_character_array_constructor): Set new
+ argument to true for call to gfc_set_constant_character_len.
+
+2007-01-05 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/29624
+ * interface.c (compare_parameter_intent): New function.
+ (check_intents): Support pointer intents.
+ * symbol.c (check_conflict): Support pointer intents,
+ better conflict_std message.
+ * expr.c (gfc_check_assign,gfc_check_pointer_assign):
+ Support pointer intents.
+ * resolve.c (resolve_deallocate_expr,resolve_allocate_expr):
+ Support pointer intents.
+
+2007-01-03 Brooks Moses <brooks.moses@codesourcery.com>
+
+ PR 30371
+ * check.c (gfc_check_kill_sub): Add checks for non-scalar
+ arguments.
+
+2007-01-04 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * intrinsic.texi: Minor cleanup, reflowing overlong
+ paragraphs, and correcting whitespace.
+
+2007-01-04 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * intrinsic.texi (LBOUND): Add documentation.
+ (LGE): Add documentation.
+ (LGT): Add documentation.
+ (LINK): Add documentation.
+ (LLE): Add documentation.
+ (LLT): Add documentation.
+ (LNBLNK): Add documentation.
+ (UBOUND): Add documentation.
+ (UNLINK): Add documentation.
+
+2007-01-04 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * intrinsic.texi (IAND): Clarify argument specifications.
+ (IBCLR): Add documentation.
+ (IBITS): Add documentation.
+ (IBSET): Add documentation.
+ (IEOR): Add documentation.
+ (IERRNO): Add documentation.
+ (INDEX): Add documentation.
+ (IOR): Add documentation.
+ (ISHFT): Add documentation.
+ (ISHFTC): Add documentation.
+ (KILL): Add documentation.
+ (LEN_TRIM): Add documentation.
+
+2007-01-04 Brooks Moses <brooks.moses@codesourcery.com>
+
+ PR 30235
+ * interface.c (compare_actual_formal): check for
+ alternate returns when iterating over non-present
+ arguments.
+
+2007-01-04 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * invoke.texi: Update manpage copyright to include 2007.
+
+2007-01-04 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * gfortran.texi: Update copyright to include 2007.
+ * intrinsic.texi: Update copyright to include 2007.
+ * invoke.texi: Update copyright to include 2007.
+
+2007-01-02 Tobias Burnus <burnus@net-b.de>
+ Jakub Jelinek <jakub@redhat.com>
+
+ PR fortran/30276
+ * scanner.c (open_included_file): Revert patch.
+ (gfc_open_included_file): Support absolute pathnames.
+ (gfc_open_intrinsic_module): Support absolute pathnames.
+
+2007-01-03 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * gfortran.texi (GNU Fortran and GCC): Rewrite
+
+2007-01-03 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * gfortran.texi (Introduction): Lower "Part I:
+ Introduction" to a chapter, renumber Parts II and III to
+ Parts I and II.
+ * intrinsic.texi (Introduction): Rename to "Introduction
+ to Intrinsics" to avoid conflict with the new chapter.
+
+2007-01-03 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * intrinsic.texi (Introduction): Rewrite first paragraph.
+
+2007-01-03 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * invoke.texi (OpenMP): Added index entry.
+ * gfortran.texi (title page): Removed erroneous '*'.
+
+2007-01-03 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * gfortran.texi (GFORTRAN_DEFAULT_RECL): Added units
+ to description.
+ (Extensions): Miscellaneous minor rewriting and copyediting.
+ (BOZ-literal constants): Renamed from Hexadecimal constants.
+ (Hollerith constants support): Added explanation and
+ suggestions for standard-conforming modern equivalents.
+
+2007-01-03 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * intrinsic.texi: Improvements to index entries; change
+ @findex entries to @cindex entries.
+ * invoke.texi: Standardize and improve index entries.
+ * gfortran.texi: Fix @code in one index entry.
+
+2007-01-03 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * invoke.texi: Change @code-type macros to appropriate
+ variants (@command, @option, etc.)
+ * gfortran.texi: Same.
+
+2007-01-03 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * intrinsic.texi: Various minor cleanups.
+
+2007-01-02 Steven G. Kargl <kargls@comcast.net>
+
+ * trans-intrinsic.c (gfc_conv_intrinsic_ibits): Fix call to
+ build_int_cst.
+
+2007-01-02 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/30276
+ * scanner.c (open_included_file): Support full-path filenames.
+
+2007-01-02 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/20896
+ * interface.c (check_sym_interfaces): Remove call to
+ resolve_global_procedure.
+ gfortran.h : Remove prototype for resolve_global_procedure.
+ resolve.c (resolve_global_procedure): Add static attribute
+ to function declaration.
+
+2007-01-01 Steven G. Kargl <kargls@comcast.net>
+
+ * ChangeLog: Copy to ...
+ * ChangeLog-2006: here.
-2007-12-27 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR libfortran/22423
- * intrinsics/pack_generic.c (pack): Change type of mask argument
- to gfc_array_l1 * in prototype and function.
- (pack_char): Likewise.
- * intrinsics/unpack_generic.c (unpack1): Likewise.
- (unpack1_char): Likewise.
- (unpack0): Likewise.
- (unpack0_char): Likewise.
-
-2007-12-27 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR libfortran/34594
- * runtime/error.c: If there was a previous error, don't
- mask it with another error mesage, EOF or EOR condition.
-
-2007-12-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/34560
- * io/transfer.c (read_sf): Check if readlen was less than the requested
- number of bytes to read and if so, generate error.
-
-2007-12-25 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/34533
- * intrinsics/cpu_time.c: Moved code commonly usable for CPU_TIME,
- DTIME and ETIME to ...
- * intrinsics/time_1.h: ... here.
- * intrinsics/dtime.c: New file.
- * intrinsics/etime.c: Newly implemented using the common
- time-aquisition function from time_1.h.
- * gfortran.map (_gfortran_dtime, _gfortran_dtime_sub): New.
- * Makefile.am: Added new file.
- * Makefile.in: Regenerated.
- * configure: Regenerated.
-
-2007-12-25 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR libfortran/34566
- * m4/matmull.m4: Multiply xstride and ystride by correct kind.
- * generated/matmul_l4.c: Regenerated.
- * generated/matmul_l8.c: Regenerated.
- * generated/matmul_l16.c: Regenerated.
-
-2007-12-19 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34530
- * io/list_read.c (eat_line): Move up in the file.
- (eat_separator): In namelist mode, skip over comment lines.
-
-2007-12-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR fortran/34427
- * io/list_read.c (read_real): Handle intervening line ends and spaces.
- (get_name): Don't push separators to saved_string.
- (eat_separator): If in namelist mode eat spaces and line ends as well.
-
-2007-12-13 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR libfortran/34370
- PR libfortran/34323
- PR libfortran/34405
- * io/io.h: Add previous_nonadvancing_write to gfc_unit.
- Add prototype for finish_last_advance_record.
- * io/file_pos.c (st_backspace): Generate error if backspace is
- attempted for direct access or unformatted stream.
- If there are bytes left from a previous ADVANCE="no", write
- them out before performing the backspace.
- (st_endfile): Generate error if endfile is attempted for
- direct access.
- If there are bytes left from a previous ADVANCE="no", write
- them out before performing the endfile.
- (st_rewind): Generate error if rewind is attempted for
- direct access.
- * unit.c (close_unit_1): Move functionality to write
- previously written bytes to...
- (finish_last_advance_record): ... here.
- * transfer.c (data_transfer_init): If reading, reset
- previous_nonadvancing_write.
- (finalize_transfer): Set the previous_noadvancing_write
- flag if we are writing and ADVANCE="no" was specified.
- Only call next_record() if advance="no" wasn't specified.
-
-2007-12-13 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34427
- * io/list_read.c (read_real): Fix unwinding for namelists.
-
-2007-12-10 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/34411
- * io/read.c (convert_real, read_l, read_decimal, read_radix, read_f):
- Call next_record after bad read or overflow error.
-
-2007-12-09 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34404
- * io/list_read.c (parse_real): Remove superfluous "goto bad;".
-
-2007-12-08 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/34319
- * io/list_read.c (parse_real, read_real): Support NaN/Infinity.
-
-2007-12-02 Jerry DeLisle <jvdelisle@gcc.gnu.org>
- Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR libfortran/33985
- * io/transfer.c (read_block, read_block_direct, write_block, write_buf):
- Don't seek if file position is already there for STREAM I/O.
- (finalize_transfer): For STREAM I/O don't flush unless the file position
- has moved past the start position before the transfer.
-
-2007-12-01 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * intrinsic/stat.c (stat_i4_sub_0, stat_i8_sub_0): Mark parameter
- with unused attribute.
- * intrinsics/system_clock.c (system_clock_4, system_clock_8):
- Remove unused variable.
- * intrinsics/umask.c: Include unistd.h.
-
-2007-11-30 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/34291
- * io/list_read.c (read_character): When reading an unquoted string,
- return if special characters that could signify the end of the namelist
- read are encountered.
-
-2007-11-29 Steven G. Kargl <kargls@comcast.net>
-
- PR libfortran/33583
- * libgfortran/gfortran.map: Add tgammaf, tgamma, lgamma, and lgammaf.
- * gfortran.dg/gamma_5.f90: Remove xfail.
-
-2007-11-16 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR libfortran/33583
- PR libfortran/33698
- * intrinsics/c99_functions.c (tgamma, tgammaf, lgamma, lgammaf):
- New fallback functions.
- * c99_protos.h (tgamma, tgammaf, lgamma, lgammaf): New prototypes.
- * configure.ac: Add checks for tgamma, tgammaf, tgammal, lgamma,
- lgammaf and lgammal.
- * config.h.in: Regenerate.
- * configure: Regenerate.
-
-2007-11-08 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * mk-kinds-h.sh: Change sed syntax.
-
-2007-11-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/33985
- * io/transfer.c (finalize_transfer): Revert previous patch.
-
-2007-11-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/33985
- * io/transfer.c (finalize_transfer): Do not flush for
- unformatted STREAM I/O.
-
-2007-10-27 Tobias Burnus <burnus@net-b.de>
-
- * mk-kinds-h.sh: Change LANG=C to LC_ALL=C.
-
-2007-10-26 Tobias Burnus <burnus@net-b.de>
-
- * mk-kinds-h.sh: Add "LANG=C".
-
-2007-10-26 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * libgfortran.h (GFC_REAL_*_HUGE, GFC_REAL_*_DIGITS,
- GFC_REAL_*_RADIX): Remove.
- * mk-kinds-h.sh: Define GFC_REAL_*_HUGE, GFC_REAL_*_DIGITS and
- GFC_REAL_*_RADIX. Don't define GFC_REAL_LARGEST_FORMAT and
- GFC_REAL_LARGEST.
-
-2007-10-19 Ben Elliston <bje@au.ibm.com>
-
- * intrinsics/signal.c (alarm_sub_i4): Mark conditionally unused
- parameters with __attribute__ ((unused)).
- (alarm_sub_i8): Likewise.
- (alarm_sub_int_i4): Likewise.
- (alarm_sub_int_i8): Likewise.
-
-2007-10-18 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
- Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/33795
- * libgfortran.h: Add unbuffered_preconnected.
- * io/unix.c (output_stream): Set stream unbuffered flag if
- options.unbuffered_preconnected has been set.
- (error_stream): Ditto.
- * runtime/environ.c (variable_table): Add to environment variable table
- the entry: GFORTRAN_UNBUFFERED_PRECONNECTED.
-
-2007-10-18 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR libfortran/32021
- * runtime/backtrace.c (local_strcasestr): Protect by appropriate
- macros.
- * runtime/main.c (cleanup): Cast argument to free.
- * intrinsics/spread_generic.c (spread_internal): Match runtime_error
- arguments and format.
- * intrinsics/signal.c (alarm_sub_int_i4, alarm_sub_int_i8): Cast
- pointers to avoid warnings.
-
-2007-10-18 Ben Elliston <bje@au.ibm.com>
-
- * runtime/environ.c (init_choice): Remove unused function.
- (show_choice): Likewise.
- (choice): Remove.
- (FP_ROUND_NEAREST, FP_ROUND_UP, FP_ROUND_DOWN, FP_ROUND_ZERO):
- Remove.
- (precision, signal_choices): Remove.
-
-2007-10-15 Christopher D. Rickett <crickett@lanl.gov>
-
- PR fortran/32600
- * libgfortran/intrinsics/iso_c_binding.c: Remove c_associated_1
- and c_associated_2.
- * libgfortran/intrinsics/iso_c_binding.h: Ditto.
- * libgfortran/gfortran.map: Ditto.
-
-2007-10-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/33055
- * io/inquire.c (inquire_via_unit): If inquiring by unit, check for
- an error condition from the IOSTAT variable and set EXIST to false if
- there was a bad unit number.
-
-2007-10-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/33672
- * io/list_read.c (nml_parse_qualifier): Add character specific error
- messages. Check for proper form of sub-string qualifiers. Return the
- parsed_rank flag indicating a non-zero rank qualifier.
- (nml_get_obj_data): Count the instances of non-zero rank qualifiers.
- Issue an error if more that one non-zero rank qualifier is found.
-
-2007-10-04 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/33253
- * io/list_read.c (read_character): Use line_buffer to scan ahead for
- object name or string when no delimiter is found.
-
-2007-10-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR libfortran/32021
- * runtime/environ.c (init_mem, show_mem, init_round, show_round,
- init_precision, show_precision, init_signal, show_signal): Remove.
- (variable_table): Remove GFORTRAN_MEM_INIT, GFORTRAN_MEM_CHECK,
- GFORTRAN_SIGHUP, GFORTRAN_SIGINT, GFORTRAN_FPU_ROUND and
- GFORTRAN_FPU_PRECISION.
- * libgfortran.h (options_t): Remove mem_check, fpu_round,
- fpu_precision, sighup, sigint, allocate_init_flag and
- allocate_init_value.
-
-2007-10-02 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/33253
- * io/list_read.c (read_character): Use DELIM_APOSTROPHE and DELIM_QUOTE
- and quote value in check of first character in string.
-
-2007-10-02 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/33469
- * io/write.c (write_real): Widen the default formats.
-
-2007-09-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/33400
- * io/list_read.c (next_char): Interpret encountering the end of file the
- first time as an end of line. Subsequent reads give EOF error.
-
-2007-09-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/33421
- * io/list_read.c (read_character): Revert r128057.
-
-2007-09-21 Bernhard Fischer <aldot>
-
- PR fortran/31546
- * (configure.ac): Add --enable-intermodule for onestep build.
- * (Makefile.am): Handle onestep build.
- * (configure, Makefile.in): Regenerate.
-
-2007-09-21 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR libfortran/26253
- * intrinsics/c99_functions.c (scalbn): Use ldexp if appopriate.
-
-2007-09-21 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR libfortran/23272
- * io/unix.c (id_from_handle, id_from_path, id_from_fd): New
- functions.
- (compare_file_filename, find_file, find_file0): Use the new
- functions above.
-
-2007-09-21 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * acinclude.m4 (LIBGFOR_TARGET_ILP32): Remove test.
- * configure.ac: Don't call LIBGFOR_TARGET_ILP32.
- * configure: Regenerate.
- * config.h.in: Regenerate.
-
-2007-09-15 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR libfortran/21185
- * runtime/compile_options.c (set_options): Fix typo.
- * runtime/main.c (store_exe_path): If getcwd is not available,
- don't use it.
- * intrinsics/getcwd.c: Same thing here.
- * io/unix.c (fallback_access): New fallback function for access.
- (fix_fd): Don't use dup if it's not available.
- * configure.ac: Check for dup and getcwd.
- * configure: Regenerate.
- * config.h.in: Regenerate.
-
-2007-09-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * io/io.h: Include libgfortran.h first.
-
-2007-09-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR libfortran/33386
- * runtime/select.c (select_string): Initialize default_jump.
-
-2007-09-07 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/33307
- * io/filepos.c (st_backspace): Don't truncate when already at the end
- of the file.
-
-2007-09-07 Uros Bizjak <ubizjak@gmail.com>
-
- * config/fpu-387.h: Include cpuid.h.
- (set_fpu): Use __get_cpuid to check for SSE.
-
-2007-09-06 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR fortran/33298
- * intrinsics/spread_generic.c(spread_internal): Enable
- bounds checking by comparing extents if the bounds_check
- option has been set. If any extent is <=0, return early.
-
-2007-09-06 David Edelsohn <edelsohn@gnu.org>
-
- * libgfortran.h: Include config.h first.
- * io/io.h (struct stream): Rename truncate to trunc.
- * io/unix.c (fd_open): Same.
- (open_internal): Same.
-
-2007-09-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/33253
- * io/write.c (nml_write_obj): Set the delimiter correctly before
- calling write_character. (namelist_write): Clean up the code a little
- and add comments to clarify what its doing.
-
-2007-09-04 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/33225
- * io/write.c (stdbool.h): Add include. (sign_t): Move typedef to
- new file write_float.def. Include write_float.def.
- (extract_real): Delete. (calculate_sign): Delete.
- (calculate_exp): Delete. (calculate_G_format): Delete.
- (output_float): Delete. (write_float): Delete.
- * io/write_float.def (calculate_sign): Added.
- (output_float): Refactored to be independent of kind and added to this
- file for inclusion. (write_infnan): New function to write "Infinite"
- or "NaN" depending on flags passed, independent of kind.
- (CALCULATE_EXP): New macro to build kind specific functions. Use it.
- (OUTPUT_FLOAT_FMT_G): New macro, likewise. Use it.
- (DTOA, DTOAL): Macros to implement "decimal to ascii".
- (WRITE_FLOAT): New macro for kind specific write_float functions.
- (write_float): Revised function to determine kind and use WRITE_FLOAT
- to implement kind specific output.
-
-2007-09-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/33253
- * io/list_read.c (read_character): Use DELIM_APOSTROPHE and
- DELIM_QUOTE in check of first character in string.
-
-2007-09-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31675
- * libgfortran.h: Include gcc/fortran/libgfortran.h.
- Remove M_PI, GFC_MAX_DIMENSIONS, GFC_DTYPE_*, GFC_NUM_RANK_BITS,
- error_codes, GFC_STD_*, GFC_FPE_* and unit_convert.
- * runtime/environ.c (variable_table): Use GFC_*_UNIT_NUMBER instead
- of hardcoded constants.
- (do_parse, init_unformatted): Use GFC_CONVERT_* macros instead of
- CONVERT_*.
- * runtime/string.c (find_option): Use LIBERROR_BAD_OPTION instead
- of ERROR_BAD_OPTION.
- * runtime/error.c (translate_error, generate_error): Use
- LIBERROR_* macros instead of ERROR_*.
- * io/file_pos.c (formatted_backspace, unformatted_backspace,
- st_backspace, st_rewind, st_flush): Rename macros.
- * io/open.c (convert_opt, edit_modes, new_unit, already_open,
- st_open): Likewise.
- * io/close.c (st_close): Likewise.
- * io/list_read.c (next_char, convert_integer, parse_repeat,
- read_logical, read_integer, read_character, parse_real,
- check_type, list_formatted_read_scalar, namelist_read,
- nml_err_ret): Likewise.
- * io/read.c (convert_real, read_l, read_decimal, read_radix,
- read_f): Likewise.
- * io/inquire.c (inquire_via_unit): Likewise.
- * io/unit.c (get_internal_unit): Likewise.
- * io/transfer.c (read_sf, read_block, read_block_direct,
- write_block, write_buf, unformatted_read, unformatted_write,
- formatted_transfer_scalar, us_read, us_write, data_transfer_init,
- skip_record, next_record_r, write_us_marker, next_record_w_unf,
- next_record_w, finalize_transfer, st_read, st_write_done):
- Likewise.
- * io/format.c (format_error): Likewise.
-
-2007-08-31 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * m4/minloc1.m4: Update copyright year and ajust headers order.
- * m4/maxloc1.m4: Likewise.
- * m4/in_pack.m4: Likewise.
- * m4/sum.m4: Likewise.
- * m4/fraction.m4: Likewise.
- * m4/all.m4: Likewise.
- * m4/set_exponent.m4: Likewise.
- * m4/transpose.m4: Likewise.
- * m4/eoshift1.m4: Likewise.
- * m4/spacing.m4: Likewise.
- * m4/eoshift3.m4: Likewise.
- * m4/minval.m4: Likewise.
- * m4/count.m4: Likewise.
- * m4/maxval.m4: Likewise.
- * m4/exponent.m4: Likewise.
- * m4/shape.m4: Likewise.
- * m4/head.m4: Likewise.
- * m4/cshift1.m4: Likewise.
- * m4/minloc0.m4: Likewise.
- * m4/nearest.m4: Likewise.
- * m4/maxloc0.m4: Likewise.
- * m4/pow.m4: Likewise.
- * m4/in_unpack.m4: Likewise.
- * m4/matmull.m4: Likewise.
- * m4/product.m4: Likewise.
- * m4/reshape.m4: Likewise.
- * m4/any.m4: Likewise.
- * m4/rrspacing.m4: Likewise.
- * m4/matmul.m4: Likewise.
- * runtime/backtrace.c: Likewise.
- * runtime/environ.c: Likewise.
- * runtime/in_pack_generic.c: Likewise.
- * runtime/compile_options.c: Likewise.
- * runtime/in_unpack_generic.c: Likewise.
- * runtime/main.c: Likewise.
- * runtime/stop.c: Likewise.
- * runtime/string.c: Likewise.
- * runtime/memory.c: Likewise.
- * runtime/error.c: Likewise.
- * runtime/pause.c: Likewise.
- * intrinsics/ierrno.c: Likewise.
- * intrinsics/system_clock.c: Likewise.
- * intrinsics/cshift0.c: Likewise.
- * intrinsics/unlink.c: Likewise.
- * intrinsics/ctime.c: Likewise.
- * intrinsics/etime.c: Likewise.
- * intrinsics/cpu_time.c: Likewise.
- * intrinsics/malloc.c: Likewise.
- * intrinsics/hostnm.c: Likewise.
- * intrinsics/sleep.c: Likewise.
- * intrinsics/exit.c: Likewise.
- * intrinsics/perror.c: Likewise.
- * intrinsics/transpose_generic.c: Likewise.
- * intrinsics/pack_generic.c: Likewise.
- * intrinsics/spread_generic.c: Likewise.
- * intrinsics/stat.c: Likewise.
- * intrinsics/string_intrinsics.c: Likewise.
- * intrinsics/getcwd.c: Likewise.
- * intrinsics/date_and_time.c: Likewise.
- * intrinsics/unpack_generic.c: Likewise.
- * intrinsics/move_alloc.c: Likewise.
- * intrinsics/getlog.c: Likewise.
- * intrinsics/eoshift0.c: Likewise.
- * intrinsics/eoshift2.c: Likewise.
- * intrinsics/reshape_generic.c: Likewise.
- * intrinsics/system.c: Likewise.
- * intrinsics/iso_c_binding.c: Likewise.
- * intrinsics/env.c: Likewise.
- * intrinsics/kill.c: Likewise.
- * intrinsics/reshape_packed.c: Likewise.
- * intrinsics/time.c: Likewise.
- * intrinsics/gerror.c: Likewise.
- * intrinsics/access.c: Likewise.
- * intrinsics/fnum.c: Likewise.
- * intrinsics/abort.c: Likewise.
- * intrinsics/rename.c: Likewise.
- * intrinsics/signal.c: Likewise.
- * intrinsics/symlnk.c: Likewise.
- * intrinsics/random.c: Likewise.
- * intrinsics/umask.c: Likewise.
- * intrinsics/getXid.c: Likewise.
- * intrinsics/rand.c: Likewise.
- * intrinsics/chdir.c: Likewise.
- * intrinsics/chmod.c: Likewise.
- * intrinsics/clock.c: Likewise.
- * intrinsics/args.c: Likewise.
- * intrinsics/link.c: Likewise.
- * c99_protos.h: Likewise.
- * config/fpu-387.h: Likewise.
- * config/fpu-aix.h: Likewise.
- * config/fpu-sysv.h: Likewise.
- * config/fpu-generic.h: Likewise.
- * config/fpu-glibc.h: Likewise.
- * io/file_pos.c: Likewise.
- * io/open.c: Likewise.
- * io/size_from_kind.c: Likewise.
- * io/close.c: Likewise.
- * io/list_read.c: Likewise.
- * io/read.c: Likewise.
- * io/inquire.c: Likewise.
- * io/unit.c: Likewise.
- * io/unix.c: Likewise.
- * io/transfer.c: Likewise.
- * io/intrinsics.c: Likewise.
- * io/format.c: Likewise.
- * io/lock.c: Likewise.
- * io/write.c: Likewise.
- * io/write_float.def: Likewise.
- * fmain.c: Likewise.
- * generated/minval_r8.c: Regenerate.
- * generated/minloc1_16_r16.c: Regenerate.
- * generated/maxloc1_4_r8.c: Regenerate.
- * generated/sum_i8.c: Regenerate.
- * generated/eoshift3_4.c: Regenerate.
- * generated/transpose_c8.c: Regenerate.
- * generated/any_l16.c: Regenerate.
- * generated/eoshift1_8.c: Regenerate.
- * generated/pow_r8_i8.c: Regenerate.
- * generated/reshape_r16.c: Regenerate.
- * generated/pow_i4_i16.c: Regenerate.
- * generated/maxval_i2.c: Regenerate.
- * generated/product_r4.c: Regenerate.
- * generated/maxloc1_8_i4.c: Regenerate.
- * generated/exponent_r16.c: Regenerate.
- * generated/maxloc0_4_r4.c: Regenerate.
- * generated/fraction_r16.c: Regenerate.
- * generated/in_unpack_i8.c: Regenerate.
- * generated/matmul_r8.c: Regenerate.
- * generated/product_i2.c: Regenerate.
- * generated/fraction_r4.c: Regenerate.
- * generated/minloc0_4_r16.c: Regenerate.
- * generated/reshape_c4.c: Regenerate.
- * generated/minloc0_4_i1.c: Regenerate.
- * generated/maxloc0_4_r16.c: Regenerate.
- * generated/maxloc0_4_i2.c: Regenerate.
- * generated/minloc1_8_r16.c: Regenerate.
- * generated/maxloc1_8_r16.c: Regenerate.
- * generated/set_exponent_r8.c: Regenerate.
- * generated/in_unpack_i16.c: Regenerate.
- * generated/transpose_c16.c: Regenerate.
- * generated/maxloc0_8_i8.c: Regenerate.
- * generated/pow_c4_i8.c: Regenerate.
- * generated/sum_r16.c: Regenerate.
- * generated/sum_i1.c: Regenerate.
- * generated/minloc1_4_r8.c: Regenerate.
- * generated/transpose_r10.c: Regenerate.
- * generated/pow_i8_i4.c: Regenerate.
- * generated/maxloc1_16_r16.c: Regenerate.
- * generated/minloc1_16_i4.c: Regenerate.
- * generated/maxloc1_16_i4.c: Regenerate.
- * generated/minloc0_16_i8.c: Regenerate.
- * generated/maxloc0_16_i8.c: Regenerate.
- * generated/nearest_r8.c: Regenerate.
- * generated/spacing_r16.c: Regenerate.
- * generated/transpose_i8.c: Regenerate.
- * generated/count_16_l16.c: Regenerate.
- * generated/maxval_r16.c: Regenerate.
- * generated/count_8_l8.c: Regenerate.
- * generated/product_c10.c: Regenerate.
- * generated/minloc1_8_i4.c: Regenerate.
- * generated/minloc0_16_i16.c: Regenerate.
- * generated/matmul_r16.c: Regenerate.
- * generated/eoshift1_16.c: Regenerate.
- * generated/minloc0_4_r4.c: Regenerate.
- * generated/pow_c16_i16.c: Regenerate.
- * generated/set_exponent_r10.c: Regenerate.
- * generated/pow_i16_i16.c: Regenerate.
- * generated/product_c4.c: Regenerate.
- * generated/sum_r4.c: Regenerate.
- * generated/pow_c16_i4.c: Regenerate.
- * generated/rrspacing_r10.c: Regenerate.
- * generated/in_pack_c16.c: Regenerate.
- * generated/minloc0_4_i2.c: Regenerate.
- * generated/maxloc0_8_i1.c: Regenerate.
- * generated/reshape_i4.c: Regenerate.
- * generated/minloc0_8_i8.c: Regenerate.
- * generated/matmul_c8.c: Regenerate.
- * generated/spacing_r4.c: Regenerate.
- * generated/in_pack_c4.c: Regenerate.
- * generated/all_l16.c: Regenerate.
- * generated/minloc1_16_r10.c: Regenerate.
- * generated/sum_i2.c: Regenerate.
- * generated/minloc0_16_i1.c: Regenerate.
- * generated/reshape_c16.c: Regenerate.
- * generated/maxloc0_16_i1.c: Regenerate.
- * generated/maxloc1_8_r8.c: Regenerate.
- * generated/minval_i16.c: Regenerate.
- * generated/reshape_r10.c: Regenerate.
- * generated/exponent_r10.c: Regenerate.
- * generated/maxval_i4.c: Regenerate.
- * generated/any_l4.c: Regenerate.
- * generated/minval_i8.c: Regenerate.
- * generated/maxloc1_4_i8.c: Regenerate.
- * generated/fraction_r10.c: Regenerate.
- * generated/maxloc0_16_i16.c: Regenerate.
- * generated/shape_i4.c: Regenerate.
- * generated/pow_r16_i8.c: Regenerate.
- * generated/maxloc0_8_r4.c: Regenerate.
- * generated/rrspacing_r8.c: Regenerate.
- * generated/pow_c10_i4.c: Regenerate.
- * generated/minloc1_4_i16.c: Regenerate.
- * generated/minloc0_4_r10.c: Regenerate.
- * generated/maxloc1_4_i16.c: Regenerate.
- * generated/minloc0_8_i16.c: Regenerate.
- * generated/maxloc0_4_r10.c: Regenerate.
- * generated/maxloc0_8_i16.c: Regenerate.
- * generated/minloc1_8_r10.c: Regenerate.
- * generated/product_i4.c: Regenerate.
- * generated/minloc0_16_r4.c: Regenerate.
- * generated/sum_c16.c: Regenerate.
- * generated/maxloc1_8_r10.c: Regenerate.
- * generated/maxloc0_16_r4.c: Regenerate.
- * generated/transpose_c10.c: Regenerate.
- * generated/minloc1_16_r8.c: Regenerate.
- * generated/minloc0_8_i1.c: Regenerate.
- * generated/maxloc0_4_i4.c: Regenerate.
- * generated/transpose_r4.c: Regenerate.
- * generated/maxloc1_16_r8.c: Regenerate.
- * generated/pow_i16_i8.c: Regenerate.
- * generated/cshift1_4.c: Regenerate.
- * generated/maxloc0_8_i2.c: Regenerate.
- * generated/sum_r10.c: Regenerate.
- * generated/nearest_r16.c: Regenerate.
- * generated/sum_c4.c: Regenerate.
- * generated/maxloc1_16_r10.c: Regenerate.
- * generated/count_4_l16.c: Regenerate.
- * generated/pow_c8_i8.c: Regenerate.
- * generated/matmul_i8.c: Regenerate.
- * generated/in_pack_i4.c: Regenerate.
- * generated/pow_i4_i8.c: Regenerate.
- * generated/minloc0_16_i2.c: Regenerate.
- * generated/minloc1_8_r8.c: Regenerate.
- * generated/maxloc0_16_i2.c: Regenerate.
- * generated/exponent_r4.c: Regenerate.
- * generated/spacing_r10.c: Regenerate.
- * generated/matmul_c16.c: Regenerate.
- * generated/pow_c4_i16.c: Regenerate.
- * generated/maxval_r10.c: Regenerate.
- * generated/count_4_l4.c: Regenerate.
- * generated/shape_i16.c: Regenerate.
- * generated/minval_i1.c: Regenerate.
- * generated/maxloc1_4_i1.c: Regenerate.
- * generated/matmul_r10.c: Regenerate.
- * generated/minloc1_4_i8.c: Regenerate.
- * generated/pow_r10_i8.c: Regenerate.
- * generated/minloc0_8_r4.c: Regenerate.
- * generated/in_unpack_c4.c: Regenerate.
- * generated/matmul_l4.c: Regenerate.
- * generated/product_i16.c: Regenerate.
- * generated/minloc0_16_r16.c: Regenerate.
- * generated/reshape_r8.c: Regenerate.
- * generated/pow_r10_i16.c: Regenerate.
- * generated/all_l4.c: Regenerate.
- * generated/in_pack_c10.c: Regenerate.
- * generated/minloc0_4_i4.c: Regenerate.
- * generated/minloc0_8_i2.c: Regenerate.
- * generated/matmul_i1.c: Regenerate.
- * generated/reshape_c10.c: Regenerate.
- * generated/minval_r4.c: Regenerate.
- * generated/maxloc1_4_r4.c: Regenerate.
- * generated/pow_r8_i16.c: Regenerate.
- * generated/sum_i4.c: Regenerate.
- * generated/maxval_r8.c: Regenerate.
- * generated/count_16_l8.c: Regenerate.
- * generated/transpose_c4.c: Regenerate.
- * generated/eoshift1_4.c: Regenerate.
- * generated/eoshift3_8.c: Regenerate.
- * generated/minval_r16.c: Regenerate.
- * generated/minloc1_4_i1.c: Regenerate.
- * generated/minval_i2.c: Regenerate.
- * generated/maxloc1_4_i2.c: Regenerate.
- * generated/pow_i8_i16.c: Regenerate.
- * generated/product_r8.c: Regenerate.
- * generated/maxloc1_8_i8.c: Regenerate.
- * generated/maxloc0_4_r8.c: Regenerate.
- * generated/maxloc0_16_r16.c: Regenerate.
- * generated/in_unpack_i4.c: Regenerate.
- * generated/matmul_r4.c: Regenerate.
- * generated/sum_c10.c: Regenerate.
- * generated/minloc1_4_r16.c: Regenerate.
- * generated/fraction_r8.c: Regenerate.
- * generated/maxloc1_4_r16.c: Regenerate.
- * generated/set_exponent_r4.c: Regenerate.
- * generated/minloc0_8_r16.c: Regenerate.
- * generated/in_unpack_c16.c: Regenerate.
- * generated/reshape_c8.c: Regenerate.
- * generated/maxloc0_8_r16.c: Regenerate.
- * generated/nearest_r10.c: Regenerate.
- * generated/maxloc0_8_i4.c: Regenerate.
- * generated/pow_c4_i4.c: Regenerate.
- * generated/matmul_i2.c: Regenerate.
- * generated/minloc1_4_r4.c: Regenerate.
- * generated/transpose_i16.c: Regenerate.
- * generated/matmul_c10.c: Regenerate.
- * generated/minloc0_16_i4.c: Regenerate.
- * generated/maxloc0_16_i4.c: Regenerate.
- * generated/pow_i8_i8.c: Regenerate.
- * generated/nearest_r4.c: Regenerate.
- * generated/minloc1_16_i8.c: Regenerate.
- * generated/maxloc1_16_i8.c: Regenerate.
- * generated/transpose_i4.c: Regenerate.
- * generated/count_8_l4.c: Regenerate.
- * generated/minloc1_4_i2.c: Regenerate.
- * generated/matmul_l16.c: Regenerate.
- * generated/maxloc1_8_i1.c: Regenerate.
- * generated/minloc0_16_r10.c: Regenerate.
- * generated/minloc1_8_i8.c: Regenerate.
- * generated/minloc0_4_r8.c: Regenerate.
- * generated/product_r16.c: Regenerate.
- * generated/product_c8.c: Regenerate.
- * generated/pow_r16_i16.c: Regenerate.
- * generated/sum_r8.c: Regenerate.
- * generated/pow_c16_i8.c: Regenerate.
- * generated/in_pack_i16.c: Regenerate.
- * generated/minloc0_8_i4.c: Regenerate.
- * generated/matmul_c4.c: Regenerate.
- * generated/minloc1_16_i16.c: Regenerate.
- * generated/reshape_i8.c: Regenerate.
- * generated/spacing_r8.c: Regenerate.
- * generated/in_pack_c8.c: Regenerate.
- * generated/maxloc1_8_r4.c: Regenerate.
- * generated/minloc1_16_i1.c: Regenerate.
- * generated/maxloc1_16_i1.c: Regenerate.
- * generated/reshape_i16.c: Regenerate.
- * generated/minval_r10.c: Regenerate.
- * generated/pow_r4_i8.c: Regenerate.
- * generated/minloc1_8_i1.c: Regenerate.
- * generated/minval_i4.c: Regenerate.
- * generated/maxloc1_4_i4.c: Regenerate.
- * generated/maxloc1_8_i2.c: Regenerate.
- * generated/maxval_i8.c: Regenerate.
- * generated/eoshift3_16.c: Regenerate.
- * generated/any_l8.c: Regenerate.
- * generated/maxloc0_16_r10.c: Regenerate.
- * generated/rrspacing_r4.c: Regenerate.
- * generated/shape_i8.c: Regenerate.
- * generated/maxloc0_8_r8.c: Regenerate.
- * generated/minloc0_4_i16.c: Regenerate.
- * generated/maxloc0_4_i16.c: Regenerate.
- * generated/minloc1_4_r10.c: Regenerate.
- * generated/minloc1_8_i16.c: Regenerate.
- * generated/pow_c10_i8.c: Regenerate.
- * generated/maxloc1_4_r10.c: Regenerate.
- * generated/maxloc1_8_i16.c: Regenerate.
- * generated/in_unpack_c10.c: Regenerate.
- * generated/minloc0_8_r10.c: Regenerate.
- * generated/maxloc0_8_r10.c: Regenerate.
- * generated/minloc1_16_r4.c: Regenerate.
- * generated/maxloc1_16_r4.c: Regenerate.
- * generated/minloc0_16_r8.c: Regenerate.
- * generated/pow_i16_i4.c: Regenerate.
- * generated/product_i8.c: Regenerate.
- * generated/maxloc0_16_r8.c: Regenerate.
- * generated/sum_i16.c: Regenerate.
- * generated/maxloc0_4_i8.c: Regenerate.
- * generated/transpose_r8.c: Regenerate.
- * generated/cshift1_8.c: Regenerate.
- * generated/maxloc1_16_i16.c: Regenerate.
- * generated/matmul_i4.c: Regenerate.
- * generated/pow_c8_i4.c: Regenerate.
- * generated/pow_i4_i4.c: Regenerate.
- * generated/minloc1_8_r4.c: Regenerate.
- * generated/sum_c8.c: Regenerate.
- * generated/count_8_l16.c: Regenerate.
- * generated/minloc1_16_i2.c: Regenerate.
- * generated/maxloc1_16_i2.c: Regenerate.
- * generated/in_pack_i8.c: Regenerate.
- * generated/transpose_r16.c: Regenerate.
- * generated/maxval_i16.c: Regenerate.
- * generated/exponent_r8.c: Regenerate.
- * generated/matmul_i16.c: Regenerate.
- * generated/count_4_l8.c: Regenerate.
- * generated/pow_c8_i16.c: Regenerate.
- * generated/maxval_i1.c: Regenerate.
- * generated/minloc1_4_i4.c: Regenerate.
- * generated/minloc1_8_i2.c: Regenerate.
- * generated/pow_c10_i16.c: Regenerate.
- * generated/product_c16.c: Regenerate.
- * generated/reshape_r4.c: Regenerate.
- * generated/in_unpack_c8.c: Regenerate.
- * generated/minloc0_8_r8.c: Regenerate.
- * generated/matmul_l8.c: Regenerate.
- * generated/product_r10.c: Regenerate.
- * generated/set_exponent_r16.c: Regenerate.
- * generated/cshift1_16.c: Regenerate.
- * generated/product_i1.c: Regenerate.
- * generated/all_l8.c: Regenerate.
- * generated/maxloc0_4_i1.c: Regenerate.
- * generated/rrspacing_r16.c: Regenerate.
- * generated/minloc0_4_i8.c: Regenerate.
- * generated/pow_r4_i16.c: Regenerate.
- * generated/count_16_l4.c: Regenerate.
- * generated/maxval_r4.c: Regenerate.
-
-2007-08-30 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/33225
- * io/write.c: Revert changes from patch of 2007-08-27.
- * io/write_float.def: Remove file, reverting addition.
-
-2007-08-29 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * runtime/memory.c (internal_realloc, allocate, allocate_array,
- deallocate): Remove functions.
- * gfortran.map (_gfortran_allocate, _gfortran_allocate_array,
- _gfortran_deallocate, _gfortran_internal_realloc): Remove symbols.
- * libgfortran.h (error_codes): Add comment.
-
-2007-08-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/33055
- Revert previous patch.
-
-2007-08-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- * io/write.c (stdbool.h): Add include. (sign_t): Move typedef to
- new file write_float.def. Include write_float.def.
- (extract_real): Delete. (calculate_sign): Delete.
- (calculate_exp): Delete. (calculate_G_format): Delete.
- (output_float): Delete. (write_float): Delete.
- * io/write_float.def (calculate_sign): Added.
- (output_float): Refactored to be independent of kind and added to this
- file for inclusion. (write_infnan): New function to write "Infinite"
- or "NaN" depending on flags passed, independent of kind.
- (CALCULATE_EXP): New macro to build kind specific functions. Use it.
- (OUTPUT_FLOAT_FMT_G): New macro, likewise. Use it.
- (DTOA, DTOAL): Macros to implement "decimal to ascii".
- (WRITE_FLOAT): New macro for kind specific write_float functions.
- (write_float): Revised function to determine kind and use WRITE_FLOAT
- to implement kind specific output.
-
-2007-08-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/33055
- * io/inquire.c (inquire_via_unit): If inquiring by unit, check for
- an error condition from the IOSTAT variable and set EXIST to false if
- there was a bad unit number.
-
-2007-08-24 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR fortran/32972
- * libgfortran.h: Remove GFOR_POINTER_L8_TO_L4 macro.
- Add GFOR_POINTER_TO_L1 macro.
- * m4/iforeach.m4(`m'name`'rtype_qual`_'atype_code):
- Change argument 'mask' to gfc_array_l1. Adjust prototype.
- Change mask pointer to GFC_LOGICAL_1. Multiply strides
- by kind of mask
- * m4/ifunction.m4: Likewise.
- * intrinsics/pack_generic.c(pack_internal): Likewise.
- * intrinsics/unpack_generic.c(unpack_internal): Likewise.
- * m4/matmull.m4: Switch to GFC_LOGICAL_1. Multiply strides by
- kind of logical arguments a and b.
- * generated/matmul_l16.c: Regenerated.
- * generated/matmul_l4.c: Regenerated.
- * generated/matmul_l8.c: Regenerated.
- * generated/maxloc0_16_i1.c: Regenerated.
- * generated/maxloc0_16_i16.c: Regenerated.
- * generated/maxloc0_16_i2.c: Regenerated.
- * generated/maxloc0_16_i4.c: Regenerated.
- * generated/maxloc0_16_i8.c: Regenerated.
- * generated/maxloc0_16_r10.c: Regenerated.
- * generated/maxloc0_16_r16.c: Regenerated.
- * generated/maxloc0_16_r4.c: Regenerated.
- * generated/maxloc0_16_r8.c: Regenerated.
- * generated/maxloc0_4_i1.c: Regenerated.
- * generated/maxloc0_4_i16.c: Regenerated.
- * generated/maxloc0_4_i2.c: Regenerated.
- * generated/maxloc0_4_i4.c: Regenerated.
- * generated/maxloc0_4_i8.c: Regenerated.
- * generated/maxloc0_4_r10.c: Regenerated.
- * generated/maxloc0_4_r16.c: Regenerated.
- * generated/maxloc0_4_r4.c: Regenerated.
- * generated/maxloc0_4_r8.c: Regenerated.
- * generated/maxloc0_8_i1.c: Regenerated.
- * generated/maxloc0_8_i16.c: Regenerated.
- * generated/maxloc0_8_i2.c: Regenerated.
- * generated/maxloc0_8_i4.c: Regenerated.
- * generated/maxloc0_8_i8.c: Regenerated.
- * generated/maxloc0_8_r10.c: Regenerated.
- * generated/maxloc0_8_r16.c: Regenerated.
- * generated/maxloc0_8_r4.c: Regenerated.
- * generated/maxloc0_8_r8.c: Regenerated.
- * generated/maxloc1_16_i1.c: Regenerated.
- * generated/maxloc1_16_i16.c: Regenerated.
- * generated/maxloc1_16_i2.c: Regenerated.
- * generated/maxloc1_16_i4.c: Regenerated.
- * generated/maxloc1_16_i8.c: Regenerated.
- * generated/maxloc1_16_r10.c: Regenerated.
- * generated/maxloc1_16_r16.c: Regenerated.
- * generated/maxloc1_16_r4.c: Regenerated.
- * generated/maxloc1_16_r8.c: Regenerated.
- * generated/maxloc1_4_i1.c: Regenerated.
- * generated/maxloc1_4_i16.c: Regenerated.
- * generated/maxloc1_4_i2.c: Regenerated.
- * generated/maxloc1_4_i4.c: Regenerated.
- * generated/maxloc1_4_i8.c: Regenerated.
- * generated/maxloc1_4_r10.c: Regenerated.
- * generated/maxloc1_4_r16.c: Regenerated.
- * generated/maxloc1_4_r4.c: Regenerated.
- * generated/maxloc1_4_r8.c: Regenerated.
- * generated/maxloc1_8_i1.c: Regenerated.
- * generated/maxloc1_8_i16.c: Regenerated.
- * generated/maxloc1_8_i2.c: Regenerated.
- * generated/maxloc1_8_i4.c: Regenerated.
- * generated/maxloc1_8_i8.c: Regenerated.
- * generated/maxloc1_8_r10.c: Regenerated.
- * generated/maxloc1_8_r16.c: Regenerated.
- * generated/maxloc1_8_r4.c: Regenerated.
- * generated/maxloc1_8_r8.c: Regenerated.
- * generated/maxval_i1.c: Regenerated.
- * generated/maxval_i16.c: Regenerated.
- * generated/maxval_i2.c: Regenerated.
- * generated/maxval_i4.c: Regenerated.
- * generated/maxval_i8.c: Regenerated.
- * generated/maxval_r10.c: Regenerated.
- * generated/maxval_r16.c: Regenerated.
- * generated/maxval_r4.c: Regenerated.
- * generated/maxval_r8.c: Regenerated.
- * generated/minloc0_16_i1.c: Regenerated.
- * generated/minloc0_16_i16.c: Regenerated.
- * generated/minloc0_16_i2.c: Regenerated.
- * generated/minloc0_16_i4.c: Regenerated.
- * generated/minloc0_16_i8.c: Regenerated.
- * generated/minloc0_16_r10.c: Regenerated.
- * generated/minloc0_16_r16.c: Regenerated.
- * generated/minloc0_16_r4.c: Regenerated.
- * generated/minloc0_16_r8.c: Regenerated.
- * generated/minloc0_4_i1.c: Regenerated.
- * generated/minloc0_4_i16.c: Regenerated.
- * generated/minloc0_4_i2.c: Regenerated.
- * generated/minloc0_4_i4.c: Regenerated.
- * generated/minloc0_4_i8.c: Regenerated.
- * generated/minloc0_4_r10.c: Regenerated.
- * generated/minloc0_4_r16.c: Regenerated.
- * generated/minloc0_4_r4.c: Regenerated.
- * generated/minloc0_4_r8.c: Regenerated.
- * generated/minloc0_8_i1.c: Regenerated.
- * generated/minloc0_8_i16.c: Regenerated.
- * generated/minloc0_8_i2.c: Regenerated.
- * generated/minloc0_8_i4.c: Regenerated.
- * generated/minloc0_8_i8.c: Regenerated.
- * generated/minloc0_8_r10.c: Regenerated.
- * generated/minloc0_8_r16.c: Regenerated.
- * generated/minloc0_8_r4.c: Regenerated.
- * generated/minloc0_8_r8.c: Regenerated.
- * generated/minloc1_16_i1.c: Regenerated.
- * generated/minloc1_16_i16.c: Regenerated.
- * generated/minloc1_16_i2.c: Regenerated.
- * generated/minloc1_16_i4.c: Regenerated.
- * generated/minloc1_16_i8.c: Regenerated.
- * generated/minloc1_16_r10.c: Regenerated.
- * generated/minloc1_16_r16.c: Regenerated.
- * generated/minloc1_16_r4.c: Regenerated.
- * generated/minloc1_16_r8.c: Regenerated.
- * generated/minloc1_4_i1.c: Regenerated.
- * generated/minloc1_4_i16.c: Regenerated.
- * generated/minloc1_4_i2.c: Regenerated.
- * generated/minloc1_4_i4.c: Regenerated.
- * generated/minloc1_4_i8.c: Regenerated.
- * generated/minloc1_4_r10.c: Regenerated.
- * generated/minloc1_4_r16.c: Regenerated.
- * generated/minloc1_4_r4.c: Regenerated.
- * generated/minloc1_4_r8.c: Regenerated.
- * generated/minloc1_8_i1.c: Regenerated.
- * generated/minloc1_8_i16.c: Regenerated.
- * generated/minloc1_8_i2.c: Regenerated.
- * generated/minloc1_8_i4.c: Regenerated.
- * generated/minloc1_8_i8.c: Regenerated.
- * generated/minloc1_8_r10.c: Regenerated.
- * generated/minloc1_8_r16.c: Regenerated.
- * generated/minloc1_8_r4.c: Regenerated.
- * generated/minloc1_8_r8.c: Regenerated.
- * generated/minval_i1.c: Regenerated.
- * generated/minval_i16.c: Regenerated.
- * generated/minval_i2.c: Regenerated.
- * generated/minval_i4.c: Regenerated.
- * generated/minval_i8.c: Regenerated.
- * generated/minval_r10.c: Regenerated.
- * generated/minval_r16.c: Regenerated.
- * generated/minval_r4.c: Regenerated.
- * generated/minval_r8.c: Regenerated.
- * generated/product_c10.c: Regenerated.
- * generated/product_c16.c: Regenerated.
- * generated/product_c4.c: Regenerated.
- * generated/product_c8.c: Regenerated.
- * generated/product_i1.c: Regenerated.
- * generated/product_i16.c: Regenerated.
- * generated/product_i2.c: Regenerated.
- * generated/product_i4.c: Regenerated.
- * generated/product_i8.c: Regenerated.
- * generated/product_r10.c: Regenerated.
- * generated/product_r16.c: Regenerated.
- * generated/product_r4.c: Regenerated.
- * generated/product_r8.c: Regenerated.
- * generated/sum_c10.c: Regenerated.
- * generated/sum_c16.c: Regenerated.
- * generated/sum_c4.c: Regenerated.
- * generated/sum_c8.c: Regenerated.
- * generated/sum_i1.c: Regenerated.
- * generated/sum_i16.c: Regenerated.
- * generated/sum_i2.c: Regenerated.
- * generated/sum_i4.c: Regenerated.
- * generated/sum_i8.c: Regenerated.
- * generated/sum_r10.c: Regenerated.
- * generated/sum_r16.c: Regenerated.
- * generated/sum_r4.c: Regenerated.
- * generated/sum_r8.c: Regenerated.
-
-2007-08-23 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR libfortran/23138
- * acinclude.m4 (LIBGFOR_CHECK_MINGW_SNPRINTF): New check.
- * configure.ac: Use LIBGFOR_CHECK_MINGW_SNPRINTF.
- * libgfortran.h: If HAVE_MINGW_SNPRINTF is true, use __mingw_snprintf
- instead of snprintf.
- * config.h.in: Regenerate.
- * configure: Regenerate.
-
-2007-08-22 Bernhard Fischer <rep.dot.nop@gmail.com>
-
- * libgfortran/Makefile.am (AM_CPPFLAGS): Commentary typo fix.
-
-2007-08-17 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/33079
- * intrinsics/string_intrinsics.c (string_trim, string_minmax): Fix
- the zero-length result case.
-
-2007-08-15 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/33077
- * intrinsics/random.c (random_seed_i8): Fix code logic.
-
-2007-08-13 Danny Smith <dannysmit@users.sourceforge.net>
-
- * acinclude.m4 (GTHREAD_USE_WEAK) Define to 0 for mingw32.
- * configure: Regenerate.
-
-2007-08-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/30964
- PR fortran/33054
- * intrinsics/random.c (random_seed): Rename into random_seed_i4.
- (random_seed_i8): New function.
- * gfortran.map (GFORTRAN_1.0): Remove _gfortran_random_seed,
- add _gfortran_random_seed_i4 and _gfortran_random_seed_i8.
- * libgfortran.h (iexport_proto): Replace random_seed by
- random_seed_i4 and random_seed_i8.
- * runtime/main.c (init): Call the new random_seed_i4.
-
-2007-08-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
- Tobias Burnus <burnus@gcc.gnu.org>
-
- PR fortran/31189
- * runtime/backtrace.c (show_backtrace): Skip _gfortrani_handler
- when displaying backtrace.
- * runtime/compile_options.c: Include <signal.h>.
- (handler): New function.
- (set_options): Set signal handlers for backtrace.
- * libgfortran.h (handler): Add prototype.
-
-2007-08-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * intrinsics/string_intrinsics.c (compare_string): Return an int.
- * libgfortran.h (compare_string): Likewise.
-
-2007-08-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31270
- * runtime/error.c (runtime_error_at): Add a variable number of
- arguments.
- * libgfortran.h (runtime_error_at): Update prototype.
-
-2007-08-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/32933
- * intrinsics/associated.c: Change return type of associated into
- a C int.
-
-2007-08-10 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/33039
- * io/list_read.c (find_nml_name): Check for a space after a namelist
- name match.
-
-2007-08-09 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/32987
- * io/format.c (next_char): Treat '\t' as ' ' in format specification.
-
-2007-08-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/30947
- * intrinsics/signal.c: Create specific versions of alarm_sub and
- alarm_sub_int according to the integer kind of the last argument.
- * gfortran.map (GFORTRAN_1.0): Remove _gfortran_alarm_sub and
- _gfortran_alarm_sub_int, add _gfortran_alarm_sub_i4,
- _gfortran_alarm_sub_i8, _gfortran_alarm_sub_int_i4 and
- _gfortran_alarm_sub_int_i8.
-
-2007-08-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/29828
- * intrinsics/string_intrinsics.c (string_minmax): New function
- and prototype.
- * gfortran.map (GFORTRAN_1.0): Add _gfortran_string_minmax
-
-2007-08-05 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31202
- * intrinsics/c99_functions.c (roundl): Provide fallback
- implementation for systems without ceill.
- * c99_protos.h (roundl): Define prototype in all cases.
-
-2007-08-03 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR libfortran/32977
- * io/unix.c: If there is no vsnprintf, use vsprintf and issue
- a fatal error when a buffer overrun occurs.
-
-2007-08-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31202
- * intrinsics/c99_functions.c (roundl,lroundf,lround,lroundl,
- llroundf,llround,llroundl): New functions.
- * c99_protos.h (roundl,lroundf,lround,lroundl,llroundf,llround,
- llroundl): New prototypes.
- * configure.ac: Check for lroundf, lround, lroundl, llroundf,
- llround and llroundl.
- * configure: Regenerate.
- * Makefile.in: Regenerate.
- * config.h.in: Regenerate.
-
-2007-07-30 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * libgfortran.h: Include <stdarg.h>.
-
-2007-07-29 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR libfortran/32858
- PR libfortran/30814
- * configure.ac: Added checks for presence of stdio.h and
- stdarg.h. Test presence of vsnprintf().
- * configure: Regenerated.
- * config.h.in: Regenerated.
- * libgfortran.h: Include <stdio.h>. Add printf attribute to
- prototype of runtime_error. Remove prototype for st_sprintf.
- Add prototype for st_vprintf.
- * runtime/main.c (store_exec_path): Replace st_sprintf by sprintf.
- * runtime/error.c (st_sprintf): Remove.
- (runtime_error): Rewrite as a variadic function. Call
- st_vprintf().
- * intrinsics/pack_generic.c: Output extents of LHS and RHS for
- bounds error.
- * io/open.c (new_unit): Replace st_sprintf by sprintf.
- * io/list_read.c (convert_integer): Likewise.
- (parse_repeat): Likewise.
- (read_logical): Likewise.
- (read_character): Likewise.
- (parse_real): Likewise.
- (read_real): Likewise.
- (check_type): Likewise.
- (nml_parse_qualifyer): Likewise.
- (nml_read_obj): Likewise.
- (nml_get_ojb_data): Likewise.
- * io/unix.c (init_error_stream): Remove.
- (tempfile): Replace st_sprintf by sprintf.
- (st_vprintf): New function.
- (st_printf): Rewrite to call st_vprintf.
- * io/transfer.c (require_type): Replace st_sprintf by sprintf.
- * io/format.c (format_error): Likewise.
- * io/write.c (nml_write_obj): Likewise.
-
-2007-07-27 Janne Blomqvist <jb@gcc.gnu.org>
-
- * io/transfer.c (st_set_nml_var_dim): Use index_type instead of
- GFC_INTEGER_4 for array descriptor triplets.
-
-2007-07-27 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * io/unix.c (stream_ttyname): Mark argument as potentialy unused.
-
-2007-07-27 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/32035
- * runtime/select.c (select_string): Adjust prototype and function
- so that the return value is an integer, not a pointer.
-
-2007-07-24 Tobias Burnus <burnus@net-b.de>
-
- * libgfortran.h: Add bounds_check to compile_options_t.
-
-2007-07-24 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR fortran/30814
- * libgfortran.h: Add bounds_check to compile_options_t.
- * runtime/compile_options.c (set_options): Add handling
- of compile_options.bounds_check.
- * intrinsics/pack_generic.c (pack_internal): Also determine
- the number of elements if compile_options.bounds_check is
- true. Raise runtime error if a different array shape is
- detected.
-
-2007-07-23 Christopher D. Rickett <crickett@lanl.gov>
-
- PR fortran/32600
- * intrinsics/iso_c_binding.c (c_funloc): Remove.
- * intrinsics/iso_c_binding.h: Remove c_funloc.
- * gfortran.map: Ditto.
-
-2007-07-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- * io/read.c (convert_real): Generate error only on EINVAL.
-
-2007-07-21 Christopher D. Rickett <crickett@lanl.gov>
-
- PR fortran/32627
- * libgfortran/intrinsics/iso_c_generated_procs.c: Add c_f_pointer
- for character/string arguments.
- * libgfortran/intrinsic/iso_c_binding.c (c_f_pointer_u0): Allow
- the optional SHAPE arg to be any valid integer kind.
- * libgfortran/gfortran.map: Add c_f_pointer_s0.
- * libgfortran/mk-kinds-h.sh: Save smallest integer kind as default
- character kind.
- * libgfortran/intrinsics/iso_c_generated_procs.c: Add versions of
- c_f_pointer for complex and logical types.
- * libgfortran/gfortran.map: Add c_f_pointer versions for logical
- and complex types.
-
-2007-07-19 Christopher D. Rickett <crickett@lanl.gov>
-
- PR fortran/32600
- * libgfortran/intrinsics/iso_c_binding.c: Remove C_LOC.
- * libgfortran/intrinsics/iso_c_binding.h: Ditto.
- * libgfortran/gfortran.map: Ditto.
-
-2007-07-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
- Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/32611
- * runtime/compile_options.c (set_std): Remove.
- (set_options): New function.
- (init_compile_options): Add initialization for -fsign-zero option.
- * gfortran.map (GFORTRAN_1.0): Rename _gfortran_set_std into
- _gfortran_set_options.
- * libgfortran.h (compile_options_t): Add sign_zero field.
- * io/write.c (output_float): Use the sign bit of the value to determine
- if a negative sign should be emitted for zero values. Do not emit the
- negative sign for zero if -fno-sign-zero was set during compile.
-
-2007-07-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libgfortran/32752
- * io/unix.c (unix_stream): Move buffer pointer adjacent to
- small_buffer.
- * io/transfer.c (formatted_transfer_scalar): If stream I/O, set
- bytes_used to zero. Fix off by one error in calculation of pos and
- skips. Eliminate duplicate pending_spaces check.
-
-2007-07-15 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/32357
- * intrinsics/mvbits.c: Change prototype so that FROMPOS, LEN and
- TOPOS arguments are C int.
-
-2007-07-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libgfortran/32702
- * io/unix.c (unix_stream): Restore buffer pointer and small_buffer.
- (fd_alloc): If the number of bytes needed is greater than the default
- BUFFER_SIZE, allocate a new buffer large enough. Free the old buffer
- if necessary. (fd_sfree): Restore use of buffer pointer.
- (fd_close): Likewise. (fd_open): Likewise.
- (init_error_stream): Likewise.
-
-2007-07-09 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR libfortran/32336
- * m4/matmul.m4: When the dimension of b is incorrect,
- raise a runtime error instead of a failed assertion.
- * generated/matmul_i1.c: Regenerated.
- * generated/matmul_i2.c: Regenerated.
- * generated/matmul_i4.c: Regenerated.
- * generated/matmul_i8.c: Regenerated.
- * generated/matmul_i16.c: Regenerated.
- * generated/matmul_r4.c: Regenerated.
- * generated/matmul_r8.c: Regenerated.
- * generated/matmul_r10.c: Regenerated.
- * generated/matmul_r16.c: Regenerated.
-
-2007-07-08 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libgfortran/32678
- * io/transfer.c (formatted_transfer_scalar): Don't allow
- pending_spaces to go negative.
-
-2007-07-08 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR libfortran/32217
- * intrinsics/unpack_generic.c: If the destination array is
- empty, return early.
-
-2007-07-05 H.J. Lu <hongjiu.lu@intel.com>
-
- * aclocal.m4: Regenerated.
-
-2007-07-04 David Edelsohn <edelsohn@gnu.org>
-
- * configure.ac: SUBST CFLAGS.
- * configure: Regenerate.
-
-2007-07-03 Janne Blomqvist <jb@gcc.gnu.org>
-
- * libgfortran.h: Mark internal_malloc_size as a malloc function.
- * runtime/memory.c (internal_realloc_size): Remove.
- (internal_realloc): Call realloc directly instead of
- internal_realloc_size.
- (allocate_size): Remove.
- (allocate): Call malloc directly instead of allocate_size, mark as
- malloc function.
-
-2007-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
-
- Restore collateral damage from ISO C Binding merge.
-
-2007-06-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libgfortran/32456
- * io/unit.c (filename_from_unit): Don't use find_unit, instead search
- for unit directly.
-
-2007-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
-
- * Makefile.in: Regenerated with automake 1.9.6.
-
-2007-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
-
- * Makefile.in: Remove extraneous kill.lo rule.
-
-2007-07-02 Janne Blomqvist <jb@gcc.gnu.org>
-
- PR fortran/32239
- * generated/pow_r*_i4.c: Removed.
-
-2007-07-01 Christopher D. Rickett <crickett@lanl.gov>
-
- * Makefile.in: Add support for iso_c_generated_procs.c and
- iso_c_binding.c.
- * Makefile.am: Ditto.
- * intrinsics/iso_c_generated_procs.c: New file containing helper
- functions.
- * intrinsics/iso_c_binding.c: Ditto.
- * intrinsics/iso_c_binding.h: New file
- * gfortran.map: Include the __iso_c_binding_c_* functions.
- * libgfortran.h: define GFC_NUM_RANK_BITS.
-
-2007-07-01 Janne Blomqvist <jb@gcc.gnu.org>
-
- PR fortran/32239
- * Makefile.am: Don't generate real**int4 pow functions.
- * gfortran.map: Remove real**int4 pow symbols.
- * Makefile.in: Regenerated.
-
-2007-07-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libgfortran/32554
- * io/write.c (output_float): Set edigits to a fixed size, avoiding
- variation in field width calculation and eliminate buffer overrun.
-
-2007-07-01 Janne Blomqvist <jb@gcc.gnu.org>
-
- * runtime/memory.c (internal_realloc): Use index_type for size
- argument instead of GFC_INTEGER_4.
- (allocate_array): Likewise.
- (allocate): Likewise, add ifdef around unnecessary check.
- (internal_reallo64): Remove.
- (allocate_array64): Remove.
- (allocate64): Remove.
- * gfortran.map: Remove symbols for 64-bit allocation functions.
-
-2007-06-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libgfortran/32456
- * io/unit.c (filename_from_unit): Don't use find_unit, instead search
- for unit directly.
-
-2007-06-24 Adam Nemet <anemet@caviumnetworks.com>
-
- PR libfortran/32495
- * runtime/backtrace.c (local_strcasestr): Rename from strcasestr.
- (show_backtrace): Rename strcasestr to local_strcasestr.
-
-2007-06-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libgfortran/32456
- * runtime/error.c (show_locus): Update to emit the unit number
- and file name involved with the error. Use new function
- filename_from_unit.
- * libgfortran.h (filename_from_unit): Declare new function.
- * io/unit.c (init_units): Set the unit file name for stdin, stdout,
- and stderr for use later in error reporting.
- (filename_from_unit): Add this new function.
-
-2007-06-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libgfortran/32446
- * io/write.c (output_float): Calculate ndigits correctly for large
- numbered formats that must pad zeros before the decimal point.
-
-2007-06-15 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
-
- PR libfortran/32345
- * runtime/backtrace.c (show_backtrace): Only use snprintf if
- available.
-
-2007-06-10 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libgfortran/32235
- * io/transfer.c (st_read): Remove test for end of file condition.
- (next_record_r): Add test for end of file condition.
-
-2007-06-02 Paolo Bonzini <bonzini@gnu.org>
-
- * configure: Regenerate.
-
-2007-05-28 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/32124
- * runtime/memory.c (allocate_size): Use ERROR_ALLOCATION.
- (allocate,allocate64): Use stat variable if present.
-
-2007-05-27 Janne Blomqvist <jb@gcc.gnu.org>
-
- * runtime/string.c (compare0): Use gfc_charlen_type instead of
- int.
- (fstrlen): Likewise.
- (find_option): Likewise.
- (fstrcpy): Use gfc_charlen_type instead of int, return length.
- (cf_strcpy): Likewise.
- * libgfortran.h: Change string prototypes to use gfc_charlen_type.
- * io/open.c (new_unit): Use snprintf if available.
- * io/list_read.c (nml_touch_nodes): Use memcpy instead of
- strcpy/strcat.
- (nml_read_obj): Likewise.
- * io/transfer.c (st_set_nml_var): Likewise.
- * io/write.c (output_float): Use snprintf if available.
- (nml_write_obj) Use memcpy instead of strcpy/strcat.
-
-2007-05-26 Janne Blomqvist <jb@gcc.gnu.org>
-
- * io/unix.c (unix_stream): Rearrange struct members, remove
- small_buffer.
- (int_stream): New struct.
- (fd_alloc): Always use existing buffer, never reallocate.
- (fd_sfree): Remove check for buffer != small_buffer.
- (fd_close): Likewise.
- (mem_alloc_r_at): Change to use int_stream.
- (mem_alloc_w_at): Likewise.
- (mem_read): Likewise.
- (mem_write): Likewise.
- (mem_set): Likewise.
- (mem_truncate): Likewise.
- (mem_close): Likewise.
- (mem_sfree): Likewise.
- (empty_internal_buffer): Likewise.
- (open_internal): Likewise.
-
-2007-05-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- * io/transfer.c (unformatted_read): Use size from front end
- eliminating use of size_from_real_kind.
- (unformatted_write): Ditto.
-
-2007-05-23 Steve Ellcey <sje@cup.hp.com>
-
- * Makefile.in: Regenerate.
- * configure: Regenerate.
- * aclocal.m4: Regenerate.
-
-2007-05-22 Tobias Burnus <burnus@net-b.de>
-
- * libgfortran.h: Mark stop_numeric as noreturn.
-
-2007-05-22 Tobias Burnus <burnus@net-b.de>
-
- PR libgfortran/31295
- * intrinsics/eoshift0.c (eoshift0): Silence uninitialized warning.
- * intrinsics/eoshift2.c (eoshift2): Ditto.
-
-2007-05-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/31964
- * intrinsics/ishftc.c (ishftc4, ishftc8, ishftc16): Fix mask to handle
- shift of bit-size number of bits.
-
-2007-05-17 Tobias Burnus <burnus@net-b.de>
-
- PR fortran/31917
- * runtime/environ.c (mark_range): Fix setting default convert unit.
-
-2007-05-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/31922
- * intrinsics/string_intrinsics.c (string_trim): Set result to null if
- string length is zero.
-
-2007-05-15 Tobias Burnus <burnus@net-b.de>
-
- PR libfortran/31915
- * io/transfer.c (unformatted_read): Use proper size for real(10).
- (unformatted_write): Ditto.
-
-2007-05-14 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/30723
- * runtime/memory.c (internal_malloc, internal_malloc64,
- internal_free): Remove.
- * runtime/error.c (os_error): Export function.
- * intrinsics/move_alloc.c: Include stdlib.h.
- (move_alloc): Call free instead of internal_free.
- (move_alloc_c): Wrap long lines.
- * libgfortran.h (os_error): Export prototype.
- (internal_free): Remove prototype.
- * gfortran.map (GFORTRAN_1.0): Remove _gfortran_internal_free,
- _gfortran_internal_malloc and _gfortran_internal_malloc64.
- Add _gfortran_os_error.
-
-2007-05-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/31880
- * io/unix.c (fd_alloc_r_at): Fix calculation of physical offset.
-
-2007-05-07 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR libfortran/31607
- * intrinsics/system.c (system_sub): Call flush_all_units.
- * io/io.h (flush_all_units): Move prototype to libgfortran.h.
- * libgfortran.h (flush_all_units): Add prototype.
-
-2007-05-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/31201
- * runtime/error.c (runtime_error_at): New function.
- (generate_error): Export this function.
- * gfortran.map: Add _gfortran_generate_error and
- _gfortran_runtime_error_at.
- * libgfortran.h: Add comment to reference error codes in front end.
- (library_start): Locate prototype with library_end macro and add
- a new comment. Add prototype for runtime_error_at. Export prototype
- for generate_error.
- * io/lock.c (library_start): Fix check for error condition.
- * io/transfer.c (data_transfer_init): Add library check.
-
-2007-05-04 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/22359
- * io/intrinsics.c (fseek_sub): New.
- * io/unix.c (fd_fseek): Change logical and physical offsets only
- if seek succeeds.
- * gfortran.map (fseek_sub): New.
-
-2007-05-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR libfortran/31210
- * io/transfer.c (transfer_character): Avoid passing a NULL
- pointer as source to the transfer routines, if the string length
- is zero.
-
-2007-04-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/31501
- * io/list_read.c (next_char): Fix whitespace.
- * io/io.h: Remove prototypes and define macros for is_array_io,
- is_stream_io, and is_internal_unit.
- * io/unit.c (is_array_io), (is_internal_unit), (is_stream_io): Delete
- these functions.
- * io/transfer.c (read_sf): Change handling of internal_unit to make a
- single call to salloc_r and use memcpy to transfer the data.
-
-2007-04-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/31532
- * io/file_pos.c (st_backspace): Set flags.position for end of file
- condition and use new function update_position.
- (st_endfile): Use new function update_position.
- * io/io.h: Add prototype for new function.
- * io/inquire.c (inquire_via_unit): If not direct access, set NEXTREC
- to zero.
- * io/unit.c (update_position): New function to update position info
- used by inquire.
- * io/transfer.c (next_record): Fix typo and use new function.
-
-2007-04-25 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR libfortran/31299
- * intrinsics/getlog.c: Use getpwuid and geteuid instead of
- getlogin if they are available.
- * configure.ac: Add checks for getpwuid and geteuid.
- * configure: Regenerate.
- * config.h.in: Regenerate.
-
-2007-04-25 Janne Blomqvist <jb@gcc.gnu.org>
-
- * configure: Regenerate using autoconf 2.59.
- * Makefile.in: Likewise.
- * config.h.in: Likewise.
-
-2007-04-24 Janne Blomqvist <jb@gcc.gnu.org>
-
- PR libfortran/27740
- * configure.ac: New test to determine if symbol versioning is
- supported.
- * Makefile.am: Use result of above test to add appropriate linker
- flags.
- * gfortran.map: New file.
- * configure: Regenerated.
- * Makefile.in: Regenerated.
- * config.h.in: Regenerated.
-
-2007-04-23 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR fortran/31618
- * io/transfer.c (read_block_direct): Instead of calling us_read,
- set dtp->u.p.current_unit->current_record = 0 so that pre_position
- will read the record marker.
- (data_transfer_init): For different error conditions, call
- generate_error, then return.
-
-2007-04-19 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * runtime/main.c (please_free_exe_path_when_done): New variable.
- (store_exe_path): Initialize character buffer, and mark whether
- exe_path should be free'd by the library destructor function.
- (cleanup): Only free exe_path if needed.
-
-2007-04-18 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
- Tobias Burnus <burnus@net-b.de>
-
- PR libfortran/31286
- PR libfortran/31296
- * intrinsics/cshift0.c (cshift0): Initialize sstride[0] and rstride[0].
- * intrinsics/unpack_generic.c (unpack0, unpack0_char): Zero the
- array structures we pass to unpack_internal.
-
-2007-04-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- * io/open.c (test_endfile): Revert changes for 31052, restoring this
- function.
-
-2007-04-14 Steve Ellcey <sje@cup.hp.com>
-
- * Makefile.am: Add -I .. to ACLOCAL_AMFLAGS. Add libgfortran_la_LINK.
- * Makefile.in: Regenerate.
-
-2007-04-11 Kai Tietz <kai.tietz@onevision.com>
-
- * configure: Regenerate.
-
-2007-04-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- * intrinsics/cpu_time.c: Don't include headers already included
- by libgfortran.h. Protect inclusion of sys/times.h.
- * configure.ac: Remove unneeded checks for finit, stdio.h,
- stddef.h, math.h and sys/params.h.
- * config/fpu-aix.h: Don't include headers already included by
- libgfortran.h.
- * config/fpu-sysv.h: Likewise.
- * io/write.c: Likewise.
- * m4/minloc1.m4: Likewise.
- * m4/maxloc1.m4: Likewise.
- * m4/fraction.m4: Likewise.
- * m4/set_exponent.m4: Likewise.
- * m4/spacing.m4: Likewise.
- * m4/minval.m4: Likewise.
- * m4/maxval.m4: Likewise.
- * m4/exponent.m4: Likewise.
- * m4/nearest.m4: Likewise.
- * m4/minloc0.m4: Likewise.
- * m4/maxloc0.m4: Likewise.
- * m4/rrspacing.m4: Likewise.
- * runtime/main.c: Likewise.
- * runtime/error.c: Likewise.
- * intrinsics/system_clock.c: Likewise.
- * intrinsics/etime.c: Likewise.
- * intrinsics/stat.c: Likewise.
- * intrinsics/date_and_time.c: Likewise.
- * intrinsics/env.c: Likewise.
- * intrinsics/kill.c: Likewise.
- * intrinsics/getXid.c: Likewise.
- * intrinsics/chmod.c: Likewise.
- * intrinsics/args.c: Likewise.
- * intrinsics/c99_functions.c: Likewise.
- * generated/minval_r8.c: Regenerate.
- * generated/maxloc1_4_r8.c: Regenerate.
- * generated/minloc1_16_r16.c: Regenerate.
- * generated/maxval_i2.c: Regenerate.
- * generated/maxloc1_8_i4.c: Regenerate.
- * generated/exponent_r16.c: Regenerate.
- * generated/maxloc0_4_r4.c: Regenerate.
- * generated/fraction_r16.c: Regenerate.
- * generated/fraction_r4.c: Regenerate.
- * generated/minloc0_4_r16.c: Regenerate.
- * generated/minloc0_4_i1.c: Regenerate.
- * generated/maxloc0_4_r16.c: Regenerate.
- * generated/maxloc0_4_i2.c: Regenerate.
- * generated/minloc1_8_r16.c: Regenerate.
- * generated/maxloc1_8_r16.c: Regenerate.
- * generated/set_exponent_r8.c: Regenerate.
- * generated/maxloc0_8_i8.c: Regenerate.
- * generated/minloc1_4_r8.c: Regenerate.
- * generated/maxloc1_16_r16.c: Regenerate.
- * generated/minloc1_16_i4.c: Regenerate.
- * generated/maxloc1_16_i4.c: Regenerate.
- * generated/minloc0_16_i8.c: Regenerate.
- * generated/maxloc0_16_i8.c: Regenerate.
- * generated/nearest_r8.c: Regenerate.
- * generated/spacing_r16.c: Regenerate.
- * generated/maxval_r16.c: Regenerate.
- * generated/minloc1_8_i4.c: Regenerate.
- * generated/minloc0_16_i16.c: Regenerate.
- * generated/minloc0_4_r4.c: Regenerate.
- * generated/set_exponent_r10.c: Regenerate.
- * generated/rrspacing_r10.c: Regenerate.
- * generated/minloc0_4_i2.c: Regenerate.
- * generated/maxloc0_8_i1.c: Regenerate.
- * generated/minloc0_8_i8.c: Regenerate.
- * generated/spacing_r4.c: Regenerate.
- * generated/minloc1_16_r10.c: Regenerate.
- * generated/minloc0_16_i1.c: Regenerate.
- * generated/maxloc0_16_i1.c: Regenerate.
- * generated/maxloc1_8_r8.c: Regenerate.
- * generated/minval_i16.c: Regenerate.
- * generated/exponent_r10.c: Regenerate.
- * generated/maxval_i4.c: Regenerate.
- * generated/minval_i8.c: Regenerate.
- * generated/maxloc1_4_i8.c: Regenerate.
- * generated/fraction_r10.c: Regenerate.
- * generated/maxloc0_16_i16.c: Regenerate.
- * generated/maxloc0_8_r4.c: Regenerate.
- * generated/rrspacing_r8.c: Regenerate.
- * generated/minloc1_4_i16.c: Regenerate.
- * generated/minloc0_4_r10.c: Regenerate.
- * generated/maxloc1_4_i16.c: Regenerate.
- * generated/minloc0_8_i16.c: Regenerate.
- * generated/maxloc0_4_r10.c: Regenerate.
- * generated/maxloc0_8_i16.c: Regenerate.
- * generated/minloc1_8_r10.c: Regenerate.
- * generated/minloc0_16_r4.c: Regenerate.
- * generated/maxloc1_8_r10.c: Regenerate.
- * generated/maxloc0_16_r4.c: Regenerate.
- * generated/minloc1_16_r8.c: Regenerate.
- * generated/minloc0_8_i1.c: Regenerate.
- * generated/maxloc0_4_i4.c: Regenerate.
- * generated/maxloc1_16_r8.c: Regenerate.
- * generated/maxloc0_8_i2.c: Regenerate.
- * generated/nearest_r16.c: Regenerate.
- * generated/maxloc1_16_r10.c: Regenerate.
- * generated/minloc0_16_i2.c: Regenerate.
- * generated/minloc1_8_r8.c: Regenerate.
- * generated/maxloc0_16_i2.c: Regenerate.
- * generated/exponent_r4.c: Regenerate.
- * generated/spacing_r10.c: Regenerate.
- * generated/maxval_r10.c: Regenerate.
- * generated/minval_i1.c: Regenerate.
- * generated/maxloc1_4_i1.c: Regenerate.
- * generated/minloc1_4_i8.c: Regenerate.
- * generated/minloc0_8_r4.c: Regenerate.
- * generated/minloc0_16_r16.c: Regenerate.
- * generated/minloc0_4_i4.c: Regenerate.
- * generated/minloc0_8_i2.c: Regenerate.
- * generated/minval_r4.c: Regenerate.
- * generated/maxloc1_4_r4.c: Regenerate.
- * generated/maxval_r8.c: Regenerate.
- * generated/minval_r16.c: Regenerate.
- * generated/minloc1_4_i1.c: Regenerate.
- * generated/minval_i2.c: Regenerate.
- * generated/maxloc1_4_i2.c: Regenerate.
- * generated/maxloc1_8_i8.c: Regenerate.
- * generated/maxloc0_4_r8.c: Regenerate.
- * generated/maxloc0_16_r16.c: Regenerate.
- * generated/minloc1_4_r16.c: Regenerate.
- * generated/fraction_r8.c: Regenerate.
- * generated/maxloc1_4_r16.c: Regenerate.
- * generated/set_exponent_r4.c: Regenerate.
- * generated/minloc0_8_r16.c: Regenerate.
- * generated/maxloc0_8_r16.c: Regenerate.
- * generated/nearest_r10.c: Regenerate.
- * generated/maxloc0_8_i4.c: Regenerate.
- * generated/minloc1_4_r4.c: Regenerate.
- * generated/minloc0_16_i4.c: Regenerate.
- * generated/maxloc0_16_i4.c: Regenerate.
- * generated/nearest_r4.c: Regenerate.
- * generated/minloc1_16_i8.c: Regenerate.
- * generated/maxloc1_16_i8.c: Regenerate.
- * generated/minloc1_4_i2.c: Regenerate.
- * generated/maxloc1_8_i1.c: Regenerate.
- * generated/minloc0_16_r10.c: Regenerate.
- * generated/minloc1_8_i8.c: Regenerate.
- * generated/minloc0_4_r8.c: Regenerate.
- * generated/minloc0_8_i4.c: Regenerate.
- * generated/minloc1_16_i16.c: Regenerate.
- * generated/spacing_r8.c: Regenerate.
- * generated/maxloc1_8_r4.c: Regenerate.
- * generated/minloc1_16_i1.c: Regenerate.
- * generated/maxloc1_16_i1.c: Regenerate.
- * generated/minval_r10.c: Regenerate.
- * generated/minval_i4.c: Regenerate.
- * generated/minloc1_8_i1.c: Regenerate.
- * generated/maxloc1_4_i4.c: Regenerate.
- * generated/maxloc1_8_i2.c: Regenerate.
- * generated/maxval_i8.c: Regenerate.
- * generated/maxloc0_16_r10.c: Regenerate.
- * generated/rrspacing_r4.c: Regenerate.
- * generated/minloc0_4_i16.c: Regenerate.
- * generated/maxloc0_8_r8.c: Regenerate.
- * generated/maxloc0_4_i16.c: Regenerate.
- * generated/minloc1_4_r10.c: Regenerate.
- * generated/minloc1_8_i16.c: Regenerate.
- * generated/maxloc1_4_r10.c: Regenerate.
- * generated/minloc0_8_r10.c: Regenerate.
- * generated/maxloc1_8_i16.c: Regenerate.
- * generated/maxloc0_8_r10.c: Regenerate.
- * generated/minloc1_16_r4.c: Regenerate.
- * generated/maxloc1_16_r4.c: Regenerate.
- * generated/minloc0_16_r8.c: Regenerate.
- * generated/maxloc0_16_r8.c: Regenerate.
- * generated/maxloc0_4_i8.c: Regenerate.
- * generated/maxloc1_16_i16.c: Regenerate.
- * generated/minloc1_8_r4.c: Regenerate.
- * generated/minloc1_16_i2.c: Regenerate.
- * generated/maxloc1_16_i2.c: Regenerate.
- * generated/maxval_i16.c: Regenerate.
- * generated/exponent_r8.c: Regenerate.
- * generated/minloc1_4_i4.c: Regenerate.
- * generated/maxval_i1.c: Regenerate.
- * generated/minloc1_8_i2.c: Regenerate.
- * generated/minloc0_8_r8.c: Regenerate.
- * generated/set_exponent_r16.c: Regenerate.
- * generated/maxloc0_4_i1.c: Regenerate.
- * generated/rrspacing_r16.c: Regenerate.
- * generated/minloc0_4_i8.c: Regenerate.
- * generated/maxval_r4.c: Regenerate.
- * configure: Regenerate.
- * config.h.in: Regenerate.
-
-2007-04-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/31395
- * io/format.c (parse_format_list): Fix parsing.
-
-2007-04-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR fortran/31304
- intrinsics/string_intrinsics.c (string_repeat): Remove.
-
-2007-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/31052
- * io/open.c (test_endfile): Delete this function.
- (edit_modes): Delete call to test_endfile.
- (new_unit): Likewise.
- * io/io.h: Delete prototype for test_endfile.
- * io/transfer.c (next_record_r): Remove use of test_endfile.
- (st_read): Add test for end file condition and adjust status.
-
-2007-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/31366
- * io/transfer.c (read_block_direct): Do not generate error when reading
- past EOF on a short record that is less than the RECL= specified.
-
-2007-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/31207
- * io/unit.c (close_unit_1): If there are bytes previously written from
- ADVANCE="no", move to the end before closing.
-
-2007-03-31 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
-
- PR libfortran/31335
- * intrinsics/stat.c: Only provide STAT and FSTAT library routines
- if stat() and fstat() library functions are available. When lstat()
- is not available, use stat() instead.
- * configure.ac: Add checks for stat, fstat and lstat.
- * configure: Regenerate.
- * config.h.in: Regenerate.
-
-2007-03-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/31052
- * io/transfer.c (next_record_r): Do not call test_endfile if in
- namelist mode.
-
-2007-03-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/31199
- * io/io.h: Add saved_pos to gfc_unit structure.
- * io/open.c (new_unit): Initialize saved_pos.
- * io/transfer.c (data_transfer_init): Set max_pos to value in
- saved_pos.
- (next_record_w): Fix whitespace.
- (finalze_transfer): Calculate max_pos for ADVANCE="no" and save it for
- later use. If not ADVANCE="no" set saved_pos to zero.
-
-2007-03-25 Thomas Koenig <tkoenig@gcc.gnu.org>
-
- PR libfortran/31196
- * intrinsics/reshape_generic.c (reshape_internal): Increment
- correct variable.
-
-2007-03-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/31052
- * file_pos.c: Update Copyright year.
- * io/open.c (test_endfile): Restore test_endfile to fix SPEC
- regression. Update Copyright year.
- * io/io.h: Same.
- * io/unix.c (is_special): Add missing type for this function.
- Update Copyright year.
- * io/transfer.c (next_record_r): Restore test_endfile.
- (st_read): Fix whitespace. Update Copyright year
-
-2007-03-20 Francois-Xavier Coudert <coudert@clipper.ens.fr>
-
- * configure.ac: Add missing check for gettimeofday.
- * config.h.in: Renegerate.
- * configure: Regenerate.
-
-2007-03-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/31052
- * io/file_position (st_rewind): Fix comments. Remove use of
- test_endfile. Don't seek if already at 0 position. Use new is_special
- function to set endfile state.
- * io/open.c (test_endfile): Delete this function.
- * io/io.h: Delete prototype for test_endfile. Add prototype
- for is_special.
- * io/unix.c (is_special): New function. Fix whitespace.
- * io/transfer.c (next_record_r): Remove use of test_endfile.
-
-2007-03-16 David Edelsohn <edelsohn@gnu.org>
-
- * runtime/main.c: Include "config.h" first.
-
-2007-03-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/31099
- * io/file_pos.c (st_rewind): Don't set bytes_left to zero.
-
-2007-03-15 Francois-Xavier Coudert <coudert@clipper.ens.fr>
-
- * runtime/backtrace.c: New file.
- * runtime/environ.c (variable_table): New GFORTRAN_ERROR_BACKTRACE
- environment variable.
- * runtime/compile_options.c (set_std): Add new argument.
- * runtime/main.c (store_exe_path, full_exe_path): New functions.
- * runtime/error.c (sys_exit): Add call to show_backtrace.
- * libgfortran.h (options_t): New backtrace field.
- (store_exe_path, full_exe_path, show_backtrace): New prototypes.
- * configure.ac: Add checks for execinfo.h, execvp, pipe, dup2,
- close, fdopen, strcasestr, getrlimit, backtrace, backtrace_symbols
- and getppid.
- * Makefile.am: Add runtime/backtrace.c.
- * fmain.c (main): Add call to store_exe_path.
- * Makefile.in: Renegerate.
- * config.h.in: Renegerate.
- * configure: Regenerate.
-
-2007-03-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/31051
- * io/transfer.c (formatted_transfer_scalar): Adjust position for
- pending spaces when in writing mode. Clean up some formatting.
-
-2007-03-14 Thomas Koenig <Thomas.Koenig@online.de>
-
- PR libfortran/30690
- * all.m4: Quote everything, except for m4 macros.
- * any.m4: Likewise.
- * count.m4: Likewise.
- * cshift1.m4: Likewise.
- * eoshift1.m4: Likewise.
- * eoshift3.m4: Likewise.
- * exponent.m4: Likewise.
- * fraction.m4: Likewise.
- * in_pack.m4: Likewise.
- * in_unpack.m4: Likewise.
- * matmul.m4: Likewise.
- * matmull.m4: Likewise.
- * nearest.m4: Likewise.
- * pow.m4: Likewise.
- * product.m4: Likewise.
- * reshape.m4: Likewise.
- * rrspacing.m4: Likewise.
- * set_exponent.m4: Likewise.
- * shape.m4: Likewise.
- * spacing.m4: Likewise.
- * transpose.m4: Likewise.
-
-2007-03-14 Jakub Jelinek <jakub@redhat.com>
-
- * io/unix.c (regular_file): For ACTION_UNSPECIFIED retry with
- O_RDONLY even if errno is EROFS.
-
-2007-03-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/31099
- * io/open.c (new_unit): Initialize bytes_left and recl_subrecord.
- * io/transfer.c (next_record_w): Set bytes left to record length for
- sequential unformatted I/O.
- (next_record_r): Ditto.
- (read_block_direct): Fix test for exceeding bytes_left.
-
-2007-03-08 Daniel Franke <franke.daniel@gmail.com>
-
- PR fortran/30947
- * intrinsics/signal.c (alarm_sub_int): Avoid SEGFAULT with
- integer arguments.
-
-2007-03-04 Thomas Koenig <Thomas.Koenig@online.de>
-
- PR libfortran/30981
- * m4/pow_m4: Use appropriate unsigned int type for u.
- * generated/pow_c10_i16.c: Regenerated.
- * generated/pow_c10_i4.c: Regenerated.
- * generated/pow_c10_i8.c: Regenerated.
- * generated/pow_c16_i16.c: Regenerated.
- * generated/pow_c16_i4.c: Regenerated.
- * generated/pow_c16_i8.c: Regenerated.
- * generated/pow_c4_i16.c: Regenerated.
- * generated/pow_c4_i4.c: Regenerated.
- * generated/pow_c4_i8.c: Regenerated.
- * generated/pow_c8_i16.c: Regenerated.
- * generated/pow_c8_i4.c: Regenerated.
- * generated/pow_c8_i8.c: Regenerated.
- * generated/pow_i16_i16.c: Regenerated.
- * generated/pow_i16_i4.c: Regenerated.
- * generated/pow_i16_i8.c: Regenerated.
- * generated/pow_i4_i16.c: Regenerated.
- * generated/pow_i4_i4.c: Regenerated.
- * generated/pow_i4_i8.c: Regenerated.
- * generated/pow_i8_i16.c: Regenerated.
- * generated/pow_i8_i4.c: Regenerated.
- * generated/pow_i8_i8.c: Regenerated.
- * generated/pow_r10_i16.c: Regenerated.
- * generated/pow_r10_i4.c: Regenerated.
- * generated/pow_r10_i8.c: Regenerated.
- * generated/pow_r16_i16.c: Regenerated.
- * generated/pow_r16_i4.c: Regenerated.
- * generated/pow_r16_i8.c: Regenerated.
- * generated/pow_r4_i16.c: Regenerated.
- * generated/pow_r4_i4.c: Regenerated.
- * generated/pow_r4_i8.c: Regenerated.
- * generated/pow_r8_i16.c: Regenerated.
- * generated/pow_r8_i4.c: Regenerated.
- * generated/pow_r8_i8.c: Regenerated.
-
-2007-03-03 Francois-Xavier Coudert <coudert@clipper.ens.fr>
-
- PR libfortran/31001
- * intrinsics/pack_generic.c (pack_internal): Add special checks
- for zero-sized arrays.
-
-2007-03-01 Brooks Moses <brooks.moses@codesourcery.com>
-
- * Makefile.am: Add dummy install-pdf target.
- * Makefile.in: Regenerate
-
-2007-02-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/30918
- * io/listread.c (namelist_read): Eat comment line.
-
-2007-02-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/30910
- * io/write.c (output_float): Add condition of format F only for
- special case rounding with zero precision.
-
-2007-02-19 Thomas Koenig <Thomas.Koenig@online.de>
-
- PR libfortran/30533
- PR libfortran/30765
- * Makefile.am: Add $(srcdir) too all files in generated/.
- (i_maxloc0_c): Add maxloc0_4_i1.c, maxloc0_8_i1.c,
- maxloc0_16_i1.c, maxloc0_4_i2.c, maxloc0_8_i2.c and
- maxloc0_16_i2.c.
- (i_maxloc1_c): Add maxloc1_4_i1.c, maxloc1_8_i1.c,
- maxloc1_16_i1.c, maxloc1_4_i2.c, maxloc1_8_i2.c and
- maxloc1_16_i2.c.
- (i_maxval_c): Add maxval_i1.c and maxval_i2.c.
- (i_minloc0_c): Add minloc0_4_i1.c, minloc0_8_i1.c,
- minloc0_16_i1.c, minloc0_4_i2.c, minloc0_8_i2.c and
- minloc0_16_i2.c.
- (i_minloc_1.c): Add minloc1_4_i1.c, minloc1_8_i1.c,
- minloc1_16_i1.c, minloc1_4_i2.c, minloc1_8_i2.c and
- minloc1_16_i2.c.
- (i_minval_c): Add minval_i1.c and minval_i2.c.
- (i_sum_c): Add sum_i1.c and sum_i2.c.
- (i_product_c): Add product_i1.c and product_i2.c.
- (i_matmul_c): Add matmul_i1.c and matmul_i2.c.
- (gfor_built_specific_src): Remove $(srcdir) from target.
- (gfor_bulit_specific2_src): Likewise.
- Makefile.in: Regenerated.
- libgfortran.h: Add GFC_INTEGER_1_HUGE and GFC_INTEGER_2_HUGE.
- Add gfc_array_i1 and gfc_array_i2.
- * generated/matmul_i1.c: New file.
- * generated/matmul_i2.c: New file.
- * generated/maxloc0_16_i1.c: New file.
- * generated/maxloc0_16_i2.c: New file.
- * generated/maxloc0_4_i1.c: New file.
- * generated/maxloc0_4_i2.c: New file.
- * generated/maxloc0_8_i1.c: New file.
- * generated/maxloc0_8_i2.c: New file.
- * generated/maxloc1_16_i1.c: New file.
- * generated/maxloc1_16_i2.c: New file.
- * generated/maxloc1_4_i1.c: New file.
- * generated/maxloc1_4_i2.c: New file.
- * generated/maxloc1_8_i1.c: New file.
- * generated/maxloc1_8_i2.c: New file.
- * generated/maxval_i1.c: New file.
- * generated/maxval_i2.c: New file.
- * generated/minloc0_16_i1.c: New file.
- * generated/minloc0_16_i2.c: New file.
- * generated/minloc0_4_i1.c: New file.
- * generated/minloc0_4_i2.c: New file.
- * generated/minloc0_8_i1.c: New file.
- * generated/minloc0_8_i2.c: New file.
- * generated/minloc1_16_i1.c: New file.
- * generated/minloc1_16_i2.c: New file.
- * generated/minloc1_4_i1.c: New file.
- * generated/minloc1_4_i2.c: New file.
- * generated/minloc1_8_i1.c: New file.
- * generated/minloc1_8_i2.c: New file.
- * generated/minval_i1.c: New file.
- * generated/minval_i2.c: New file.
- * generated/product_i1.c: New file.
- * generated/product_i2.c: New file.
- * generated/sum_i1.c: New file.
- * generated/sum_i2.c: New file.
-
-2007-02-16 Francois-Xavier Coudert <coudert@clipper.ens.fr>
-
- * runtime/memory.c (deallocate): Correct comment.
-
-2007-02-10 Thomas Koenig <Thomas.Koenig@online.de>
-
- * Makefile.am: Use $(M4) instead of m4.
- * Makefile.in: Regenerate.
-
-2007-02-10 Thomas Koenig <Thomas.Koenig@online.de>
-
- * Makefile.am: Remove $(srcdir) from assorted targets
- in maintainer mode.
- * Makefile.in: Regenerate.
-
-2007-02-09 Thomas Koenig <Thomas.Koenig@online.de>
- Tobias Burnus <burnus@net-b.de>
-
- PR fortran/30512
- * m4/iparm.m4: Use HUGE-1 for most negative integer.
- * generated/maxloc1_8_i4.c: Regenerate.
- * generated/maxloc0_8_i8.c: Regenerate.
- * generated/maxloc1_16_i4.c: Regenerate.
- * generated/maxloc0_16_i8.c: Regenerate.
- * generated/maxval_i4.c: Regenerate.
- * generated/maxloc1_4_i8.c: Regenerate.
- * generated/maxloc0_16_i16.c: Regenerate.
- * generated/maxloc1_4_i16.c: Regenerate.
- * generated/maxloc0_8_i16.c: Regenerate.
- * generated/maxloc0_4_i4.c: Regenerate.
- * generated/maxloc1_8_i8.c: Regenerate.
- * generated/maxloc0_8_i4.c: Regenerate.
- * generated/maxloc0_16_i4.c: Regenerate.
- * generated/maxloc1_16_i8.c: Regenerate.
- * generated/maxloc1_4_i4.c: Regenerate.
- * generated/maxval_i8.c: Regenerate.
- * generated/maxloc0_4_i16.c: Regenerate.
- * generated/maxloc1_8_i16.c: Regenerate.
- * generated/maxloc0_4_i8.c: Regenerate.
- * generated/maxloc1_16_i16.c: Regenerate.
- * generated/maxval_i16.c: Regenerate.
-
-2007-02-04 Francois-Xavier Coudert <coudert@clipper.ens.fr>
-
- PR fortran/30611
- * intrinsics/string_intrinsics.c (string_repeat): Don't check
- if ncopies is negative.
-
-2007-02-04 Francois-Xavier Coudert <coudert@clipper.ens.fr>
-
- PR libfortran/30007
- * libgfortran.h: Do not prefix symbol name with
- __USER_LABEL_PREFIX__ when used in __attribute__((__alias__(...))).
-
-2007-02-02 Paul Thomas <pault@gcc.gnu.org>
-
- PR fortran/30284
- PR fortran/30626
- * io/transfer.c (init_loop_spec, next_array_record): Change to
- lbound rather than unity base.
-
-2007-01-21 Francois-Xavier Coudert <coudert@clipper.ens.fr>
-
- * runtime/error.c: Include sys/time.h before sys/resource.h.
-
-2007-01-21 Thomas Koenig <Thomas.Koenig@online.de>
-
- PR libfortran/30525
- * intrinsics/string_intrinsics.c(compare_string): Make
- sure that comparisons are done unsigned.
-
-2007-01-21 Tobias Burnus <burnus@net-b.de>
-
- PR libfortran/30015
- * intrinsics/date_and_time.c (date_and_time): Fix case where time
- can go backwards.
- * configure.ac: Remove AC_TRY_RUN test for timezone in
- gettimeofday.
- * acinclude.m4: Ditto.
- * configure: Regenerate.
- * config.h.in: Regenerate.
-
-2007-01-20 Francois-Xavier Coudert <coudert@clipper.ens.fr>
-
- * m4/misc_specifics.m4: Add _gfortran prefix to specific names.
- * m4/specific2.m4: Likewise.
- * m4/specific.m4: Likewise.
- * intrinsics/f2c_specifics.F90: Likewise.
- * intrinsics/selected_int_kind.f90: Add _gfortran prefix.
- * intrinsics/selected_real_kind.f90: Likewise.
- * intrinsics/dprod_r8.f90: Likewise.
- * Makefile.am: Add -fallow-leading-underscore to the
- gfor_specific_src files, as well as selected_real_kind.F90
- and selected_int_kind.F90
- * Makefile.in: Regenerate.
- * generated/_sqrt_c8.F90: Regenerate.
- * generated/_sign_r16.F90: Regenerate.
- * generated/_log_c16.F90: Regenerate.
- * generated/_sin_c10.F90: Regenerate.
- * generated/_tanh_r4.F90: Regenerate.
- * generated/_tanh_r8.F90: Regenerate.
- * generated/_log10_r10.F90: Regenerate.
- * generated/_aimag_c4.F90: Regenerate.
- * generated/_sign_r4.F90: Regenerate.
- * generated/_aimag_c8.F90: Regenerate.
- * generated/_sign_r8.F90: Regenerate.
- * generated/_mod_i4.F90: Regenerate.
- * generated/_cos_r16.F90: Regenerate.
- * generated/_aint_r10.F90: Regenerate.
- * generated/_mod_i8.F90: Regenerate.
- * generated/_abs_i16.F90: Regenerate.
- * generated/_sqrt_c10.F90: Regenerate.
- * generated/_atan2_r4.F90: Regenerate.
- * generated/_cos_c4.F90: Regenerate.
- * generated/_atan_r16.F90: Regenerate.
- * generated/_tanh_r10.F90: Regenerate.
- * generated/_atan2_r8.F90: Regenerate.
- * generated/_cos_c8.F90: Regenerate.
- * generated/_exp_r4.F90: Regenerate.
- * generated/_log_r10.F90: Regenerate.
- * generated/_exp_r8.F90: Regenerate.
- * generated/_abs_r4.F90: Regenerate.
- * generated/_abs_r8.F90: Regenerate.
- * generated/_sin_r16.F90: Regenerate.
- * generated/_tan_r4.F90: Regenerate.
- * generated/_tan_r8.F90: Regenerate.
- * generated/_sign_i4.F90: Regenerate.
- * generated/_sign_i8.F90: Regenerate.
- * generated/_exp_c16.F90: Regenerate.
- * generated/_sqrt_r16.F90: Regenerate.
- * generated/_conjg_c4.F90: Regenerate.
- * generated/_conjg_c8.F90: Regenerate.
- * generated/_dim_r16.F90: Regenerate.
- * generated/_mod_r10.F90: Regenerate.
- * generated/_abs_c10.F90: Regenerate.
- * generated/_conjg_c16.F90: Regenerate.
- * generated/_tan_r16.F90: Regenerate.
- * generated/_asinh_r10.F90: Regenerate.
- * generated/_abs_i4.F90: Regenerate.
- * generated/_abs_i8.F90: Regenerate.
- * generated/_acos_r10.F90: Regenerate.
- * generated/_exp_r10.F90: Regenerate.
- * generated/_acosh_r16.F90: Regenerate.
- * generated/_atan2_r16.F90: Regenerate.
- * generated/_cos_c16.F90: Regenerate.
- * generated/_mod_i16.F90: Regenerate.
- * generated/_asin_r4.F90: Regenerate.
- * generated/_anint_r16.F90: Regenerate.
- * generated/_asin_r8.F90: Regenerate.
- * generated/_aimag_c10.F90: Regenerate.
- * generated/_exp_c4.F90: Regenerate.
- * generated/_sinh_r10.F90: Regenerate.
- * generated/_exp_c8.F90: Regenerate.
- * generated/_log10_r4.F90: Regenerate.
- * generated/_log10_r8.F90: Regenerate.
- * generated/_abs_c4.F90: Regenerate.
- * generated/_abs_r16.F90: Regenerate.
- * generated/_abs_c8.F90: Regenerate.
- * generated/_asin_r10.F90: Regenerate.
- * generated/_sign_r10.F90: Regenerate.
- * generated/_atanh_r16.F90: Regenerate.
- * generated/_log_c10.F90: Regenerate.
- * generated/_cosh_r16.F90: Regenerate.
- * generated/_sin_c16.F90: Regenerate.
- * generated/_cos_r10.F90: Regenerate.
- * generated/_log10_r16.F90: Regenerate.
- * generated/_aint_r16.F90: Regenerate.
- * generated/_acos_r4.F90: Regenerate.
- * generated/_acos_r8.F90: Regenerate.
- * generated/_sqrt_c16.F90: Regenerate.
- * generated/_acosh_r4.F90: Regenerate.
- * generated/_atan_r10.F90: Regenerate.
- * generated/_acosh_r8.F90: Regenerate.
- * generated/_sign_i16.F90: Regenerate.
- * generated/_tanh_r16.F90: Regenerate.
- * generated/_log_r4.F90: Regenerate.
- * generated/_log_r8.F90: Regenerate.
- * generated/_sin_r4.F90: Regenerate.
- * generated/_sin_r8.F90: Regenerate.
- * generated/_log_r16.F90: Regenerate.
- * generated/_sin_r10.F90: Regenerate.
- * generated/_sqrt_r4.F90: Regenerate.
- * generated/_exp_c10.F90: Regenerate.
- * generated/_sqrt_r8.F90: Regenerate.
- * generated/_asinh_r4.F90: Regenerate.
- * generated/_sqrt_r10.F90: Regenerate.
- * generated/_asinh_r8.F90: Regenerate.
- * generated/_dim_r4.F90: Regenerate.
- * generated/_dim_r8.F90: Regenerate.
- * generated/_dim_r10.F90: Regenerate.
- * generated/_cosh_r4.F90: Regenerate.
- * generated/_conjg_c10.F90: Regenerate.
- * generated/_tan_r10.F90: Regenerate.
- * generated/_cosh_r8.F90: Regenerate.
- * generated/_mod_r16.F90: Regenerate.
- * generated/_abs_c16.F90: Regenerate.
- * generated/_cos_r4.F90: Regenerate.
- * generated/_asinh_r16.F90: Regenerate.
- * generated/_cos_r8.F90: Regenerate.
- * generated/_atanh_r4.F90: Regenerate.
- * generated/_atanh_r8.F90: Regenerate.
- * generated/_acos_r16.F90: Regenerate.
- * generated/_anint_r4.F90: Regenerate.
- * generated/_acosh_r10.F90: Regenerate.
- * generated/_anint_r8.F90: Regenerate.
- * generated/_exp_r16.F90: Regenerate.
- * generated/_mod_r4.F90: Regenerate.
- * generated/_cos_c10.F90: Regenerate.
- * generated/_atan2_r10.F90: Regenerate.
- * generated/_dim_i16.F90: Regenerate.
- * generated/_mod_r8.F90: Regenerate.
- * generated/_anint_r10.F90: Regenerate.
- * generated/_aint_r4.F90: Regenerate.
- * generated/_aint_r8.F90: Regenerate.
- * generated/_dim_i4.F90: Regenerate.
- * generated/_sinh_r4.F90: Regenerate.
- * generated/_log_c4.F90: Regenerate.
- * generated/_dim_i8.F90: Regenerate.
- * generated/_sinh_r8.F90: Regenerate.
- * generated/_log_c8.F90: Regenerate.
- * generated/_sin_c4.F90: Regenerate.
- * generated/_sin_c8.F90: Regenerate.
- * generated/misc_specifics.F90: Regenerate.
- * generated/_abs_r10.F90: Regenerate.
- * generated/_aimag_c16.F90: Regenerate.
- * generated/_atan_r4.F90: Regenerate.
- * generated/_sinh_r16.F90: Regenerate.
- * generated/_atan_r8.F90: Regenerate.
- * generated/_atanh_r10.F90: Regenerate.
- * generated/_cosh_r10.F90: Regenerate.
- * generated/_sqrt_c4.F90: Regenerate.
- * generated/_asin_r16.F90: Regenerate.
-
-2007-01-19 Francois-Xavier Coudert <coudert@clipper.ens.fr>
-
- PR libfortran/26893
- * acinclude.m4 (LIBGFOR_WORKING_GFORTRAN): New check.
- * configure.ac: Add call to LIBGFOR_WORKING_GFORTRAN.
- * configure: Regenerate.
- * config.h.in: Regenerate because it was forgottent in the last
- commit.
-
-2007-01-18 Francois-Xavier Coudert <coudert@clipper.ens.fr>
- Tobias Burnus <burnus@net-b.de>
-
- PR libfortran/29649
- * runtime/environ.c (variable_table): New GFORTRAN_ERROR_DUMPCORE
- environment variable.
- * runtime/compile_options.c (set_std): Add new argument.
- * runtime/error.c (sys_exit): Move from io/unix.c. Add coredump
- functionality.
- * libgfortran.h (options_t): New dump_core and backtrace members.
- (sys_exit): Move prototype.
- * io/unix.c (sys_exit): Move to runtime/error.c.
- * configure.ac: Add check for getrlimit.
- * configure: Regenerate.
-
-2007-01-17 Tom Tromey <tromey@redhat.com>
-
- PR libfortran/27107:
- * aclocal.m4, configure, Makefile.in: Rebuilt.
- * configure.ac: Enable automake dependency tracking. Update
- minimum automake version.
-
-2007-01-17 Francois-Xavier Coudert <coudert@clipper.ens.fr>
-
- PR libfortran/27107
- * runtime/environ.c: Don't include io/io.h.
- * runtime/string.c: Don't include io/io.h.
- (compare0): Add cast to avoid warning.
- * runtime/error.c: Don't include io/io.h.
- (st_printf): Move to io/unix.c.
- * intrinsics/flush.c: Delete, contents moved to io/intrinsics.c.
- * intrinsics/fget.c: Likewise.
- * intrinsics/ftell.c: Likewise.
- * intrinsics/tty.c: Likewise.
- * libgfortran.h (DEFAULT_RECL, notification_std,
- get_unformatted_convert, IOPARM_*, st_parameter_common, unit_convert,
- DEFAULT_TEMPDIR): New declarations.
- * io/io.h (DEFAULT_RECL, notification_std, get_unformatted_convert,
- IOPARM_*, st_parameter_common, unit_convert, DEFAULT_TEMPDIR):
- Move to libgfortran.h.
- * io/unix.c: Add io/unix.h content.
- (st_printf): New function.
- * io/intrinsics.c: New file.
- * io/unix.h: Remove, contents moved into unix.c.
- * libtool-version: Update library version to 3.0.0.
- * configure.ac: Update library version to 0.3.
- * Makefile.am (intrinsics/fget.c, intrinsics/flush.c,
- intrinsics/ftell.c, intrinsics/tty.c, libgfortran.h): Remove targets.
- * Makefile.in: Regenerate.
- * configure: Regenerate.
-
-2007-01-12 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/30435
- * io/list_read.c (finish_separator): Don't call next_record.
- (list_formatted_read_scalar): Clean up some comments and whitespace.
- (nml_read_obj): Whitespace fix.
-
-2007-01-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
-
- PR libfortran/30162
- * io/unix.c (fd_flush): Don't seek if file is not seekable, defined as
- s->file_length == -1.
- (fd_alloc_w_at): Do not adjust file_length if file is not seekable.
- (fd_seek): If not seekable, just return success.
- (fd_truncate): If not seekable, no need to truncate. Return failure
- if seek fails and the stream is not a pipe.
- (fd_to_stream): Make test for non-seekable file more robust.
-
-2007-01-01 Steven G. Kargl <kargls@comcast.net>
-
- * ChangeLog: Copied to ...
- * ChangeLog-2006: here.
--- /dev/null
+2007-12-27 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR libfortran/22423
+ * intrinsics/pack_generic.c (pack): Change type of mask argument
+ to gfc_array_l1 * in prototype and function.
+ (pack_char): Likewise.
+ * intrinsics/unpack_generic.c (unpack1): Likewise.
+ (unpack1_char): Likewise.
+ (unpack0): Likewise.
+ (unpack0_char): Likewise.
+
+2007-12-27 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR libfortran/34594
+ * runtime/error.c: If there was a previous error, don't
+ mask it with another error mesage, EOF or EOR condition.
+
+2007-12-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/34560
+ * io/transfer.c (read_sf): Check if readlen was less than the requested
+ number of bytes to read and if so, generate error.
+
+2007-12-25 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/34533
+ * intrinsics/cpu_time.c: Moved code commonly usable for CPU_TIME,
+ DTIME and ETIME to ...
+ * intrinsics/time_1.h: ... here.
+ * intrinsics/dtime.c: New file.
+ * intrinsics/etime.c: Newly implemented using the common
+ time-aquisition function from time_1.h.
+ * gfortran.map (_gfortran_dtime, _gfortran_dtime_sub): New.
+ * Makefile.am: Added new file.
+ * Makefile.in: Regenerated.
+ * configure: Regenerated.
+
+2007-12-25 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR libfortran/34566
+ * m4/matmull.m4: Multiply xstride and ystride by correct kind.
+ * generated/matmul_l4.c: Regenerated.
+ * generated/matmul_l8.c: Regenerated.
+ * generated/matmul_l16.c: Regenerated.
+
+2007-12-19 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34530
+ * io/list_read.c (eat_line): Move up in the file.
+ (eat_separator): In namelist mode, skip over comment lines.
+
+2007-12-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/34427
+ * io/list_read.c (read_real): Handle intervening line ends and spaces.
+ (get_name): Don't push separators to saved_string.
+ (eat_separator): If in namelist mode eat spaces and line ends as well.
+
+2007-12-13 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR libfortran/34370
+ PR libfortran/34323
+ PR libfortran/34405
+ * io/io.h: Add previous_nonadvancing_write to gfc_unit.
+ Add prototype for finish_last_advance_record.
+ * io/file_pos.c (st_backspace): Generate error if backspace is
+ attempted for direct access or unformatted stream.
+ If there are bytes left from a previous ADVANCE="no", write
+ them out before performing the backspace.
+ (st_endfile): Generate error if endfile is attempted for
+ direct access.
+ If there are bytes left from a previous ADVANCE="no", write
+ them out before performing the endfile.
+ (st_rewind): Generate error if rewind is attempted for
+ direct access.
+ * unit.c (close_unit_1): Move functionality to write
+ previously written bytes to...
+ (finish_last_advance_record): ... here.
+ * transfer.c (data_transfer_init): If reading, reset
+ previous_nonadvancing_write.
+ (finalize_transfer): Set the previous_noadvancing_write
+ flag if we are writing and ADVANCE="no" was specified.
+ Only call next_record() if advance="no" wasn't specified.
+
+2007-12-13 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34427
+ * io/list_read.c (read_real): Fix unwinding for namelists.
+
+2007-12-10 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/34411
+ * io/read.c (convert_real, read_l, read_decimal, read_radix, read_f):
+ Call next_record after bad read or overflow error.
+
+2007-12-09 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34404
+ * io/list_read.c (parse_real): Remove superfluous "goto bad;".
+
+2007-12-08 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/34319
+ * io/list_read.c (parse_real, read_real): Support NaN/Infinity.
+
+2007-12-02 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+ Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR libfortran/33985
+ * io/transfer.c (read_block, read_block_direct, write_block, write_buf):
+ Don't seek if file position is already there for STREAM I/O.
+ (finalize_transfer): For STREAM I/O don't flush unless the file position
+ has moved past the start position before the transfer.
+
+2007-12-01 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * intrinsic/stat.c (stat_i4_sub_0, stat_i8_sub_0): Mark parameter
+ with unused attribute.
+ * intrinsics/system_clock.c (system_clock_4, system_clock_8):
+ Remove unused variable.
+ * intrinsics/umask.c: Include unistd.h.
+
+2007-11-30 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/34291
+ * io/list_read.c (read_character): When reading an unquoted string,
+ return if special characters that could signify the end of the namelist
+ read are encountered.
+
+2007-11-29 Steven G. Kargl <kargls@comcast.net>
+
+ PR libfortran/33583
+ * libgfortran/gfortran.map: Add tgammaf, tgamma, lgamma, and lgammaf.
+ * gfortran.dg/gamma_5.f90: Remove xfail.
+
+2007-11-16 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR libfortran/33583
+ PR libfortran/33698
+ * intrinsics/c99_functions.c (tgamma, tgammaf, lgamma, lgammaf):
+ New fallback functions.
+ * c99_protos.h (tgamma, tgammaf, lgamma, lgammaf): New prototypes.
+ * configure.ac: Add checks for tgamma, tgammaf, tgammal, lgamma,
+ lgammaf and lgammal.
+ * config.h.in: Regenerate.
+ * configure: Regenerate.
+
+2007-11-08 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * mk-kinds-h.sh: Change sed syntax.
+
+2007-11-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/33985
+ * io/transfer.c (finalize_transfer): Revert previous patch.
+
+2007-11-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/33985
+ * io/transfer.c (finalize_transfer): Do not flush for
+ unformatted STREAM I/O.
+
+2007-10-27 Tobias Burnus <burnus@net-b.de>
+
+ * mk-kinds-h.sh: Change LANG=C to LC_ALL=C.
+
+2007-10-26 Tobias Burnus <burnus@net-b.de>
+
+ * mk-kinds-h.sh: Add "LANG=C".
+
+2007-10-26 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * libgfortran.h (GFC_REAL_*_HUGE, GFC_REAL_*_DIGITS,
+ GFC_REAL_*_RADIX): Remove.
+ * mk-kinds-h.sh: Define GFC_REAL_*_HUGE, GFC_REAL_*_DIGITS and
+ GFC_REAL_*_RADIX. Don't define GFC_REAL_LARGEST_FORMAT and
+ GFC_REAL_LARGEST.
+
+2007-10-19 Ben Elliston <bje@au.ibm.com>
+
+ * intrinsics/signal.c (alarm_sub_i4): Mark conditionally unused
+ parameters with __attribute__ ((unused)).
+ (alarm_sub_i8): Likewise.
+ (alarm_sub_int_i4): Likewise.
+ (alarm_sub_int_i8): Likewise.
+
+2007-10-18 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+ Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/33795
+ * libgfortran.h: Add unbuffered_preconnected.
+ * io/unix.c (output_stream): Set stream unbuffered flag if
+ options.unbuffered_preconnected has been set.
+ (error_stream): Ditto.
+ * runtime/environ.c (variable_table): Add to environment variable table
+ the entry: GFORTRAN_UNBUFFERED_PRECONNECTED.
+
+2007-10-18 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR libfortran/32021
+ * runtime/backtrace.c (local_strcasestr): Protect by appropriate
+ macros.
+ * runtime/main.c (cleanup): Cast argument to free.
+ * intrinsics/spread_generic.c (spread_internal): Match runtime_error
+ arguments and format.
+ * intrinsics/signal.c (alarm_sub_int_i4, alarm_sub_int_i8): Cast
+ pointers to avoid warnings.
+
+2007-10-18 Ben Elliston <bje@au.ibm.com>
+
+ * runtime/environ.c (init_choice): Remove unused function.
+ (show_choice): Likewise.
+ (choice): Remove.
+ (FP_ROUND_NEAREST, FP_ROUND_UP, FP_ROUND_DOWN, FP_ROUND_ZERO):
+ Remove.
+ (precision, signal_choices): Remove.
+
+2007-10-15 Christopher D. Rickett <crickett@lanl.gov>
+
+ PR fortran/32600
+ * libgfortran/intrinsics/iso_c_binding.c: Remove c_associated_1
+ and c_associated_2.
+ * libgfortran/intrinsics/iso_c_binding.h: Ditto.
+ * libgfortran/gfortran.map: Ditto.
+
+2007-10-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/33055
+ * io/inquire.c (inquire_via_unit): If inquiring by unit, check for
+ an error condition from the IOSTAT variable and set EXIST to false if
+ there was a bad unit number.
+
+2007-10-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/33672
+ * io/list_read.c (nml_parse_qualifier): Add character specific error
+ messages. Check for proper form of sub-string qualifiers. Return the
+ parsed_rank flag indicating a non-zero rank qualifier.
+ (nml_get_obj_data): Count the instances of non-zero rank qualifiers.
+ Issue an error if more that one non-zero rank qualifier is found.
+
+2007-10-04 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/33253
+ * io/list_read.c (read_character): Use line_buffer to scan ahead for
+ object name or string when no delimiter is found.
+
+2007-10-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR libfortran/32021
+ * runtime/environ.c (init_mem, show_mem, init_round, show_round,
+ init_precision, show_precision, init_signal, show_signal): Remove.
+ (variable_table): Remove GFORTRAN_MEM_INIT, GFORTRAN_MEM_CHECK,
+ GFORTRAN_SIGHUP, GFORTRAN_SIGINT, GFORTRAN_FPU_ROUND and
+ GFORTRAN_FPU_PRECISION.
+ * libgfortran.h (options_t): Remove mem_check, fpu_round,
+ fpu_precision, sighup, sigint, allocate_init_flag and
+ allocate_init_value.
+
+2007-10-02 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/33253
+ * io/list_read.c (read_character): Use DELIM_APOSTROPHE and DELIM_QUOTE
+ and quote value in check of first character in string.
+
+2007-10-02 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33469
+ * io/write.c (write_real): Widen the default formats.
+
+2007-09-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/33400
+ * io/list_read.c (next_char): Interpret encountering the end of file the
+ first time as an end of line. Subsequent reads give EOF error.
+
+2007-09-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/33421
+ * io/list_read.c (read_character): Revert r128057.
+
+2007-09-21 Bernhard Fischer <aldot>
+
+ PR fortran/31546
+ * (configure.ac): Add --enable-intermodule for onestep build.
+ * (Makefile.am): Handle onestep build.
+ * (configure, Makefile.in): Regenerate.
+
+2007-09-21 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR libfortran/26253
+ * intrinsics/c99_functions.c (scalbn): Use ldexp if appopriate.
+
+2007-09-21 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR libfortran/23272
+ * io/unix.c (id_from_handle, id_from_path, id_from_fd): New
+ functions.
+ (compare_file_filename, find_file, find_file0): Use the new
+ functions above.
+
+2007-09-21 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * acinclude.m4 (LIBGFOR_TARGET_ILP32): Remove test.
+ * configure.ac: Don't call LIBGFOR_TARGET_ILP32.
+ * configure: Regenerate.
+ * config.h.in: Regenerate.
+
+2007-09-15 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR libfortran/21185
+ * runtime/compile_options.c (set_options): Fix typo.
+ * runtime/main.c (store_exe_path): If getcwd is not available,
+ don't use it.
+ * intrinsics/getcwd.c: Same thing here.
+ * io/unix.c (fallback_access): New fallback function for access.
+ (fix_fd): Don't use dup if it's not available.
+ * configure.ac: Check for dup and getcwd.
+ * configure: Regenerate.
+ * config.h.in: Regenerate.
+
+2007-09-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * io/io.h: Include libgfortran.h first.
+
+2007-09-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR libfortran/33386
+ * runtime/select.c (select_string): Initialize default_jump.
+
+2007-09-07 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/33307
+ * io/filepos.c (st_backspace): Don't truncate when already at the end
+ of the file.
+
+2007-09-07 Uros Bizjak <ubizjak@gmail.com>
+
+ * config/fpu-387.h: Include cpuid.h.
+ (set_fpu): Use __get_cpuid to check for SSE.
+
+2007-09-06 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/33298
+ * intrinsics/spread_generic.c(spread_internal): Enable
+ bounds checking by comparing extents if the bounds_check
+ option has been set. If any extent is <=0, return early.
+
+2007-09-06 David Edelsohn <edelsohn@gnu.org>
+
+ * libgfortran.h: Include config.h first.
+ * io/io.h (struct stream): Rename truncate to trunc.
+ * io/unix.c (fd_open): Same.
+ (open_internal): Same.
+
+2007-09-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/33253
+ * io/write.c (nml_write_obj): Set the delimiter correctly before
+ calling write_character. (namelist_write): Clean up the code a little
+ and add comments to clarify what its doing.
+
+2007-09-04 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/33225
+ * io/write.c (stdbool.h): Add include. (sign_t): Move typedef to
+ new file write_float.def. Include write_float.def.
+ (extract_real): Delete. (calculate_sign): Delete.
+ (calculate_exp): Delete. (calculate_G_format): Delete.
+ (output_float): Delete. (write_float): Delete.
+ * io/write_float.def (calculate_sign): Added.
+ (output_float): Refactored to be independent of kind and added to this
+ file for inclusion. (write_infnan): New function to write "Infinite"
+ or "NaN" depending on flags passed, independent of kind.
+ (CALCULATE_EXP): New macro to build kind specific functions. Use it.
+ (OUTPUT_FLOAT_FMT_G): New macro, likewise. Use it.
+ (DTOA, DTOAL): Macros to implement "decimal to ascii".
+ (WRITE_FLOAT): New macro for kind specific write_float functions.
+ (write_float): Revised function to determine kind and use WRITE_FLOAT
+ to implement kind specific output.
+
+2007-09-03 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/33253
+ * io/list_read.c (read_character): Use DELIM_APOSTROPHE and
+ DELIM_QUOTE in check of first character in string.
+
+2007-09-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31675
+ * libgfortran.h: Include gcc/fortran/libgfortran.h.
+ Remove M_PI, GFC_MAX_DIMENSIONS, GFC_DTYPE_*, GFC_NUM_RANK_BITS,
+ error_codes, GFC_STD_*, GFC_FPE_* and unit_convert.
+ * runtime/environ.c (variable_table): Use GFC_*_UNIT_NUMBER instead
+ of hardcoded constants.
+ (do_parse, init_unformatted): Use GFC_CONVERT_* macros instead of
+ CONVERT_*.
+ * runtime/string.c (find_option): Use LIBERROR_BAD_OPTION instead
+ of ERROR_BAD_OPTION.
+ * runtime/error.c (translate_error, generate_error): Use
+ LIBERROR_* macros instead of ERROR_*.
+ * io/file_pos.c (formatted_backspace, unformatted_backspace,
+ st_backspace, st_rewind, st_flush): Rename macros.
+ * io/open.c (convert_opt, edit_modes, new_unit, already_open,
+ st_open): Likewise.
+ * io/close.c (st_close): Likewise.
+ * io/list_read.c (next_char, convert_integer, parse_repeat,
+ read_logical, read_integer, read_character, parse_real,
+ check_type, list_formatted_read_scalar, namelist_read,
+ nml_err_ret): Likewise.
+ * io/read.c (convert_real, read_l, read_decimal, read_radix,
+ read_f): Likewise.
+ * io/inquire.c (inquire_via_unit): Likewise.
+ * io/unit.c (get_internal_unit): Likewise.
+ * io/transfer.c (read_sf, read_block, read_block_direct,
+ write_block, write_buf, unformatted_read, unformatted_write,
+ formatted_transfer_scalar, us_read, us_write, data_transfer_init,
+ skip_record, next_record_r, write_us_marker, next_record_w_unf,
+ next_record_w, finalize_transfer, st_read, st_write_done):
+ Likewise.
+ * io/format.c (format_error): Likewise.
+
+2007-08-31 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * m4/minloc1.m4: Update copyright year and ajust headers order.
+ * m4/maxloc1.m4: Likewise.
+ * m4/in_pack.m4: Likewise.
+ * m4/sum.m4: Likewise.
+ * m4/fraction.m4: Likewise.
+ * m4/all.m4: Likewise.
+ * m4/set_exponent.m4: Likewise.
+ * m4/transpose.m4: Likewise.
+ * m4/eoshift1.m4: Likewise.
+ * m4/spacing.m4: Likewise.
+ * m4/eoshift3.m4: Likewise.
+ * m4/minval.m4: Likewise.
+ * m4/count.m4: Likewise.
+ * m4/maxval.m4: Likewise.
+ * m4/exponent.m4: Likewise.
+ * m4/shape.m4: Likewise.
+ * m4/head.m4: Likewise.
+ * m4/cshift1.m4: Likewise.
+ * m4/minloc0.m4: Likewise.
+ * m4/nearest.m4: Likewise.
+ * m4/maxloc0.m4: Likewise.
+ * m4/pow.m4: Likewise.
+ * m4/in_unpack.m4: Likewise.
+ * m4/matmull.m4: Likewise.
+ * m4/product.m4: Likewise.
+ * m4/reshape.m4: Likewise.
+ * m4/any.m4: Likewise.
+ * m4/rrspacing.m4: Likewise.
+ * m4/matmul.m4: Likewise.
+ * runtime/backtrace.c: Likewise.
+ * runtime/environ.c: Likewise.
+ * runtime/in_pack_generic.c: Likewise.
+ * runtime/compile_options.c: Likewise.
+ * runtime/in_unpack_generic.c: Likewise.
+ * runtime/main.c: Likewise.
+ * runtime/stop.c: Likewise.
+ * runtime/string.c: Likewise.
+ * runtime/memory.c: Likewise.
+ * runtime/error.c: Likewise.
+ * runtime/pause.c: Likewise.
+ * intrinsics/ierrno.c: Likewise.
+ * intrinsics/system_clock.c: Likewise.
+ * intrinsics/cshift0.c: Likewise.
+ * intrinsics/unlink.c: Likewise.
+ * intrinsics/ctime.c: Likewise.
+ * intrinsics/etime.c: Likewise.
+ * intrinsics/cpu_time.c: Likewise.
+ * intrinsics/malloc.c: Likewise.
+ * intrinsics/hostnm.c: Likewise.
+ * intrinsics/sleep.c: Likewise.
+ * intrinsics/exit.c: Likewise.
+ * intrinsics/perror.c: Likewise.
+ * intrinsics/transpose_generic.c: Likewise.
+ * intrinsics/pack_generic.c: Likewise.
+ * intrinsics/spread_generic.c: Likewise.
+ * intrinsics/stat.c: Likewise.
+ * intrinsics/string_intrinsics.c: Likewise.
+ * intrinsics/getcwd.c: Likewise.
+ * intrinsics/date_and_time.c: Likewise.
+ * intrinsics/unpack_generic.c: Likewise.
+ * intrinsics/move_alloc.c: Likewise.
+ * intrinsics/getlog.c: Likewise.
+ * intrinsics/eoshift0.c: Likewise.
+ * intrinsics/eoshift2.c: Likewise.
+ * intrinsics/reshape_generic.c: Likewise.
+ * intrinsics/system.c: Likewise.
+ * intrinsics/iso_c_binding.c: Likewise.
+ * intrinsics/env.c: Likewise.
+ * intrinsics/kill.c: Likewise.
+ * intrinsics/reshape_packed.c: Likewise.
+ * intrinsics/time.c: Likewise.
+ * intrinsics/gerror.c: Likewise.
+ * intrinsics/access.c: Likewise.
+ * intrinsics/fnum.c: Likewise.
+ * intrinsics/abort.c: Likewise.
+ * intrinsics/rename.c: Likewise.
+ * intrinsics/signal.c: Likewise.
+ * intrinsics/symlnk.c: Likewise.
+ * intrinsics/random.c: Likewise.
+ * intrinsics/umask.c: Likewise.
+ * intrinsics/getXid.c: Likewise.
+ * intrinsics/rand.c: Likewise.
+ * intrinsics/chdir.c: Likewise.
+ * intrinsics/chmod.c: Likewise.
+ * intrinsics/clock.c: Likewise.
+ * intrinsics/args.c: Likewise.
+ * intrinsics/link.c: Likewise.
+ * c99_protos.h: Likewise.
+ * config/fpu-387.h: Likewise.
+ * config/fpu-aix.h: Likewise.
+ * config/fpu-sysv.h: Likewise.
+ * config/fpu-generic.h: Likewise.
+ * config/fpu-glibc.h: Likewise.
+ * io/file_pos.c: Likewise.
+ * io/open.c: Likewise.
+ * io/size_from_kind.c: Likewise.
+ * io/close.c: Likewise.
+ * io/list_read.c: Likewise.
+ * io/read.c: Likewise.
+ * io/inquire.c: Likewise.
+ * io/unit.c: Likewise.
+ * io/unix.c: Likewise.
+ * io/transfer.c: Likewise.
+ * io/intrinsics.c: Likewise.
+ * io/format.c: Likewise.
+ * io/lock.c: Likewise.
+ * io/write.c: Likewise.
+ * io/write_float.def: Likewise.
+ * fmain.c: Likewise.
+ * generated/minval_r8.c: Regenerate.
+ * generated/minloc1_16_r16.c: Regenerate.
+ * generated/maxloc1_4_r8.c: Regenerate.
+ * generated/sum_i8.c: Regenerate.
+ * generated/eoshift3_4.c: Regenerate.
+ * generated/transpose_c8.c: Regenerate.
+ * generated/any_l16.c: Regenerate.
+ * generated/eoshift1_8.c: Regenerate.
+ * generated/pow_r8_i8.c: Regenerate.
+ * generated/reshape_r16.c: Regenerate.
+ * generated/pow_i4_i16.c: Regenerate.
+ * generated/maxval_i2.c: Regenerate.
+ * generated/product_r4.c: Regenerate.
+ * generated/maxloc1_8_i4.c: Regenerate.
+ * generated/exponent_r16.c: Regenerate.
+ * generated/maxloc0_4_r4.c: Regenerate.
+ * generated/fraction_r16.c: Regenerate.
+ * generated/in_unpack_i8.c: Regenerate.
+ * generated/matmul_r8.c: Regenerate.
+ * generated/product_i2.c: Regenerate.
+ * generated/fraction_r4.c: Regenerate.
+ * generated/minloc0_4_r16.c: Regenerate.
+ * generated/reshape_c4.c: Regenerate.
+ * generated/minloc0_4_i1.c: Regenerate.
+ * generated/maxloc0_4_r16.c: Regenerate.
+ * generated/maxloc0_4_i2.c: Regenerate.
+ * generated/minloc1_8_r16.c: Regenerate.
+ * generated/maxloc1_8_r16.c: Regenerate.
+ * generated/set_exponent_r8.c: Regenerate.
+ * generated/in_unpack_i16.c: Regenerate.
+ * generated/transpose_c16.c: Regenerate.
+ * generated/maxloc0_8_i8.c: Regenerate.
+ * generated/pow_c4_i8.c: Regenerate.
+ * generated/sum_r16.c: Regenerate.
+ * generated/sum_i1.c: Regenerate.
+ * generated/minloc1_4_r8.c: Regenerate.
+ * generated/transpose_r10.c: Regenerate.
+ * generated/pow_i8_i4.c: Regenerate.
+ * generated/maxloc1_16_r16.c: Regenerate.
+ * generated/minloc1_16_i4.c: Regenerate.
+ * generated/maxloc1_16_i4.c: Regenerate.
+ * generated/minloc0_16_i8.c: Regenerate.
+ * generated/maxloc0_16_i8.c: Regenerate.
+ * generated/nearest_r8.c: Regenerate.
+ * generated/spacing_r16.c: Regenerate.
+ * generated/transpose_i8.c: Regenerate.
+ * generated/count_16_l16.c: Regenerate.
+ * generated/maxval_r16.c: Regenerate.
+ * generated/count_8_l8.c: Regenerate.
+ * generated/product_c10.c: Regenerate.
+ * generated/minloc1_8_i4.c: Regenerate.
+ * generated/minloc0_16_i16.c: Regenerate.
+ * generated/matmul_r16.c: Regenerate.
+ * generated/eoshift1_16.c: Regenerate.
+ * generated/minloc0_4_r4.c: Regenerate.
+ * generated/pow_c16_i16.c: Regenerate.
+ * generated/set_exponent_r10.c: Regenerate.
+ * generated/pow_i16_i16.c: Regenerate.
+ * generated/product_c4.c: Regenerate.
+ * generated/sum_r4.c: Regenerate.
+ * generated/pow_c16_i4.c: Regenerate.
+ * generated/rrspacing_r10.c: Regenerate.
+ * generated/in_pack_c16.c: Regenerate.
+ * generated/minloc0_4_i2.c: Regenerate.
+ * generated/maxloc0_8_i1.c: Regenerate.
+ * generated/reshape_i4.c: Regenerate.
+ * generated/minloc0_8_i8.c: Regenerate.
+ * generated/matmul_c8.c: Regenerate.
+ * generated/spacing_r4.c: Regenerate.
+ * generated/in_pack_c4.c: Regenerate.
+ * generated/all_l16.c: Regenerate.
+ * generated/minloc1_16_r10.c: Regenerate.
+ * generated/sum_i2.c: Regenerate.
+ * generated/minloc0_16_i1.c: Regenerate.
+ * generated/reshape_c16.c: Regenerate.
+ * generated/maxloc0_16_i1.c: Regenerate.
+ * generated/maxloc1_8_r8.c: Regenerate.
+ * generated/minval_i16.c: Regenerate.
+ * generated/reshape_r10.c: Regenerate.
+ * generated/exponent_r10.c: Regenerate.
+ * generated/maxval_i4.c: Regenerate.
+ * generated/any_l4.c: Regenerate.
+ * generated/minval_i8.c: Regenerate.
+ * generated/maxloc1_4_i8.c: Regenerate.
+ * generated/fraction_r10.c: Regenerate.
+ * generated/maxloc0_16_i16.c: Regenerate.
+ * generated/shape_i4.c: Regenerate.
+ * generated/pow_r16_i8.c: Regenerate.
+ * generated/maxloc0_8_r4.c: Regenerate.
+ * generated/rrspacing_r8.c: Regenerate.
+ * generated/pow_c10_i4.c: Regenerate.
+ * generated/minloc1_4_i16.c: Regenerate.
+ * generated/minloc0_4_r10.c: Regenerate.
+ * generated/maxloc1_4_i16.c: Regenerate.
+ * generated/minloc0_8_i16.c: Regenerate.
+ * generated/maxloc0_4_r10.c: Regenerate.
+ * generated/maxloc0_8_i16.c: Regenerate.
+ * generated/minloc1_8_r10.c: Regenerate.
+ * generated/product_i4.c: Regenerate.
+ * generated/minloc0_16_r4.c: Regenerate.
+ * generated/sum_c16.c: Regenerate.
+ * generated/maxloc1_8_r10.c: Regenerate.
+ * generated/maxloc0_16_r4.c: Regenerate.
+ * generated/transpose_c10.c: Regenerate.
+ * generated/minloc1_16_r8.c: Regenerate.
+ * generated/minloc0_8_i1.c: Regenerate.
+ * generated/maxloc0_4_i4.c: Regenerate.
+ * generated/transpose_r4.c: Regenerate.
+ * generated/maxloc1_16_r8.c: Regenerate.
+ * generated/pow_i16_i8.c: Regenerate.
+ * generated/cshift1_4.c: Regenerate.
+ * generated/maxloc0_8_i2.c: Regenerate.
+ * generated/sum_r10.c: Regenerate.
+ * generated/nearest_r16.c: Regenerate.
+ * generated/sum_c4.c: Regenerate.
+ * generated/maxloc1_16_r10.c: Regenerate.
+ * generated/count_4_l16.c: Regenerate.
+ * generated/pow_c8_i8.c: Regenerate.
+ * generated/matmul_i8.c: Regenerate.
+ * generated/in_pack_i4.c: Regenerate.
+ * generated/pow_i4_i8.c: Regenerate.
+ * generated/minloc0_16_i2.c: Regenerate.
+ * generated/minloc1_8_r8.c: Regenerate.
+ * generated/maxloc0_16_i2.c: Regenerate.
+ * generated/exponent_r4.c: Regenerate.
+ * generated/spacing_r10.c: Regenerate.
+ * generated/matmul_c16.c: Regenerate.
+ * generated/pow_c4_i16.c: Regenerate.
+ * generated/maxval_r10.c: Regenerate.
+ * generated/count_4_l4.c: Regenerate.
+ * generated/shape_i16.c: Regenerate.
+ * generated/minval_i1.c: Regenerate.
+ * generated/maxloc1_4_i1.c: Regenerate.
+ * generated/matmul_r10.c: Regenerate.
+ * generated/minloc1_4_i8.c: Regenerate.
+ * generated/pow_r10_i8.c: Regenerate.
+ * generated/minloc0_8_r4.c: Regenerate.
+ * generated/in_unpack_c4.c: Regenerate.
+ * generated/matmul_l4.c: Regenerate.
+ * generated/product_i16.c: Regenerate.
+ * generated/minloc0_16_r16.c: Regenerate.
+ * generated/reshape_r8.c: Regenerate.
+ * generated/pow_r10_i16.c: Regenerate.
+ * generated/all_l4.c: Regenerate.
+ * generated/in_pack_c10.c: Regenerate.
+ * generated/minloc0_4_i4.c: Regenerate.
+ * generated/minloc0_8_i2.c: Regenerate.
+ * generated/matmul_i1.c: Regenerate.
+ * generated/reshape_c10.c: Regenerate.
+ * generated/minval_r4.c: Regenerate.
+ * generated/maxloc1_4_r4.c: Regenerate.
+ * generated/pow_r8_i16.c: Regenerate.
+ * generated/sum_i4.c: Regenerate.
+ * generated/maxval_r8.c: Regenerate.
+ * generated/count_16_l8.c: Regenerate.
+ * generated/transpose_c4.c: Regenerate.
+ * generated/eoshift1_4.c: Regenerate.
+ * generated/eoshift3_8.c: Regenerate.
+ * generated/minval_r16.c: Regenerate.
+ * generated/minloc1_4_i1.c: Regenerate.
+ * generated/minval_i2.c: Regenerate.
+ * generated/maxloc1_4_i2.c: Regenerate.
+ * generated/pow_i8_i16.c: Regenerate.
+ * generated/product_r8.c: Regenerate.
+ * generated/maxloc1_8_i8.c: Regenerate.
+ * generated/maxloc0_4_r8.c: Regenerate.
+ * generated/maxloc0_16_r16.c: Regenerate.
+ * generated/in_unpack_i4.c: Regenerate.
+ * generated/matmul_r4.c: Regenerate.
+ * generated/sum_c10.c: Regenerate.
+ * generated/minloc1_4_r16.c: Regenerate.
+ * generated/fraction_r8.c: Regenerate.
+ * generated/maxloc1_4_r16.c: Regenerate.
+ * generated/set_exponent_r4.c: Regenerate.
+ * generated/minloc0_8_r16.c: Regenerate.
+ * generated/in_unpack_c16.c: Regenerate.
+ * generated/reshape_c8.c: Regenerate.
+ * generated/maxloc0_8_r16.c: Regenerate.
+ * generated/nearest_r10.c: Regenerate.
+ * generated/maxloc0_8_i4.c: Regenerate.
+ * generated/pow_c4_i4.c: Regenerate.
+ * generated/matmul_i2.c: Regenerate.
+ * generated/minloc1_4_r4.c: Regenerate.
+ * generated/transpose_i16.c: Regenerate.
+ * generated/matmul_c10.c: Regenerate.
+ * generated/minloc0_16_i4.c: Regenerate.
+ * generated/maxloc0_16_i4.c: Regenerate.
+ * generated/pow_i8_i8.c: Regenerate.
+ * generated/nearest_r4.c: Regenerate.
+ * generated/minloc1_16_i8.c: Regenerate.
+ * generated/maxloc1_16_i8.c: Regenerate.
+ * generated/transpose_i4.c: Regenerate.
+ * generated/count_8_l4.c: Regenerate.
+ * generated/minloc1_4_i2.c: Regenerate.
+ * generated/matmul_l16.c: Regenerate.
+ * generated/maxloc1_8_i1.c: Regenerate.
+ * generated/minloc0_16_r10.c: Regenerate.
+ * generated/minloc1_8_i8.c: Regenerate.
+ * generated/minloc0_4_r8.c: Regenerate.
+ * generated/product_r16.c: Regenerate.
+ * generated/product_c8.c: Regenerate.
+ * generated/pow_r16_i16.c: Regenerate.
+ * generated/sum_r8.c: Regenerate.
+ * generated/pow_c16_i8.c: Regenerate.
+ * generated/in_pack_i16.c: Regenerate.
+ * generated/minloc0_8_i4.c: Regenerate.
+ * generated/matmul_c4.c: Regenerate.
+ * generated/minloc1_16_i16.c: Regenerate.
+ * generated/reshape_i8.c: Regenerate.
+ * generated/spacing_r8.c: Regenerate.
+ * generated/in_pack_c8.c: Regenerate.
+ * generated/maxloc1_8_r4.c: Regenerate.
+ * generated/minloc1_16_i1.c: Regenerate.
+ * generated/maxloc1_16_i1.c: Regenerate.
+ * generated/reshape_i16.c: Regenerate.
+ * generated/minval_r10.c: Regenerate.
+ * generated/pow_r4_i8.c: Regenerate.
+ * generated/minloc1_8_i1.c: Regenerate.
+ * generated/minval_i4.c: Regenerate.
+ * generated/maxloc1_4_i4.c: Regenerate.
+ * generated/maxloc1_8_i2.c: Regenerate.
+ * generated/maxval_i8.c: Regenerate.
+ * generated/eoshift3_16.c: Regenerate.
+ * generated/any_l8.c: Regenerate.
+ * generated/maxloc0_16_r10.c: Regenerate.
+ * generated/rrspacing_r4.c: Regenerate.
+ * generated/shape_i8.c: Regenerate.
+ * generated/maxloc0_8_r8.c: Regenerate.
+ * generated/minloc0_4_i16.c: Regenerate.
+ * generated/maxloc0_4_i16.c: Regenerate.
+ * generated/minloc1_4_r10.c: Regenerate.
+ * generated/minloc1_8_i16.c: Regenerate.
+ * generated/pow_c10_i8.c: Regenerate.
+ * generated/maxloc1_4_r10.c: Regenerate.
+ * generated/maxloc1_8_i16.c: Regenerate.
+ * generated/in_unpack_c10.c: Regenerate.
+ * generated/minloc0_8_r10.c: Regenerate.
+ * generated/maxloc0_8_r10.c: Regenerate.
+ * generated/minloc1_16_r4.c: Regenerate.
+ * generated/maxloc1_16_r4.c: Regenerate.
+ * generated/minloc0_16_r8.c: Regenerate.
+ * generated/pow_i16_i4.c: Regenerate.
+ * generated/product_i8.c: Regenerate.
+ * generated/maxloc0_16_r8.c: Regenerate.
+ * generated/sum_i16.c: Regenerate.
+ * generated/maxloc0_4_i8.c: Regenerate.
+ * generated/transpose_r8.c: Regenerate.
+ * generated/cshift1_8.c: Regenerate.
+ * generated/maxloc1_16_i16.c: Regenerate.
+ * generated/matmul_i4.c: Regenerate.
+ * generated/pow_c8_i4.c: Regenerate.
+ * generated/pow_i4_i4.c: Regenerate.
+ * generated/minloc1_8_r4.c: Regenerate.
+ * generated/sum_c8.c: Regenerate.
+ * generated/count_8_l16.c: Regenerate.
+ * generated/minloc1_16_i2.c: Regenerate.
+ * generated/maxloc1_16_i2.c: Regenerate.
+ * generated/in_pack_i8.c: Regenerate.
+ * generated/transpose_r16.c: Regenerate.
+ * generated/maxval_i16.c: Regenerate.
+ * generated/exponent_r8.c: Regenerate.
+ * generated/matmul_i16.c: Regenerate.
+ * generated/count_4_l8.c: Regenerate.
+ * generated/pow_c8_i16.c: Regenerate.
+ * generated/maxval_i1.c: Regenerate.
+ * generated/minloc1_4_i4.c: Regenerate.
+ * generated/minloc1_8_i2.c: Regenerate.
+ * generated/pow_c10_i16.c: Regenerate.
+ * generated/product_c16.c: Regenerate.
+ * generated/reshape_r4.c: Regenerate.
+ * generated/in_unpack_c8.c: Regenerate.
+ * generated/minloc0_8_r8.c: Regenerate.
+ * generated/matmul_l8.c: Regenerate.
+ * generated/product_r10.c: Regenerate.
+ * generated/set_exponent_r16.c: Regenerate.
+ * generated/cshift1_16.c: Regenerate.
+ * generated/product_i1.c: Regenerate.
+ * generated/all_l8.c: Regenerate.
+ * generated/maxloc0_4_i1.c: Regenerate.
+ * generated/rrspacing_r16.c: Regenerate.
+ * generated/minloc0_4_i8.c: Regenerate.
+ * generated/pow_r4_i16.c: Regenerate.
+ * generated/count_16_l4.c: Regenerate.
+ * generated/maxval_r4.c: Regenerate.
+
+2007-08-30 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/33225
+ * io/write.c: Revert changes from patch of 2007-08-27.
+ * io/write_float.def: Remove file, reverting addition.
+
+2007-08-29 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * runtime/memory.c (internal_realloc, allocate, allocate_array,
+ deallocate): Remove functions.
+ * gfortran.map (_gfortran_allocate, _gfortran_allocate_array,
+ _gfortran_deallocate, _gfortran_internal_realloc): Remove symbols.
+ * libgfortran.h (error_codes): Add comment.
+
+2007-08-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/33055
+ Revert previous patch.
+
+2007-08-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ * io/write.c (stdbool.h): Add include. (sign_t): Move typedef to
+ new file write_float.def. Include write_float.def.
+ (extract_real): Delete. (calculate_sign): Delete.
+ (calculate_exp): Delete. (calculate_G_format): Delete.
+ (output_float): Delete. (write_float): Delete.
+ * io/write_float.def (calculate_sign): Added.
+ (output_float): Refactored to be independent of kind and added to this
+ file for inclusion. (write_infnan): New function to write "Infinite"
+ or "NaN" depending on flags passed, independent of kind.
+ (CALCULATE_EXP): New macro to build kind specific functions. Use it.
+ (OUTPUT_FLOAT_FMT_G): New macro, likewise. Use it.
+ (DTOA, DTOAL): Macros to implement "decimal to ascii".
+ (WRITE_FLOAT): New macro for kind specific write_float functions.
+ (write_float): Revised function to determine kind and use WRITE_FLOAT
+ to implement kind specific output.
+
+2007-08-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/33055
+ * io/inquire.c (inquire_via_unit): If inquiring by unit, check for
+ an error condition from the IOSTAT variable and set EXIST to false if
+ there was a bad unit number.
+
+2007-08-24 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/32972
+ * libgfortran.h: Remove GFOR_POINTER_L8_TO_L4 macro.
+ Add GFOR_POINTER_TO_L1 macro.
+ * m4/iforeach.m4(`m'name`'rtype_qual`_'atype_code):
+ Change argument 'mask' to gfc_array_l1. Adjust prototype.
+ Change mask pointer to GFC_LOGICAL_1. Multiply strides
+ by kind of mask
+ * m4/ifunction.m4: Likewise.
+ * intrinsics/pack_generic.c(pack_internal): Likewise.
+ * intrinsics/unpack_generic.c(unpack_internal): Likewise.
+ * m4/matmull.m4: Switch to GFC_LOGICAL_1. Multiply strides by
+ kind of logical arguments a and b.
+ * generated/matmul_l16.c: Regenerated.
+ * generated/matmul_l4.c: Regenerated.
+ * generated/matmul_l8.c: Regenerated.
+ * generated/maxloc0_16_i1.c: Regenerated.
+ * generated/maxloc0_16_i16.c: Regenerated.
+ * generated/maxloc0_16_i2.c: Regenerated.
+ * generated/maxloc0_16_i4.c: Regenerated.
+ * generated/maxloc0_16_i8.c: Regenerated.
+ * generated/maxloc0_16_r10.c: Regenerated.
+ * generated/maxloc0_16_r16.c: Regenerated.
+ * generated/maxloc0_16_r4.c: Regenerated.
+ * generated/maxloc0_16_r8.c: Regenerated.
+ * generated/maxloc0_4_i1.c: Regenerated.
+ * generated/maxloc0_4_i16.c: Regenerated.
+ * generated/maxloc0_4_i2.c: Regenerated.
+ * generated/maxloc0_4_i4.c: Regenerated.
+ * generated/maxloc0_4_i8.c: Regenerated.
+ * generated/maxloc0_4_r10.c: Regenerated.
+ * generated/maxloc0_4_r16.c: Regenerated.
+ * generated/maxloc0_4_r4.c: Regenerated.
+ * generated/maxloc0_4_r8.c: Regenerated.
+ * generated/maxloc0_8_i1.c: Regenerated.
+ * generated/maxloc0_8_i16.c: Regenerated.
+ * generated/maxloc0_8_i2.c: Regenerated.
+ * generated/maxloc0_8_i4.c: Regenerated.
+ * generated/maxloc0_8_i8.c: Regenerated.
+ * generated/maxloc0_8_r10.c: Regenerated.
+ * generated/maxloc0_8_r16.c: Regenerated.
+ * generated/maxloc0_8_r4.c: Regenerated.
+ * generated/maxloc0_8_r8.c: Regenerated.
+ * generated/maxloc1_16_i1.c: Regenerated.
+ * generated/maxloc1_16_i16.c: Regenerated.
+ * generated/maxloc1_16_i2.c: Regenerated.
+ * generated/maxloc1_16_i4.c: Regenerated.
+ * generated/maxloc1_16_i8.c: Regenerated.
+ * generated/maxloc1_16_r10.c: Regenerated.
+ * generated/maxloc1_16_r16.c: Regenerated.
+ * generated/maxloc1_16_r4.c: Regenerated.
+ * generated/maxloc1_16_r8.c: Regenerated.
+ * generated/maxloc1_4_i1.c: Regenerated.
+ * generated/maxloc1_4_i16.c: Regenerated.
+ * generated/maxloc1_4_i2.c: Regenerated.
+ * generated/maxloc1_4_i4.c: Regenerated.
+ * generated/maxloc1_4_i8.c: Regenerated.
+ * generated/maxloc1_4_r10.c: Regenerated.
+ * generated/maxloc1_4_r16.c: Regenerated.
+ * generated/maxloc1_4_r4.c: Regenerated.
+ * generated/maxloc1_4_r8.c: Regenerated.
+ * generated/maxloc1_8_i1.c: Regenerated.
+ * generated/maxloc1_8_i16.c: Regenerated.
+ * generated/maxloc1_8_i2.c: Regenerated.
+ * generated/maxloc1_8_i4.c: Regenerated.
+ * generated/maxloc1_8_i8.c: Regenerated.
+ * generated/maxloc1_8_r10.c: Regenerated.
+ * generated/maxloc1_8_r16.c: Regenerated.
+ * generated/maxloc1_8_r4.c: Regenerated.
+ * generated/maxloc1_8_r8.c: Regenerated.
+ * generated/maxval_i1.c: Regenerated.
+ * generated/maxval_i16.c: Regenerated.
+ * generated/maxval_i2.c: Regenerated.
+ * generated/maxval_i4.c: Regenerated.
+ * generated/maxval_i8.c: Regenerated.
+ * generated/maxval_r10.c: Regenerated.
+ * generated/maxval_r16.c: Regenerated.
+ * generated/maxval_r4.c: Regenerated.
+ * generated/maxval_r8.c: Regenerated.
+ * generated/minloc0_16_i1.c: Regenerated.
+ * generated/minloc0_16_i16.c: Regenerated.
+ * generated/minloc0_16_i2.c: Regenerated.
+ * generated/minloc0_16_i4.c: Regenerated.
+ * generated/minloc0_16_i8.c: Regenerated.
+ * generated/minloc0_16_r10.c: Regenerated.
+ * generated/minloc0_16_r16.c: Regenerated.
+ * generated/minloc0_16_r4.c: Regenerated.
+ * generated/minloc0_16_r8.c: Regenerated.
+ * generated/minloc0_4_i1.c: Regenerated.
+ * generated/minloc0_4_i16.c: Regenerated.
+ * generated/minloc0_4_i2.c: Regenerated.
+ * generated/minloc0_4_i4.c: Regenerated.
+ * generated/minloc0_4_i8.c: Regenerated.
+ * generated/minloc0_4_r10.c: Regenerated.
+ * generated/minloc0_4_r16.c: Regenerated.
+ * generated/minloc0_4_r4.c: Regenerated.
+ * generated/minloc0_4_r8.c: Regenerated.
+ * generated/minloc0_8_i1.c: Regenerated.
+ * generated/minloc0_8_i16.c: Regenerated.
+ * generated/minloc0_8_i2.c: Regenerated.
+ * generated/minloc0_8_i4.c: Regenerated.
+ * generated/minloc0_8_i8.c: Regenerated.
+ * generated/minloc0_8_r10.c: Regenerated.
+ * generated/minloc0_8_r16.c: Regenerated.
+ * generated/minloc0_8_r4.c: Regenerated.
+ * generated/minloc0_8_r8.c: Regenerated.
+ * generated/minloc1_16_i1.c: Regenerated.
+ * generated/minloc1_16_i16.c: Regenerated.
+ * generated/minloc1_16_i2.c: Regenerated.
+ * generated/minloc1_16_i4.c: Regenerated.
+ * generated/minloc1_16_i8.c: Regenerated.
+ * generated/minloc1_16_r10.c: Regenerated.
+ * generated/minloc1_16_r16.c: Regenerated.
+ * generated/minloc1_16_r4.c: Regenerated.
+ * generated/minloc1_16_r8.c: Regenerated.
+ * generated/minloc1_4_i1.c: Regenerated.
+ * generated/minloc1_4_i16.c: Regenerated.
+ * generated/minloc1_4_i2.c: Regenerated.
+ * generated/minloc1_4_i4.c: Regenerated.
+ * generated/minloc1_4_i8.c: Regenerated.
+ * generated/minloc1_4_r10.c: Regenerated.
+ * generated/minloc1_4_r16.c: Regenerated.
+ * generated/minloc1_4_r4.c: Regenerated.
+ * generated/minloc1_4_r8.c: Regenerated.
+ * generated/minloc1_8_i1.c: Regenerated.
+ * generated/minloc1_8_i16.c: Regenerated.
+ * generated/minloc1_8_i2.c: Regenerated.
+ * generated/minloc1_8_i4.c: Regenerated.
+ * generated/minloc1_8_i8.c: Regenerated.
+ * generated/minloc1_8_r10.c: Regenerated.
+ * generated/minloc1_8_r16.c: Regenerated.
+ * generated/minloc1_8_r4.c: Regenerated.
+ * generated/minloc1_8_r8.c: Regenerated.
+ * generated/minval_i1.c: Regenerated.
+ * generated/minval_i16.c: Regenerated.
+ * generated/minval_i2.c: Regenerated.
+ * generated/minval_i4.c: Regenerated.
+ * generated/minval_i8.c: Regenerated.
+ * generated/minval_r10.c: Regenerated.
+ * generated/minval_r16.c: Regenerated.
+ * generated/minval_r4.c: Regenerated.
+ * generated/minval_r8.c: Regenerated.
+ * generated/product_c10.c: Regenerated.
+ * generated/product_c16.c: Regenerated.
+ * generated/product_c4.c: Regenerated.
+ * generated/product_c8.c: Regenerated.
+ * generated/product_i1.c: Regenerated.
+ * generated/product_i16.c: Regenerated.
+ * generated/product_i2.c: Regenerated.
+ * generated/product_i4.c: Regenerated.
+ * generated/product_i8.c: Regenerated.
+ * generated/product_r10.c: Regenerated.
+ * generated/product_r16.c: Regenerated.
+ * generated/product_r4.c: Regenerated.
+ * generated/product_r8.c: Regenerated.
+ * generated/sum_c10.c: Regenerated.
+ * generated/sum_c16.c: Regenerated.
+ * generated/sum_c4.c: Regenerated.
+ * generated/sum_c8.c: Regenerated.
+ * generated/sum_i1.c: Regenerated.
+ * generated/sum_i16.c: Regenerated.
+ * generated/sum_i2.c: Regenerated.
+ * generated/sum_i4.c: Regenerated.
+ * generated/sum_i8.c: Regenerated.
+ * generated/sum_r10.c: Regenerated.
+ * generated/sum_r16.c: Regenerated.
+ * generated/sum_r4.c: Regenerated.
+ * generated/sum_r8.c: Regenerated.
+
+2007-08-23 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR libfortran/23138
+ * acinclude.m4 (LIBGFOR_CHECK_MINGW_SNPRINTF): New check.
+ * configure.ac: Use LIBGFOR_CHECK_MINGW_SNPRINTF.
+ * libgfortran.h: If HAVE_MINGW_SNPRINTF is true, use __mingw_snprintf
+ instead of snprintf.
+ * config.h.in: Regenerate.
+ * configure: Regenerate.
+
+2007-08-22 Bernhard Fischer <rep.dot.nop@gmail.com>
+
+ * libgfortran/Makefile.am (AM_CPPFLAGS): Commentary typo fix.
+
+2007-08-17 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33079
+ * intrinsics/string_intrinsics.c (string_trim, string_minmax): Fix
+ the zero-length result case.
+
+2007-08-15 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/33077
+ * intrinsics/random.c (random_seed_i8): Fix code logic.
+
+2007-08-13 Danny Smith <dannysmit@users.sourceforge.net>
+
+ * acinclude.m4 (GTHREAD_USE_WEAK) Define to 0 for mingw32.
+ * configure: Regenerate.
+
+2007-08-12 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/30964
+ PR fortran/33054
+ * intrinsics/random.c (random_seed): Rename into random_seed_i4.
+ (random_seed_i8): New function.
+ * gfortran.map (GFORTRAN_1.0): Remove _gfortran_random_seed,
+ add _gfortran_random_seed_i4 and _gfortran_random_seed_i8.
+ * libgfortran.h (iexport_proto): Replace random_seed by
+ random_seed_i4 and random_seed_i8.
+ * runtime/main.c (init): Call the new random_seed_i4.
+
+2007-08-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+ Tobias Burnus <burnus@gcc.gnu.org>
+
+ PR fortran/31189
+ * runtime/backtrace.c (show_backtrace): Skip _gfortrani_handler
+ when displaying backtrace.
+ * runtime/compile_options.c: Include <signal.h>.
+ (handler): New function.
+ (set_options): Set signal handlers for backtrace.
+ * libgfortran.h (handler): Add prototype.
+
+2007-08-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * intrinsics/string_intrinsics.c (compare_string): Return an int.
+ * libgfortran.h (compare_string): Likewise.
+
+2007-08-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31270
+ * runtime/error.c (runtime_error_at): Add a variable number of
+ arguments.
+ * libgfortran.h (runtime_error_at): Update prototype.
+
+2007-08-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/32933
+ * intrinsics/associated.c: Change return type of associated into
+ a C int.
+
+2007-08-10 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/33039
+ * io/list_read.c (find_nml_name): Check for a space after a namelist
+ name match.
+
+2007-08-09 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/32987
+ * io/format.c (next_char): Treat '\t' as ' ' in format specification.
+
+2007-08-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/30947
+ * intrinsics/signal.c: Create specific versions of alarm_sub and
+ alarm_sub_int according to the integer kind of the last argument.
+ * gfortran.map (GFORTRAN_1.0): Remove _gfortran_alarm_sub and
+ _gfortran_alarm_sub_int, add _gfortran_alarm_sub_i4,
+ _gfortran_alarm_sub_i8, _gfortran_alarm_sub_int_i4 and
+ _gfortran_alarm_sub_int_i8.
+
+2007-08-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/29828
+ * intrinsics/string_intrinsics.c (string_minmax): New function
+ and prototype.
+ * gfortran.map (GFORTRAN_1.0): Add _gfortran_string_minmax
+
+2007-08-05 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31202
+ * intrinsics/c99_functions.c (roundl): Provide fallback
+ implementation for systems without ceill.
+ * c99_protos.h (roundl): Define prototype in all cases.
+
+2007-08-03 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR libfortran/32977
+ * io/unix.c: If there is no vsnprintf, use vsprintf and issue
+ a fatal error when a buffer overrun occurs.
+
+2007-08-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31202
+ * intrinsics/c99_functions.c (roundl,lroundf,lround,lroundl,
+ llroundf,llround,llroundl): New functions.
+ * c99_protos.h (roundl,lroundf,lround,lroundl,llroundf,llround,
+ llroundl): New prototypes.
+ * configure.ac: Check for lroundf, lround, lroundl, llroundf,
+ llround and llroundl.
+ * configure: Regenerate.
+ * Makefile.in: Regenerate.
+ * config.h.in: Regenerate.
+
+2007-07-30 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * libgfortran.h: Include <stdarg.h>.
+
+2007-07-29 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR libfortran/32858
+ PR libfortran/30814
+ * configure.ac: Added checks for presence of stdio.h and
+ stdarg.h. Test presence of vsnprintf().
+ * configure: Regenerated.
+ * config.h.in: Regenerated.
+ * libgfortran.h: Include <stdio.h>. Add printf attribute to
+ prototype of runtime_error. Remove prototype for st_sprintf.
+ Add prototype for st_vprintf.
+ * runtime/main.c (store_exec_path): Replace st_sprintf by sprintf.
+ * runtime/error.c (st_sprintf): Remove.
+ (runtime_error): Rewrite as a variadic function. Call
+ st_vprintf().
+ * intrinsics/pack_generic.c: Output extents of LHS and RHS for
+ bounds error.
+ * io/open.c (new_unit): Replace st_sprintf by sprintf.
+ * io/list_read.c (convert_integer): Likewise.
+ (parse_repeat): Likewise.
+ (read_logical): Likewise.
+ (read_character): Likewise.
+ (parse_real): Likewise.
+ (read_real): Likewise.
+ (check_type): Likewise.
+ (nml_parse_qualifyer): Likewise.
+ (nml_read_obj): Likewise.
+ (nml_get_ojb_data): Likewise.
+ * io/unix.c (init_error_stream): Remove.
+ (tempfile): Replace st_sprintf by sprintf.
+ (st_vprintf): New function.
+ (st_printf): Rewrite to call st_vprintf.
+ * io/transfer.c (require_type): Replace st_sprintf by sprintf.
+ * io/format.c (format_error): Likewise.
+ * io/write.c (nml_write_obj): Likewise.
+
+2007-07-27 Janne Blomqvist <jb@gcc.gnu.org>
+
+ * io/transfer.c (st_set_nml_var_dim): Use index_type instead of
+ GFC_INTEGER_4 for array descriptor triplets.
+
+2007-07-27 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * io/unix.c (stream_ttyname): Mark argument as potentialy unused.
+
+2007-07-27 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/32035
+ * runtime/select.c (select_string): Adjust prototype and function
+ so that the return value is an integer, not a pointer.
+
+2007-07-24 Tobias Burnus <burnus@net-b.de>
+
+ * libgfortran.h: Add bounds_check to compile_options_t.
+
+2007-07-24 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/30814
+ * libgfortran.h: Add bounds_check to compile_options_t.
+ * runtime/compile_options.c (set_options): Add handling
+ of compile_options.bounds_check.
+ * intrinsics/pack_generic.c (pack_internal): Also determine
+ the number of elements if compile_options.bounds_check is
+ true. Raise runtime error if a different array shape is
+ detected.
+
+2007-07-23 Christopher D. Rickett <crickett@lanl.gov>
+
+ PR fortran/32600
+ * intrinsics/iso_c_binding.c (c_funloc): Remove.
+ * intrinsics/iso_c_binding.h: Remove c_funloc.
+ * gfortran.map: Ditto.
+
+2007-07-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ * io/read.c (convert_real): Generate error only on EINVAL.
+
+2007-07-21 Christopher D. Rickett <crickett@lanl.gov>
+
+ PR fortran/32627
+ * libgfortran/intrinsics/iso_c_generated_procs.c: Add c_f_pointer
+ for character/string arguments.
+ * libgfortran/intrinsic/iso_c_binding.c (c_f_pointer_u0): Allow
+ the optional SHAPE arg to be any valid integer kind.
+ * libgfortran/gfortran.map: Add c_f_pointer_s0.
+ * libgfortran/mk-kinds-h.sh: Save smallest integer kind as default
+ character kind.
+ * libgfortran/intrinsics/iso_c_generated_procs.c: Add versions of
+ c_f_pointer for complex and logical types.
+ * libgfortran/gfortran.map: Add c_f_pointer versions for logical
+ and complex types.
+
+2007-07-19 Christopher D. Rickett <crickett@lanl.gov>
+
+ PR fortran/32600
+ * libgfortran/intrinsics/iso_c_binding.c: Remove C_LOC.
+ * libgfortran/intrinsics/iso_c_binding.h: Ditto.
+ * libgfortran/gfortran.map: Ditto.
+
+2007-07-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+ Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/32611
+ * runtime/compile_options.c (set_std): Remove.
+ (set_options): New function.
+ (init_compile_options): Add initialization for -fsign-zero option.
+ * gfortran.map (GFORTRAN_1.0): Rename _gfortran_set_std into
+ _gfortran_set_options.
+ * libgfortran.h (compile_options_t): Add sign_zero field.
+ * io/write.c (output_float): Use the sign bit of the value to determine
+ if a negative sign should be emitted for zero values. Do not emit the
+ negative sign for zero if -fno-sign-zero was set during compile.
+
+2007-07-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libgfortran/32752
+ * io/unix.c (unix_stream): Move buffer pointer adjacent to
+ small_buffer.
+ * io/transfer.c (formatted_transfer_scalar): If stream I/O, set
+ bytes_used to zero. Fix off by one error in calculation of pos and
+ skips. Eliminate duplicate pending_spaces check.
+
+2007-07-15 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/32357
+ * intrinsics/mvbits.c: Change prototype so that FROMPOS, LEN and
+ TOPOS arguments are C int.
+
+2007-07-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libgfortran/32702
+ * io/unix.c (unix_stream): Restore buffer pointer and small_buffer.
+ (fd_alloc): If the number of bytes needed is greater than the default
+ BUFFER_SIZE, allocate a new buffer large enough. Free the old buffer
+ if necessary. (fd_sfree): Restore use of buffer pointer.
+ (fd_close): Likewise. (fd_open): Likewise.
+ (init_error_stream): Likewise.
+
+2007-07-09 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR libfortran/32336
+ * m4/matmul.m4: When the dimension of b is incorrect,
+ raise a runtime error instead of a failed assertion.
+ * generated/matmul_i1.c: Regenerated.
+ * generated/matmul_i2.c: Regenerated.
+ * generated/matmul_i4.c: Regenerated.
+ * generated/matmul_i8.c: Regenerated.
+ * generated/matmul_i16.c: Regenerated.
+ * generated/matmul_r4.c: Regenerated.
+ * generated/matmul_r8.c: Regenerated.
+ * generated/matmul_r10.c: Regenerated.
+ * generated/matmul_r16.c: Regenerated.
+
+2007-07-08 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libgfortran/32678
+ * io/transfer.c (formatted_transfer_scalar): Don't allow
+ pending_spaces to go negative.
+
+2007-07-08 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR libfortran/32217
+ * intrinsics/unpack_generic.c: If the destination array is
+ empty, return early.
+
+2007-07-05 H.J. Lu <hongjiu.lu@intel.com>
+
+ * aclocal.m4: Regenerated.
+
+2007-07-04 David Edelsohn <edelsohn@gnu.org>
+
+ * configure.ac: SUBST CFLAGS.
+ * configure: Regenerate.
+
+2007-07-03 Janne Blomqvist <jb@gcc.gnu.org>
+
+ * libgfortran.h: Mark internal_malloc_size as a malloc function.
+ * runtime/memory.c (internal_realloc_size): Remove.
+ (internal_realloc): Call realloc directly instead of
+ internal_realloc_size.
+ (allocate_size): Remove.
+ (allocate): Call malloc directly instead of allocate_size, mark as
+ malloc function.
+
+2007-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ Restore collateral damage from ISO C Binding merge.
+
+2007-06-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libgfortran/32456
+ * io/unit.c (filename_from_unit): Don't use find_unit, instead search
+ for unit directly.
+
+2007-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * Makefile.in: Regenerated with automake 1.9.6.
+
+2007-07-02 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * Makefile.in: Remove extraneous kill.lo rule.
+
+2007-07-02 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR fortran/32239
+ * generated/pow_r*_i4.c: Removed.
+
+2007-07-01 Christopher D. Rickett <crickett@lanl.gov>
+
+ * Makefile.in: Add support for iso_c_generated_procs.c and
+ iso_c_binding.c.
+ * Makefile.am: Ditto.
+ * intrinsics/iso_c_generated_procs.c: New file containing helper
+ functions.
+ * intrinsics/iso_c_binding.c: Ditto.
+ * intrinsics/iso_c_binding.h: New file
+ * gfortran.map: Include the __iso_c_binding_c_* functions.
+ * libgfortran.h: define GFC_NUM_RANK_BITS.
+
+2007-07-01 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR fortran/32239
+ * Makefile.am: Don't generate real**int4 pow functions.
+ * gfortran.map: Remove real**int4 pow symbols.
+ * Makefile.in: Regenerated.
+
+2007-07-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libgfortran/32554
+ * io/write.c (output_float): Set edigits to a fixed size, avoiding
+ variation in field width calculation and eliminate buffer overrun.
+
+2007-07-01 Janne Blomqvist <jb@gcc.gnu.org>
+
+ * runtime/memory.c (internal_realloc): Use index_type for size
+ argument instead of GFC_INTEGER_4.
+ (allocate_array): Likewise.
+ (allocate): Likewise, add ifdef around unnecessary check.
+ (internal_reallo64): Remove.
+ (allocate_array64): Remove.
+ (allocate64): Remove.
+ * gfortran.map: Remove symbols for 64-bit allocation functions.
+
+2007-06-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libgfortran/32456
+ * io/unit.c (filename_from_unit): Don't use find_unit, instead search
+ for unit directly.
+
+2007-06-24 Adam Nemet <anemet@caviumnetworks.com>
+
+ PR libfortran/32495
+ * runtime/backtrace.c (local_strcasestr): Rename from strcasestr.
+ (show_backtrace): Rename strcasestr to local_strcasestr.
+
+2007-06-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libgfortran/32456
+ * runtime/error.c (show_locus): Update to emit the unit number
+ and file name involved with the error. Use new function
+ filename_from_unit.
+ * libgfortran.h (filename_from_unit): Declare new function.
+ * io/unit.c (init_units): Set the unit file name for stdin, stdout,
+ and stderr for use later in error reporting.
+ (filename_from_unit): Add this new function.
+
+2007-06-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libgfortran/32446
+ * io/write.c (output_float): Calculate ndigits correctly for large
+ numbered formats that must pad zeros before the decimal point.
+
+2007-06-15 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ PR libfortran/32345
+ * runtime/backtrace.c (show_backtrace): Only use snprintf if
+ available.
+
+2007-06-10 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libgfortran/32235
+ * io/transfer.c (st_read): Remove test for end of file condition.
+ (next_record_r): Add test for end of file condition.
+
+2007-06-02 Paolo Bonzini <bonzini@gnu.org>
+
+ * configure: Regenerate.
+
+2007-05-28 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/32124
+ * runtime/memory.c (allocate_size): Use ERROR_ALLOCATION.
+ (allocate,allocate64): Use stat variable if present.
+
+2007-05-27 Janne Blomqvist <jb@gcc.gnu.org>
+
+ * runtime/string.c (compare0): Use gfc_charlen_type instead of
+ int.
+ (fstrlen): Likewise.
+ (find_option): Likewise.
+ (fstrcpy): Use gfc_charlen_type instead of int, return length.
+ (cf_strcpy): Likewise.
+ * libgfortran.h: Change string prototypes to use gfc_charlen_type.
+ * io/open.c (new_unit): Use snprintf if available.
+ * io/list_read.c (nml_touch_nodes): Use memcpy instead of
+ strcpy/strcat.
+ (nml_read_obj): Likewise.
+ * io/transfer.c (st_set_nml_var): Likewise.
+ * io/write.c (output_float): Use snprintf if available.
+ (nml_write_obj) Use memcpy instead of strcpy/strcat.
+
+2007-05-26 Janne Blomqvist <jb@gcc.gnu.org>
+
+ * io/unix.c (unix_stream): Rearrange struct members, remove
+ small_buffer.
+ (int_stream): New struct.
+ (fd_alloc): Always use existing buffer, never reallocate.
+ (fd_sfree): Remove check for buffer != small_buffer.
+ (fd_close): Likewise.
+ (mem_alloc_r_at): Change to use int_stream.
+ (mem_alloc_w_at): Likewise.
+ (mem_read): Likewise.
+ (mem_write): Likewise.
+ (mem_set): Likewise.
+ (mem_truncate): Likewise.
+ (mem_close): Likewise.
+ (mem_sfree): Likewise.
+ (empty_internal_buffer): Likewise.
+ (open_internal): Likewise.
+
+2007-05-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ * io/transfer.c (unformatted_read): Use size from front end
+ eliminating use of size_from_real_kind.
+ (unformatted_write): Ditto.
+
+2007-05-23 Steve Ellcey <sje@cup.hp.com>
+
+ * Makefile.in: Regenerate.
+ * configure: Regenerate.
+ * aclocal.m4: Regenerate.
+
+2007-05-22 Tobias Burnus <burnus@net-b.de>
+
+ * libgfortran.h: Mark stop_numeric as noreturn.
+
+2007-05-22 Tobias Burnus <burnus@net-b.de>
+
+ PR libgfortran/31295
+ * intrinsics/eoshift0.c (eoshift0): Silence uninitialized warning.
+ * intrinsics/eoshift2.c (eoshift2): Ditto.
+
+2007-05-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/31964
+ * intrinsics/ishftc.c (ishftc4, ishftc8, ishftc16): Fix mask to handle
+ shift of bit-size number of bits.
+
+2007-05-17 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/31917
+ * runtime/environ.c (mark_range): Fix setting default convert unit.
+
+2007-05-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/31922
+ * intrinsics/string_intrinsics.c (string_trim): Set result to null if
+ string length is zero.
+
+2007-05-15 Tobias Burnus <burnus@net-b.de>
+
+ PR libfortran/31915
+ * io/transfer.c (unformatted_read): Use proper size for real(10).
+ (unformatted_write): Ditto.
+
+2007-05-14 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/30723
+ * runtime/memory.c (internal_malloc, internal_malloc64,
+ internal_free): Remove.
+ * runtime/error.c (os_error): Export function.
+ * intrinsics/move_alloc.c: Include stdlib.h.
+ (move_alloc): Call free instead of internal_free.
+ (move_alloc_c): Wrap long lines.
+ * libgfortran.h (os_error): Export prototype.
+ (internal_free): Remove prototype.
+ * gfortran.map (GFORTRAN_1.0): Remove _gfortran_internal_free,
+ _gfortran_internal_malloc and _gfortran_internal_malloc64.
+ Add _gfortran_os_error.
+
+2007-05-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/31880
+ * io/unix.c (fd_alloc_r_at): Fix calculation of physical offset.
+
+2007-05-07 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR libfortran/31607
+ * intrinsics/system.c (system_sub): Call flush_all_units.
+ * io/io.h (flush_all_units): Move prototype to libgfortran.h.
+ * libgfortran.h (flush_all_units): Add prototype.
+
+2007-05-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/31201
+ * runtime/error.c (runtime_error_at): New function.
+ (generate_error): Export this function.
+ * gfortran.map: Add _gfortran_generate_error and
+ _gfortran_runtime_error_at.
+ * libgfortran.h: Add comment to reference error codes in front end.
+ (library_start): Locate prototype with library_end macro and add
+ a new comment. Add prototype for runtime_error_at. Export prototype
+ for generate_error.
+ * io/lock.c (library_start): Fix check for error condition.
+ * io/transfer.c (data_transfer_init): Add library check.
+
+2007-05-04 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/22359
+ * io/intrinsics.c (fseek_sub): New.
+ * io/unix.c (fd_fseek): Change logical and physical offsets only
+ if seek succeeds.
+ * gfortran.map (fseek_sub): New.
+
+2007-05-04 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR libfortran/31210
+ * io/transfer.c (transfer_character): Avoid passing a NULL
+ pointer as source to the transfer routines, if the string length
+ is zero.
+
+2007-04-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/31501
+ * io/list_read.c (next_char): Fix whitespace.
+ * io/io.h: Remove prototypes and define macros for is_array_io,
+ is_stream_io, and is_internal_unit.
+ * io/unit.c (is_array_io), (is_internal_unit), (is_stream_io): Delete
+ these functions.
+ * io/transfer.c (read_sf): Change handling of internal_unit to make a
+ single call to salloc_r and use memcpy to transfer the data.
+
+2007-04-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/31532
+ * io/file_pos.c (st_backspace): Set flags.position for end of file
+ condition and use new function update_position.
+ (st_endfile): Use new function update_position.
+ * io/io.h: Add prototype for new function.
+ * io/inquire.c (inquire_via_unit): If not direct access, set NEXTREC
+ to zero.
+ * io/unit.c (update_position): New function to update position info
+ used by inquire.
+ * io/transfer.c (next_record): Fix typo and use new function.
+
+2007-04-25 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR libfortran/31299
+ * intrinsics/getlog.c: Use getpwuid and geteuid instead of
+ getlogin if they are available.
+ * configure.ac: Add checks for getpwuid and geteuid.
+ * configure: Regenerate.
+ * config.h.in: Regenerate.
+
+2007-04-25 Janne Blomqvist <jb@gcc.gnu.org>
+
+ * configure: Regenerate using autoconf 2.59.
+ * Makefile.in: Likewise.
+ * config.h.in: Likewise.
+
+2007-04-24 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR libfortran/27740
+ * configure.ac: New test to determine if symbol versioning is
+ supported.
+ * Makefile.am: Use result of above test to add appropriate linker
+ flags.
+ * gfortran.map: New file.
+ * configure: Regenerated.
+ * Makefile.in: Regenerated.
+ * config.h.in: Regenerated.
+
+2007-04-23 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/31618
+ * io/transfer.c (read_block_direct): Instead of calling us_read,
+ set dtp->u.p.current_unit->current_record = 0 so that pre_position
+ will read the record marker.
+ (data_transfer_init): For different error conditions, call
+ generate_error, then return.
+
+2007-04-19 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * runtime/main.c (please_free_exe_path_when_done): New variable.
+ (store_exe_path): Initialize character buffer, and mark whether
+ exe_path should be free'd by the library destructor function.
+ (cleanup): Only free exe_path if needed.
+
+2007-04-18 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+ Tobias Burnus <burnus@net-b.de>
+
+ PR libfortran/31286
+ PR libfortran/31296
+ * intrinsics/cshift0.c (cshift0): Initialize sstride[0] and rstride[0].
+ * intrinsics/unpack_generic.c (unpack0, unpack0_char): Zero the
+ array structures we pass to unpack_internal.
+
+2007-04-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ * io/open.c (test_endfile): Revert changes for 31052, restoring this
+ function.
+
+2007-04-14 Steve Ellcey <sje@cup.hp.com>
+
+ * Makefile.am: Add -I .. to ACLOCAL_AMFLAGS. Add libgfortran_la_LINK.
+ * Makefile.in: Regenerate.
+
+2007-04-11 Kai Tietz <kai.tietz@onevision.com>
+
+ * configure: Regenerate.
+
+2007-04-06 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * intrinsics/cpu_time.c: Don't include headers already included
+ by libgfortran.h. Protect inclusion of sys/times.h.
+ * configure.ac: Remove unneeded checks for finit, stdio.h,
+ stddef.h, math.h and sys/params.h.
+ * config/fpu-aix.h: Don't include headers already included by
+ libgfortran.h.
+ * config/fpu-sysv.h: Likewise.
+ * io/write.c: Likewise.
+ * m4/minloc1.m4: Likewise.
+ * m4/maxloc1.m4: Likewise.
+ * m4/fraction.m4: Likewise.
+ * m4/set_exponent.m4: Likewise.
+ * m4/spacing.m4: Likewise.
+ * m4/minval.m4: Likewise.
+ * m4/maxval.m4: Likewise.
+ * m4/exponent.m4: Likewise.
+ * m4/nearest.m4: Likewise.
+ * m4/minloc0.m4: Likewise.
+ * m4/maxloc0.m4: Likewise.
+ * m4/rrspacing.m4: Likewise.
+ * runtime/main.c: Likewise.
+ * runtime/error.c: Likewise.
+ * intrinsics/system_clock.c: Likewise.
+ * intrinsics/etime.c: Likewise.
+ * intrinsics/stat.c: Likewise.
+ * intrinsics/date_and_time.c: Likewise.
+ * intrinsics/env.c: Likewise.
+ * intrinsics/kill.c: Likewise.
+ * intrinsics/getXid.c: Likewise.
+ * intrinsics/chmod.c: Likewise.
+ * intrinsics/args.c: Likewise.
+ * intrinsics/c99_functions.c: Likewise.
+ * generated/minval_r8.c: Regenerate.
+ * generated/maxloc1_4_r8.c: Regenerate.
+ * generated/minloc1_16_r16.c: Regenerate.
+ * generated/maxval_i2.c: Regenerate.
+ * generated/maxloc1_8_i4.c: Regenerate.
+ * generated/exponent_r16.c: Regenerate.
+ * generated/maxloc0_4_r4.c: Regenerate.
+ * generated/fraction_r16.c: Regenerate.
+ * generated/fraction_r4.c: Regenerate.
+ * generated/minloc0_4_r16.c: Regenerate.
+ * generated/minloc0_4_i1.c: Regenerate.
+ * generated/maxloc0_4_r16.c: Regenerate.
+ * generated/maxloc0_4_i2.c: Regenerate.
+ * generated/minloc1_8_r16.c: Regenerate.
+ * generated/maxloc1_8_r16.c: Regenerate.
+ * generated/set_exponent_r8.c: Regenerate.
+ * generated/maxloc0_8_i8.c: Regenerate.
+ * generated/minloc1_4_r8.c: Regenerate.
+ * generated/maxloc1_16_r16.c: Regenerate.
+ * generated/minloc1_16_i4.c: Regenerate.
+ * generated/maxloc1_16_i4.c: Regenerate.
+ * generated/minloc0_16_i8.c: Regenerate.
+ * generated/maxloc0_16_i8.c: Regenerate.
+ * generated/nearest_r8.c: Regenerate.
+ * generated/spacing_r16.c: Regenerate.
+ * generated/maxval_r16.c: Regenerate.
+ * generated/minloc1_8_i4.c: Regenerate.
+ * generated/minloc0_16_i16.c: Regenerate.
+ * generated/minloc0_4_r4.c: Regenerate.
+ * generated/set_exponent_r10.c: Regenerate.
+ * generated/rrspacing_r10.c: Regenerate.
+ * generated/minloc0_4_i2.c: Regenerate.
+ * generated/maxloc0_8_i1.c: Regenerate.
+ * generated/minloc0_8_i8.c: Regenerate.
+ * generated/spacing_r4.c: Regenerate.
+ * generated/minloc1_16_r10.c: Regenerate.
+ * generated/minloc0_16_i1.c: Regenerate.
+ * generated/maxloc0_16_i1.c: Regenerate.
+ * generated/maxloc1_8_r8.c: Regenerate.
+ * generated/minval_i16.c: Regenerate.
+ * generated/exponent_r10.c: Regenerate.
+ * generated/maxval_i4.c: Regenerate.
+ * generated/minval_i8.c: Regenerate.
+ * generated/maxloc1_4_i8.c: Regenerate.
+ * generated/fraction_r10.c: Regenerate.
+ * generated/maxloc0_16_i16.c: Regenerate.
+ * generated/maxloc0_8_r4.c: Regenerate.
+ * generated/rrspacing_r8.c: Regenerate.
+ * generated/minloc1_4_i16.c: Regenerate.
+ * generated/minloc0_4_r10.c: Regenerate.
+ * generated/maxloc1_4_i16.c: Regenerate.
+ * generated/minloc0_8_i16.c: Regenerate.
+ * generated/maxloc0_4_r10.c: Regenerate.
+ * generated/maxloc0_8_i16.c: Regenerate.
+ * generated/minloc1_8_r10.c: Regenerate.
+ * generated/minloc0_16_r4.c: Regenerate.
+ * generated/maxloc1_8_r10.c: Regenerate.
+ * generated/maxloc0_16_r4.c: Regenerate.
+ * generated/minloc1_16_r8.c: Regenerate.
+ * generated/minloc0_8_i1.c: Regenerate.
+ * generated/maxloc0_4_i4.c: Regenerate.
+ * generated/maxloc1_16_r8.c: Regenerate.
+ * generated/maxloc0_8_i2.c: Regenerate.
+ * generated/nearest_r16.c: Regenerate.
+ * generated/maxloc1_16_r10.c: Regenerate.
+ * generated/minloc0_16_i2.c: Regenerate.
+ * generated/minloc1_8_r8.c: Regenerate.
+ * generated/maxloc0_16_i2.c: Regenerate.
+ * generated/exponent_r4.c: Regenerate.
+ * generated/spacing_r10.c: Regenerate.
+ * generated/maxval_r10.c: Regenerate.
+ * generated/minval_i1.c: Regenerate.
+ * generated/maxloc1_4_i1.c: Regenerate.
+ * generated/minloc1_4_i8.c: Regenerate.
+ * generated/minloc0_8_r4.c: Regenerate.
+ * generated/minloc0_16_r16.c: Regenerate.
+ * generated/minloc0_4_i4.c: Regenerate.
+ * generated/minloc0_8_i2.c: Regenerate.
+ * generated/minval_r4.c: Regenerate.
+ * generated/maxloc1_4_r4.c: Regenerate.
+ * generated/maxval_r8.c: Regenerate.
+ * generated/minval_r16.c: Regenerate.
+ * generated/minloc1_4_i1.c: Regenerate.
+ * generated/minval_i2.c: Regenerate.
+ * generated/maxloc1_4_i2.c: Regenerate.
+ * generated/maxloc1_8_i8.c: Regenerate.
+ * generated/maxloc0_4_r8.c: Regenerate.
+ * generated/maxloc0_16_r16.c: Regenerate.
+ * generated/minloc1_4_r16.c: Regenerate.
+ * generated/fraction_r8.c: Regenerate.
+ * generated/maxloc1_4_r16.c: Regenerate.
+ * generated/set_exponent_r4.c: Regenerate.
+ * generated/minloc0_8_r16.c: Regenerate.
+ * generated/maxloc0_8_r16.c: Regenerate.
+ * generated/nearest_r10.c: Regenerate.
+ * generated/maxloc0_8_i4.c: Regenerate.
+ * generated/minloc1_4_r4.c: Regenerate.
+ * generated/minloc0_16_i4.c: Regenerate.
+ * generated/maxloc0_16_i4.c: Regenerate.
+ * generated/nearest_r4.c: Regenerate.
+ * generated/minloc1_16_i8.c: Regenerate.
+ * generated/maxloc1_16_i8.c: Regenerate.
+ * generated/minloc1_4_i2.c: Regenerate.
+ * generated/maxloc1_8_i1.c: Regenerate.
+ * generated/minloc0_16_r10.c: Regenerate.
+ * generated/minloc1_8_i8.c: Regenerate.
+ * generated/minloc0_4_r8.c: Regenerate.
+ * generated/minloc0_8_i4.c: Regenerate.
+ * generated/minloc1_16_i16.c: Regenerate.
+ * generated/spacing_r8.c: Regenerate.
+ * generated/maxloc1_8_r4.c: Regenerate.
+ * generated/minloc1_16_i1.c: Regenerate.
+ * generated/maxloc1_16_i1.c: Regenerate.
+ * generated/minval_r10.c: Regenerate.
+ * generated/minval_i4.c: Regenerate.
+ * generated/minloc1_8_i1.c: Regenerate.
+ * generated/maxloc1_4_i4.c: Regenerate.
+ * generated/maxloc1_8_i2.c: Regenerate.
+ * generated/maxval_i8.c: Regenerate.
+ * generated/maxloc0_16_r10.c: Regenerate.
+ * generated/rrspacing_r4.c: Regenerate.
+ * generated/minloc0_4_i16.c: Regenerate.
+ * generated/maxloc0_8_r8.c: Regenerate.
+ * generated/maxloc0_4_i16.c: Regenerate.
+ * generated/minloc1_4_r10.c: Regenerate.
+ * generated/minloc1_8_i16.c: Regenerate.
+ * generated/maxloc1_4_r10.c: Regenerate.
+ * generated/minloc0_8_r10.c: Regenerate.
+ * generated/maxloc1_8_i16.c: Regenerate.
+ * generated/maxloc0_8_r10.c: Regenerate.
+ * generated/minloc1_16_r4.c: Regenerate.
+ * generated/maxloc1_16_r4.c: Regenerate.
+ * generated/minloc0_16_r8.c: Regenerate.
+ * generated/maxloc0_16_r8.c: Regenerate.
+ * generated/maxloc0_4_i8.c: Regenerate.
+ * generated/maxloc1_16_i16.c: Regenerate.
+ * generated/minloc1_8_r4.c: Regenerate.
+ * generated/minloc1_16_i2.c: Regenerate.
+ * generated/maxloc1_16_i2.c: Regenerate.
+ * generated/maxval_i16.c: Regenerate.
+ * generated/exponent_r8.c: Regenerate.
+ * generated/minloc1_4_i4.c: Regenerate.
+ * generated/maxval_i1.c: Regenerate.
+ * generated/minloc1_8_i2.c: Regenerate.
+ * generated/minloc0_8_r8.c: Regenerate.
+ * generated/set_exponent_r16.c: Regenerate.
+ * generated/maxloc0_4_i1.c: Regenerate.
+ * generated/rrspacing_r16.c: Regenerate.
+ * generated/minloc0_4_i8.c: Regenerate.
+ * generated/maxval_r4.c: Regenerate.
+ * configure: Regenerate.
+ * config.h.in: Regenerate.
+
+2007-04-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/31395
+ * io/format.c (parse_format_list): Fix parsing.
+
+2007-04-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR fortran/31304
+ intrinsics/string_intrinsics.c (string_repeat): Remove.
+
+2007-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/31052
+ * io/open.c (test_endfile): Delete this function.
+ (edit_modes): Delete call to test_endfile.
+ (new_unit): Likewise.
+ * io/io.h: Delete prototype for test_endfile.
+ * io/transfer.c (next_record_r): Remove use of test_endfile.
+ (st_read): Add test for end file condition and adjust status.
+
+2007-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/31366
+ * io/transfer.c (read_block_direct): Do not generate error when reading
+ past EOF on a short record that is less than the RECL= specified.
+
+2007-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/31207
+ * io/unit.c (close_unit_1): If there are bytes previously written from
+ ADVANCE="no", move to the end before closing.
+
+2007-03-31 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ PR libfortran/31335
+ * intrinsics/stat.c: Only provide STAT and FSTAT library routines
+ if stat() and fstat() library functions are available. When lstat()
+ is not available, use stat() instead.
+ * configure.ac: Add checks for stat, fstat and lstat.
+ * configure: Regenerate.
+ * config.h.in: Regenerate.
+
+2007-03-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/31052
+ * io/transfer.c (next_record_r): Do not call test_endfile if in
+ namelist mode.
+
+2007-03-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/31199
+ * io/io.h: Add saved_pos to gfc_unit structure.
+ * io/open.c (new_unit): Initialize saved_pos.
+ * io/transfer.c (data_transfer_init): Set max_pos to value in
+ saved_pos.
+ (next_record_w): Fix whitespace.
+ (finalze_transfer): Calculate max_pos for ADVANCE="no" and save it for
+ later use. If not ADVANCE="no" set saved_pos to zero.
+
+2007-03-25 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR libfortran/31196
+ * intrinsics/reshape_generic.c (reshape_internal): Increment
+ correct variable.
+
+2007-03-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/31052
+ * file_pos.c: Update Copyright year.
+ * io/open.c (test_endfile): Restore test_endfile to fix SPEC
+ regression. Update Copyright year.
+ * io/io.h: Same.
+ * io/unix.c (is_special): Add missing type for this function.
+ Update Copyright year.
+ * io/transfer.c (next_record_r): Restore test_endfile.
+ (st_read): Fix whitespace. Update Copyright year
+
+2007-03-20 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ * configure.ac: Add missing check for gettimeofday.
+ * config.h.in: Renegerate.
+ * configure: Regenerate.
+
+2007-03-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/31052
+ * io/file_position (st_rewind): Fix comments. Remove use of
+ test_endfile. Don't seek if already at 0 position. Use new is_special
+ function to set endfile state.
+ * io/open.c (test_endfile): Delete this function.
+ * io/io.h: Delete prototype for test_endfile. Add prototype
+ for is_special.
+ * io/unix.c (is_special): New function. Fix whitespace.
+ * io/transfer.c (next_record_r): Remove use of test_endfile.
+
+2007-03-16 David Edelsohn <edelsohn@gnu.org>
+
+ * runtime/main.c: Include "config.h" first.
+
+2007-03-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/31099
+ * io/file_pos.c (st_rewind): Don't set bytes_left to zero.
+
+2007-03-15 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ * runtime/backtrace.c: New file.
+ * runtime/environ.c (variable_table): New GFORTRAN_ERROR_BACKTRACE
+ environment variable.
+ * runtime/compile_options.c (set_std): Add new argument.
+ * runtime/main.c (store_exe_path, full_exe_path): New functions.
+ * runtime/error.c (sys_exit): Add call to show_backtrace.
+ * libgfortran.h (options_t): New backtrace field.
+ (store_exe_path, full_exe_path, show_backtrace): New prototypes.
+ * configure.ac: Add checks for execinfo.h, execvp, pipe, dup2,
+ close, fdopen, strcasestr, getrlimit, backtrace, backtrace_symbols
+ and getppid.
+ * Makefile.am: Add runtime/backtrace.c.
+ * fmain.c (main): Add call to store_exe_path.
+ * Makefile.in: Renegerate.
+ * config.h.in: Renegerate.
+ * configure: Regenerate.
+
+2007-03-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/31051
+ * io/transfer.c (formatted_transfer_scalar): Adjust position for
+ pending spaces when in writing mode. Clean up some formatting.
+
+2007-03-14 Thomas Koenig <Thomas.Koenig@online.de>
+
+ PR libfortran/30690
+ * all.m4: Quote everything, except for m4 macros.
+ * any.m4: Likewise.
+ * count.m4: Likewise.
+ * cshift1.m4: Likewise.
+ * eoshift1.m4: Likewise.
+ * eoshift3.m4: Likewise.
+ * exponent.m4: Likewise.
+ * fraction.m4: Likewise.
+ * in_pack.m4: Likewise.
+ * in_unpack.m4: Likewise.
+ * matmul.m4: Likewise.
+ * matmull.m4: Likewise.
+ * nearest.m4: Likewise.
+ * pow.m4: Likewise.
+ * product.m4: Likewise.
+ * reshape.m4: Likewise.
+ * rrspacing.m4: Likewise.
+ * set_exponent.m4: Likewise.
+ * shape.m4: Likewise.
+ * spacing.m4: Likewise.
+ * transpose.m4: Likewise.
+
+2007-03-14 Jakub Jelinek <jakub@redhat.com>
+
+ * io/unix.c (regular_file): For ACTION_UNSPECIFIED retry with
+ O_RDONLY even if errno is EROFS.
+
+2007-03-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/31099
+ * io/open.c (new_unit): Initialize bytes_left and recl_subrecord.
+ * io/transfer.c (next_record_w): Set bytes left to record length for
+ sequential unformatted I/O.
+ (next_record_r): Ditto.
+ (read_block_direct): Fix test for exceeding bytes_left.
+
+2007-03-08 Daniel Franke <franke.daniel@gmail.com>
+
+ PR fortran/30947
+ * intrinsics/signal.c (alarm_sub_int): Avoid SEGFAULT with
+ integer arguments.
+
+2007-03-04 Thomas Koenig <Thomas.Koenig@online.de>
+
+ PR libfortran/30981
+ * m4/pow_m4: Use appropriate unsigned int type for u.
+ * generated/pow_c10_i16.c: Regenerated.
+ * generated/pow_c10_i4.c: Regenerated.
+ * generated/pow_c10_i8.c: Regenerated.
+ * generated/pow_c16_i16.c: Regenerated.
+ * generated/pow_c16_i4.c: Regenerated.
+ * generated/pow_c16_i8.c: Regenerated.
+ * generated/pow_c4_i16.c: Regenerated.
+ * generated/pow_c4_i4.c: Regenerated.
+ * generated/pow_c4_i8.c: Regenerated.
+ * generated/pow_c8_i16.c: Regenerated.
+ * generated/pow_c8_i4.c: Regenerated.
+ * generated/pow_c8_i8.c: Regenerated.
+ * generated/pow_i16_i16.c: Regenerated.
+ * generated/pow_i16_i4.c: Regenerated.
+ * generated/pow_i16_i8.c: Regenerated.
+ * generated/pow_i4_i16.c: Regenerated.
+ * generated/pow_i4_i4.c: Regenerated.
+ * generated/pow_i4_i8.c: Regenerated.
+ * generated/pow_i8_i16.c: Regenerated.
+ * generated/pow_i8_i4.c: Regenerated.
+ * generated/pow_i8_i8.c: Regenerated.
+ * generated/pow_r10_i16.c: Regenerated.
+ * generated/pow_r10_i4.c: Regenerated.
+ * generated/pow_r10_i8.c: Regenerated.
+ * generated/pow_r16_i16.c: Regenerated.
+ * generated/pow_r16_i4.c: Regenerated.
+ * generated/pow_r16_i8.c: Regenerated.
+ * generated/pow_r4_i16.c: Regenerated.
+ * generated/pow_r4_i4.c: Regenerated.
+ * generated/pow_r4_i8.c: Regenerated.
+ * generated/pow_r8_i16.c: Regenerated.
+ * generated/pow_r8_i4.c: Regenerated.
+ * generated/pow_r8_i8.c: Regenerated.
+
+2007-03-03 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ PR libfortran/31001
+ * intrinsics/pack_generic.c (pack_internal): Add special checks
+ for zero-sized arrays.
+
+2007-03-01 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * Makefile.am: Add dummy install-pdf target.
+ * Makefile.in: Regenerate
+
+2007-02-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/30918
+ * io/listread.c (namelist_read): Eat comment line.
+
+2007-02-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/30910
+ * io/write.c (output_float): Add condition of format F only for
+ special case rounding with zero precision.
+
+2007-02-19 Thomas Koenig <Thomas.Koenig@online.de>
+
+ PR libfortran/30533
+ PR libfortran/30765
+ * Makefile.am: Add $(srcdir) too all files in generated/.
+ (i_maxloc0_c): Add maxloc0_4_i1.c, maxloc0_8_i1.c,
+ maxloc0_16_i1.c, maxloc0_4_i2.c, maxloc0_8_i2.c and
+ maxloc0_16_i2.c.
+ (i_maxloc1_c): Add maxloc1_4_i1.c, maxloc1_8_i1.c,
+ maxloc1_16_i1.c, maxloc1_4_i2.c, maxloc1_8_i2.c and
+ maxloc1_16_i2.c.
+ (i_maxval_c): Add maxval_i1.c and maxval_i2.c.
+ (i_minloc0_c): Add minloc0_4_i1.c, minloc0_8_i1.c,
+ minloc0_16_i1.c, minloc0_4_i2.c, minloc0_8_i2.c and
+ minloc0_16_i2.c.
+ (i_minloc_1.c): Add minloc1_4_i1.c, minloc1_8_i1.c,
+ minloc1_16_i1.c, minloc1_4_i2.c, minloc1_8_i2.c and
+ minloc1_16_i2.c.
+ (i_minval_c): Add minval_i1.c and minval_i2.c.
+ (i_sum_c): Add sum_i1.c and sum_i2.c.
+ (i_product_c): Add product_i1.c and product_i2.c.
+ (i_matmul_c): Add matmul_i1.c and matmul_i2.c.
+ (gfor_built_specific_src): Remove $(srcdir) from target.
+ (gfor_bulit_specific2_src): Likewise.
+ Makefile.in: Regenerated.
+ libgfortran.h: Add GFC_INTEGER_1_HUGE and GFC_INTEGER_2_HUGE.
+ Add gfc_array_i1 and gfc_array_i2.
+ * generated/matmul_i1.c: New file.
+ * generated/matmul_i2.c: New file.
+ * generated/maxloc0_16_i1.c: New file.
+ * generated/maxloc0_16_i2.c: New file.
+ * generated/maxloc0_4_i1.c: New file.
+ * generated/maxloc0_4_i2.c: New file.
+ * generated/maxloc0_8_i1.c: New file.
+ * generated/maxloc0_8_i2.c: New file.
+ * generated/maxloc1_16_i1.c: New file.
+ * generated/maxloc1_16_i2.c: New file.
+ * generated/maxloc1_4_i1.c: New file.
+ * generated/maxloc1_4_i2.c: New file.
+ * generated/maxloc1_8_i1.c: New file.
+ * generated/maxloc1_8_i2.c: New file.
+ * generated/maxval_i1.c: New file.
+ * generated/maxval_i2.c: New file.
+ * generated/minloc0_16_i1.c: New file.
+ * generated/minloc0_16_i2.c: New file.
+ * generated/minloc0_4_i1.c: New file.
+ * generated/minloc0_4_i2.c: New file.
+ * generated/minloc0_8_i1.c: New file.
+ * generated/minloc0_8_i2.c: New file.
+ * generated/minloc1_16_i1.c: New file.
+ * generated/minloc1_16_i2.c: New file.
+ * generated/minloc1_4_i1.c: New file.
+ * generated/minloc1_4_i2.c: New file.
+ * generated/minloc1_8_i1.c: New file.
+ * generated/minloc1_8_i2.c: New file.
+ * generated/minval_i1.c: New file.
+ * generated/minval_i2.c: New file.
+ * generated/product_i1.c: New file.
+ * generated/product_i2.c: New file.
+ * generated/sum_i1.c: New file.
+ * generated/sum_i2.c: New file.
+
+2007-02-16 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ * runtime/memory.c (deallocate): Correct comment.
+
+2007-02-10 Thomas Koenig <Thomas.Koenig@online.de>
+
+ * Makefile.am: Use $(M4) instead of m4.
+ * Makefile.in: Regenerate.
+
+2007-02-10 Thomas Koenig <Thomas.Koenig@online.de>
+
+ * Makefile.am: Remove $(srcdir) from assorted targets
+ in maintainer mode.
+ * Makefile.in: Regenerate.
+
+2007-02-09 Thomas Koenig <Thomas.Koenig@online.de>
+ Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/30512
+ * m4/iparm.m4: Use HUGE-1 for most negative integer.
+ * generated/maxloc1_8_i4.c: Regenerate.
+ * generated/maxloc0_8_i8.c: Regenerate.
+ * generated/maxloc1_16_i4.c: Regenerate.
+ * generated/maxloc0_16_i8.c: Regenerate.
+ * generated/maxval_i4.c: Regenerate.
+ * generated/maxloc1_4_i8.c: Regenerate.
+ * generated/maxloc0_16_i16.c: Regenerate.
+ * generated/maxloc1_4_i16.c: Regenerate.
+ * generated/maxloc0_8_i16.c: Regenerate.
+ * generated/maxloc0_4_i4.c: Regenerate.
+ * generated/maxloc1_8_i8.c: Regenerate.
+ * generated/maxloc0_8_i4.c: Regenerate.
+ * generated/maxloc0_16_i4.c: Regenerate.
+ * generated/maxloc1_16_i8.c: Regenerate.
+ * generated/maxloc1_4_i4.c: Regenerate.
+ * generated/maxval_i8.c: Regenerate.
+ * generated/maxloc0_4_i16.c: Regenerate.
+ * generated/maxloc1_8_i16.c: Regenerate.
+ * generated/maxloc0_4_i8.c: Regenerate.
+ * generated/maxloc1_16_i16.c: Regenerate.
+ * generated/maxval_i16.c: Regenerate.
+
+2007-02-04 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ PR fortran/30611
+ * intrinsics/string_intrinsics.c (string_repeat): Don't check
+ if ncopies is negative.
+
+2007-02-04 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ PR libfortran/30007
+ * libgfortran.h: Do not prefix symbol name with
+ __USER_LABEL_PREFIX__ when used in __attribute__((__alias__(...))).
+
+2007-02-02 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/30284
+ PR fortran/30626
+ * io/transfer.c (init_loop_spec, next_array_record): Change to
+ lbound rather than unity base.
+
+2007-01-21 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ * runtime/error.c: Include sys/time.h before sys/resource.h.
+
+2007-01-21 Thomas Koenig <Thomas.Koenig@online.de>
+
+ PR libfortran/30525
+ * intrinsics/string_intrinsics.c(compare_string): Make
+ sure that comparisons are done unsigned.
+
+2007-01-21 Tobias Burnus <burnus@net-b.de>
+
+ PR libfortran/30015
+ * intrinsics/date_and_time.c (date_and_time): Fix case where time
+ can go backwards.
+ * configure.ac: Remove AC_TRY_RUN test for timezone in
+ gettimeofday.
+ * acinclude.m4: Ditto.
+ * configure: Regenerate.
+ * config.h.in: Regenerate.
+
+2007-01-20 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ * m4/misc_specifics.m4: Add _gfortran prefix to specific names.
+ * m4/specific2.m4: Likewise.
+ * m4/specific.m4: Likewise.
+ * intrinsics/f2c_specifics.F90: Likewise.
+ * intrinsics/selected_int_kind.f90: Add _gfortran prefix.
+ * intrinsics/selected_real_kind.f90: Likewise.
+ * intrinsics/dprod_r8.f90: Likewise.
+ * Makefile.am: Add -fallow-leading-underscore to the
+ gfor_specific_src files, as well as selected_real_kind.F90
+ and selected_int_kind.F90
+ * Makefile.in: Regenerate.
+ * generated/_sqrt_c8.F90: Regenerate.
+ * generated/_sign_r16.F90: Regenerate.
+ * generated/_log_c16.F90: Regenerate.
+ * generated/_sin_c10.F90: Regenerate.
+ * generated/_tanh_r4.F90: Regenerate.
+ * generated/_tanh_r8.F90: Regenerate.
+ * generated/_log10_r10.F90: Regenerate.
+ * generated/_aimag_c4.F90: Regenerate.
+ * generated/_sign_r4.F90: Regenerate.
+ * generated/_aimag_c8.F90: Regenerate.
+ * generated/_sign_r8.F90: Regenerate.
+ * generated/_mod_i4.F90: Regenerate.
+ * generated/_cos_r16.F90: Regenerate.
+ * generated/_aint_r10.F90: Regenerate.
+ * generated/_mod_i8.F90: Regenerate.
+ * generated/_abs_i16.F90: Regenerate.
+ * generated/_sqrt_c10.F90: Regenerate.
+ * generated/_atan2_r4.F90: Regenerate.
+ * generated/_cos_c4.F90: Regenerate.
+ * generated/_atan_r16.F90: Regenerate.
+ * generated/_tanh_r10.F90: Regenerate.
+ * generated/_atan2_r8.F90: Regenerate.
+ * generated/_cos_c8.F90: Regenerate.
+ * generated/_exp_r4.F90: Regenerate.
+ * generated/_log_r10.F90: Regenerate.
+ * generated/_exp_r8.F90: Regenerate.
+ * generated/_abs_r4.F90: Regenerate.
+ * generated/_abs_r8.F90: Regenerate.
+ * generated/_sin_r16.F90: Regenerate.
+ * generated/_tan_r4.F90: Regenerate.
+ * generated/_tan_r8.F90: Regenerate.
+ * generated/_sign_i4.F90: Regenerate.
+ * generated/_sign_i8.F90: Regenerate.
+ * generated/_exp_c16.F90: Regenerate.
+ * generated/_sqrt_r16.F90: Regenerate.
+ * generated/_conjg_c4.F90: Regenerate.
+ * generated/_conjg_c8.F90: Regenerate.
+ * generated/_dim_r16.F90: Regenerate.
+ * generated/_mod_r10.F90: Regenerate.
+ * generated/_abs_c10.F90: Regenerate.
+ * generated/_conjg_c16.F90: Regenerate.
+ * generated/_tan_r16.F90: Regenerate.
+ * generated/_asinh_r10.F90: Regenerate.
+ * generated/_abs_i4.F90: Regenerate.
+ * generated/_abs_i8.F90: Regenerate.
+ * generated/_acos_r10.F90: Regenerate.
+ * generated/_exp_r10.F90: Regenerate.
+ * generated/_acosh_r16.F90: Regenerate.
+ * generated/_atan2_r16.F90: Regenerate.
+ * generated/_cos_c16.F90: Regenerate.
+ * generated/_mod_i16.F90: Regenerate.
+ * generated/_asin_r4.F90: Regenerate.
+ * generated/_anint_r16.F90: Regenerate.
+ * generated/_asin_r8.F90: Regenerate.
+ * generated/_aimag_c10.F90: Regenerate.
+ * generated/_exp_c4.F90: Regenerate.
+ * generated/_sinh_r10.F90: Regenerate.
+ * generated/_exp_c8.F90: Regenerate.
+ * generated/_log10_r4.F90: Regenerate.
+ * generated/_log10_r8.F90: Regenerate.
+ * generated/_abs_c4.F90: Regenerate.
+ * generated/_abs_r16.F90: Regenerate.
+ * generated/_abs_c8.F90: Regenerate.
+ * generated/_asin_r10.F90: Regenerate.
+ * generated/_sign_r10.F90: Regenerate.
+ * generated/_atanh_r16.F90: Regenerate.
+ * generated/_log_c10.F90: Regenerate.
+ * generated/_cosh_r16.F90: Regenerate.
+ * generated/_sin_c16.F90: Regenerate.
+ * generated/_cos_r10.F90: Regenerate.
+ * generated/_log10_r16.F90: Regenerate.
+ * generated/_aint_r16.F90: Regenerate.
+ * generated/_acos_r4.F90: Regenerate.
+ * generated/_acos_r8.F90: Regenerate.
+ * generated/_sqrt_c16.F90: Regenerate.
+ * generated/_acosh_r4.F90: Regenerate.
+ * generated/_atan_r10.F90: Regenerate.
+ * generated/_acosh_r8.F90: Regenerate.
+ * generated/_sign_i16.F90: Regenerate.
+ * generated/_tanh_r16.F90: Regenerate.
+ * generated/_log_r4.F90: Regenerate.
+ * generated/_log_r8.F90: Regenerate.
+ * generated/_sin_r4.F90: Regenerate.
+ * generated/_sin_r8.F90: Regenerate.
+ * generated/_log_r16.F90: Regenerate.
+ * generated/_sin_r10.F90: Regenerate.
+ * generated/_sqrt_r4.F90: Regenerate.
+ * generated/_exp_c10.F90: Regenerate.
+ * generated/_sqrt_r8.F90: Regenerate.
+ * generated/_asinh_r4.F90: Regenerate.
+ * generated/_sqrt_r10.F90: Regenerate.
+ * generated/_asinh_r8.F90: Regenerate.
+ * generated/_dim_r4.F90: Regenerate.
+ * generated/_dim_r8.F90: Regenerate.
+ * generated/_dim_r10.F90: Regenerate.
+ * generated/_cosh_r4.F90: Regenerate.
+ * generated/_conjg_c10.F90: Regenerate.
+ * generated/_tan_r10.F90: Regenerate.
+ * generated/_cosh_r8.F90: Regenerate.
+ * generated/_mod_r16.F90: Regenerate.
+ * generated/_abs_c16.F90: Regenerate.
+ * generated/_cos_r4.F90: Regenerate.
+ * generated/_asinh_r16.F90: Regenerate.
+ * generated/_cos_r8.F90: Regenerate.
+ * generated/_atanh_r4.F90: Regenerate.
+ * generated/_atanh_r8.F90: Regenerate.
+ * generated/_acos_r16.F90: Regenerate.
+ * generated/_anint_r4.F90: Regenerate.
+ * generated/_acosh_r10.F90: Regenerate.
+ * generated/_anint_r8.F90: Regenerate.
+ * generated/_exp_r16.F90: Regenerate.
+ * generated/_mod_r4.F90: Regenerate.
+ * generated/_cos_c10.F90: Regenerate.
+ * generated/_atan2_r10.F90: Regenerate.
+ * generated/_dim_i16.F90: Regenerate.
+ * generated/_mod_r8.F90: Regenerate.
+ * generated/_anint_r10.F90: Regenerate.
+ * generated/_aint_r4.F90: Regenerate.
+ * generated/_aint_r8.F90: Regenerate.
+ * generated/_dim_i4.F90: Regenerate.
+ * generated/_sinh_r4.F90: Regenerate.
+ * generated/_log_c4.F90: Regenerate.
+ * generated/_dim_i8.F90: Regenerate.
+ * generated/_sinh_r8.F90: Regenerate.
+ * generated/_log_c8.F90: Regenerate.
+ * generated/_sin_c4.F90: Regenerate.
+ * generated/_sin_c8.F90: Regenerate.
+ * generated/misc_specifics.F90: Regenerate.
+ * generated/_abs_r10.F90: Regenerate.
+ * generated/_aimag_c16.F90: Regenerate.
+ * generated/_atan_r4.F90: Regenerate.
+ * generated/_sinh_r16.F90: Regenerate.
+ * generated/_atan_r8.F90: Regenerate.
+ * generated/_atanh_r10.F90: Regenerate.
+ * generated/_cosh_r10.F90: Regenerate.
+ * generated/_sqrt_c4.F90: Regenerate.
+ * generated/_asin_r16.F90: Regenerate.
+
+2007-01-19 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ PR libfortran/26893
+ * acinclude.m4 (LIBGFOR_WORKING_GFORTRAN): New check.
+ * configure.ac: Add call to LIBGFOR_WORKING_GFORTRAN.
+ * configure: Regenerate.
+ * config.h.in: Regenerate because it was forgottent in the last
+ commit.
+
+2007-01-18 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+ Tobias Burnus <burnus@net-b.de>
+
+ PR libfortran/29649
+ * runtime/environ.c (variable_table): New GFORTRAN_ERROR_DUMPCORE
+ environment variable.
+ * runtime/compile_options.c (set_std): Add new argument.
+ * runtime/error.c (sys_exit): Move from io/unix.c. Add coredump
+ functionality.
+ * libgfortran.h (options_t): New dump_core and backtrace members.
+ (sys_exit): Move prototype.
+ * io/unix.c (sys_exit): Move to runtime/error.c.
+ * configure.ac: Add check for getrlimit.
+ * configure: Regenerate.
+
+2007-01-17 Tom Tromey <tromey@redhat.com>
+
+ PR libfortran/27107:
+ * aclocal.m4, configure, Makefile.in: Rebuilt.
+ * configure.ac: Enable automake dependency tracking. Update
+ minimum automake version.
+
+2007-01-17 Francois-Xavier Coudert <coudert@clipper.ens.fr>
+
+ PR libfortran/27107
+ * runtime/environ.c: Don't include io/io.h.
+ * runtime/string.c: Don't include io/io.h.
+ (compare0): Add cast to avoid warning.
+ * runtime/error.c: Don't include io/io.h.
+ (st_printf): Move to io/unix.c.
+ * intrinsics/flush.c: Delete, contents moved to io/intrinsics.c.
+ * intrinsics/fget.c: Likewise.
+ * intrinsics/ftell.c: Likewise.
+ * intrinsics/tty.c: Likewise.
+ * libgfortran.h (DEFAULT_RECL, notification_std,
+ get_unformatted_convert, IOPARM_*, st_parameter_common, unit_convert,
+ DEFAULT_TEMPDIR): New declarations.
+ * io/io.h (DEFAULT_RECL, notification_std, get_unformatted_convert,
+ IOPARM_*, st_parameter_common, unit_convert, DEFAULT_TEMPDIR):
+ Move to libgfortran.h.
+ * io/unix.c: Add io/unix.h content.
+ (st_printf): New function.
+ * io/intrinsics.c: New file.
+ * io/unix.h: Remove, contents moved into unix.c.
+ * libtool-version: Update library version to 3.0.0.
+ * configure.ac: Update library version to 0.3.
+ * Makefile.am (intrinsics/fget.c, intrinsics/flush.c,
+ intrinsics/ftell.c, intrinsics/tty.c, libgfortran.h): Remove targets.
+ * Makefile.in: Regenerate.
+ * configure: Regenerate.
+
+2007-01-12 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/30435
+ * io/list_read.c (finish_separator): Don't call next_record.
+ (list_formatted_read_scalar): Clean up some comments and whitespace.
+ (nml_read_obj): Whitespace fix.
+
+2007-01-05 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/30162
+ * io/unix.c (fd_flush): Don't seek if file is not seekable, defined as
+ s->file_length == -1.
+ (fd_alloc_w_at): Do not adjust file_length if file is not seekable.
+ (fd_seek): If not seekable, just return success.
+ (fd_truncate): If not seekable, no need to truncate. Return failure
+ if seek fails and the stream is not a pipe.
+ (fd_to_stream): Make test for non-seekable file more robust.
+
+2007-01-01 Steven G. Kargl <kargls@comcast.net>
+
+ * ChangeLog: Copied to ...
+ * ChangeLog-2006: here.