+2004-08-24 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
+
+ * resolve.c (merge_argument_lists): Revert unintentionally
+ committed change.
+
+2004-08-24 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
+
+ * trans-decl.c (build_function_decl): Fix spelling in comment.
+ (build_entry_thunks): Remove code with no function.
+ (gfc_build_intrinsic_function_decls): Remove empty line.
+
+ * resolve.c (resolve_entries): Fix a bunch of comment typos.
+
+2004-08-24 Nathan Sidwell <nathan@codesourcery.com>
+
+ * fortran/f95-lang.c (gfc_init_decl_processing): Adjust
+ build_common_tree_nodes call.
+
+2004-08-24 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
+
+ * trans-types.c: Spelling and formatting fixes.
+
+2004-08-23 Richard Henderson <rth@redhat.com>
+
+ * trans-const.c (gfc_conv_mpz_to_tree): Use mpz_getlimbn instead
+ of going through an intermediate string. Fix 32/64 int/long bug.
+
+2004-08-23 Eric Christopher <echristo@redhat.com>
+
+ * trans-types.c (gfc_type_for_mode): Remove VECTOR_TYPE_SUPPORTED_P
+ usage. Use build_vector_type_for_mode for vector types.
+
+2004-08-22 Richard Henderson <rth@redhat.com>
+
+ PR 13465
+ * data.c (find_con_by_offset): Search ordered list; handle
+ elements with repeat counts.
+ (gfc_assign_data_value_range): New.
+ * gfortran.h (struct gfc_data_value): Make repeat unsigned.
+ (gfc_assign_data_value_range): Declare.
+ * match.c (top_val_list): Extract repeat count into a temporary.
+ * resolve.c (values): Make left unsigned.
+ (next_data_value): Don't decrement left.
+ (check_data_variable): Use gfc_assign_data_value_range.
+
+2004-08-22 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
+
+ * trans-const.c, trans-decl.c, trans-expr.c: Spelling fixes.
+
+2004-08-22 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
+
+ * check.c (gfc_check_reduction): Rename to ...
+ (check_reduction): ... this. Make static. Don't check type of
+ first argument.
+ (gfc_check_minval_maxval, gfc_check_prodcut_sum): New functions.
+ * intrinsic.c (add_functions): Change MAXVAL, MINVAL, PRODUCT and
+ SUM to use new check functions.
+ (check_specific): Change logic to call new functions.
+ * intrinsic.h (gfc_check_minval_maxval, gfc_check_product_sum):
+ Add prototypes.
+ (gfc_check_reduction): Remove prototype.
+
+2004-08-20 Paul Brook <paul@codesourcery.com>
+ Canqun Yang <canqun@nudt.edu.cn>
+
+ PR fortran/17077
+ * trans-array.c (gfc_conv_array_parameter): Pass correct pointer
+ for automatic arrays.
+ * trans-types.c (gfc_get_nodesc_array_type): Add comment.
+
+2004-08-19 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
+ (Port from g95)
+
+ PR fortran/17074
+ * match.c (match_simple_forall, match_simple_where): Forward-declare.
+ (gfc_match_if): Order statement list alphabetically, add WHERE and
+ FORALL, remove double PAUSE.
+ (gfc_match_simple_where, match_forall_header,
+ gfc_match_simple_forall): New functions.
+ (gfc_match_forall): Use match_forall_header.
+
+2004-08-19 Paul Brook <paul@codesourcery.com>
+
+ PR fortran/17091
+ * gfortran.h (gfc_access): Give ACCESS_UNKNOWN value 0.
+ * symbol.c (gfc_clear_attr): Use memset.
+
+2004-08-19 Paul Brook <paul@codesourcery.com>
+
+ PR fortran/14976
+ PR fortran/16228
+ * data.c (assign_substring_data_value): Remove.
+ (create_character_intializer): New function.
+ (gfc_assign_data_value): Track the typespec for the current
+ subobject. Use create_character_intializer.
+
+2004-08-19 Erik Schnetter <schnetter@aei.mpg.de>
+
+ PR fortran/16946
+ * check.c (gfc_check_reduction): New function.
+ (gfc_check_minval_maxval): Removed.
+ (gfc_check_product): Removed.
+ (gfc_check_sum): Removed.
+ * intrinsic.h: Add/remove declarations for these.
+ * gfortran.h: Add field f3red to union gfc_check_f.
+ * intrinsic.c (add_sym_3red): New function.
+ (add_functions): Register maxval, minval, product, and sum intrinsics
+ through add_sym_3red.
+ (check_specific): Handle f3red union field.
+ * iresolve.c: Whitespace change.
+
+2004-08-18 Paul Brook <paul@codesourcery.com>
+
+ * trans-types.c (gfc_sym_type): Use pointer types for optional args.
+
+2004-08-18 Victor Leikehman <lei@il.ibm.com>
+
+ PR fortran/13278
+ * trans-io.c (transfer_namelist_element): New. Recursively handle
+ derived-type variables. Pass string lengths.
+ (build_dt): Code moved to build_namelist, with some
+ changes and additions.
+ (gfc_build_io_library_fndecls): Declare the fifth
+ argument in st_set_nml_var_char -- string_length.
+
+2004-08-17 Paul Brook <paul@codesourcery.com>
+ Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
+
+ PR fortran/13082
+ * decl.c (get_proc_name): Update mystery comment.
+ (gfc_match_entry): Check for errors earlier. Add entry point to list.
+ * dump-parse-tree.c (gfc_show_code_node): Print EXEC_ENTRY nodes.
+ * gfortran.h (symbol_attribute): Add entry_master. Document entry.
+ (struct gfc_entry_list): Define.
+ (gfc_get_entry_list): Define.
+ (struct gfc_namespace): Add refs and entries.
+ (enum gfc_exec_op): Add EXEC_ENTRY.
+ (struct gfc_code): Add ext.entry.
+ * module.c (ab_attribute, attr_bits): Remove AB_ENTRY.
+ (mio_symbol_attribute): Don't save/reture addr->entry.
+ (mio_namespace_ref): Refcount namespaces.
+ * parse.c (accept_statement): Handle ST_ENTRY.
+ (gfc_fixup_sibling_symbols): Mark symbol as referenced.
+ (parse_contained): Fixup sibling references to entry points
+ after parsing the procedure body.
+ * resolve.c (resolve_contained_fntype): New function.
+ (merge_argument_lists, resolve_entries): New functions.
+ (resolve_contained_functions): Use them.
+ (resolve_code): Handle EXEC_ENTRY.
+ (gfc_resolve): Call resolve_entries.
+ * st.c (gfc_free_statement): Handle EXEC_ENTRY.
+ * symbol.c (gfc_get_namespace): Refcount namespaces.
+ (gfc_free_namespace): Ditto.
+ * trans-array.c (gfc_trans_dummy_array_bias): Treat all args as
+ optional when multiple entry points are present.
+ * trans-decl.c (gfc_get_symbol_decl): Remove incorrect check.
+ (gfc_get_extern_function_decl): Add assertion. Fix coment.
+ (create_function_arglist, trans_function_start, build_entry_thunks):
+ New functions.
+ (gfc_build_function_decl): Rename ...
+ (build_function_decl): ... to this.
+ (gfc_create_function_decl): New function.
+ (gfc_generate_contained_functions): Use it.
+ (gfc_trans_entry_master_switch): New function.
+ (gfc_generate_function_code): Use new functions.
+ * trans-stmt.c (gfc_trans_entry): New function.
+ * trans-stmt.h (gfc_trans_entry): Add prototype.
+ * trans-types.c (gfc_get_function_type): Add entry point argument.
+ * trans.c (gfc_trans_code): Handle EXEC_ENTRY.
+ (gfc_generate_module_code): Call gfc_create_function_decl.
+ * trans.h (gfc_build_function_decl): Remove.
+ (gfc_create_function_decl): Add prototype.
+
+2004-08-15 Andrew Pinski <apinski@apple.com>
+
+ PR fortran/17030
+ * f95-lang.c (gfc_init_builtin_functions): Initialize the builtins
+ for cabs{,f} and copysign{,f}.
+ * trans-decl.c (gfor_fndecl_math_cabsf): Delete.
+ (gfor_fndecl_math_cabs): Delete.
+ (gfor_fndecl_math_sign4): Delete.
+ (gfor_fndecl_math_sign8): Delete.
+ (gfc_build_intrinsic_function_decls): Remove the
+ initializing of cabs{,f} and copysign{,f} functions.
+ * trans-intrinsic.c (gfc_conv_intrinsic_abs): Use the builtins
+ instead of the functions definitions.
+ (gfc_conv_intrinsic_sign): Likewise.
+ * trans.h (gfor_fndecl_math_cabsf): Delete.
+ (gfor_fndecl_math_cabs): Delete.
+ (gfor_fndecl_math_sign4): Delete.
+ (gfor_fndecl_math_sign8): Delete.
+
2004-08-15 Nathan Sidwell <nathan@codesourcery.com>
* trans-array.c (gfc_trans_array_constructor_value): Use
- build_int_cst.
+ build_int_cst.
* trans-const.c (gfc_build_string_const,
gfc_init_constants, gfc_conv_mpz_to_tree,
- gfc_conv_constant_to_tree): Likewise.
+ gfc_conv_constant_to_tree): Likewise.
* trans-decl.c (gfc_get_symbol_decl): Likewise.
* trans-intrinsic.c (gfc_conv_intrinsic_ibits,
gfc_conv_intrinsic_len, prepare_arg_info): Likewise.
* trans-expr.c (gfc_conv_structure): Handle array pointers.
2004-07-10 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
-
+
PR fortran/16336
* decl.c (gfc_match_save): Use-associated common block
doesn't collide.
* trans-decl.c (generate_local_decl): Remove workaround obsoleted
by fix for PR 15481.
-
+
2004-07-10 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
* trans-common.c: Fix whitespace issues, make variable names
* trans-types.c: Update comment.
2004-07-09 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
-
+
PR fortran/14077
* moduele.c (mio_symbol): Don't I/O initial values unless
symbol is a parameter.
2004-07-09 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
-
+
PR fortran/13201
* resolve.c (resolve_symbol): Verify that the shape of a
parameter array is not only explicit, but also constant.
gfc_set_default_type to issue error if no implicit type
can be found.
* trans-decl.c (gfc_create_module_variable): Remove workaround.
-
+
2004-07-08 Paul Brook <paul@codesourcery.com>
* intrinsic.c (add_sym_4s): New function.
2004-06-29 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
- * decl.c, interface.c, symbol.c, trans-common.c: Add 2004 to
+ * decl.c, interface.c, symbol.c, trans-common.c: Add 2004 to
copyright years.
2004-06-29 Steven Bosscher <stevenb@suse.de>
(gfc_clear_attr): Don't set removed attributes.
(gfc_copy_attr): Don't copy removed attributes.
(traverse_symtree): Remove.
- (gfc_traverse_symtree): Don't traverse symbol
+ (gfc_traverse_symtree): Don't traverse symbol
tree of the passed namespace, but require a symtree to be passed
instead. Unify with traverse_symtree.
(gfc_traverse_ns): Call gfc_traverse_symtree according to new
create_common.
(named_common): take 'gfc_symtree' instead of 'gfc_symbol'.
(gfc_trans_common): Adapt to new data structures.
- * trans-decl.c (gfc_create_module_variables): Remove test for
+ * trans-decl.c (gfc_create_module_variables): Remove test for
removed attribute.
2004-06-29 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
* scanner.c (load_line): Don't truncate preprocessor lines.
Reformat error message.
(preprocessor_line): Issue warning in case of malformed
- preprocessor line.
+ preprocessor line.
2004-06-21 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
* array.c (gfc_insert_constructor): Avoid redundant call to
mpz_comp. Add 2004 to copyright years.
-
+
2004-06-21 Joseph S. Myers <jsm@polyomino.org.uk>
* trans.h (stmtblock_t): Change has_scope to unsigned int.
PR fortran/15211
* trans-intrinsic.c (gfc_conv_intrinsic_len): Deal with arrays
- of strings.
+ of strings.
2004-06-14 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
* intrinsic.h (gfc_check_minloc_maxloc): ... adapt prototype.
* intrinsic.c (add_sym_3ml): New function.
(add_functions): Change to add_sym_3ml for MINLOC, MAXLOC.
- (check_specific): Catch special case MINLOC, MAXLOC.
+ (check_specific): Catch special case MINLOC, MAXLOC.
2004-06-14 Paul Brook <paul@codesourcery.com>
* intrinsic.c (add_sym_2s): New function.
* intrinsic.c: Add etime, dtime, irand, rand, second, srand.
* intrinsic.h: Function prototypes.
- * iresolve.c (gfc_resolve_etime_sub, gfc_resolve_second_sub
+ * iresolve.c (gfc_resolve_etime_sub, gfc_resolve_second_sub
gfc_resolve_srand): New functions.
2004-06-12 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
PR fortran/14957
* decl.c (gfc_match_end): Require END {SUBROUTINE|FUNCTION} for
contained procedure.
-
+
2004-06-12 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
PR fortran/12841
* interface.c (compare_parameter, compare_actual_formal): Don't
check types and array shapes for NULL()
* trans-expr.c (conv_function_call): No double indirection for
- NULL()
+ NULL()
2004-06-09 Toon Moene <toon@moene.indiv.nluug.nl>
2004-06-05 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
- * intrinsic.c (sort_actual): Keep track of type of missing
+ * intrinsic.c (sort_actual): Keep track of type of missing
arguments. (Missing from previous commit.)
2004-06-03 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
* symbol.c (gfc_add_common): Disable checks to work around other more
fundamental inadequacies.
-2004-05-22 Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
+2004-05-22 Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
* trans-decl.c (gfc_get_extern_function_decl): Set DECL_IS_PURE
only for functions.
2004-05-17 Steve Kargl <kargls@comcast.net>
* arith.c (gfc_real2complex): Range checking wrong part of complex
- number.
-
+ number.
+
2004-05-16 Paul Brook <paul@codesourcery.com>
* options.c (gfc_handle_module_path_options): Fix buffer overrun.
not initialized in a disallowed fashion.
* match.c (gfc_match_common): Likewise.
(var_element): Verify that variable is not in the blank COMMON,
- if it is in a common.
+ if it is in a common.
2004-05-15 Joseph S. Myers <jsm@polyomino.org.uk>
2004-05-15 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
- PR fortran/13702
+ PR fortran/13702
(Port from g95)
* gfortran.h (gfc_linebuf): New typedef.
(linebuf): Remove.
* decl.c (variable_decl): Always apply default initializer.
-2004-05-08 Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
+2004-05-08 Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
PR fortran/15206
* trans-intrinsic.c (gfc_conv_intrinsic_rrspacing): Fixed to
* intrinsic.h: ... declare it here.
* intrinsic.c (add_functions): ... add it as resolving function
for NEAREST.
-
+
2004-05-14 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
PR fortran/14066
PR fortran/14568
* trans-decl.c (generate_local_decl): Don't warn for unused
- variables which are in common blocks.
+ variables which are in common blocks.
2004-05-13 Diego Novillo <dnovillo@redhat.com>
Remove "set DEVELOPMENT".
(Compiling GFORTRAN): Remove.
-2004-05-09 Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
+2004-05-09 Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
* array.c (match_subscript, match_array_ref): Add comments
explaining argument 'init'.
* primary.c (match_digits, match_integer_constant): Add comment
explaining signflag.
-2004-05-01 Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
+2004-05-01 Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
PR fortran/13940
* primary.c: Include system.h and flags.h, needed for pedantic.
(match_boz_constant): Allow "x" for hexadecimal constants, warn if
pedantic is set.
-2004-05-01 Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
+2004-05-01 Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
PR fortran/13940
* match.c (match_data_constant): Handle case where
gfc_find_symbol sets sym to NULL
-2004-04-28 Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
+2004-04-28 Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
* Make-lang.in (f95-lang.o, trans-intrinsic.o): Add missing
dependency on mathbuiltins.def
* gfortranspec.c: Do not include multilib.h.
-2004-04-24 Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
+2004-04-24 Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
* trans-intrinsic.c: Fix comment, this is not trans-expr.c. Add
2004 to copyright years.
2004-04-11 Feng Wang <fengwang@nudt.edu.cn>
- PR 14394
+ PR 14394
* trans-const.c (gfc_conv_mpf_to_tree): Loosen the maximum digits of
the real value when converting mpf to string.
* Make-lang.in (GFORTRAN_TEXI): Set it.
(fortran/dfortran.dvi): Use it. Add fortran to include paths.
- (fortran/gfortran.info): Ditto.
+ (fortran/gfortran.info): Ditto.
* gfortran.texi: Major update.
* invoke.texi: New file.
* gfortran.texi: Fix typos.
2004-02-07 Bud Davis <bdavis9659@comcast.net>
-
+
PR gfortran/13909
* intrinsic.c (add_conversions) Use logical conversion instead
of real.
2003-12-31 Huang Chun <chunhuang73@hotmail.com>
PR fortran/13434
- * trans-intrinsic.c (gfc_conv_intrinsic_minmaxval): Fixed bug in
+ * trans-intrinsic.c (gfc_conv_intrinsic_minmaxval): Fixed bug in
minval/maxval.
2003-12-22 Toon Moene <toon@moene.indiv.nluug.nl>
* primary.c (match_substring): Fix substring bug for start point
or end point is NULL.
* trans-expr.c (gfc_conv_substring): Ditto
- * trans-types.c (gfc_sym_type): Get correct type of scalar
+ * trans-types.c (gfc_sym_type): Get correct type of scalar
character variables.
- * trans-intrinsic.c (gfc_conv_intrinsic_len): Handle character in
+ * trans-intrinsic.c (gfc_conv_intrinsic_len): Handle character in
derived type.
2003-12-10 Richard Henderson <rth@redhat.com>
annotate_all_with_locus.
2003-11-11 Canqun Yang <canqun@nudt.edu.cn>
-
+
* options.c (gfc_init_options): Set flag_max_stack_var_size as 32768.
* trans-decl.c (gfc_finish_var_decl): Modified.
* data.c: New file.
2003-09-20 Kejia Zhao <kejia_zh@yahoo.com.cn>
-
+
* trans.h: Add declarations for gfor_fndecl_si_kind and
gfor_fndecl_sr_kind.
* trans-decl.c (g95_build_intrinsic_function_decls): Build them.
2003-08-24 XiaoQiang Zhang (zhangapache@yahoo.com>
- * trans-const.c (gfc_conv_mpz_to_tree): Fix bug, parameter for
+ * trans-const.c (gfc_conv_mpz_to_tree): Fix bug, parameter for
build_int_2 changed from (high, low) to (low, high).
* trans-io.c (ioparm_namelist_name, ioparm_namelist_name_len,
ioparm_namelist_read_mode, iocall_set_nml_val_int,
2003-09-07 Kejia Zhao <kejia_zh@yahoo.com.cn>
- * trans-intrinsic.c (gfc_conv_intrinsic_aint): Fix two bugs. One is
- about case_switch's break. The other is about building the condition
- statement tree, which judges the argument in the range of the
+ * trans-intrinsic.c (gfc_conv_intrinsic_aint): Fix two bugs. One is
+ about case_switch's break. The other is about building the condition
+ statement tree, which judges the argument in the range of the
corresponding integer type.
* trans-intrinsic.c (gfc_conv_intrinsic_mod): MOD and MODULO can work
for the large values.
-
+
2003-09-05 Paul Brook <paul@nowt.org>
* f95-lang.c (expand_function_body): Gimplify the function.
type components.
2003-08-10 Chun Huang <compiler@sohu.com>
-
+
* resolve.c (resolve_formal_arglist): Resolve STATEMENT function.
(resolve_symbol): Ditto.
* trans-expr.c (gfc_conv_statement_function): New function.
Rename g95_* to gfc_*.
2003-07-25 Paul Brook <paul@nowt.org>
-
+
* gfortran.h: Rename from g95.h.
* trans-types.c (boolean_type_node, booelan_true_node,
boolean_false_node): Remove.
(g95_conv_intrinsic_anyall): New function.
* iresolve.c (g95_resolve_any, g95_resolve_all): Include rank in
mangled name
-