X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=blobdiff_plain;f=gcc%2Ffortran%2FChangeLog;h=1c95c96f1a27e0bccae758ec283db000b1cad8a0;hp=460263611f3ce0c81d66c99d1931c41b5c58edff;hb=f477687a006ac5895a00892059c0975553f0a8b3;hpb=7c446c951a941facd5f225bba9916ff669420c34 diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 460263611f3..1c95c96f1a2 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,10 +1,202 @@ +2004-08-24 Tobias Schlueter + + * resolve.c (merge_argument_lists): Revert unintentionally + committed change. + +2004-08-24 Tobias Schlueter + + * 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 + + * fortran/f95-lang.c (gfc_init_decl_processing): Adjust + build_common_tree_nodes call. + +2004-08-24 Tobias Schlueter + + * trans-types.c: Spelling and formatting fixes. + +2004-08-23 Richard Henderson + + * 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 + + * 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 + + 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 + + * trans-const.c, trans-decl.c, trans-expr.c: Spelling fixes. + +2004-08-22 Tobias Schlueter + + * 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 + Canqun Yang + + 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 + (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 + + PR fortran/17091 + * gfortran.h (gfc_access): Give ACCESS_UNKNOWN value 0. + * symbol.c (gfc_clear_attr): Use memset. + +2004-08-19 Paul Brook + + 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 + + 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 + + * trans-types.c (gfc_sym_type): Use pointer types for optional args. + +2004-08-18 Victor Leikehman + + 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 + Tobias Schlueter + + 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 + + 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 * 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. @@ -307,7 +499,7 @@ * trans-expr.c (gfc_conv_structure): Handle array pointers. 2004-07-10 Tobias Schlueter - + PR fortran/16336 * decl.c (gfc_match_save): Use-associated common block doesn't collide. @@ -342,7 +534,7 @@ * trans-decl.c (generate_local_decl): Remove workaround obsoleted by fix for PR 15481. - + 2004-07-10 Tobias Schlueter * trans-common.c: Fix whitespace issues, make variable names @@ -361,13 +553,13 @@ * trans-types.c: Update comment. 2004-07-09 Tobias Schlueter - + PR fortran/14077 * moduele.c (mio_symbol): Don't I/O initial values unless symbol is a parameter. 2004-07-09 Tobias Schlueter - + PR fortran/13201 * resolve.c (resolve_symbol): Verify that the shape of a parameter array is not only explicit, but also constant. @@ -388,7 +580,7 @@ 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 * intrinsic.c (add_sym_4s): New function. @@ -473,7 +665,7 @@ 2004-06-29 Tobias Schlueter - * 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 @@ -566,7 +758,7 @@ (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 @@ -583,7 +775,7 @@ 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 @@ -669,7 +861,7 @@ * 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 @@ -681,7 +873,7 @@ * array.c (gfc_insert_constructor): Avoid redundant call to mpz_comp. Add 2004 to copyright years. - + 2004-06-21 Joseph S. Myers * trans.h (stmtblock_t): Change has_scope to unsigned int. @@ -703,7 +895,7 @@ PR fortran/15211 * trans-intrinsic.c (gfc_conv_intrinsic_len): Deal with arrays - of strings. + of strings. 2004-06-14 Tobias Schlueter @@ -721,7 +913,7 @@ * 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 @@ -742,7 +934,7 @@ * 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 @@ -750,14 +942,14 @@ PR fortran/14957 * decl.c (gfc_match_end): Require END {SUBROUTINE|FUNCTION} for contained procedure. - + 2004-06-12 Tobias Schlueter 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 @@ -789,7 +981,7 @@ 2004-06-05 Tobias Schlueter - * 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 @@ -974,7 +1166,7 @@ * symbol.c (gfc_add_common): Disable checks to work around other more fundamental inadequacies. -2004-05-22 Tobias Schlüter +2004-05-22 Tobias Schlüter * trans-decl.c (gfc_get_extern_function_decl): Set DECL_IS_PURE only for functions. @@ -1065,8 +1257,8 @@ 2004-05-17 Steve Kargl * arith.c (gfc_real2complex): Range checking wrong part of complex - number. - + number. + 2004-05-16 Paul Brook * options.c (gfc_handle_module_path_options): Fix buffer overrun. @@ -1086,7 +1278,7 @@ 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 @@ -1120,7 +1312,7 @@ 2004-05-15 Tobias Schlueter - PR fortran/13702 + PR fortran/13702 (Port from g95) * gfortran.h (gfc_linebuf): New typedef. (linebuf): Remove. @@ -1182,7 +1374,7 @@ * decl.c (variable_decl): Always apply default initializer. -2004-05-08 Tobias Schlüter +2004-05-08 Tobias Schlüter PR fortran/15206 * trans-intrinsic.c (gfc_conv_intrinsic_rrspacing): Fixed to @@ -1204,7 +1396,7 @@ * intrinsic.h: ... declare it here. * intrinsic.c (add_functions): ... add it as resolving function for NEAREST. - + 2004-05-14 Tobias Schlueter PR fortran/14066 @@ -1237,7 +1429,7 @@ 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 @@ -1256,7 +1448,7 @@ Remove "set DEVELOPMENT". (Compiling GFORTRAN): Remove. -2004-05-09 Tobias Schlüter +2004-05-09 Tobias Schlüter * array.c (match_subscript, match_array_ref): Add comments explaining argument 'init'. @@ -1266,20 +1458,20 @@ * primary.c (match_digits, match_integer_constant): Add comment explaining signflag. -2004-05-01 Tobias Schlüter +2004-05-01 Tobias Schlüter 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 +2004-05-01 Tobias Schlüter PR fortran/13940 * match.c (match_data_constant): Handle case where gfc_find_symbol sets sym to NULL -2004-04-28 Tobias Schlüter +2004-04-28 Tobias Schlüter * Make-lang.in (f95-lang.o, trans-intrinsic.o): Add missing dependency on mathbuiltins.def @@ -1293,7 +1485,7 @@ * gfortranspec.c: Do not include multilib.h. -2004-04-24 Tobias Schlüter +2004-04-24 Tobias Schlüter * trans-intrinsic.c: Fix comment, this is not trans-expr.c. Add 2004 to copyright years. @@ -1334,7 +1526,7 @@ 2004-04-11 Feng Wang - 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. @@ -1357,7 +1549,7 @@ * 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. @@ -1522,7 +1714,7 @@ * gfortran.texi: Fix typos. 2004-02-07 Bud Davis - + PR gfortran/13909 * intrinsic.c (add_conversions) Use logical conversion instead of real. @@ -1682,7 +1874,7 @@ 2003-12-31 Huang Chun 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 @@ -1701,9 +1893,9 @@ * 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 @@ -1889,7 +2081,7 @@ annotate_all_with_locus. 2003-11-11 Canqun Yang - + * options.c (gfc_init_options): Set flag_max_stack_var_size as 32768. * trans-decl.c (gfc_finish_var_decl): Modified. @@ -2076,7 +2268,7 @@ * data.c: New file. 2003-09-20 Kejia Zhao - + * trans.h: Add declarations for gfor_fndecl_si_kind and gfor_fndecl_sr_kind. * trans-decl.c (g95_build_intrinsic_function_decls): Build them. @@ -2148,7 +2340,7 @@ 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, @@ -2166,13 +2358,13 @@ 2003-09-07 Kejia Zhao - * 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 * f95-lang.c (expand_function_body): Gimplify the function. @@ -2276,7 +2468,7 @@ type components. 2003-08-10 Chun Huang - + * resolve.c (resolve_formal_arglist): Resolve STATEMENT function. (resolve_symbol): Ditto. * trans-expr.c (gfc_conv_statement_function): New function. @@ -2363,7 +2555,7 @@ Rename g95_* to gfc_*. 2003-07-25 Paul Brook - + * gfortran.h: Rename from g95.h. * trans-types.c (boolean_type_node, booelan_true_node, boolean_false_node): Remove. @@ -4323,4 +4515,3 @@ (g95_conv_intrinsic_anyall): New function. * iresolve.c (g95_resolve_any, g95_resolve_all): Include rank in mangled name -