OSDN Git Service

Fix "make dvi"
[pf3gnuchains/gcc-fork.git] / gcc / fortran / ChangeLog
index 1968862..5999fb6 100644 (file)
@@ -1,3 +1,498 @@
+2005-03-25  Steven G. Kargl  <kargls@comcast.net>
+
+       * intrinsic.texi: Fix "make dvi"
+
+2005-03-24  Steven G. Kargl  <kargls@comcast.net>
+
+       * intrinsic.texi: New file.
+       * gfortran.texi: Include it; white space change; fix typo.
+
+2005-03-23  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * f95-lang.c (LANG_HOOKS_TRUTHVALUE_CONVERSION): Remove.
+
+2005-03-23  Steven Bosscher  <stevenb@suse.de>
+
+       * convert.c (convert): Replace fold (buildN (...)) with fold_buildN.
+       * trans-array.c (gfc_trans_allocate_array_storage,
+       gfc_trans_allocate_temp_array gfc_trans_array_constructor_value,
+       gfc_conv_array_index_ref, gfc_trans_array_bound_check,
+       gfc_conv_array_index_offset, gfc_conv_scalarized_array_ref,
+       gfc_conv_array_ref, gfc_trans_preloop_setup, gfc_conv_ss_startstride,
+       gfc_conv_loop_setup, gfc_array_init_size, gfc_trans_array_bounds,
+       gfc_trans_auto_array_allocation, gfc_trans_dummy_array_bias,
+       gfc_conv_expr_descriptor): Likewise.
+       * trans-expr.c (gfc_conv_powi, gfc_conv_string_tmp,
+       gfc_conv_concat_op, gfc_conv_expr_op): Likewise.
+       * trans-intrinsic.c (build_round_expr, gfc_conv_intrinsic_bound,
+       gfc_conv_intrinsic_cmplx, gfc_conv_intrinsic_sign,
+       gfc_conv_intrinsic_minmaxloc, gfc_conv_intrinsic_minmaxval,
+       gfc_conv_intrinsic_btest, gfc_conv_intrinsic_bitop,
+       gfc_conv_intrinsic_singlebitop, gfc_conv_intrinsic_ibits,
+       gfc_conv_intrinsic_ishft, gfc_conv_intrinsic_ishftc,
+       gfc_conv_intrinsic_merge, prepare_arg_info,
+       gfc_conv_intrinsic_rrspacing, gfc_conv_intrinsic_repeat): Likewise.
+       * trans-stmt.c (gfc_trans_simple_do, gfc_trans_do, gfc_trans_do_while,
+       gfc_trans_forall_loop, gfc_do_allocate, generate_loop_for_temp_to_lhs,
+       generate_loop_for_rhs_to_temp, compute_inner_temp_size,
+       allocate_temp_for_forall_nest, gfc_trans_pointer_assign_need_temp,
+       gfc_trans_forall_1, gfc_evaluate_where_mask, gfc_trans_where_assign):
+       Likewise.
+       * trans-types.c (gfc_get_dtype, gfc_get_array_type_bounds): Likewise.
+       * trans.c (gfc_add_modify_expr): Likewise.
+
+2005-03-22  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       * check.c (gfc_check_chdir, gfc_check_chdir_sub, gfc_check_kill,
+       gfc_check_kill_sub, gfc_check_link, gfc_check_link_sub,
+       gfc_check_symlnk, gfc_check_symlnk_sub, gfc_check_rename,
+       gfc_check_rename_sub, gfc_check_sleep_sub, gfc_check_gerror,
+       gfc_check_getlog, gfc_check_hostnm, gfc_check_hostnm_sub,
+       gfc_check_perror): new functions to check newly implemented
+       g77 intrinsics.
+       * gfortran.h: adding symbols for new intrinsics.
+       * intrinsic.c (add_functions): adding new intrinsics.
+       (add_subroutines): adding new intrinsics.
+       * intrinsic.h: prototype for all checking and resolving
+       functions.
+       * iresolve.c (gfc_resolve_chdir, gfc_resolve_chdir_sub,
+       gfc_resolve_hostnm, gfc_resolve_ierrno, gfc_resolve_kill,
+       gfc_resolve_link, gfc_resolve_rename, gfc_resolve_symlnk,
+       gfc_resolve_time, gfc_resolve_time8, gfc_resolve_rename_sub,
+       gfc_resolve_kill_sub, gfc_resolve_link_sub,
+       gfc_resolve_symlnk_sub, gfc_resolve_sleep_sub,
+       gfc_resolve_gerror, gfc_resolve_getlog, gfc_resolve_hostnm_sub,
+       gfc_resolve_perror): new functions to resolve intrinsics.
+       * trans-intrinsic.c (gfc_conv_intrinsic_function): add case
+       for new symbols.
+
+2005-03-19  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * dump-parse-tree.c (gfc_show_expr): Dump name of namespace
+       in which the variable is declared.
+
+       PR fortran/18525
+       * resolve.c (was_declared): Also check for dummy attribute.
+
+2005-03-19  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * gfortran.h (arith): Remove ARITH_0TO0.
+       * arith.c (gfc_arith_error): Remove handling of ARITH_0TO0.
+       (gfc_arith_power): Remove special casing of zero to integral
+       power zero.
+
+2005-03-18  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * Make-lang.in (fortran-warn): Remove -Wno-error.
+       (expr.o-warn, resolve.o-warn, simplify.o-warn,
+       trans-common.o-warn): Specify -Wno-error.
+
+2005-03-17  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-array.c (gfc_trans_static_array_pointer,
+       get_array_ctor_var_strlen, gfc_conv_array_index_offset): Fix
+       comment and formatting typos.
+
+2005-03-17  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       * invoke.texi: Fix typos.
+
+2005-03-15  Zack Weinberg  <zack@codesourcery.com>
+
+       * Make-lang.in (GFORTRAN_TEXI): Add gcc-vers.texi.
+
+2005-03-15  Feng Wang  <fengwang@nudt.edu.cn>
+
+       * trans-stmt.c (gfc_trans_label_assign): Don't set DECL_ARTIFICIAL flag
+       to zero on label_tree.
+
+2005-03-15  Feng Wang  <fengwang@nudt.edu.cn>
+
+       PR fortran/18827
+       * io.c (resolve_tag): Add checking on assigned label.
+       (match_dt_format): Does not set symbol assign attribute.
+       * match.c (gfc_match_goto):Does not set symbol assign attribute.
+       * resolve.c (resolve_code): Add checking on assigned label.
+       * trans-common.c (build_field): Deals with common variable assigned
+       a label.
+       * trans-stmt.c (gfc_conv_label_variable): New function.
+       (gfc_trans_label_assign): Use it.
+       (gfc_trans_goto): Ditto.
+       * trans-io.c (set_string): Ditto.
+       * trans.h (gfc_conv_label_variable): Add prototype.
+
+2005-03-14  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/20467
+       * symbol.c (check_conflict): A dummy argument can't be a statement
+       function.
+
+2005-03-14  Zdenek Dvorak  <dvorakz@suse.cz>
+
+       * fortran/trans-intrinsic.c (gfc_conv_intrinsic_ishft): Convert
+       the argument of the shift to the unsigned type.
+
+2005-03-13  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/16907
+       * resolve.c (gfc_resolve_index): Allow REAL indices as an extension.
+
+2005-03-13  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/20323
+       * resolve.c (gfc_resolve): Check if character lengths are
+       specification expressions.
+
+2005-03-12  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/20361
+       * trans-array.c (gfc_stack_space_left): Remove unused variable.
+       (gfc_can_put_var_on_stack): Move to trans-decl.c, remove #if 0'ed
+       code.
+       * trans-array.h (gfc_stack_space_left, gfc_can_put_var_on_stack):
+       Remove declaration / prototype.
+       * trans-common.c (build_equiv_decl): Give union a name.  Check if
+       it can be put on the stack.
+       * trans-decl.c (gfc_stack_space_left): Move function here.
+       (gfc_build_qualified_array): Fix comment typo.
+       * trans.h (gfc_put_var_on_stack): Add prototype.
+
+2005-03-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * Make-lang.in (fortran-warn): Set to $(STRICT_WARN) -Wno-error.
+       * decl.c, trans.c: Don't use C++ style comments.
+       * gfortran.h (sym_flavor, procedure_type, sym_intent, gfc_access,
+       ifsrc): Give names to enums and use ENUM_BITFIELD.
+       (gfc_access): Remove trailing comma.
+
+2005-03-05  Steven G. Kargl  <kargls@comcast.net>
+
+       PR 19936
+       * primary.c (match_complex_constant): Mangled complex constant may
+       be an implied do-loop.  Give implied do-loop matcher a chance.
+
+2005-03-05  Steven G. Kargl  <kargls@comcast.net>
+
+       PR fortran/19754
+       * resolve.c (compare_shapes):  New function.
+       (resolve_operator): Use it.
+
+2005-03-05  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-const.c (gfc_conv_constant_to_tree): Use correct tree
+       type for COMPLEX constants.
+
+2005-03-04  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       PR fortran/19673
+       * trans-expr.c (gfc_conv_function_call): Correctly dereference
+       argument from a pointer function also if it has a result clause.
+
+2005-03-04  Steven G. Kargl  <kargls@comcast.net>
+
+       * expr.c (gfc_copy_shape_excluding): Change && to ||.
+
+2005-03-04  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-intrinsic.c (gfc_get_symbol_for_expr): Fix comment typo,
+       clarify comment.
+
+2005-02-28  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+       (port from g95)
+
+       PR fortran/19479
+       * simplify.c (gfc_simplify_bound): Rename to ...
+       (simplify_bound): ... this and overhaul.
+
+2005-02-28  Steven G. Kargl  <kargl@gcc.gnu.org>
+
+       * trans-intrinsic.c (gfc_conv_intrinsic_iargc): remove boolean argument.
+       (gfc_conv_intrinsic_function): update function calls
+
+2005-02-27  Steven G. Kargl  <kargl@gcc.gnu.org>
+
+       PR fortran/20058
+       * trans-types.c (gfc_max_integer_kind): Declare
+       (gfc_init_kinds): Initialize it.
+       * gfortran.h (gfc_max_integer_kind): extern it.
+       * primary.c (match_boz_constant): Use it; remove gfortran extension
+       of kind suffixes on BOZ literal constants
+
+
+2005-02-27  Steven G. Kargl  <kargls@comcast.net>
+
+       * arith.c (gfc_check_real_range):  Remove multiple returns
+       (check_result): New function.
+       (gfc_arith_uminus,gfc_arith_plus,gfc_arith_times,
+       gfc_arith_divide,gfc_arith_power,gfc_arith_minus): Use it.
+
+
+2005-02-24  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
+
+       * decl.c, resolve.c, trans-array.c, trans.h: Fix comment typo(s).
+
+
+2005-02-24  Tobias Schl"uter  <tobias.schlueter@physik.uni-meunchen.de>
+
+       Unrevert previously reverted patch.  Adding this fix:
+       * module.c (find_true_name): Deal with NULL module.
+
+2005-02-24  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       Revert yesterday's patch:
+       2005-02-23  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+               * gfortran.h (gfc_component, gfc_actual_arglist, ...
+               ... argument.  Copy string instead of pointing to it.
+
+2005-02-23  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * gfortran.h (gfc_get_namespace): Add second argument to prototype.
+       * intrinsic.c (gfc_intrinsic_init_1): Pass second argument to
+       gfc_get_namespace.
+       * module.c (mio_namespace_ref, load_needed): Likewise.
+       * parse.c (parse_interface, parse_contained): Likewise.  Here the
+       correct second argument matters.
+       * symbol.c (gfc_get_namespace): Add parent_types argument, only copy
+       parent's implicit types if this is set.
+       (gfc_symbol_init_2): Pass second argument to gfc_get_namespace.
+       * trans-common.c (build_common_decl): Likewise.
+
+       * gfortran.h (symbol_attribute): New 'untyped' field, fix comment
+       formatting.
+       * symbol.c (gfc_set_default_type): Issue error only once, by setting
+       and checking 'untyped' attribute.
+
+       * gfortran.h (gfc_expr): Move 'operator', 'op1', 'op2', and 'uop'
+       fields into new struct 'op' inside the 'value' union.
+       * arith.c (eval_intrinsic): Adapt all users.
+       * dependency.c (gfc_check_dependency): Likewise.
+       * dump-parse-tree.c (gfc_show_expr): Likewise.
+       * expr.c (gfc_get_expr): Don't clear removed fields.
+       (free_expr0, gfc_copy_expr, gfc_type_convert_binary,
+       gfc_is_constant_expr, simplify_intrinsic_op, check_init_expr,
+       check_intrinsic_op): Adapt to new field names.
+       * interface.c (gfc_extend_expr): Likewise.  Also explicitly
+       nullify 'esym' and 'isym' fields of new function call.
+       * iresolve.c (gfc_resolve_dot_product, gfc_resolve_matmul):
+       Adapt to renamed structure fields.
+       * matchexp.c (build_node, match_level_1, match_expr): Likewise.
+       * module.c (mio_expr): Likewise.
+       * resolve.c (resolve_operator): Likewise.
+       (gfc_find_forall_index): Likewise.  Only look through operands
+       if dealing with EXPR_OP
+       * trans-array.c (gfc_walk_op_expr): Adapt to renamed fields.
+       * trans-expr.c (gfc_conv_unary_op, gfc_conv_power_op,
+       gfc_conv_concat_op, gfc_conv_expr_op): Likewise.
+
+       [ Reverted ]
+       * gfortran.h (gfc_component, gfc_actual_arglist, gfc_user_op): Make
+       'name' a 'const char *'.
+       (gfc_symbol): Likewise, also for 'module'.
+       (gfc_symtree): Make 'name' a 'const char *'.
+       (gfc_intrinsic_sym): Likewise, also for 'lib_name'.
+       (gfc_get_gsymbol, gfc_find_gsymbol): Add 'const' qualifier to
+       'char *' argument.
+       (gfc_intrinsic_symbol): Use 'gfc_get_string' instead of 'strcpy' to
+       initialize 'SYM->module'.
+       * check.c (gfc_check_minloc_maxloc, check_reduction): Check for NULL
+       pointer instead of empty string.
+       * dump-parse-tree.c (gfc_show_actual_arglist): Likewise.
+       * interface.c (gfc_compare_types): Adapt check to account for possible
+       NULL pointer.
+       (compare_actual_formal): Check for NULL pointer instead of empty
+       string.
+       * intrinsic.c (gfc_current_intrinsic, gfc_current_intrinsic_arg):
+       Add 'const' qualifier.
+       (conv_name): Return a heap allocated string.
+       (find_conv): Add 'const' qualifier to 'target'.
+       (add_sym): Use 'gfc_get_string' instead of 'strcpy'.
+       (make_generic): Check for NULL pointer instead of empty string.
+       (make_alias): Use 'gfc_get_string' instead of 'strcpy'.
+       (add_conv): No need to strcpy result from 'conv_name'.
+       (sort_actual): Check for NULL pointer instead of empty  string.
+       * intrinsic.h (gfc_current_intrinsic, gfc_current_intrinsic_arg):
+       Adapt prototype.
+       * module.c (compare_true_names): Compare pointers instead of strings
+       for 'module' member.
+       (find_true_name): Initialize string fields with gfc_get_string.
+       (mio_pool_string): New function.
+       (mio_internal_string): Adapt comment.
+       (mio_component_ref, mio_component, mio_actual_arg): Use
+       'mio_pool_string' instead of 'mio_internal_string'.
+       (mio_symbol_interface): Add 'const' qualifier to string arguments.
+       Add level of indirection. Use 'mio_pool_string' instead of
+       'mio_internal_string'.
+       (load_needed, read_module): Use 'gfc_get_string' instead of 'strcpy'.
+       (write_common, write_symbol): Use 'mio_pool_string' instead of
+       'mio_internal_string'.
+       (write_symbol0, write_symbol1): Likewise, also check for NULL pointer
+       instead of empty string.
+       (write_operator, write_generic): Pass correct type variable to
+       'mio_symbol_interface'.
+       (write_symtree): Use 'mio_pool_string' instead of
+       'mio_internal_string'.
+       * primary.c (match_keyword_arg): Adapt check to possible
+       case of NULL pointer.  Use 'gfc_get_string' instead of 'strcpy'.
+       * symbol.c (gfc_add_component, gfc_new_symtree, delete_symtree,
+       gfc_get_uop, gfc_new_symbol): Use 'gfc_get_string' instead of
+       'strcpy'.
+       (ambiguous_symbol): Check for NULL pointer instead of empty string.
+       (gfc_find_gsymbol, gfc_get_gsymbol): Add 'const' qualifier on string
+       arguments.
+       * trans-array.c (gfc_trans_auto_array_allocation): Check for NULL
+       pointer instead of empty string.
+       * trans-decl.c (gfc_sym_mangled_identifier,
+       gfc_sym_mangled_function_id, gfc_finish_var_decl, gfc_get_symbol_decl,
+       gfc_get_symbol_decl): Likewise.
+       * trans-io.c (gfc_new_nml_name_expr): Add 'const' qualifier to
+       argument.  Copy string instead of pointing to it.
+
+2005-02-23  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * intrinsic.h, st.c: Update copyright.
+
+2005-02-20  Steven G. Kargl  <kargls@comcast.net>
+
+       * symbol.c: Typos in comments.
+
+2005-02-20  Steven G. Kargl  <kargls@comcast.net>
+
+       * expr.c (gfc_type_convert_binary): Typo in comment.
+
+2005-02-19  Steven G. Kargl  <kargls@comcast.net>
+
+       * check.c (gfc_check_selected_int_kind): New function.
+       * intrinsic.h: Prototype it.
+       * intrinsic.c (add_function): Use it.
+       * simplify (gfc_simplify_ceiling,gfc_simplify_floor): Change
+         BT_REAL to BT_INTEGER and use gfc_default_integer_kind.
+
+2005-02-19  Steven G. Kargl  <kargls@comcast.net>
+
+       * check.c (gfc_check_int): improve checking of optional kind
+       * simplify.c (gfc_simplify_int): Change BT_REAL to BT_INTEGER
+
+2005-02-19  Steven G. Kargl  <kargls@comcast.net>
+
+       * check.c (gfc_check_achar): New function
+       * intrinsic.h: Prototype it.
+       * intrinsic.c (add_function): Use it.
+
+2005-02-13  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * trans-stmt.c (generate_loop_for_temp_to_lhs,
+       generate_loop_for_rhs_to_temp): Remove if whose condition is
+       always true.
+
+2005-02-12  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * symbol.c (gfc_use_ha_derived): Remove, fold functionality into ...
+       (gfc_use_derived): ... this function.
+
+2005-02-09  Richard Henderson  <rth@redhat.com>
+
+       * f95-lang.c (gfc_init_builtin_functions): Call
+       build_common_builtin_nodes; do not define any functions handled
+       by it.
+
+2005-02-08  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * expr.c (gfc_copy_expr): Don't copy 'op1' and 'op2' for
+       EXPR_SUBSTRING.
+       (gfc_is_constant_expr): Check 'ref' to determine if substring
+       reference is constant.
+       (gfc_simplify_expr): Simplify 'ref' instead of 'op1' and 'op2'.
+       (check_init_expr, check_restricted): Check 'ref' instead of 'op1'
+       and 'op2'.
+       * module.c (mio_expr): Read / write 'ref' instead of 'op1' and 'op2'.
+
+2005-02-07  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * gfortran.h (gfc_add_dimension, gfc_add_result, gfc_add_save,
+       gfc_add_dummy, gfc_add_generic, gfc_add_in_common, gfc_add_data,
+       gfc_add_in_namelist, gfc_add_sequence, gfc_add_function,
+       gfc_add_subroutine, gfc_add_access, gfc_add_flavor, gfc_add_entry,
+       gfc_add_procedure): Add argument.
+       * array.c (gfc_set_array_spec), decl.c (var_element, get_proc_name,
+       gfc_match_null, match_type_spec, match_attr_spec,
+       gfc_match_formal_arglist, match_result, gfc_match_function_decl):
+       Update callers to match.
+       (gfc_match_entry) : Likewise, fix comment typo.
+       (gfc_match_subroutine, attr_decl1, gfc_add_dimension,
+       access_attr_decl, do_parm, gfc_match_save, gfc_match_modproc,
+       gfc_match_derived_decl): Update callers.
+       * interface.c (gfc_match_interface): Likewise.
+       * match.c (gfc_match_label, gfc_add_flavor,
+       gfc_match_call, gfc_match_common, gfc_match_block_data,
+       gfc_match_namelist, gfc_match_module, gfc_match_st_function):
+       Likewise.
+       * parse.c (parse_derived, parse_interface, parse_contained),
+       primary.c (gfc_match_rvalue, gfc_match_variable): Likewise.
+       * resolve.c (resolve_formal_arglist, resolve_entries): Update callers.
+       * symbol.c (check_conflict, check_used): Add new 'name' argument,
+       use when printing error message.
+       (gfc_add_dimension, gfc_add_result, gfc_add_save, gfc_add_dummy,
+       gfc_add_generic, gfc_add_in_common, gfc_add_data,
+       gfc_add_in_namelist, gfc_add_sequence, gfc_add_function,
+       gfc_add_subroutine, gfc_add_access, gfc_add_flavor, gfc_add_entry,
+       gfc_add_procedure): Add new 'name' argument.  Pass along to
+       check_conflict and check_used.
+       (gfc_add_allocatable, gfc_add_external, gfc_add_intrinsic,
+       gfc_add_optional, gfc_add_pointer, gfc_add_target, gfc_add_elemental,
+       gfc_add_pure, gfc_add_recursive, gfc_add_intent,
+       gfc_add_explicit_interface, gfc_copy_attr): Pass NULL for new
+       argument in calls to any of the modified functions.
+
+2005-02-06  Joseph S. Myers  <joseph@codesourcery.com>
+
+       * gfortran.texi: Don't give last update date.
+
+2006-01-30  Richard Henderson  <rth@redhat.com>
+
+       * options.c (gfc_init_options): Zero flag_errno_math.
+
+2005-01-29  Paul Brook  <paul@codesourcery.com>
+
+       PR fortran/18565
+       * check.c (real_or_complex_check): New function.
+       (gfc_check_fn_c, gfc_check_fn_r, gfc_check_fn_rc): New functions.
+       * intrinsic.c (add_functions): Use new check functions.
+       * intrinsic.h (gfc_check_fn_c, gfc_check_fn_r, gfc_check_fn_rc):
+       Add prototypes.
+
+2005-01-29  Steven G. Kargl  <kargls@comcast.net>
+
+       PR fortran/19589
+       * expr.c (gfc_check_assign):  Check for conformance of logical operands
+
+2004-01-27  Steven Bosscher  <stevenb@suse.de>
+
+       * trans-decl.c (gfc_build_label_decl): Set DECL_ARTIFICAL and
+       TREE_USED for all labels.
+       (gfc_trans_entry_master_switch): Use it instead of building a
+       label by hand.
+       * trans-io.c (add_case): Likewise.
+       * trans-stmt.c (gfc_trans_integer_select): Likewise.
+
+2004-01-23  Paul Brook  <paul@codesourcery.com>
+       Steven G. Kargl  <kargls@comcast.net>
+
+       PR fortran/17941
+       * arith.c (gfc_convert_real): Remove sign handling.
+       * primary.c (match_digits): Allow whitespace after initial sign.
+       (match_real_const): Handle signs here.  Allow whitespace after
+       initial sign.  Remove dead code.
+       (match_const_complex_part): Remove.
+       (match_complex_part): Use match_{real,integer}_const.
+       (match_complex_constant): Cross-promote integer types.
+
+2005-01-23  James A. Morrison  <phython@gcc.gnu.org>
+
+       PR fortran/19294
+       * iresolve.c (gfc_resolve_transpose): Resolve to transpose_c4 or
+       transpose_c8 for complex types.
+
 2005-01-23  Kazu Hirata  <kazu@cs.umass.edu>
 
        * data.c, dependency.c, f95-lang.c, io.c, trans-array.c,
 
 2005-01-22  Steven G. Kargl  <kargls@comcast.net>
 
-       * intrinsic.c (make_alias):  Add standard argument. 
+       * intrinsic.c (make_alias):  Add standard argument.
        (add_functions): Update make_alias calls.
 
 2005-01-22  Paul Brook  <paul@codesourcery.com>
        gfc_check_getcwd_sub, gfc_check_exit, gfc_check_flush,
        gfc_check_umask, gfc_check_umask_sub, gfc_check_unlink,
        gfc_check_unlink_sub): Fix formatting issues.
-       
+
 2005-01-08  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
 
        * gfortran.h: Remove outdated comment.  Don't include stdio.h
 
        * gfortran.h (gfc_case): fix typo in comment.
 
-2004-12-27  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de> 
+2004-12-27  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
 
        * trans-intrinsic.c (gfc_conv_intrinsic_ishft): Change to
        logical shift.  Call fold.  Remove 0-bit shift shortcut.
 
 2004-10-30  Canqun Yang  <canqun@nudt.edu.cn>
 
-       * check.c (gfc_check_rand): Allow missing optional argument. 
+       * check.c (gfc_check_rand): Allow missing optional argument.
        (gfc_check_irand): Ditto.
        * intrinsic.c (add_functions): Set arg optional flag for {i,}rand.
 
 2004-10-08  Tobias Schlueter  <tobias.shclueter@physik.uni-muenchen.de>
 
        * arith.c: Fix formatting issues.
-       
+
 2004-10-07  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
 
        PR fortran/17676
        * trans-const.h (gfc_build_cstring_const): Add prototype.
        * trans-io.c (set_string, set_error_locus): Use new function.
        * trans-stmt.c (gfc_trans_goto): Use new function.
-       
+
        PR fortran/17708
        * parse.c (accept_statement): Don't treat END DO like END IF and
        END SELECT.
        PR fortran/17615
        * trans-expr.c (gfc_trans_arrayfunc_assign): Look at resolved
        function to determine return type.
-       
+
 2004-09-20  Jan Hubicka  <jh@suse.cz>
 
        * trans-decl.c (build_entry_thunks): Finalize the function; do not lower