+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
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.
+ * 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>