| 2005-12-30 Erik Edelmann <eedelman@gcc.gnu.org> |
| |
| PR fortran/22607 |
| * trans-decl.c(gfc_get_extern_function_decl): Don't set |
| DECL_IS_PURE (fndecl) = 1 for return-by-reference |
| functions. |
| |
| fortran/PR 25396 |
| * interface.c (gfc_extend_expr): Initialize |
| e->value.function.name to NULL. |
| |
| 2005-12-29 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/25532 |
| * trans-types.c (copy_dt_decls_ifequal): Copy declarations for |
| components of derived type components by recursing into |
| gfc_get_derived_type. |
| |
| 2005-12-28 Andrew Pinski <pinskia@physics.uc.edu> |
| |
| PR fortran/25587 |
| * trans-io.c (gfc_build_st_parameter): Correct off by one error. |
| |
| 2005-12-28 Rafael Ávila de Espíndola <rafael.espindola@gmail.com> |
| |
| * Make-lang.in: Remove distdir from comment. |
| |
| 2005-12-24 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/25029 |
| PR fortran/21256 |
| * resolve.c (check_assumed_size_reference, resolve_assumed_size_actual): |
| Remove because of regressions caused by patch. |
| (resolve_function, resolve_call, resolve_variable): Remove assumed size |
| checks because of regressionscaused by patch. |
| |
| 2005-12-23 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/25029 |
| PR fortran/21256 |
| *resolve.c(resolve_function): Remove assumed size checking for SIZE |
| and UBOUND and rely on their built-in checking. |
| |
| 2005-12-22 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| PR fortran/18990 |
| * gfortran.h (gfc_charlen): Add resolved field. |
| * expr.c (gfc_specification_expr): Accept NULL argument. |
| * resolve.c (gfc_resolve_charlen, gfc_resolve_derived): New. |
| (gfc_resolve_symbol): Resolve derived type definitions. Use |
| resolve_charlen to resolve character lengths. |
| |
| 2005-12-22 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/20889 |
| *resolve.c(resolve_structure_cons): Do not attempt to convert |
| the type of mismatched pointer type components, except when |
| the constructor component is BT_UNKNOWN; emit error instead. |
| |
| PR fortran/25029 |
| PR fortran/21256 |
| *resolve.c(check_assumed_size_reference): New function to check for upper |
| bound in assumed size array references. |
| (resolve_assumed_size_actual): New function to do a very restricted scan |
| of actual argument expressions of those procedures for which incomplete |
| assumed size array references are not allowed. |
| (resolve_function, resolve_call): Switch off assumed size checking of |
| actual arguments, except for elemental procedures and array valued |
| intrinsics; excepting LBOUND. |
| (resolve_variable): Call check_assumed_size_reference. |
| |
| PR fortran/19362 |
| PR fortran/20244 |
| PR fortran/20864 |
| PR fortran/25391 |
| *interface.c(gfc_compare_types): Broken into two. |
| (gfc_compare_derived_types): Second half of gfc_compare_types with |
| corrections for a missing check that module name is non-NULL and |
| a check for private components. |
| *symbol.c(gfc_free_dt_list): New function. |
| (gfc_free_namespace): Call gfc_free_dt_list. |
| *resolve.c(resolve_symbol): Build the list of derived types in the |
| symbols namespace. |
| *gfortran.h: Define the structure type gfc_dt_list. Add a new field, |
| derived_types to gfc_namespace. Provide a prototye for the new |
| function gfc_compare_derived_types. |
| *trans_types.c(gfc_get_derived_type): Test for the derived type being |
| available in the host namespace. In this case, the host backend |
| declaration is used for the structure and its components. If an |
| unbuilt, equal structure that is not use associated is found in the |
| host namespace, build it there and then. On exit,traverse the |
| namespace of the derived type to see if there are equal but unbuilt. |
| If so, copy the structure and its component declarations. |
| (copy_dt_decls_ifequal): New functions to copy declarations to other |
| equal structure types. |
| |
| PR fortran/20862 |
| * io.c (gfc_match_format): Make the appearance of a format statement |
| in a module specification block an error. |
| |
| PR fortran/23152 |
| * match.c (gfc_match_namelist): Set assumed shape arrays in |
| namelists as std=GFC_STD_GNU and assumed size arrays as an |
| unconditional error. |
| |
| PR fortran/25069 |
| * match.c (gfc_match_namelist): Set the respecification of a USE |
| associated namelist group as std=GFC_STD_GNU. Permit the concatenation |
| on no error. |
| |
| PR fortran/25053 |
| PR fortran/25063 |
| PR fortran/25064 |
| PR fortran/25066 |
| PR fortran/25067 |
| PR fortran/25068 |
| PR fortran/25307 |
| * io.c (resolve_tag): Change std on IOSTAT != default integer to |
| GFC_STD_GNU and change message accordingly. Add same error for |
| SIZE. |
| (match_dt_element, gfortran.h): Add field err_where to gfc_dt and |
| set it when tags are being matched. |
| (gfc_resolve_dt): Remove tests that can be done before resolution |
| and add some of the new ones here. |
| (check_io_constraints): New function that checks for most of the |
| data transfer constraints. Some of these were previously done in |
| match_io, from where this function is called, and some were done |
| in gfc_resolve_dt. |
| (match_io): Remove most of the tests of constraints and add the |
| call to check_io_constraints. |
| |
| 2005-12-21 Erik Edelmann <eedelman@gcc.gnu.org> |
| |
| PR fortran/25423 |
| * parse.c (parse_where_block): break instead of "fall |
| through" after parsing nested WHERE construct. |
| |
| 2005-12-18 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/25018 |
| *expr.c(check_inquiry): Return FAILURE if there is no symtree to |
| provide a name. Error/warning for assumed character length argument |
| to LEN for an initialization expression, using GFC_GNU_STD. Add an |
| argument to flag that the expression is not restricted. |
| (check_init_expr): Improve the message for a failing variable. |
| (gfc_match_init_expr): Call check_enquiry again to make sure that |
| unsimplified expressions are not causing unnecessary errors. |
| |
| 2005-12-17 Steven G. Kargl <kargls@comcast.net> |
| Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| PR fortran/25458 |
| * simplify.c (gfc_simplify_ibset, gfc_simplify_not): Add call to |
| twos_complement. |
| |
| 2005-12-17 Steven G. Kargl <kargls@comcast.net> |
| |
| * decl.c (gfc_match_old_kind_spec,match_type_spec): Use gfc_std_notify |
| to report nonstandard intrinsic type declarations. |
| |
| 2005-12-16 Jerry DeLisle <jvdelisle@gcc.gnu.org> |
| |
| PR fortran/24268 |
| * io.c (format_lex): Allow whitespace within text of format specifier. |
| |
| 2005-12-16 Steven G. Kargl <kargls@comcast.net> |
| |
| PR fortran/25106 |
| PR fortran/25055 |
| * match.c (gfc_match_small_literal_int): Add cnt argument; |
| (gfc_match_st_label,gfc_match_stopcode): Account for cnt argument. |
| * match.h (gfc_match_small_literal_int): Update prototype. |
| * decl.c (match_char_length,gfc_match_old_kind_spec): Account for cnt. |
| * parse.c (next_free): Ditto. |
| * primary.c (match_kind_param): Ditto. |
| |
| 2005-12-16 Richard Guenther <rguenther@suse.de> |
| |
| * trans.h (tree): Remove declaration of gfc_build_function_call. |
| * trans.c (gfc_build_function_call): Remove. |
| (gfc_build_array_ref): Use build_function_call_expr. |
| (gfc_trans_runtime_check): Likewise. |
| * trans-array.c (gfc_trans_allocate_array_storage): Likewise. |
| (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. |
| * trans-expr.c (gfc_conv_power_op): Likewise. |
| (gfc_conv_string_tmp): Likewise. |
| (gfc_conv_concat_op): Likewise. |
| (gfc_conv_expr_op): Likewise. |
| (gfc_trans_string_copy): Likewise. |
| * trans-decl.c (build_entry_thunks): Likewise. |
| (gfc_generate_function_code): Likewise. |
| (gfc_generate_constructors): Likewise. |
| * trans-io.c (gfc_trans_open): Likewise. |
| (gfc_trans_close): Likewise. |
| (build_filepos): Likewise. |
| (gfc_trans_inquire): Likewise. |
| (transfer_namelist_element): Likewise. |
| (build_dt): Likewise. |
| (gfc_trans_dt_end): Likewise. |
| (transfer_expr): Likewise. |
| (transfer_array_desc): Likewise. |
| * trans-stmt.c (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): Likewise. |
| (gfc_trans_allocate): Likewise. |
| (gfc_trans_deallocate): Likewise. |
| * trans-intrinsic.c (gfc_conv_intrinsic_aint): Likewise. |
| (gfc_conv_intrinsic_lib_function): Likewise. |
| (gfc_conv_intrinsic_exponent): Likewise. |
| (gfc_conv_intrinsic_abs): Likewise. |
| (gfc_conv_intrinsic_sign): Likewise. |
| (gfc_conv_intrinsic_ctime): Likewise. |
| (gfc_conv_intrinsic_fdate): Likewise. |
| (gfc_conv_intrinsic_ttynam): Likewise. |
| (gfc_conv_intrinsic_ishftc): Likewise. |
| (gfc_conv_intrinsic_len_trim): Likewise. |
| (gfc_conv_intrinsic_index): Likewise. |
| (gfc_conv_intrinsic_size): Likewise. |
| (gfc_conv_intrinsic_strcmp): Likewise. |
| (gfc_conv_intrinsic_adjust): Likewise. |
| (gfc_conv_associated): Likewise. |
| (gfc_conv_intrinsic_scan): Likewise. |
| (gfc_conv_intrinsic_verify): Likewise. |
| (call_builtin_clz): Likewise. |
| (gfc_conv_intrinsic_si_kind): Likewise. |
| (gfc_conv_intrinsic_sr_kind): Likewise. |
| (gfc_conv_intrinsic_trim): Likewise. |
| (gfc_conv_intrinsic_repeat): Likewise. |
| (gfc_conv_intrinsic_iargc): Likewise. |
| |
| 2005-12-16 Richard Guenther <rguenther@suse.de> |
| |
| * trans.h (gfc_build_indirect_ref): Remove declaration. |
| * trans.c (gfc_build_indirect_ref): Remove. |
| * trans-array.c (gfc_trans_array_ctor_element): Use |
| build_fold_indirect_ref instead of gfc_build_indirect_ref. |
| (gfc_trans_array_constructor_value): Likewise. |
| (gfc_conv_array_index_offset): Likewise. |
| (gfc_conv_scalarized_array_ref): Likewise. |
| (gfc_conv_array_ref): Likewise. |
| (gfc_trans_dummy_array_bias): Likewise. |
| (gfc_conv_expr_descriptor): Likewise. |
| (gfc_conv_array_parameter): Likewise. |
| * trans-decl.c (gfc_finish_cray_pointee): Likewise. |
| (gfc_get_symbol_decl): Likewise. |
| * trans-expr.c (gfc_conv_substring): Likewise. |
| (gfc_conv_component_ref): Likewise. |
| (gfc_conv_variable): Likewise. |
| (gfc_add_interface_mapping): Likewise. |
| (gfc_conv_function_call): Likewise. |
| * trans-intrinsic.c (gfc_conv_intrinsic_ichar): Likewise. |
| (gfc_conv_intrinsic_transfer): Likewise. |
| * trans-io.c (nml_get_addr_expr): Likewise. |
| (transfer_namelist_element): Likewise. |
| (transfer_expr): Likewise. |
| * trans-stmt.c (gfc_trans_nested_forall_loop): Likewise. |
| (allocate_temp_for_forall_nest_1): Likewise. |
| (gfc_trans_forall_1): Likewise. |
| |
| 2005-12-16 Richard Guenther <rguenther@suse.de> |
| |
| * trans-array.c (gfc_conv_descriptor_data_addr): Use |
| build_fold_addr_expr where appropriate. |
| (gfc_trans_allocate_array_storage): Likewise. |
| (gfc_trans_array_constructor_value): Likewise. |
| (gfc_conv_array_data): Likewise. |
| (gfc_conv_expr_descriptor): Likewise. |
| (gfc_conv_array_parameter): Likewise. |
| * trans-expr.c (gfc_conv_variable): Likewise. |
| (gfc_conv_function_val): Likewise. |
| (gfc_conv_function_call): Likewise. |
| (gfc_conv_expr_reference): Likewise. |
| * trans-intrinsic.c (gfc_conv_intrinsic_ctime): Likewise. |
| (gfc_conv_intrinsic_fdate): Likewise. |
| (gfc_conv_intrinsic_ttynam): Likewise. |
| (gfc_conv_intrinsic_si_kind): Likewise. |
| (gfc_conv_intrinsic_trim): Likewise. |
| * trans-io.c (set_parameter_ref): Likewise. |
| (gfc_convert_array_to_string): Likewise. |
| (gfc_trans_open): Likewise. |
| (gfc_trans_close): Likewise. |
| (build_filepos): Likewise. |
| (gfc_trans_inquire): Likewise. |
| (nml_get_addr_expr): Likewise. |
| (transfer_namelist_element): Likewise. |
| (build_dt): Likewise. |
| (gfc_trans_dt_end): Likewise. |
| (transfer_array_component): Likewise. |
| (transfer_expr): Likewise. |
| (transfer_array_desc): Likewise. |
| (gfc_trans_transfer): Likewise. |
| * trans-stmt.c (gfc_trans_allocate): Likewise. |
| (gfc_trans_deallocate): Likewise. |
| |
| 2005-12-16 Kazu Hirata <kazu@codesourcery.com> |
| |
| * dependency.c, resolve.c, trans-array.c: Fix comment typos. |
| * gfortran.texi: Fix typos. |
| |
| 2005-12-14 Erik Edelmann <eedelman@gcc.gnu.org> |
| |
| PR fortran/18197 |
| * resolve.c (resolve_formal_arglist): Remove code to set |
| the type of a function symbol from it's result symbol. |
| |
| 2005-12-13 Richard Guenther <rguenther@suse.de> |
| |
| * trans-expr.c (gfc_conv_substring): Use fold_build2 and |
| build_int_cst. |
| |
| 2005-12-13 Richard Sandiford <richard@codesourcery.com> |
| |
| * Make-lang.in (fortran/trans-resolve.o): Depend on |
| fortran/dependency.h. |
| * gfortran.h (gfc_expr): Add an "inline_noncopying_intrinsic" flag. |
| * dependency.h (gfc_get_noncopying_intrinsic_argument): Declare. |
| (gfc_check_fncall_dependency): Change prototype. |
| * dependency.c (gfc_get_noncopying_intrinsic_argument): New function. |
| (gfc_check_argument_var_dependency): New function, split from |
| gfc_check_fncall_dependency. |
| (gfc_check_argument_dependency): New function. |
| (gfc_check_fncall_dependency): Replace the expression parameter with |
| separate symbol and argument list parameters. Generalize the function |
| to handle dependencies for any type of expression, not just variables. |
| Accept a further argument giving the intent of the expression being |
| tested. Ignore intent(in) arguments if that expression is also |
| intent(in). |
| * resolve.c: Include dependency.h. |
| (find_noncopying_intrinsics): New function. |
| (resolve_function, resolve_call): Call it on success. |
| * trans-array.h (gfc_conv_array_transpose): Declare. |
| (gfc_check_fncall_dependency): Remove prototype. |
| * trans-array.c (gfc_conv_array_transpose): New function. |
| * trans-intrinsic.c (gfc_conv_intrinsic_function): Don't use the |
| libcall handling if the expression is to be evaluated inline. |
| Add a case for handling inline transpose()s. |
| * trans-expr.c (gfc_trans_arrayfunc_assign): Adjust for the new |
| interface provided by gfc_check_fncall_dependency. |
| |
| 2005-12-12 Steven G. Kargl <kargls@comcast.net> |
| |
| PR fortran/25078 |
| * match.c (gfc_match_equivalence): Count number of objects. |
| |
| 2005-12-11 Aldy Hernandez <aldyh@redhat.com> |
| |
| * lang.opt: Add RejectNegative to ffixed-form and ffree-form. |
| |
| 2005-12-10 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| PR fortran/25068 |
| * io.c (resolve_tag): Add correct diagnostic for F2003 feature. |
| |
| 2005-12-10 Thomas Koenig <Thomas.Koenig@online.de> |
| |
| PR fortran/23815 |
| * io.c (top level): Add convert to io_tag. |
| (resolve_tag): convert is GFC_STD_GNU. |
| (match_open_element): Add convert. |
| (gfc_free_open): Likewise. |
| (gfc_resolve_open): Likewise. |
| (gfc_free_inquire): Likewise. |
| (match_inquire_element): Likewise. |
| * dump-parse-tree.c (gfc_show_code_node): Add |
| convet for open and inquire. |
| gfortran.h: Add convert to gfc_open and gfc_inquire. |
| * trans-io.c (gfc_trans_open): Add convert. |
| (gfc_trans_inquire): Likewise. |
| * ioparm.def: Add convert to open and inquire. |
| * gfortran.texi: Document CONVERT. |
| |
| 2005-12-09 Roger Sayle <roger@eyesopen.com> |
| |
| PR fortran/22527 |
| * f95-lang.c (gfc_truthvalue_conversion): Use a zero of the correct |
| integer type when building an inequality. |
| |
| 2005-12-09 Richard Guenther <rguenther@suse.de> |
| |
| * f95-lang.c (build_builtin_fntypes): Use correct |
| return types, as indicated by comments. |
| |
| 2005-12-08 Erik Edelmann <eedelman@gcc.gnu.org> |
| |
| PR fortran/25292 |
| * check.c (gfc_check_associated): Allow function results |
| as actual arguments to ASSOCIATED. Moved a misplaced |
| comment. |
| |
| 2005-12-07 Rafael Ávila de Espíndola <rafael.espindola@gmail.com> |
| |
| * Make-lang.in (fortran.all.build, fortran.install-normal): Remove. |
| |
| 2005-12-07 Rafael Ávila de Espíndola <rafael.espindola@gmail.com> |
| |
| * Make-lang.in: Remove all dependencies on s-gtype, except for |
| gt-fortran-trans.h. |
| |
| 2005-12-03 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| PR fortran/25106 |
| * parse.c (next_free): Use new prototype for gfc_match_st_label. |
| Correctly emit hard error if a label is zero. |
| * match.c (gfc_match_st_label): Never allow zero as a valid |
| label. |
| (gfc_match, gfc_match_do, gfc_match_goto): Use new prototype for |
| gfc_match_st_label. |
| * primary.c (): Use new prototype for gfc_match_st_label. |
| * io.c (): Likewise. |
| * match.h: Likewise. |
| |
| 2005-12-02 Richard Guenther <rguenther@suse.de> |
| |
| * trans.h (build1_v): Use build1, not build to build the |
| void typed tree. |
| |
| 2005-12-01 Erik Schnetter <schnetter@aei.mpg.de> |
| |
| * decl.c (gfc_match_old_kind_spec): Improve handling of old style |
| COMPLEX*N |
| |
| 2005-12-01 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/24789 |
| * trans-decl.c (gfc_get_symbol_decl): Move the expression for |
| unit size of automatic character length, dummy pointer array |
| elements down a few lines from the version that fixed PR15809. |
| |
| 2005-11-30 Bernhard Fischer <rep.nop@aon.at> |
| |
| PR fortran/21302 |
| * lang.opt: New options -ffree-line-length- and -ffree-line-length-none. |
| * gfortran.h: Add free_line_length and add description of |
| free_line_length and fixed_line_length. |
| * options.c (gfc_init_options, gfc_handle_option): Initialize |
| and set free_line_length and fixed_line_length. |
| * scanner.c (load_line): Set free_line_length to 132 and |
| fixed_line_length to 72 or user requested values. |
| * scanner.c: Typo in comment. |
| * invoke.texi: Document -ffree-line-length- and |
| -ffree-line-length-none |
| |
| 2005-11-30 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/15809 |
| * trans-decl.c (gfc_get_symbol_decl): In the case of automatic |
| character length, dummy pointer arrays, build an expression for |
| unit size of the array elements, to be picked up and used in the |
| descriptor dtype. |
| * trans-io.c (gfc_trans_transfer): Modify the detection of |
| components of derived type arrays to use the gfc_expr references |
| instead of the array descriptor dtype. This allows the latter |
| to contain expressions. |
| |
| 2005-11-30 Erik Edelmann <erik.edelmann@iki.fi> |
| |
| PR fortran/15809 |
| * trans-array.c (gfc_trans_deferred_array): Allow PARM_DECLs past |
| in addition to VAR_DECLs. |
| |
| 2005-11-29 Jakub Jelinek <jakub@redhat.com> |
| |
| * io.c (gfc_resolve_open): RESOLVE_TAG access field as well. |
| |
| 2005-11-27 Bernhard Fischer <rep.nop@aon.at> |
| |
| * gfortran.h: remove superfluous whitespace and use GNU |
| comment-style for the documentation of backend_decl. |
| |
| 2005-11-27 Steven G. Kargl <kargls@comcast.net> |
| |
| PR fortran/24917 |
| * primary.c (match_boz_constant): Implement postfix BOZ constants; |
| (match_string_constant): Peek for b, o, z, and x |
| |
| 2005-11-27 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| PR fortran/23912 |
| * iresolve.c (gfc_resolve_dim, gfc_resolve_mod, |
| gfc_resolve_modulo): When arguments have different kinds, fold |
| the lower one to the largest kind. |
| * check.c (gfc_check_a_p): Arguments of different kinds is not |
| a hard error, but an extension. |
| * simplify.c (gfc_simplify_dim, gfc_simplify_mod, |
| gfc_simplify_modulo): When arguments have different kinds, fold |
| the lower one to the largest kind. |
| |
| 2005-11-21 Jakub Jelinek <jakub@redhat.com> |
| |
| PR fortran/14943 |
| PR fortran/21647 |
| * Make-lang.in (fortran/trans-io.o): Depend on fortran/ioparm.def. |
| * dump-parse-tree.c (gfc_show_code_node): Dump c->block for |
| EXEC_{READ,WRITE,IOLENGTH} nodes. |
| * io.c (terminate_io, match_io, gfc_match_inquire): Put data |
| transfer commands into EXEC_{READ,WRITE,IOLENGTH}'s code->block. |
| * resolve.c (resolve_blocks): Handle EXEC_{READ,WRITE,IOLENGTH}. |
| * trans-io.c (ioparm_unit, ioparm_err, ioparm_end, ioparm_eor, |
| ioparm_list_format, ioparm_library_return, ioparm_iostat, |
| ioparm_exist, ioparm_opened, ioparm_number, ioparm_named, |
| ioparm_rec, ioparm_nextrec, ioparm_size, ioparm_recl_in, |
| ioparm_recl_out, ioparm_iolength, ioparm_file, ioparm_file_len, |
| ioparm_status, ioparm_status_len, ioparm_access, ioparm_access_len, |
| ioparm_form, ioparm_form_len, ioparm_blank, ioparm_blank_len, |
| ioparm_position, ioparm_position_len, ioparm_action, |
| ioparm_action_len, ioparm_delim, ioparm_delim_len, ioparm_pad, |
| ioparm_pad_len, ioparm_format, ioparm_format_len, ioparm_advance, |
| ioparm_advance_len, ioparm_name, ioparm_name_len, |
| ioparm_internal_unit, ioparm_internal_unit_len, |
| ioparm_internal_unit_desc, ioparm_sequential, ioparm_sequential_len, |
| ioparm_direct, ioparm_direct_len, ioparm_formatted, |
| ioparm_formatted_len, ioparm_unformatted, ioparm_unformatted_len, |
| ioparm_read, ioparm_read_len, ioparm_write, ioparm_write_len, |
| ioparm_readwrite, ioparm_readwrite_len, ioparm_namelist_name, |
| ioparm_namelist_name_len, ioparm_namelist_read_mode, ioparm_iomsg, |
| ioparm_iomsg_len, ioparm_var): Remove. |
| (enum ioparam_type, enum iofield_type, enum iofield, |
| enum iocall): New enums. |
| (gfc_st_parameter_field, gfc_st_parameter): New typedefs. |
| (st_parameter, st_parameter_field, iocall): New variables. |
| (ADD_FIELD, ADD_STRING): Remove. |
| (dt_parm, dt_post_end_block): New variables. |
| (gfc_build_st_parameter): New function. |
| (gfc_build_io_library_fndecls): Use it. Initialize iocall |
| array rather than ioparm_*, add extra first arguments to |
| the function types. |
| (set_parameter_const): New function. |
| (set_parameter_value): Add type argument, return a bitmask. |
| Changed to set a field in automatic structure variable rather |
| than set a field in a global _gfortran_ioparm variable. |
| (set_parameter_ref): Likewise. If requested var has different |
| size than what field should point to, call with a temporary and |
| then copy into the user variable. Add postblock argument. |
| (set_string): Remove var_len argument, add type argument, return |
| a bitmask. Changed to set fields in automatic structure variable |
| rather than set a field in a global _gfortran_ioparm variable. |
| (set_internal_unit): Remove iunit, iunit_len, iunit_desc arguments, |
| add var argument. Return a bitmask. Changed to set fields in |
| automatic structure variable rather than set a field in a global |
| _gfortran_ioparm variable. |
| (set_flag): Removed. |
| (io_result): Add var argument. Changed to read common.flags field |
| from automatic structure variable and bitwise AND it with 3. |
| (set_error_locus): Add var argument. Changed to set fields in |
| automatic structure variable rather than set a field in a global |
| _gfortran_{filename,line} variables. |
| (gfc_trans_open): Use gfc_start_block rather than gfc_init_block. |
| Create a temporary st_parameter_* structure. Adjust callers of |
| all above mentioned functions. Pass address of the temporary |
| variable as first argument to the generated function call. |
| Use iocall array rather than ioparm_* separate variables. |
| (gfc_trans_close, build_filepos, gfc_trans_inquire): Likewise. |
| (build_dt): Likewise. Change first argument to tree from tree *. |
| Don't dereference code->ext.dt if last_dt == INQUIRE. Emit |
| IOLENGTH argument setup here. Set dt_parm/dt_post_end_block |
| variables and gfc_trans_code the nested data transfer commands |
| in code->block. |
| (gfc_trans_iolength): Just set last_dt and call build_dt immediately. |
| (transfer_namelist_element): Pass address of dt_parm variable |
| to generated functions. Use iocall array rather than ioparm_* |
| separate variables. |
| (gfc_trans_backspace, gfc_trans_endfile, gfc_trans_rewind, |
| gfc_trans_flush, gfc_trans_read, gfc_trans_write): Use iocall array |
| rather than ioparm_* separate variables. |
| (gfc_trans_dt_end): Likewise. Pass address of dt_parm variable |
| as first argument to generated function. Adjust io_result caller. |
| Prepend dt_post_end_block before io_result code. |
| (transfer_expr): Use iocall array rather than ioparm_* separate |
| variables. Pass address of dt_parm variables as first argument |
| to generated functions. |
| * ioparm.def: New file. |
| |
| 2005-11-21 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/24223 |
| * resolve.c (resolve_contained_fntype) Error if an internal |
| function is assumed character length. |
| |
| PR fortran/24705 |
| * trans-decl.c (gfc_create_module_variable) Skip ICE in |
| when backend decl has been built and the symbol is marked |
| as being in an equivalence statement. |
| |
| 2005-11-20 Toon Moene <toon@moene.indiv.nluug.nl> |
| |
| * invoke.texi: Remove superfluous @item. |
| |
| 2005-11-19 Janne Blomqvist <jb@gcc.gnu.org> |
| |
| PR fortran/24862 |
| * trans-io.c (gfc_trans_transfer): Handle arrays of derived type. |
| |
| 2005-11-17 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| PR fortran/20811 |
| * scanner.c (gfc_open_included_file): Add an extra include_cwd |
| argument. Only include files in the current working directory if |
| its value is true. |
| * gfortran.h: Change prototype for gfc_open_included_file. |
| (load_file): Don't search for include files in the current working |
| directory. |
| * options.c (gfc_post_options): Add the directory of the source file |
| to the list of paths for included files. |
| * module.c (gfc_use_module): Look for module files in the current |
| directory. |
| |
| 2005-11-16 Alan Modra <amodra@bigpond.net.au> |
| |
| PR fortran/24096 |
| * trans-types.c (gfc_init_kinds): Use one less for max_exponent |
| of IBM extended double format. |
| |
| 2005-11-13 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| * intrinsic.c (add_functions): Add COMPLEX, FTELL, FGETC, FGET, |
| FPUTC, FPUT, AND, XOR and OR intrinsic functions. |
| (add_subroutines): Add FGETC, FGET, FPUTC, FPUT and FTELL intrinsic |
| subroutines. |
| * gfortran.h: Add GFC_ISYM_AND, GFC_ISYM_COMPLEX, GFC_ISYM_FGET, |
| GFC_ISYM_FGETC, GFC_ISYM_FPUT, GFC_ISYM_FPUTC, GFC_ISYM_FTELL, |
| GFC_ISYM_OR, GFC_ISYM_XOR. |
| * iresolve.c (gfc_resolve_and, gfc_resolve_complex, |
| gfc_resolve_or, gfc_resolve_fgetc, gfc_resolve_fget, |
| gfc_resolve_fputc, gfc_resolve_fput, gfc_resolve_ftell, |
| gfc_resolve_xor, gfc_resolve_fgetc_sub, gfc_resolve_fget_sub, |
| gfc_resolve_fputc_sub, gfc_resolve_fput_sub, gfc_resolve_ftell_sub): |
| New functions. |
| * check.c (gfc_check_complex, gfc_check_fgetputc_sub, |
| gfc_check_fgetputc, gfc_check_fgetput_sub, gfc_check_fgetput, |
| gfc_check_ftell, gfc_check_ftell_sub, gfc_check_and): New functions. |
| * simplify.c (gfc_simplify_and, gfc_simplify_complex, gfc_simplify_or, |
| gfc_simplify_xor): New functions. |
| * trans-intrinsic.c (gfc_conv_intrinsic_function): Add cases for |
| GFC_ISYM_AND, GFC_ISYM_COMPLEX, GFC_ISYM_FGET, GFC_ISYM_FGETC, |
| GFC_ISYM_FPUT, GFC_ISYM_FPUTC, GFC_ISYM_FTELL, GFC_ISYM_OR and |
| GFC_ISYM_XOR. |
| * intrinsic.h: Add prototypes for all functions added to iresolve.c, |
| simplify.c and check.c. |
| |
| 2005-11-10 Paul Thomas <pault@gcc.gnu.org> |
| Steven G. Kargl <kargls@comcast.net> |
| |
| PR fortran/15976 |
| * resolve.c (resolve_symbol): Disallow automatic arrays in module scope. |
| |
| 2005-11-10 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/24655 |
| PR fortran/24755 |
| * match.c (recursive_stmt_fcn): Add checks that symtree exists |
| for the expression to weed out inline intrinsic functions and |
| parameters. |
| |
| PR fortran/24409 |
| * module.c (mio_symtree_ref): Correct the patch of 0923 so that |
| a symbol is not substituted for by a the symbol for the module |
| itself and to prevent the promotion of a formal argument. |
| |
| 2005-11-10 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| PR fortran/24643 |
| * primary.c (match_varspec): Check for implicitly typed CHARACTER |
| variables before matching substrings. |
| |
| 2005-11-09 Steven G. Kargl <kargls@comcast.net> |
| |
| * trans-intrinsic.c: Typo in comment. |
| |
| 2005-11-09 Erik Edelmann <eedelman@gcc.gnu.org> |
| |
| PR fortran/22607 |
| * trans-decl.c(build_function_decl): Don't set |
| DECL_IS_PURE (fndecl) = 1 for return-by-reference |
| functions. |
| |
| 2005-11-08 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| * dump-parse-tree.c: Fix comment typo, add a few blank lines. |
| |
| 2005-11-07 Steven G. Kargl <kargls@comcast.net> |
| |
| * error.c: Use flag_fatal_error. |
| * invoke.texi: Remove -Werror from list of options. |
| |
| 2005-11-06 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/24534 |
| * resolve.c (resolve_symbol): Exclude case of PRIVATE declared |
| within derived type from error associated with PRIVATE type |
| components within derived type. |
| |
| PR fortran/20838 |
| PR fortran/20840 |
| * gfortran.h: Add prototype for gfc_has_vector_index. |
| * io.c (gfc_resolve_dt): Error if internal unit has a vector index. |
| * expr.c (gfc_has_vector_index): New function to check if any of |
| the array references of an expression have vector inidices. |
| (gfc_check_pointer_assign): Error if internal unit has a vector index. |
| |
| PR fortran/17737 |
| * data.c (gfc_assign_data_value): Remove gcc_assert that caused the ICE |
| and replace by a standard dependent warning/error if overwriting an |
| existing initialization. |
| * decl.c (gfc_data_variable): Remove old error for already initialized |
| variable and the unused error check for common block variables. Add |
| error for hots associated variable and standard dependent error for |
| common block variables, outside of blockdata. |
| * symbol.c (check_conflict): Add constraints for DATA statement. |
| |
| 2005-11-06 Janne Blomqvist <jb@gcc.gnu.org> |
| |
| PR fortran/24174 |
| PR fortran/24305 |
| * fortran/trans-io.c (gfc_build_io_library_fndecls): Add kind |
| argument to transfer_array. |
| (transfer_array_desc): Add kind argument. |
| |
| 2005-11-06 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| * intrinsic.c (add_functions): Add ctime and fdate intrinsics. |
| (add_subroutines): Likewise. |
| * intrinsic.h: Prototypes for gfc_check_ctime, |
| gfc_check_ctime_sub, gfc_check_fdate_sub, gfc_resolve_ctime, |
| gfc_resolve_fdate, gfc_resolve_ctime_sub, gfc_resolve_fdate_sub. |
| * gfortran.h: Add GFC_ISYM_CTIME and GFC_ISYM_FDATE. |
| * iresolve.c (gfc_resolve_ctime, gfc_resolve_fdate, |
| gfc_resolve_ctime_sub, gfc_resolve_fdate_sub): New functions. |
| * trans-decl.c (gfc_build_intrinsic_function_decls): Add |
| gfor_fndecl_fdate and gfor_fndecl_ctime. |
| * check.c (gfc_check_ctime, gfc_check_ctime_sub, |
| gfc_check_fdate_sub): New functions. |
| * trans-intrinsic.c (gfc_conv_intrinsic_ctime, |
| gfc_conv_intrinsic_fdate): New functions. |
| (gfc_conv_intrinsic_function): Add cases for GFC_ISYM_CTIME |
| and GFC_ISYM_FDATE. |
| * intrinsic.texi: Documentation for the new CTIME and FDATE |
| intrinsics. |
| * trans.h: Declarations for gfor_fndecl_ctime and gfor_fndecl_fdate. |
| |
| 2005-11-05 Kazu Hirata <kazu@codesourcery.com> |
| |
| * decl.c, trans-decl.c: Fix comment typos. |
| * gfortran.texi: Fix a typo. |
| |
| 2005-11-05 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| * intrinsic.c (add_functions): Add function version of TTYNAM. |
| * intrinsic.h: Add prototypes for gfc_check_ttynam and |
| gfc_resolve_ttynam. |
| * gfortran.h: Add case for GFC_ISYM_TTYNAM. |
| * iresolve.c (gfc_resolve_ttynam): New function. |
| * trans-decl.c (gfc_build_intrinsic_function_decls): Add a tree |
| for function call to library ttynam. |
| * check.c (gfc_check_ttynam): New function. |
| * trans-intrinsic.c (gfc_conv_intrinsic_ttynam): New function. |
| (): Call gfc_conv_intrinsic_ttynam. |
| * trans.h: Add prototype for gfor_fndecl_ttynam. |
| |
| 2005-11-04 Steven G. Kargl <kargls@comcast.net> |
| |
| PR fortran/24636 |
| * match.c (gfc_match_stopcode): Set stop_code = -1. |
| |
| 2005-11-04 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| PR fortran/18452 |
| * lang-specs.h: Pass -lang-fortran to the preprocessor. |
| |
| 2005-11-02 Andrew Pinski <pinskia@physics.uc.edu> |
| |
| PR fortran/18157 |
| * trans-array.c (gfc_conv_resolve_dependencies): Use the correct |
| type for the temporary array. |
| * trans-expr.c (gfc_trans_assignment): Pass lss |
| instead of lss_section |
| to gfc_conv_resolve_dependencies to get the |
| correct type. |
| |
| 2005-11-02 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| * decl.c (gfc_match_entry): Function entries don't need an argument |
| list if there's no RESULT clause. |
| |
| 2005-11-01 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| PR fortran/24008 |
| * decl.c (gfc_match_entry): Function entries need an argument list. |
| |
| 2005-11-01 Erik Edelmann <eedelman@gcc.gnu.org> |
| |
| PR 24245 |
| * trans.c (gfc_generate_code): Move code to create a main |
| program symbol from here ... |
| * parse.c (main_program_symbol): ... to this new |
| function, setting the locus from gfc_current_locus |
| instead of ns->code->loc. |
| (gfc_parse_file): Call main_program_symbol for main programs. |
| |
| 2005-11-01 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| PR fortran/24404 |
| * resolve.c (resolve_symbol): Output symbol names in more error |
| messages, clarify error message. |
| |
| 2005-11-01 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| * dump-parse-tree.c (show_symtree): Revert change unintentionally |
| committed in r106246. |
| |
| 2005-11-01 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/21565 |
| * symbol.c (check_conflict): An object cannot be in a namelist and in |
| block data. |
| |
| PR fortran/18737 |
| * resolve.c (resolve_symbol): Set the error flag to |
| gfc_set_default_type, in the case of an external symbol, so that |
| an error message is emitted if IMPLICIT NONE is set. |
| |
| PR fortran/14994 |
| * gfortran.h (gfc_generic_isym_id): Add GFC_ISYM_SECNDS to enum. |
| * check.c (gfc_check_secnds): New function. |
| * intrinsic.c (add_functions): Add call to secnds. |
| * iresolve.c (gfc_resolve_secnds): New function. |
| * trans-intrinsic (gfc_conv_intrinsic_function): Add call to |
| secnds via case GFC_ISYM_SECNDS. |
| * intrinsic.texi: Add documentation for secnds. |
| |
| 2005-10-31 Andreas Schwab <schwab@suse.de> |
| |
| * Make-lang.in (GFORTRAN_TARGET_INSTALL_NAME): Define. |
| (GFORTRAN_CROSS_NAME): Remove. |
| (fortran.install-common): Correctly install a cross compiler. |
| (fortran.uninstall): Use GFORTRAN_TARGET_INSTALL_NAME instead of |
| GFORTRAN_CROSS_NAME. |
| |
| 2005-10-30 Erik Edelmann <eedelman@gcc.gnu.org> |
| |
| * gfortran.texi: Update contributors. |
| |
| 2005-10-30 Erik Edelmann <eedelman@gcc.gnu.org> |
| |
| PR fortran/18883 |
| * trans-decl.c (gfc_finish_var_decl): Add decl to the |
| current function, rather than the parent. Make |
| assertion accept fake result variables. |
| * trans-expr.c (gfc_conv_variable): If the character |
| length of an ENTRY isn't set, get the length from |
| the master function instead. |
| |
| 2005-10-30 Thomas Koenig <Thomas.Koenig@online.de> |
| |
| * gfortran.texi: Remove reservations about I/O usability. Document |
| that array intrinsics mostly work. |
| |
| 2005-10-30 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| * gfortran.texi: Move license stuff to back. Add information |
| on ENUM and ENUMERATOR. |
| * invoke.texi: Document -fshort-enums. |
| |
| 2005-10-30 Gaurav Gautam <gauravga@noida.hcltech.com> |
| Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| * arith.c (gfc_enum_initializer): New function. |
| (gfc_check_integer_range): Made extern. |
| * decl.c (enumerator_history): New typedef. |
| (last_initializer, enum_history, max_enum): New variables. |
| (create_enum_history, gfc_free_enum_history): New functions. |
| (add_init_expr_to_sym): Call create_enum_history if parsing ENUM. |
| (variable_decl): Modified to parse enumerator definition. |
| (match_attr_spec): Add PARAMETER attribute to ENUMERATORs. |
| (gfc_match_data_decl): Issues error, if match_type_spec do not |
| return desired return values. |
| (set_enum_kind, gfc_match_enum, gfc_match_enumerator_def): New |
| functions. |
| (gfc_match_end): Deal with END ENUM. |
| * gfortran.h (gfc_statement): ST_ENUM, ST_ENUMERATOR, ST_END_ENUM |
| added. |
| (symbol_attribute): Bit field for enumerator added. |
| (gfc_options): Add fshort_enums. |
| (gfc_enum_initializer, gfc_check_integer_range): Add prototypes. |
| * options.c: Include target.h |
| (gfc_init_options): Initialize fshort_enums. |
| (gfc_handle_option): Deal with fshort_enums. |
| * parse.c (decode_statement): Match ENUM and ENUMERATOR statement. |
| (gfc_ascii_statement): Deal with the enumerator statements. |
| (parse_enum): New function to parse enum construct. |
| (parse_spec): Added case ST_ENUM. |
| * parse.h (gfc_compile_state): COMP_ENUM added. |
| (gfc_match_enum, gfc_match_enumerator_def, gfc_free_enum_history): |
| Prototype added. |
| * symbol.c (gfc_copy_attr): Copy enumeration attribute. |
| * lang.opt (fshort-enums): Option added. |
| |
| 2005-10-30 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| * check.c (gfc_check_malloc, gfc_check_free): New functions. |
| * gfortran.h (gfc_generic_isym_id): Add GFC_ISYM_MALLOC. |
| * intrinsic.c (add_functions): Add symbols for MALLOC function. |
| (add_subroutines): Add symbol for FREE subroutine. |
| * intrinsic.h: Prototypes for gfc_check_malloc, gfc_check_free, |
| gfc_resolve_malloc and gfc_resolve_free. |
| * intrinsic.texi: Add doc for FREE and MALLOC intrinsics. |
| * iresolve.c (gfc_resolve_malloc, gfc_resolve_free): New |
| functions. |
| * trans-intrinsic.c (gfc_conv_intrinsic_function): Add case for |
| GFC_ISYM_MALLOC. |
| |
| 2005-10-30 Steven Bosscher <stevenb@suse.de> |
| |
| * gfortran.texi: Update contributors. |
| |
| 2005-10-29 Steven Bosscher <stevenb@suse.de> |
| |
| * interface.c: Fix previous checkin (an incomplete patch |
| was commited for me). |
| |
| 2005-10-29 Joseph S. Myers <joseph@codesourcery.com> |
| |
| * intrinsic.texi: Remove empty @cindex line. |
| |
| 2005-10-28 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| * check.c (gfc_check_alarm_sub, gfc_check_signal, |
| gfc_check_signal_sub): New functions. |
| * gfortran.h (gfc_generic_isym_id): Add GFC_ISYM_SIGNAL. |
| * intrinsic.c (add_functions): Add signal intrinsic. |
| (add_subroutines): Add signal and alarm intrinsics. |
| * intrinsic.texi: Document the new intrinsics. |
| * iresolve.c (gfc_resolve_signal, gfc_resolve_alarm_sub, |
| gfc_resolve_signal_sub): New functions. |
| * trans-intrinsic.c (gfc_conv_intrinsic_function): Add case |
| for GFC_ISYM_SIGNAL. |
| * intrinsic.h: Add prototypes for gfc_check_alarm_sub, |
| gfc_check_signal, gfc_check_signal_sub, gfc_resolve_signal, |
| gfc_resolve_alarm_sub, gfc_resolve_signal_sub. |
| |
| 2005-10-28 Steven Bosscher <stevenb@suse.de> |
| |
| PR fortran/24545 |
| * interface.c (gfc_match_end_interface): Fix typo in |
| INTERFACE_USER_OP case. |
| |
| 2005-10-26 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| PR fortran/15586 |
| * resolve.c (resolve_symbol): Remove the use of whynot, so that |
| error messages are not built from pieces. |
| |
| 2005-10-26 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/24158 |
| * decl.c (gfc_match_data_decl): Correct broken bit of code |
| that prevents undefined derived types from being used as |
| components of another derived type. |
| * resolve.c (resolve_symbol): Add backstop error when derived |
| type variables arrive here with a type that has no components. |
| |
| 2005-10-25 Jakub Jelinek <jakub@redhat.com> |
| |
| * trans.h (gfc_conv_cray_pointee): Remove. |
| * trans-expr.c (gfc_conv_variable): Revert 2005-10-24 change. |
| * trans-array.c (gfc_conv_array_parameter): Likewise. |
| * trans-decl.c (gfc_conv_cray_pointee): Remove. |
| (gfc_finish_cray_pointee): New function. |
| (gfc_finish_var_decl): Use it. Don't return early for Cray |
| pointees. |
| (gfc_create_module_variable): Revert 2005-10-24 change. |
| * decl.c (cray_pointer_decl): Update comment. |
| * gfortran.texi: Don't mention Cray pointees aren't visible in the |
| debugger. |
| |
| * symbol.c (check_conflict): Add conflict between cray_pointee |
| and in_common resp. in_equivalence. |
| * resolve.c (resolve_equivalence): Revert 2005-10-24 change. |
| |
| * module.c (ab_attribute): Add AB_CRAY_POINTER and AB_CRAY_POINTEE. |
| (attr_bits): Likewise. |
| (mio_symbol_attribute): Save and restore cray_pointe{r,e} attributes. |
| (mio_symbol): For cray_pointee write/read cp_pointer reference. |
| |
| 2005-10-25 Feng Wang <fengwang@nudt.edu.cn> |
| |
| PR fortran/22290 |
| * trans-decl.c (gfc_add_assign_aux_vars): New function. Add two |
| auxiliary variables. |
| (gfc_get_symbol_decl): Use it when a variable, including dummy |
| argument, is assigned a label. |
| (gfc_trans_assign_aux_var): New function. Set initial value of |
| the auxiliary variable explicitly. |
| (gfc_trans_deferred_vars): Use it. |
| * trans-stmt.c (gfc_conv_label_variable): Handle dummy argument. |
| |
| 2005-10-24 Asher Langton <langton2@llnl.gov> |
| |
| PR fortran/17031 |
| PR fortran/22282 |
| * check.c (gfc_check_loc): New function. |
| * decl.c (variable_decl): New variables cp_as and sym. Added a |
| check for variables that have already been declared as Cray |
| Pointers, so we can get the necessary attributes without adding |
| a new symbol. |
| (attr_decl1): Added code to catch pointee symbols and "fix" |
| their array specs. |
| (cray_pointer_decl): New method. |
| (gfc_match_pointer): Added Cray pointer parsing code. |
| (gfc_mod_pointee_as): New method. |
| * expr.c (gfc_check_assign): Added a check to catch vector-type |
| assignments to pointees with an unspecified final dimension. |
| * gfortran.h: (GFC_ISYM_LOC): New. |
| (symbol_attribute): Added cray_pointer and cray_pointee bits. |
| (gfc_array_spec): Added cray_pointee and cp_was_assumed bools. |
| (gfc_symbol): Added gfc_symbol *cp_pointer. |
| (gfc_option): Added flag_cray_pointer. |
| (gfc_add_cray_pointee): Declare. |
| (gfc_add_cray_pointer ): Declare. |
| (gfc_mod_pointee_as): Declare. |
| * intrinsic.c (add_functions): Add code for loc() intrinsic. |
| * intrinsic.h (gfc_check_loc): Declare. |
| (gfc_resolve_loc): Declare. |
| * iresolve.c (gfc_resolve_loc): New. |
| * lang.opt: Added fcray-pointer flag. |
| * options.c (gfc_init_options): Initialized. |
| gfc_match_option.flag_cray_pointer. |
| (gfc_handle_option): Deal with -fcray-pointer. |
| * parse.c:(resolve_equivalence): Added code prohibiting Cray |
| pointees in equivalence statements. |
| * resolve.c (resolve_array_ref): Added code to prevent bounds |
| checking for Cray Pointee arrays. |
| (resolve_equivalence): Prohibited pointees in equivalence |
| statements. |
| * symbol.c (check_conflict): Added Cray pointer/pointee |
| attribute checking. |
| (gfc_add_cray_pointer): New. |
| (gfc_add_cray_pointee): New. |
| (gfc_copy_attr): New code for Cray pointers and pointees. |
| * trans-array.c (gfc_trans_auto_array_allocation): Added code to |
| prevent space from being allocated for pointees. |
| (gfc_conv_array_parameter): Added code to catch pointees and |
| correctly set their base address. |
| * trans-decl.c (gfc_finish_var_decl): Added code to prevent |
| pointee declarations from making it to the back end. |
| (gfc_create_module_variable): Same. |
| * trans-expr.c (gfc_conv_variable): Added code to detect and |
| translate pointees. |
| (gfc_conv_cray_pointee): New. |
| * trans-intrinsic.c (gfc_conv_intrinsic_loc): New. |
| (gfc_conv_intrinsic_function): Added entry point for loc |
| translation. |
| * trans.h (gfc_conv_cray_pointee): Declare. |
| |
| * gfortran.texi: Added section on Cray pointers, removed Cray |
| pointers from list of proposed extensions. |
| * intrinsic.texi: Added documentation for loc intrinsic. |
| * invoke.texi: Documented -fcray-pointer flag. |
| |
| 2005-10-24 Asher Langton <langton2@llnl.gov> |
| |
| * decl.c (gfc_match_save): Changed duplicate SAVE errors to |
| warnings in the absence of strict standard conformance |
| * symbol.c (gfc_add_save): Same. |
| |
| 2005-10-24 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| PR fortran/15586 |
| * arith.c (gfc_arith_error): Change message to include locus. |
| (check_result, eval_intrinsic, gfc_int2int, gfc_real2real, |
| gfc_real2complex, gfc_complex2real, gfc_complex2complex): Use |
| the new gfc_arith_error. |
| (arith_error): Rewrite full error messages instead of building |
| them from pieces. |
| * check.c (must_be): Removed. |
| (type_check, numeric_check, int_or_real_check, real_or_complex_check, |
| kind_check, double_check, logical_array_check, array_check, |
| scalar_check, same_type_check, rank_check, kind_value_check, |
| variable_check, gfc_check_allocated, gfc_check_associated, |
| gfc_check_cmplx, gfc_check_dcmplx, gfc_check_dot_product, |
| gfc_check_index, gfc_check_kind, gfc_check_matmul, gfc_check_null, |
| gfc_check_pack, gfc_check_precision, gfc_check_present, |
| gfc_check_spread): Rewrite full error messages instead of |
| building them from pieces. |
| * decl.c (gfc_match_entry): Rewrite full error messages instead |
| of building them from pieces. |
| * parse.c (gfc_state_name): Remove. |
| * parse.h: Remove prototype for gfc_state_name. |
| |
| 2005-10-23 Andrew Pinski <pinskia@physics.uc.edu> |
| |
| PR fortran/23635 |
| * check.c (gfc_check_ichar_iachar): Move the code around so |
| that the check on the length is after check for |
| references. |
| |
| 2005-10-23 Asher Langton <langton2@llnl.gov> |
| |
| * decl.c (match_type_spec): Add a BYTE type as an extension. |
| |
| 2005-10-23 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/18022 |
| * trans-expr.c (gfc_trans_arrayfunc_assign): Return NULL |
| if there is a component ref during an array ref to force |
| use of temporary in assignment. |
| |
| PR fortran/24311 |
| PR fortran/24384 |
| * fortran/iresolve.c (check_charlen_present): New function to |
| add a charlen to the typespec, in the case of constant |
| expressions. |
| (gfc_resolve_merge, gfc_resolve_spread): Call.the above. |
| (gfc_resolve_spread): Make calls to library functions that |
| handle the case of the spread intrinsic with a scalar source. |
| |
| 2005-10-22 Erik Edelmann <eedelman@gcc.gnu.org> |
| |
| PR fortran/24426 |
| * decl.c (variable_decl): Don't assign default initializers to |
| pointers. |
| |
| 2005-10-21 Jakub Jelinek <jakub@redhat.com> |
| |
| * interface.c (compare_actual_formal): Issue error when attempting |
| to pass an assumed-size array as assumed-shape array argument. |
| |
| 2005-10-20 Erik Edelmann <erik.edelmann@iki.fi> |
| |
| PR fortran/21625 |
| * resolve.c (expr_to_initialize): New function. |
| (resolve_allocate_expr): Take current statement as new |
| argument. Add default initializers to variables of |
| derived types, if they need it. |
| (resolve_code): Provide current statement as argument to |
| resolve_allocate_expr(). |
| |
| 2005-10-19 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/24440 |
| * resolve.c (resolve_symbol): Correct error in check for |
| assumed size array with default initializer by testing |
| for arrayspec before dereferencing it. |
| |
| 2005-10-17 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/23446 |
| * gfortran.h: Primitive for gfc_is_formal_arg. |
| * resolve.c(gfc_is_formal_arg): New function to signal across |
| several function calls that formal argument lists are being |
| processed. |
| (resolve_formal_arglist): Set/reset the flag for gfc_is_formal_arg. |
| *expr.c(check_restricted): Add check, via gfc_is_formal_arg, if |
| symbol is part of an formal argument declaration. |
| |
| PR fortran/21459 |
| * decl.c (add_init_expr_to_sym): Make a new character |
| length for each variable, when the expression is NULL |
| and link to cl_list. |
| |
| PR fortran/20866 |
| * match.c (recursive_stmt_fcn): New function that tests if |
| a statement function resurses through itself or other other |
| statement functions. |
| (gfc_match_st_function): Call recursive_stmt_fcn to check |
| if this is recursive and to raise error if so. |
| |
| PR fortran/20849 |
| PR fortran/20853 |
| * resolve.c (resolve_symbol): Errors for assumed size arrays |
| with default initializer and for external objects with an |
| initializer. |
| |
| PR fortran/20837 |
| * decl.c (match_attr_spec): Prevent PUBLIC from being used |
| outside a module. |
| |
| 2005-10-16 Erik Edelmann <erik.edelmann@iki.fi> |
| |
| PR 22273 |
| * expr.c (check_inquiry): Add "len" to inquiry_function. |
| |
| 2005-10-14 Jakub Jelinek <jakub@redhat.com> |
| |
| * primary.c (match_boz_constant): Add missing break after gfc_error. |
| |
| 2005-10-12 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/24092 |
| * trans-types.c (gfc_get_derived_type): Insert code to obtain backend |
| declaration for derived types, building if necessary. Return the |
| derived type if the fields have been built by this process. Otherwise, |
| continue as before but using the already obtained backend_decls for the |
| derived type components. Change the gcc_assert to act on the field. |
| |
| 2005-10-12 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/18082 |
| * decl.c (variable_decl): Make a new copy of the character |
| length for each variable, when the expression is not a |
| constant. |
| |
| 2005-10-12 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| * gfortran.h: Add bitmasks for different FPE traps. Add fpe |
| member to options_t. |
| * invoke.texi: Document the new -ffpe-trap option. |
| * lang.opt: Add -ffpe-trap option. |
| * options.c (gfc_init_options): Initialize the FPE option. |
| (gfc_handle_fpe_trap_option): New function to parse the argument |
| of the -ffpe-trap option. |
| (gfc_handle_option): Add case for -ffpe-trap. |
| * trans-decl.c: Declare a tree for the set_fpe library function. |
| (gfc_build_builtin_function_decls): Build this tree. |
| (gfc_generate_function_code): Generate a call to set_fpe at |
| the beginning of the main program. |
| * trans.h: New tree for the set_fpe library function. |
| |
| 2005-10-12 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/20847 |
| PR fortran/20856 |
| * symbol.c (check_conflict): Prevent common variables and |
| function results from having the SAVE attribute,as required |
| by the standard. |
| |
| 2005-10-12 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/24207 |
| * resolve.c (resolve_symbol): Exclude use and host associated |
| symbols from the test for private objects in a public namelist. |
| |
| 2005-10-12 Jakub Jelinek <jakub@redhat.com> |
| |
| * trans-common.c (build_field): Fix comment typo. |
| (create_common): Set backend_decl of COMMON or EQUIVALENCEd |
| variables to a VAR_DECL with the COMPONENT_REF in |
| DECL_HAS_VALUE_EXPR rather than COMPONENT_REF directly. |
| * f95-lang.c (gfc_expand_function): Emit debug info for |
| EQUIVALENCEd variables if the equiv union is going to be output. |
| |
| 2005-10-11 Steven G. Kargl <kargls@comcast.net> |
| |
| PR fortran/20786 |
| * iresolve.c (gfc_resolve_aint, gfc_resolve_anint): Type conversion |
| of the argument. |
| |
| 2005-10-11 Jakub Jelinek <jakub@redhat.com> |
| |
| * f95-lang.c (gfc_init_decl_processing): Initialize |
| void_list_node. |
| |
| 2005-10-07 Erik Edelmann <erik.edelmann@iki.fi> |
| |
| PR 18568 |
| * resolve.c (find_array_spec): Search through the list of |
| components in the symbol of the type instead of the symbol of the |
| variable. |
| |
| 2005-10-05 Richard Guenther <rguenther@suse.de> |
| |
| PR fortran/24176 |
| * parse.c (gfc_parse_file): Exit early for empty files. |
| |
| 2005-10-03 Steve Ellcey <sje@cup.hp.com> |
| |
| * fortran/trans-types.c (gfc_init_kinds): Only pass float, double, |
| and long double floating point types through to Fortran compiler. |
| |
| 2005-10-03 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| PR fortran/20120 |
| * f95-lang.c (DO_DEFINE_MATH_BUILTIN): Add support for long |
| double builtin function. |
| (gfc_init_builtin_functions): Add mfunc_longdouble, |
| mfunc_clongdouble and func_clongdouble_longdouble trees. Build |
| them for round, trunc, cabs, copysign and pow functions. |
| * iresolve.c (gfc_resolve_reshape, gfc_resolve_transpose): Add |
| case for kind 10 and 16. |
| * trans-decl.c: Add trees for cpowl10, cpowl16, ishftc16, |
| exponent10 and exponent16. |
| (gfc_build_intrinsic_function_decls): Build nodes for int16, |
| real10, real16, complex10 and complex16 types. Build all possible |
| combinations for function _gfortran_pow_?n_?n. Build function |
| calls cpowl10, cpowl16, ishftc16, exponent10 and exponent16. |
| * trans-expr.c (gfc_conv_power_op): Add case for integer(16), |
| real(10) and real(16). |
| * trans-intrinsic.c: Add suppport for long double builtin |
| functions in BUILT_IN_FUNCTION, LIBM_FUNCTION and LIBF_FUNCTION |
| macros. |
| (gfc_conv_intrinsic_aint): Add case for integer(16), real(10) and |
| real(16) kinds. |
| (gfc_build_intrinsic_lib_fndecls): Add support for real10_decl |
| and real16_decl in library functions. |
| (gfc_get_intrinsic_lib_fndecl): Add cases for real and complex |
| kinds 10 and 16. |
| (gfc_conv_intrinsic_exponent): Add cases for real(10) and real(16) |
| kinds. |
| (gfc_conv_intrinsic_sign): Likewise. |
| (gfc_conv_intrinsic_ishftc): Add case for integer(16) kind. |
| * trans-types.c (gfc_get_int_type, gfc_get_real_type, |
| gfc_get_complex_type, gfc_get_logical_type): Doesn't error out in |
| the case of kinds not available. |
| * trans.h: Declare trees for cpowl10, cpowl16, ishftc16, |
| exponent10 and exponent16. |
| |
| 2005-10-01 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/16404 |
| PR fortran/20835 |
| PR fortran/20890 |
| PR fortran/20899 |
| PR fortran/20900 |
| PR fortran/20901 |
| PR fortran/20902 |
| * gfortran.h: Prototype for gfc_add_in_equivalence. |
| * match.c (gfc_match_equivalence): Make a structure component |
| an explicit,rather than a syntax, error in an equivalence |
| group. Call gfc_add_in_equivalence to add the constraints |
| imposed in check_conflict. |
| * resolve.c (resolve_symbol): Add constraints: No public |
| structures with private-type components and no public |
| procedures with private-type dummy arguments. |
| (resolve_equivalence_derived): Add constraint that prevents |
| a structure equivalence member from having a default |
| initializer. |
| (sequence_type): New static function to determine whether an |
| object is default numeric, default character, non-default |
| or mixed sequence. Add corresponding enum typespec. |
| (resolve_equivalence): Add constraints to equivalence groups |
| or their members: No more than one initialized member and |
| that different types are not equivalenced for std=f95. All |
| the simple constraints have been moved to check_conflict. |
| * symbol.c (check_conflict): Simple equivalence constraints |
| added, including those removed from resolve_symbol. |
| (gfc_add_in_equivalence): New function to interface calls |
| match_equivalence to check_conflict. |
| |
| 2005-09-27 Jakub Jelinek <jakub@redhat.com> |
| |
| PR fortran/18518 |
| * trans-common.c (build_equiv_decl): Add IS_SAVED argument. |
| If it is true, set TREE_STATIC on the decl. |
| (create_common): If any symbol in equivalence has SAVE attribute, |
| pass true as last argument to build_equiv_decl. |
| |
| 2005-09-24 Janne Blomqvist <jblomqvi@cc.hut.fi> |
| |
| * trans-io.c (gfc_build_io_library_fndecls): Add entry |
| iocall_x_array for transfer_array. |
| (transfer_array_desc): New function. |
| (gfc_trans_transfer): Add code to call transfer_array_desc. |
| |
| 2005-09-26 Jakub Jelinek <jakub@redhat.com> |
| |
| PR fortran/23677 |
| * symbol.c (gfc_is_var_automatic): Return true if character length |
| is non-constant rather than constant. |
| * resolve.c (gfc_resolve): Don't handle !gfc_option.flag_automatic |
| here. |
| * options.c (gfc_post_options): Set gfc_option.flag_max_stack_var_size |
| to 0 for -fno-automatic. |
| |
| 2005-09-23 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/16861 |
| * module.c (mio_component_ref): Return if the symbol is NULL |
| and wait for another iteration during module reads. |
| (mio_symtree_ref): Suppress the writing of contained symbols, |
| when a symbol is available in the main namespace. |
| (read_module): Restrict scope of special treatment of contained |
| symbols to variables only and suppress redundant call to |
| find_true_name. |
| |
| 2005-09-22 Steven G. Kargl <kargls@comcast.net> |
| |
| PR fortran/24005 |
| * interface.c (check_interface1): Fix NULL dereference. |
| |
| 2005-09-22 Erik Edelmann <erik.edelmann@iki.fi> |
| |
| PR fortran/23843 |
| * resolve.c (derived_inaccessible): New function. |
| (resolve_transfer): Use it to check for private |
| components. |
| |
| 2005-09-22 Steven G. Kargl <kargls@comcast.net> |
| |
| PR fortran/23516 |
| * intrinsic.c (add_function): Add IMAG, IMAGPART, and REALPART |
| intrinsics. |
| * intrinsic.h: Prototypes for gfc_simplify_realpart and |
| gfc_resolve_realpart. |
| * intrinsic.texi: Document intrinsic procedures. |
| * simplify.c (gfc_simplify_realpart): New function. |
| * irseolve.c (gfc_resolve_realpart): New function. |
| |
| 2005-09-21 Erik Edelmann <erik.edelmann@iki.fi> |
| |
| PR fortran/19929 |
| * trans-stmt.c (gfc_trans_deallocate): Check if the |
| object to be deallocated is an array by looking at |
| expr->rank instead of expr->symtree->n.sym->attr.dimension. |
| |
| 2005-09-20 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| PR fortran/23420 |
| * io.c (resolve_tag): Don't allow non-CHARACTER constants as formats. |
| (match_io): Fix usage of gfc_find_symbol. |
| |
| 2005-09-20 Jakub Jelinek <jakub@redhat.com> |
| |
| PR fortran/23663 |
| * primary.c (match_actual_arg): Handle ENTRY the same way |
| as FUNCTION. |
| |
| 2005-09-18 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| * Make-lang.in: Make check-fortran alias for check-gfortran. |
| |
| 2005-09-18 Andreas Jaeger <aj@suse.de> |
| |
| * module.c (read_module): Add missed line from last patch. |
| |
| 2005-09-18 Erik Edelmann <erik.edelmann@iki.fi> |
| |
| PR fortran/15975 |
| * resolve.c (resolve_symbol): Don't assign default |
| initializer to pointers. |
| |
| 2005-09-18 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/16861 |
| * module.c (read_module): Give symbols from module procedures |
| different true_name entries to those from the module proper. |
| |
| 2005-09-17 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| PR fortran/15586 |
| * arith.c (gfc_arith_error): Add translation support for error |
| messages. |
| * array.c (gfc_match_array_ref): Likewise. |
| (gfc_match_array_spec): Likewise. |
| * check.c (must_be): Add msgid convention to third argument. |
| (same_type_check): Add translation support for error message. |
| (rank_check): Likewise. |
| (kind_value_check): Likewise. |
| (gfc_check_associated): Correct typo. |
| (gfc_check_reshape): Add translation support for error message. |
| (gfc_check_spread): Likewise. |
| * error.c (error_printf): Add nocmsgid convention to argument. |
| (gfc_warning, gfc_notify_std, gfc_warning_now, gfc_warning_check) |
| (gfc_error, gfc_error_now): Likewise. |
| (gfc_status): Add cmsgid convention to argument. |
| * expr.c (gfc_extract_int): Add translation support for error |
| messages. |
| (gfc_check_conformance): Add msgid convention to argument. |
| (gfc_check_pointer_assign): Correct tabbing. |
| * gfortran.h: Include intl.h header. Remove prototype for gfc_article. |
| * gfortranspec.c: Include intl.h header. |
| (lang_specific_driver): Add translation support for --version. |
| * io.c (check_format): Add translation support for error message. |
| (format_item_1): Likewise. |
| (data_desc): Likewise. |
| * matchexp.c: Likewise. |
| * misc.c (gfc_article): Remove function. |
| * module.c (bad_module): Use msgid convention. Add translation support |
| for error messages. |
| (require_atom): Add translation support for error messages. |
| * parse.c (gfc_ascii_statement): Likewise. |
| (gfc_state_name): Likewise. |
| * primary.c (match_boz_constant): Reorganise error messages for |
| translations. |
| * resolve.c (resolve_entries): Likewise. |
| (resolve_operator): Add translation support for error messages. |
| (gfc_resolve_expr): Use msgid convention. Reorganise error messages |
| for translations. |
| (resolve_symbol): Add translation support for error messages. |
| * symbol.c (gfc_add_procedure): Remove use of gfc_article function. |
| * trans-const.c (gfc_build_string_const): Use msgid convention. |
| |
| 2005-09-16 Paul Brook <paul@codesourcery.com> |
| |
| PR fortran/23906 |
| * dependency.c (transform_sections): Divide by correct value. |
| Elaborate comment. |
| |
| 2005-09-14 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/21875 Internal Unit Array I/O, NIST |
| * fortran/trans-io.c (gfc_build_io_library_fndecls): Add field for |
| array descriptor to IOPARM structure. |
| * fortran/trans-io.c (set_internal_unit): New function to generate code |
| to store the character (array) and the character length for an internal |
| unit. |
| * fortran/trans-io (build_dt): Use the new function set_internal_unit. |
| |
| 2005-09-14 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/19358 |
| * trans-array.c (gfc_trans_dummy_array_bias): correct the typo |
| which uses dim[i].upper for lbound, rather than dim[i].lower. |
| |
| 2005-09-13 Erik Edelmann <erik.edelmann@iki.fi> |
| |
| PR fortran/17740 |
| * trans-expr.c (gfc_trans_arrayfunc_assign): Check value |
| of attr.elemental for specific function instead of generic name. |
| |
| 2005-09-13 Richard Sandiford <richard@codesourcery.com> |
| |
| PR fortran/18899 |
| * trans-intrinsic.c (gfc_conv_intrinsic_bound): Move initialization |
| of argse. Remove now-redundant want_pointer assignment. |
| * trans-array.c (gfc_conv_expr_descriptor): When not assigning to |
| a pointer, keep the original bounds of a full array reference. |
| |
| 2005-09-13 Richard Sandiford <richard@codesourcery.com> |
| |
| PR target/19269 |
| * iresolve.c (gfc_resolve_cshift, gfc_resolve_eoshift) |
| (gfc_resolve_pack, gfc_resolve_reshape, gfc_resolve_spread) |
| (gfc_resolve_transpose, gfc_resolve_unpack): Add "_char" to the name |
| for character-based operations. |
| (gfc_resolve_pack): Remove ATTRIBUTE_UNUSED from array argument. |
| (gfc_resolve_unpack): Copy the whole typespec from the vector. |
| * trans-array.c (gfc_conv_expr_descriptor): In the EXPR_FUNCTION |
| case, get the string length from the scalarization state. |
| |
| 2005-09-14 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| * Make-lang.in: Change targets prefixes from f95 to fortran. |
| * config-lang.in: Change language name to "fortran". |
| * lang.opt: Change language name to "fortran". |
| * options.c: Change CL_F95 to CL_Fortran. |
| |
| 2005-09-09 Thomas Koenig <Thomas.Koenig@online.de> |
| |
| gfortran.texi: Document IOSTAT= specifier. |
| |
| 2005-09-09 Thomas Koenig <Thomas.Koenig@online.de> |
| |
| * gfortran.h: Add iomsg to gfc_open, gfc_close, gfc_filepos, |
| gfc_inquire and gfc_dt. |
| * dump-parse-tree.c (gfc_show_code_node): Add iomsg |
| for open, close, file positioning, inquire and namelist. |
| * io.c (io_tag): Add tag_iomsg. |
| (resolve_tag): Add standards warning for iomsg. |
| (match_open_element): Add iomsg. |
| (gfc_free_open): Add iomsg. |
| (gfc_resolve_open): Add iomsg. |
| (gfc_free_close): Add iomsg. |
| (match_close_element): Add iomsg. |
| (gfc_resolve_close): Add iomsg. |
| (gfc_free_filepos): Add iomsg. |
| (match_file_element): Add iomsg. |
| (gfc_resolve_filepos): Add iostat and iomsg. |
| (match-dt_element): Add iomsg. |
| (gfc_free_dt): Add iomsg. |
| (gfc_resolve_dt): Add iomsg. |
| (gfc_free_inquire): Add iomsg. |
| (match_inquire_element): Add iomsg. |
| (gfc_resolve_inquire): Add iomsg. |
| * trans_io.c: Add ioparm_iomsg and ioparm_iomsg_len. |
| (gfc_build_io_library_fndecls): Add iomsg as last field. |
| (gfc_trans_open): Add iomsg. |
| (gfc_trans_close): Add iomsg. |
| (build_fileos): Call set_string for iomsg. |
| (gfc_trans_inquire): Add iomsg. |
| (build_dt): Add iomsg. |
| |
| 2005-09-09 Richard Sandiford <richard@codesourcery.com> |
| |
| * match.h (gfc_match_equiv_variable): Declare. |
| |
| 2005-09-09 Richard Sandiford <richard@codesourcery.com> |
| |
| PR fortran/19239 |
| * Makefile.in (fortran/trans-expr.o): Depend on dependency.h. |
| * dependency.h (gfc_ref_needs_temporary_p): Declare. |
| * dependency.c (gfc_ref_needs_temporary_p): New function. |
| (gfc_check_fncall_dependency): Use it instead of inlined check. |
| By so doing, take advantage of the fact that character substrings |
| within an array reference also need a temporary. |
| * trans.h (GFC_SS_VECTOR): Adjust comment. |
| * trans-array.c (gfc_free_ss): Remove GFC_SS_VECTOR case. |
| (gfc_set_vector_loop_bounds): New function. |
| (gfc_add_loop_ss_code): Call it after evaluating the subscripts of |
| a GFC_SS_SECTION. Deal with the GFC_SS_VECTOR case by evaluating |
| the vector expression and caching its descriptor for use within |
| the loop. |
| (gfc_conv_array_index_ref, gfc_conv_vector_array_index): Delete. |
| (gfc_conv_array_index_offset): Handle scalar, vector and range |
| dimensions as separate cases of a switch statement. In the vector |
| case, use the loop variable to calculate a vector index and use the |
| referenced element as the dimension's index. Perform bounds checking |
| on this final index. |
| (gfc_conv_section_upper_bound): Return null for vector indexes. |
| (gfc_conv_section_startstride): Give vector indexes a start value |
| of 0 and a stride of 1. |
| (gfc_conv_ss_startstride): Adjust for new GFC_SS_VECTOR representation. |
| (gfc_conv_expr_descriptor): Expand comments. Generalize the |
| handling of the !want_pointer && !direct_byref case. Use |
| gfc_ref_needs_temporary_p to decide whether the variable case |
| needs a temporary. |
| (gfc_walk_variable_expr): Handle DIMEN_VECTOR by creating a |
| GFC_SS_VECTOR index. |
| * trans-expr.c: Include dependency.h. |
| (gfc_trans_arrayfunc_assign): Fail if the target needs a temporary. |
| |
| 2005-09-09 Richard Sandiford <richard@codesourcery.com> |
| |
| PR fortran/21104 |
| * trans.h (gfc_interface_sym_mapping, gfc_interface_mapping): Moved |
| from trans-expr.c. |
| (gfc_init_interface_mapping, gfc_free_interface_mapping) |
| (gfc_add_interface_mapping, gfc_finish_interface_mapping) |
| (gfc_apply_interface_mapping): Declare. |
| * trans-array.h (gfc_set_loop_bounds_from_array_spec): Declare. |
| (gfc_trans_allocate_temp_array): Add pre and post block arguments. |
| * trans-array.c (gfc_set_loop_bounds_from_array_spec): New function. |
| (gfc_trans_allocate_array_storage): Replace loop argument with |
| separate pre and post blocks. |
| (gfc_trans_allocate_temp_array): Add pre and post block arguments. |
| Update call to gfc_trans_allocate_array_storage. |
| (gfc_trans_array_constructor, gfc_conv_loop_setup): Adjust for new |
| interface to gfc_trans_allocate_temp_array. |
| * trans-expr.c (gfc_interface_sym_mapping, gfc_interface_mapping): |
| Moved to trans.h. |
| (gfc_init_interface_mapping, gfc_free_interface_mapping) |
| (gfc_add_interface_mapping, gfc_finish_interface_mapping) |
| (gfc_apply_interface_mapping): Make extern. |
| (gfc_conv_function_call): Build an interface mapping for array |
| return values too. Call gfc_set_loop_bounds_from_array_spec. |
| Adjust call to gfc_trans_allocate_temp_array so that code is |
| added to SE rather than LOOP. |
| |
| 2005-09-09 Richard Sandiford <richard@codesourcery.com> |
| |
| PR fortran/12840 |
| * trans.h (gfor_fndecl_internal_realloc): Declare. |
| (gfor_fndecl_internal_realloc64): Declare. |
| * trans-decl.c (gfor_fndecl_internal_realloc): New variable. |
| (gfor_fndecl_internal_realloc64): New variable. |
| (gfc_build_builtin_function_decls): Initialize them. |
| * trans-array.h (gfc_trans_allocate_temp_array): Add a fourth argument. |
| * trans-array.c (gfc_trans_allocate_array_storage): Add an argument |
| to say whether the array can grow later. Don't allocate the array |
| on the stack if so. Don't call malloc for zero-sized arrays. |
| (gfc_trans_allocate_temp_array): Add a similar argument here. |
| Pass it along to gfc_trans_allocate_array_storage. |
| (gfc_get_iteration_count, gfc_grow_array): New functions. |
| (gfc_iterator_has_dynamic_bounds): New function. |
| (gfc_get_array_constructor_element_size): New function. |
| (gfc_get_array_constructor_size): New function. |
| (gfc_trans_array_ctor_element): Replace pointer argument with |
| a descriptor tree. |
| (gfc_trans_array_constructor_subarray): Likewise. Take an extra |
| argument to say whether the variable-sized part of the constructor |
| must be allocated using realloc. Grow the array when this |
| argument is true. |
| (gfc_trans_array_constructor_value): Likewise. |
| (gfc_get_array_cons_size): Delete. |
| (gfc_trans_array_constructor): If the loop bound has not been set, |
| split the allocation into a static part and a dynamic part. Set |
| loop->to to the bounds for static part before allocating the |
| temporary. Adjust call to gfc_trans_array_constructor_value. |
| (gfc_conv_loop_setup): Allow any constructor to determine the |
| loop bounds. Check whether the constructor has a dynamic size |
| and prefer to use something else if so. Expect the loop bound |
| to be set later. Adjust call to gfc_trans_allocate_temp_array. |
| * trans-expr.c (gfc_conv_function_call): Adjust another call here. |
| |
| 2005-09-09 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/18878 |
| * module.c (find_use_name_n): Based on original |
| find_use_name. Either counts number of use names for a |
| given real name or returns use name n. |
| (find_use_name, number_use_names): Interfaces to the |
| function find_use_name_n. |
| (read_module): Add the logic and calls to these functions, |
| so that mutiple reuses of the same real name are loaded. |
| |
| 2005-09-09 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/22304 |
| PR fortran/23270 |
| PR fortran/18870 |
| PR fortran/16511 |
| PR fortran/17917 |
| * gfortran.h: Move definition of BLANK_COMMON_NAME from trans- |
| common.c so that it is accessible to module.c. Add common_head |
| field to gfc_symbol structure. Add field for the equivalence |
| name AND new attr field, in_equivalence. |
| * match.c (gfc_match_common, gfc_match_equivalence): In loops |
| that flag common block equivalences, emit an error if the |
| common blocks are different, using sym->common_head as the |
| common block identifier. Ensure that symbols that are equivalence |
| associated with a common block are marked as being in_common. |
| * module.c (write_blank_common): New. |
| (write_common): Use unmangled common block name. |
| (load_equiv): New function ported from g95. |
| (read_module): Call load_equiv. |
| (write_equiv): New function ported from g95. Correct |
| string referencing for gfc functions. Give module |
| equivalences a unique name. |
| (write_module): Call write_equiv and write_blank_common. |
| * primary.c (match_variable) Old gfc_match_variable, made |
| static and third argument provided to indicate if parent |
| namespace to be visited or not. |
| (gfc_match_variable) New. Interface to match_variable. |
| (gfc_match_equiv_variable) New. Interface to match_variable. |
| * trans-common.c (finish_equivalences): Provide the call |
| to create_common with a gfc_common_header so that |
| module equivalences are made external, rather than local. |
| (find_equivalences): Ensure that all members in common block |
| equivalences are marked as used. This prevents the subsequent |
| call to this function from making local unions. |
| * trans-decl.c (gfc_generate_function_code): Move the call to |
| gfc_generate_contained_functions to after the call to |
| gfc_trans_common so the use-associated, contained common |
| blocks produce the correct references. |
| (gfc_create_module_variable): Return for equivalenced symbols |
| with existing backend declaration. |
| |
| 2005-09-08 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| PR fortran/23765 |
| * match.c (gfc_match_common): Remove unnecessary / wrong special |
| cases for end-of-statement. |
| |
| 2005-09-08 Janne Blomqvist <jblomqvi@cc.hut.fi> |
| |
| * gfortran.texi: Add section about implemented F2003 features. |
| |
| 2005-09-08 Richard Sandiford <richard@codesourcery.com> |
| |
| PR fortran/15326 |
| * trans-array.c (gfc_add_loop_ss_code): Set ss->string_length in |
| the GFC_SS_FUNCTION case too. |
| * trans-expr.c (gfc_conv_function_val): Allow symbols to be bound |
| to function pointers as well as function decls. |
| (gfc_interface_sym_mapping, gfc_interface_mapping): New structures. |
| (gfc_init_interface_mapping, gfc_free_interface_mapping) |
| (gfc_get_interface_mapping_charlen, gfc_get_interface_mapping_array) |
| (gfc_set_interface_mapping_bounds, gfc_add_interface_mapping) |
| (gfc_finish_interface_mapping, gfc_apply_interface_mapping_to_cons) |
| (gfc_apply_interface_mapping_to_ref) |
| (gfc_apply_interface_mapping_to_expr) |
| (gfc_apply_interface_mapping): New functions. |
| (gfc_conv_function_call): Evaluate the arguments before working |
| out where the result should go. Make the null pointer case provide |
| the string length in parmse.string_length. Cope with non-constant |
| string lengths, using the above functions to evaluate such lengths. |
| Use a temporary typespec; don't assign to sym->cl->backend_decl. |
| Don't assign to se->string_length when returning a cached array |
| descriptor. |
| |
| 2005-09-08 Richard Sandiford <richard@codesourcery.com> |
| |
| PR fortran/19928 |
| * trans-array.c (gfc_conv_array_ref): Call gfc_advance_se_ss_chain |
| after handling scalarized references. Make "indexse" inherit from |
| "se" when handling AR_ELEMENTs. |
| (gfc_walk_variable_expr): Add GFC_SS_SCALAR entries for each |
| substring or scalar reference that follows an array section. |
| * trans-expr.c (gfc_conv_variable): When called from within a |
| scalarization loop, start out with "ref" pointing to the scalarized |
| part of the reference. Don't call gfc_advance_se_ss_chain here. |
| |
| 2005-09-07 Richard Sandiford <richard@codesourcery.com> |
| |
| PR fortran/23373 |
| * trans-expr.c (gfc_trans_pointer_assignment): Assign to a temporary |
| descriptor if the rhs is not a null pointer or variable. |
| |
| 2005-09-07 Thomas Koenig <Thomas.Koenig@online.de> |
| |
| PR fortran/20848 |
| * symbol.c(check_conflict): Add conflict for parameter/save, |
| |
| 2005-09-06 Richard Sandiford <richard@codesourcery.com> |
| |
| PR fortran/19269 |
| * simplify.c (gfc_simplify_transpose): Set the result's typespec from |
| the source, not the first element of the return value. |
| |
| 2005-09-04 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| PR fortran/23661 |
| * io.c (match_io): Correctly backup if PRINT followed by |
| symbol which is not a namelist. Force blank between PRINT |
| and namelist in free form. |
| |
| 2005-08-31 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| PR fortran/20592 |
| * gfortran.h (gfc_option_t): Add flag_automatic. |
| * invoke.texi: Document the -fno-automatic option. |
| * lang.opt: Add a -fautomatic option. |
| * options.c (gfc_init_options): Default for -fautomatic is on. |
| (gfc_handle_option): Add handling of -fautomatic option. |
| * resolve.c (gfc_resolve): When -fno-automatic is used, mark |
| needed variables as SAVE. |
| |
| 2005-08-27 Erik Edelmann <erik.edelmann@iki.fi> |
| |
| * trans-array.c (gfc_trans_deferred_array): Fix comments. |
| |
| 2005-08-27 Erik Schnetter <schnetter@aei.mpg.de> |
| |
| * primary.c (match_charkind_name): Fix typo in comment leading to |
| function. |
| |
| 2005-08-25 Erik Edelmann <eedelman@acclab.helsinki.fi> |
| |
| PR fortran/20363 |
| * symbol.c (find_special): Remove. |
| (build_sym, add_init_expr, attr_decl1): Remove calls to |
| find_special in favor of calls to gfc_get_symbol. |
| |
| 2005-08-24 Thomas Koenig <Thomas.Koenig@online.de> |
| |
| PR fortran/17758 |
| * gfortran.h (symbol_attribute): Add noreturn to the structure. |
| (gfc_intrinsic_sym): Add noreturn to the structure. |
| * intrinsic.c (make_noreturn): New function. |
| (add_subroutines): Mark subroutines abort and exit as noreturn. |
| (gfc_intrinsic_sub_interface): Copy noreturn attribute from |
| isym to the resolved symbol. |
| * trans-decl.c (gfc_get_extern_function_decl): Set function |
| as VOLATILE (== noreturn) if the noreturn attribute is set. |
| |
| 2005-08-21 Steven G. Kargl <kargls@comcast.net> |
| |
| * decl.c: Typo in comment. |
| |
| 2005-08-21 Steven G. Kargl <kargls@comcast.net> |
| |
| * array.c: Bump GFC_MAX_AC_EXPAND from 100 to 65535. |
| |
| 2005-08-21 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| * gfortran.h (gfc_option_t): Remove source field. Add |
| flag_d_lines field. |
| (gfc_new_file): Remove arguments in prototype. |
| (gfc_source_file): Make 'const char *'. |
| * f95-lang.c (gfc_init): Use gfc_source_file instead of |
| gfc_option.source. Call gfc_new_file without arguments. |
| * invoke.texi: Document new options '-fd-lines-as-code' and |
| '-fd-lines-as-comment'. |
| * lang.opt: Add new options. Alphabetize. |
| * options.c (gfc_init_options): Initialize gfc_source_file instead |
| of gfc_option.source. Initialize gfc_option.flag_d_lines. |
| (form_from_filename): Move here from scanner.c. Make |
| 'filename' argument 'const'. |
| (gfc_post_options): Set gfc_source_file. Determine source form. |
| Warn if 'd-lines*' are used in free form. |
| * scanner.c (gfc_source_file): Constify. |
| (skip_fixed_comments): Deal with d-lines. |
| (get_file): Constify argument 'name'. |
| (load_file): Constify argument 'filename'. |
| (form_from_filename): Moved to options.c. |
| (gfc_new_file): Remove arguments. Don't initialize |
| gfc_source_file, don't determine source form. |
| * trans-const.c (gfc_init_constants): Use gfc_source_file instead |
| of gfc_option.source. |
| |
| 2005-08-19 Steven G. Kargl <kargls@comcast.net> |
| |
| PR fortran/23065 |
| * gfortran.h: Remove PATH_MAX definition. |
| * module.c (write_module, gfc_dump_module): Use alloca to allocate |
| buffers. |
| * scanner.c (gfc_release_include_path, form_from_filename): Ditto. |
| |
| 2005-08-16 Huang Chun <chunhuang73@hotmail.com> |
| |
| * trans-expr.c (gfc_conv_power_op): Evaluate the expression before |
| expand. |
| |
| 2005-08-14 Asher Langton <langton2@llnl.gov> |
| |
| * parse.c (match): Enclose macro in do...while(0) and braces. |
| |
| 2005-08-14 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/21432. |
| * gfortran.texi: Document PRINT namelist. |
| |
| 2005-08-14 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/21432. |
| * io.c (match_io): Add code to implement PRINT namelist. |
| |
| 2005-08-14 Canqun Yang <canqun@nudt.edu.cn> |
| |
| * trans-stmt.c (gfc_trans_arithmetic_if): Optimized in case of equal |
| labels. |
| |
| 2005-08-11 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| Steven Bosscher <stevenb@suse.de> |
| |
| PR libfortran/20006 |
| * gfortran.h: Add is_main_program member to symbol_attribute. |
| * trans-decl: Add a gfor_fndecl_set_std tree. |
| (gfc_build_builtin_function_decls): Create it. |
| (gfc_generate_function_code): Add this call at the beginning of |
| the main program. |
| * trans.c (gfc_generate_code): Move main_program and attr. |
| * trans.h: Add declaration for gfor_fndecl_set_std. |
| |
| 2005-08-10 Thomas Koenig <Thomas.Koenig@online.de> |
| |
| PR libfortran/22143 |
| gfortran.h: Declare new function gfc_resolve_dim_arg. |
| resolve.c: New function gfc_resolve_dim_arg. |
| iresolve.c (gfc_resolve_all): Use gfc_resolve_dim_arg. |
| (gfc_resolve_any): Likewise. |
| (gfc_resolve_count): Likewise. |
| (gfc_resolve_cshift): Likewise. If the kind of shift is less |
| gfc_default_integer_kind, convert it to default integer type. |
| (gfc_resolve_eoshift): Likewise. |
| (gfc_resolve_maxloc): Use gfc_resolve_dim_arg. |
| (gfc_resolve_maxval): Likewise. |
| (gfc_resolve_minloc): Likewise. |
| (gfc_resolve_minval): Likewise. |
| (gfc_resolve_product): Likewise. |
| (gfc_resolve_spread): Likewise. |
| (gfc_resolve_sum): Likewise. |
| |
| 2005-08-09 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| * check.c (gfc_check_ttynam_sub, gfc_check_isatty): Add check |
| functions for new intrinsics TTYNAM and ISATTY. |
| * intrinsic.c (add_functions, add_subroutines): Add new |
| intrinsics. |
| * intrinsic.h: Add prototypes for new check and resolve |
| functions. |
| * iresolve.c (gfc_resolve_isatty, gfc_resolve_ttynam_sub): New |
| resolve functions for intrinsics TTYNAM and ISATTY. |
| * gfortran.h (gfc_generic_isym_id): Add symbol for ISATTY. |
| * trans-intrinsic.c: Add case for GFC_ISYM_ISATTY. |
| |
| 2005-08-09 Jakub Jelinek <jakub@redhat.com> |
| |
| * scanner.c (preprocessor_line): Don't write beyond the end of flag |
| buffer. |
| |
| 2005-08-07 Janne Blomqvist <jblomqvi@cc.hut.fi> |
| |
| PR fortran/22390 |
| * dump-parse-tree.c (gfc_show_code_node): Add case for FLUSH. |
| * gfortran.h: Add enums for FLUSH. |
| * io.c (gfc_free_filepos,match_file_element,match_filepos): Modify |
| comment appropriately. (gfc_match_flush): New function. |
| * match.c (gfc_match_if): Add match for flush. |
| * match.h: Add prototype. |
| * parse.c (decode_statement): Add flush to 'f' case. |
| (next_statement): Add case for flush. (gfc_ascii_statement): Likewise. |
| * resolve.c (resolve_code): Add flush case. |
| * st.c (gfc_free_statement): Add flush case. |
| * trans-io.c: Add prototype for flush. |
| (gfc_build_io_library_fndecls): Build fndecl for flush. |
| (gfc_trans_flush): New function. |
| * trans-stmt.h: Add prototype. |
| * trans.c (gfc_trans_code): Add case for flush. |
| |
| 2005-08-06 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| * primary.c (match_hollerith_constant): Fix typo. |
| |
| 2005-08-06 Kazu Hirata <kazu@codesourcery.com> |
| |
| * decl.c, dump-parse-tree.c, gfortran.texi, intrinsic.texi, |
| invoke.texi, resolve.c, trans-array.c, trans-array.h, |
| trans-common.c, trans-expr.c, trans-io.c, trans.h: Fix |
| comment/doc typos. Follow spelling conventions. |
| |
| 2005-08-06 Jakub Jelinek <jakub@redhat.com> |
| |
| PR fortran/18833 |
| PR fortran/20850 |
| * primary.c (match_varspec): If equiv_flag, don't look at sym's |
| attributes, call gfc_match_array_ref up to twice and don't do any |
| substring or component processing. |
| * resolve.c (resolve_equivalence): Transform REF_ARRAY into |
| REF_SUBSTRING or nothing if needed. Check that substrings |
| don't have zero length. |
| |
| 2005-08-05 Thomas Koenig <Thomas.Koenig@online.de> |
| |
| * trans-expr.c (gfc_build_builtin_function_decls): Mark |
| stop_numeric and stop_string as non-returning. |
| |
| 2005-08-04 Paul Brook <paul@codesourcery.com> |
| |
| * trans-expr.c (gfc_conv_expr, gfc_conv_expr_type): Update comments. |
| (gfc_conv_expr_lhs): Fix assertion. |
| (gfc_conv_expr_val): Merge post block. Set se.expr to new value. |
| |
| 2005-08-02 David Edelsohn <edelsohn@gnu.org> |
| |
| PR fortran/22491 |
| * expr.c (simplify_parameter_variable): Do not copy the subobject |
| references if the expression value is a constant. |
| |
| * expr.c (gfc_simplify_expr): Evaluate constant substrings. |
| |
| 2005-07-31 Jerry DeLisle <jvdelisle@verizon.net> |
| |
| * intrinsic.texi: Add documentation for exponent, floor, and fnum and |
| fix description of ceiling in index. |
| |
| 2005-07-31 Steven Bosscher <stevenb@suse.de> |
| |
| * trans-decl.c (gfc_build_builtin_function_decls): Give the internal |
| malloc functions the 'malloc' attribute. Give runtime_error the |
| 'noreturn' attribute. |
| |
| 2005-07-31 Steven Bosscher <stevenb@suse.de> |
| |
| * trans-stmt.c (gfc_trans_goto): Jump to the known label instead |
| of the assigned goto variable. |
| |
| 2005-07-29 Steven Bosscher <stevenb@suse.de> |
| |
| * trans-types.h (gfc_array_range_type): Add missing GTY decl for this. |
| |
| 2005-07-28 Andrew Pinski <pinskia@physics.uc.edu> |
| |
| * fortran/f95-lang.c (language_function): Remove |
| named_labels, shadowed_labels, returns_value, returns_abnormally, |
| warn_about_return_type, and extern_inline fields. |
| (named_labels): Remove variable. |
| (gfc_init_decl_processing): Remove setting of named_labels. |
| |
| 2005-07-27 Volker Reichelt <reichelt@igpm.rwth-aachen.de> |
| |
| PR fortran/22503 |
| * resolve.c (resolve_operator): Improve diagnostic for comparison |
| of logicals with invalid operator. |
| |
| 2005-07-25 Jakub Jelinek <jakub@redhat.com> |
| |
| PR fortran/20063 |
| * data.c (gfc_assign_data_value_range): Call |
| create_character_initializer if last_ts is a character type. |
| |
| 2005-07-22 Manfred Hollstein <mh@suse.com> |
| |
| * match.c (gfc_match_symbol): Fix uninitialised warnings. |
| * matchexp.c (gfc_match_expr): Likewise. |
| |
| 2005-07-20 Giovanni Bajo <giovannibajo@libero.it> |
| |
| Make CONSTRUCTOR use VEC to store initializers. |
| * trans-array.c (gfc_build_null_descriptor, |
| gfc_trans_array_constructor_value, gfc_conv_array_initializer): |
| Update to cope with VEC in CONSTRUCTOR_ELTS. |
| * trans-common.c (create_common): Likewise. |
| * trans-expr.c (gfc_conv_structure): Likewise. |
| * trans-stmt.c (gfc_trans_character_select): Use |
| build_constructor_from_list instead of build_constructor. |
| |
| 2005-07-19 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/16940 |
| * resolve.c (resolve_symbol): A symbol with FL_UNKNOWN |
| is matched against interfaces in parent namespaces. If there |
| the symtree is set to point to the interface. |
| |
| 2005-07-16 David Edelsohn <edelsohn@gnu.org> |
| |
| PR fortran/21730 |
| * decl.c (do_parm): Adjust character initializer to character length |
| of symbol before assigning. |
| |
| 2005-07-14 Steve Ellcey <sje@cup.hp.com> |
| |
| * trans-types.c (MAX_REAL_KINDS): Increase from 4 to 5. |
| |
| 2005-07-14 Jakub Jelinek <jakub@redhat.com> |
| |
| * gfortran.h (MAX_ERROR_MESSAGE): Remove. |
| (gfc_error_buf): Add allocated and index fields. Change message |
| field from array to a pointer. |
| * error.c (use_warning_buffer, error_ptr, warning_ptr): Remove. |
| (cur_error_buffer): New variable. |
| (error_char): Use cur_error_buffer->{message,index} instead of |
| {warning,error}_{buffer.message,ptr}. Reallocate message buffer |
| if too small. |
| (gfc_warning, gfc_notify_std, gfc_error, gfc_error_now): Setup |
| cur_error_buffer and its index rather than {warning,error}_ptr |
| and use_warning_buffer. |
| (gfc_warning_check, gfc_error_check): Don't print anything if |
| message is NULL. |
| (gfc_push_error): Allocate saved message with xstrdup. |
| (gfc_pop_error): Free saved message with gfc_free. |
| (gfc_free_error): New function. |
| * primary.c (match_complex_constant): Call gfc_free_error if |
| gfc_pop_error will not be called. |
| * match.c (gfc_match_st_function): Likewise. |
| |
| PR fortran/22417 |
| * scanner.c (preprocessor_line): Don't treat flag 3 as the start of a new |
| file. Fix file left but not entered warning. |
| |
| 2005-07-14 Feng Wang <fengwang@nudt.edu.cn> |
| Steven G. Kargl <kargls@comcast.net> |
| |
| * array.c (resolve_character_array_constructor): Allocate gfc_charlen |
| for the array and attach to namespace list for automatic deallocation. |
| |
| 2005-07-13 Andreas Schwab <schwab@suse.de> |
| |
| * Make-lang.in (fortran/dependency.o): Depend on |
| $(GFORTRAN_TRANS_DEPS). |
| |
| 2005-07-11 Jakub Jelinek <jakub@redhat.com> |
| |
| * trans-stmt.c (gfc_trans_forall_loop): Clear maskindex before |
| the outermost loop. |
| (gfc_trans_assign_need_temp, gfc_trans_pointer_assign_need_temp, |
| gfc_trans_forall_1, gfc_evaluate_where_mask, gfc_trans_where_2): |
| Don't clear maskindexes here. |
| |
| 2005-07-08 Daniel Berlin <dberlin@dberlin.org> |
| |
| * trans-decl.c (create_function_arglist): DECL_ARG_TYPE_AS_WRITTEN |
| is removed. |
| |
| 2005-07-08 Jakub Jelinek <jakub@redhat.com> |
| |
| * primary.c (gfc_match_rvalue): Handle ENTRY the same way |
| as FUNCTION. |
| |
| 2005-07-07 Jakub Jelinek <jakub@redhat.com> |
| |
| * scanner.c (load_line): Add pbuflen argument, don't make |
| buflen static. If maxlen == 0 or preprocessor_flag, |
| don't truncate at buflen, but at maxlen. In xrealloc add |
| 1 byte at the end for the terminating '\0'. Don't fill |
| with spaces up to buflen, but gfc_option.fixed_line_length. |
| (load_file): Adjust load_line caller. Add line_len variable. |
| |
| * scanner.c (preprocessor_line): Only set current_file->line when errors |
| have not been encountered. Warn and don't crash if a file leave |
| preprocessor line has no corresponding entering line. Formatting. |
| |
| 2005-07-07 Steven Bosscher <stevenb@suse.de> |
| |
| * primary.c (match_hollerith_constant): Use int, not unsigned int, |
| for the hollerith length. Fix indentation. |
| |
| 2005-07-07 Feng Wang <fengwang@nudt.edu.cn> |
| |
| PR fortran/16531 |
| PR fortran/15966 |
| PR fortran/18781 |
| * arith.c (gfc_hollerith2int, gfc_hollerith2real, |
| gfc_hollerith2complex, gfc_hollerith2character, gfc_hollerith2logical): |
| New functions. |
| (eval_intrinsic): Don't evaluate if Hollerith constant arguments exist. |
| * arith.h (gfc_hollerith2int, gfc_hollerith2real, |
| gfc_hollerith2complex, gfc_hollerith2character, gfc_hollerith2logical): |
| Add prototypes. |
| * expr.c (free_expr0): Free memery allocated for Hollerith constant. |
| (gfc_copy_expr): Allocate and copy string if Expr is from Hollerith. |
| (gfc_check_assign): Enable conversion from Hollerith to other. |
| * gfortran.h (bt): Add BT_HOLLERITH. |
| (gfc_expr): Add from_H flag. |
| * intrinsic.c (gfc_type_letter): Return 'h' for BT_HOLLERITH. |
| (add_conversions): Add conversions from Hollerith constant to other. |
| (do_simplify): Don't simplify if Hollerith constant arguments exist. |
| * io.c (resolve_tag): Enable array in FORMAT tag under GFC_STD_GNU. |
| * misc.c (gfc_basetype_name): Return "HOLLERITH" for BT_HOLLERITH. |
| (gfc_type_name): Print "HOLLERITH" for BT_HOLLERITH. |
| * primary.c (match_hollerith_constant): New function. |
| (gfc_match_literal_constant): Add match Hollerith before Integer. |
| * simplify.c (gfc_convert_constant): Add conversion from Hollerith |
| to other. |
| * trans-const.c (gfc_conv_constant_to_tree): Use VIEW_CONVERT_EXPR to |
| convert Hollerith constant to tree. |
| * trans-io.c (gfc_convert_array_to_string): Get array's address and |
| length to set string expr. |
| (set_string): Deal with array assigned Hollerith constant and character |
| array. |
| * gfortran.texi: Document Hollerith constants as extention support. |
| |
| 2005-07-07 Feng Wang <fengwang@nudt.edu.cn> |
| |
| PR fortran/22327 |
| * trans-array.c (gfc_trans_array_constructor_value): Fix index of data. |
| |
| 2005-07-07 Jakub Jelinek <jakub@redhat.com> |
| |
| * decl.c (gfc_match_entry): Allow ENTRY without parentheses |
| even in FUNCTIONs. |
| |
| 2005-07-03 Kazu Hirata <kazu@codesourcery.com> |
| |
| * gfortran.texi, intrinsic.texi: Fix typos. |
| * symbol.c: Fix a comment typo. |
| |
| 2005-07-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
| |
| * error.c (error_printf, error_print): Use ATTRIBUTE_GCC_GFC. |
| * gfortran.h (ATTRIBUTE_GCC_GFC): New. |
| (gfc_warning, gfc_warning_now, gfc_error, gfc_error_now, |
| gfc_fatal_error, gfc_internal_error, gfc_notify_std): Use |
| ATTRIBUTE_GCC_GFC. |
| |
| 2005-07-03 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| PR fortran/20842 |
| * io.c (match_dt_element): Do not allow END tag in PRINT or |
| WRITE statement. |
| |
| 2005-07-02 Joseph S. Myers <joseph@codesourcery.com> |
| |
| * lang.opt: Remove "." from end of help texts. |
| |
| 2005-07-01 Jerry DeLisle <jvdelisle@verizon.net> |
| |
| * gfortran.texi: Fix typos and grammar. |
| * invoke.texi: Fix typos and grammar. |
| * intrinsic.texi: Add documentaion for eoshift, epsilon, etime, and |
| exit. Fixed alignment of text for dtime syntax. Fixed a few line |
| lengths. |
| |
| 2005-06-25 Jakub Jelinek <jakub@redhat.com> |
| |
| * trans-stmt.c (gfc_trans_forall_1): Prefer to use smaller logical |
| type than boolean_type_node. |
| |
| 2005-06-25 Kelley Cook <kcook@gcc.gnu.org> |
| |
| * all files: Update FSF address in copyright headers. |
| |
| 2005-06-24 Jerry DeLisle <jvdelisle@verizon.net> |
| |
| PR fortran/21915 |
| * gfortran.h: Add symbols for new intrinsic functions. |
| * intrinsic.c: Add new functions acosh, asinh, and atanh. |
| * intrinsic.h: Add prototypes for the new functions. |
| * iresolve.c (gfc_resolve_acosh): New function. |
| (gfc_resolve_asinh): New function. |
| (gfc_resolve_atanh): New function. |
| * mathbuiltins.def: Add defines. |
| * simplify.c (gfc_simplify_acosh): New function. |
| (gfc_simplify_asinh): New function. |
| (gfc_simplify_atanh): New function. |
| |
| 2005-06-24 Feng Wang <fengwang@nudt.edu.cn> |
| |
| * simplify.c (gfc_simplify_modulo): Don't clear before get result. |
| |
| 2005-06-22 Paul Brook <paul@codesourcery.com> |
| |
| PR fortran/21034 |
| * symbol.c (gfc_is_var_automatic): New function. |
| (save_symbol): Use it. |
| |
| 2005-06-21 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de> |
| Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/22010 |
| Port from g95. |
| * module.c (mio_namelist): New function. Correct to set |
| namelist_tail and to give error on renaming namelist by use |
| association. |
| (mio_symbol): Call mio_namelist. |
| |
| 2005-06-19 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| * gfortran.h: Add flag_backslash compile-time option. |
| * lang.opt: Add support for -fbackslash option. |
| * options.c: Likewise. |
| * primary.c: Implement behavior for -fno-backslash. |
| * invoke.texi: Add doc for -fbackslash option. |
| * gfortran.texi: Remove mention of -fno-backslash as a |
| possible extension. |
| |
| 2005-06-20 Steven G. Kargl <kargls@comcast.net> |
| (port from g95) |
| |
| PR fortran/21257 |
| * match.c (gfc_match_label): Detect duplicate labels. |
| |
| |
| 2005-06-20 Erik Edelmann <erik.edelmann@iki.fi> |
| |
| * intrinsic.c (check_intrinsic_standard): Fix spelling error |
| in a warning message. |
| |
| 2005-06-18 Erik Edelman <eedelman@acclab.helsinki.fi> |
| Steven G. Kargl <kargls@comast.net> |
| |
| PR fortran/19926 |
| * primary.c (gfc_match_rvalue): expr_type can be EXPR_CONSTANT |
| for an array; check that sym->as is NULL. |
| |
| |
| 2005-06-18 Steven G. Kargl <kargls@comcast.net> |
| |
| * intrinsic.c (gfc_intrinsic_func_interface): Enable errors for generic |
| functions whose simplification routine return FAILURE. |
| |
| 2005-06-13 Geoffrey Keating <geoffk@apple.com> |
| |
| * Make-lang.in (fortran.install-man): Doesn't depend on installdirs. |
| (rule for installing f95.1 manpage): Does depend on installdirs. |
| |
| 2005-06-13 Jakub Jelinek <jakub@redhat.com> |
| |
| PR fortran/22038 |
| * trans-stmt.c (gfc_trans_forall_loop): Only increment maskindex |
| in the innermost loop. |
| |
| * trans-expr.c (gfc_conv_function_call): Return int instead of |
| void. Use a local variable for has_alternate_specifier and |
| return it. Avoid modification of function type's return value |
| in place, since it may be shared. |
| * trans.h (has_alternate_specifier): Remove. |
| (gfc_conv_function_call): Change return type. |
| * trans-stmt.c (has_alternate_specifier): Remove. |
| (gfc_trans_call): Add a local has_alternate_specifier variable, |
| set it from gfc_conv_function_call return value. |
| |
| 2005-06-12 Richard Henderson <rth@redhat.com> |
| |
| * trans-array.c (gfc_conv_descriptor_data_get): Rename from |
| gfc_conv_descriptor_data. Cast the result to the DATAPTR type. |
| (gfc_conv_descriptor_data_set, gfc_conv_descriptor_data_addr): New. |
| (gfc_trans_allocate_array_storage): Use them. |
| (gfc_array_allocate, gfc_array_deallocate): Likewise. |
| (gfc_trans_dummy_array_bias, gfc_conv_expr_descriptor): Likewise. |
| (gfc_trans_deferred_array): Likewise. |
| * trans-expr.c (gfc_conv_function_call): Likewise. |
| (gfc_trans_subcomponent_assign): Likewise. |
| (gfc_trans_pointer_assignment): Likewise. |
| * trans-intrinsic.c (gfc_conv_allocated): Likewise. |
| * trans-types.c (gfc_array_descriptor_base): New. |
| (gfc_get_element_type): Use GFC_TYPE_ARRAY_DATAPTR_TYPE. |
| (gfc_get_array_descriptor_base): Break out from ... |
| (gfc_get_array_type_bounds): ... here. Create type variants. |
| * trans-array.h (gfc_conv_descriptor_data_get): Declare. |
| (gfc_conv_descriptor_data_set, gfc_conv_descriptor_data_addr): Declare. |
| |
| 2005-06-12 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| * trans-expr.c (gfc_conv_variable): POINTER results don't need f2c |
| calling conventions. Look at sym instead of sym->result. |
| * trans-types.c (gfc_sym_type): Remove workaround for frontend bug. |
| Remove condition which is always false with workaround removed. |
| (gfc_return_by_reference): Always look at sym, never at sym->result. |
| |
| 2005-06-11 Steven G. Kargl <kargls@comcast.net> |
| |
| PR fortran/17792 |
| PR fortran/21375 |
| * trans-array.c (gfc_array_deallocate): pstat is new argument |
| (gfc_array_allocate): update gfc_array_deallocate() call. |
| (gfc_trans_deferred_array): ditto. |
| * trans-array.h: update gfc_array_deallocate() prototype. |
| * trans-decl.c (gfc_build_builtin_function_decls): update declaration |
| * trans-stmt.c (gfc_trans_deallocate): Implement STAT= feature. |
| |
| 2005-06-07 Jerry DeLisle <jvdelisle@verizon.net> |
| |
| * intrinsic.texi: Add documentation for dcmplx, digits, |
| dim, idim, ddim, dot_product, dprod, dreal, and dtime. |
| |
| 2005-06-05 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| PR fortran/21912 |
| * trans-array.c (gfc_trans_array_constructor_value): Slightly reorder. |
| Generate correct exit condition in case of negative steps in |
| implied-do loops. |
| |
| * invoke.texi: Fix description of flags required for compatibility |
| with g77. |
| |
| 2005-06-04 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| Erik Schnetter <schnetter@aei.mpg.de> |
| |
| PR fortran/19195 |
| * trans.c (gfc_get_backend_locus): Remove unnecessary adjustment, |
| remove FIXME comment. |
| |
| 2005-06-04 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| * match.c (match_forall_iterator): Don't immediately give error if '=' |
| is not followed by an expression. |
| |
| 2005-06-04 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| Erik Edelmann <erik.edelmann@iki.fi> |
| |
| * array.c (gfc_match_array_constructor): Disallow empty array |
| constructor. |
| |
| 2005-06-03 Jerry DeLisle <jvdelisle@verizon.net> |
| |
| * fortran/intrinsic.texi: Add documentation for |
| command_argument_count, conjg, dconjg, count, |
| cpu_time, cshift, date_and_time, dble, dfloat. |
| |
| 2005-06-01 Roger Sayle <roger@eyesopen.com> |
| |
| * intrinsic.c (add_conv): No longer take a "simplify" argument as |
| its always gfc_convert_constant, instead take a "standard" argument. |
| (add_conversions): Change all existing calls of add_conv to pass |
| GFC_STD_F77 as appropriate. Additionally, if we're allowing GNU |
| extensions support integer-logical and logical-integer conversions. |
| (gfc_convert_type_warn): Warn about use the use of these conversions |
| as a extension when appropriate, i.e. with -pedantic. |
| * simplify.c (gfc_convert_constant): Add support for integer to |
| logical and logical to integer conversions, using gfc_int2log and |
| gfc_log2int. |
| * arith.c (gfc_log2int, gfc_int2log): New functions. |
| * arith.h (gfc_log2int, gfc_int2log): Prototype here. |
| * gfortran.texi: Document this new GNU extension. |
| |
| 2005-06-01 Paul Thomas <pault@gcc.gnu.org> |
| |
| * fortran/trans-expr.c (gfc_conv_variable): Clean up bracketting. |
| * fortran/trans-expr.c (gfc_conv_function_call): Insert spaces. |
| Correct comments and replace convert of integer_one_node with |
| build_int_cst. |
| |
| 2005-06-01 Jakub Jelinek <jakub@redhat.com> |
| |
| PR fortran/21729 |
| * resolve.c (resolve_contained_fntype): Use sym->attr.untyped |
| to avoid giving error multiple times. |
| (resolve_entries): Don't error about BT_UNKNOWN here. |
| (resolve_unknown_f): Capitalize IMPLICIT for consistency. |
| (resolve_fntype): New function. |
| (gfc_resolve): Call resolve_fntype. |
| |
| 2005-06-01 Feng Wang <fengwang@nudt.edu.cn> |
| |
| PR fortran/20883 |
| * fortran/io.c (resolve_tag): Fix error message. |
| |
| 2005-05-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
| |
| * fortran/trans-decl.c: Don't include errors.h. |
| * fortran/Make-lang.in: Updates dependencies. |
| |
| 2005-05-31 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/18109 |
| PR fortran/18283 |
| PR fortran/19107 |
| * fortran/trans-array.c (gfc_conv_expr_descriptor): Obtain the |
| string length from the expression typespec character length value |
| and set temp_ss->stringlength and backend_decl. Obtain the |
| tree expression from gfc_conv_expr rather than gfc_conv_expr_val. |
| Dereference the expression to obtain the character. |
| * fortran/trans-expr.c (gfc_conv_component_ref): Remove the |
| dereference of scalar character pointer structure components. |
| * fortran/trans-expr.c (gfc_trans_subarray_assign): Obtain the |
| string length for the structure component from the component |
| expression. |
| |
| 2005-05-30 Roger Sayle <roger@eyesopen.com> |
| |
| * gfortran.h (GFC_STD_LEGACY): New "standard" macro. Reindent. |
| * options.c (gfc_init_options): By default, allow legacy extensions |
| but warn about them. |
| (gfc_post_options): Make -pedantic warn about legacy extensions |
| even with -std=legacy. |
| (gfc_handle_option): Make -std=gnu follow the default behaviour |
| of warning about legacy extensions, but allowing them. Make the |
| new -std=legacy accept everything and warn about nothing. |
| * lang.opt (std=legacy): New F95 command line option. |
| * invoke.texi: Document both -std=f2003 and -std=legacy. |
| * gfortran.texi: Explain the two types of extensions and document |
| how they are affected by the various -std= command line options. |
| |
| 2005-05-30 Kazu Hirata <kazu@cs.umass.edu> |
| |
| * trans-expr.c: Remove trailing ^M. |
| |
| * trans-expr.c: Fix comment typos. |
| |
| 2005-05-29 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/16939 |
| PR fortran/17192 |
| PR fortran/17193 |
| PR fortran/17202 |
| PR fortran/18689 |
| PR fortran/18890 |
| * fortran/trans-array.c (gfc_conv_resolve_dependencies): Add string |
| length to temp_ss for character pointer array assignments. |
| * fortran/trans-expr.c (gfc_conv_variable): Correct errors in |
| dereferencing of characters and character pointers. |
| * fortran/trans-expr.c (gfc_conv_function_call): Provide string |
| length as return argument for various kinds of handling of return. |
| Return a char[]* temporary for character pointer functions and |
| dereference the temporary upon return. |
| |
| 2005-05-29 Janne Blomqvist <jblomqvi@vipunen.hut.fi> |
| Steven G. Kargl <kargls@comcast.net> |
| |
| fortran/PR20846 |
| * io.c (gfc_match_inquire): Implement constraints on UNIT and FILE usage. |
| |
| 2005-05-29 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| PR libfortran/20006 |
| * io.c (format_item_1): Add check and extension warning for |
| $ edit descriptor. |
| |
| 2005-05-28 Steven G. Kargl <kargls@comcast.net> |
| |
| * arith.c (gfc_arith_init_1): Fix off by one problem; |
| (gfc_check_integer_range): Chop extra bits in subnormal numbers. |
| |
| 2005-05-28 Jerry DeLisle <jvdelisle@verizon.net> |
| Steven G. Kargl <kargls@comcast.net> |
| |
| * intrinsic.texi: added documentation for BIT_SIZE, BTEST, CHAR, CEILING |
| and CMPLX |
| |
| 2005-05-27 Steven G. Kargl <kargls@comcast.net> |
| |
| * trans-array.c (gfc_trans_deferred_array): Use build_int_cst to force |
| like types in comparsion. |
| |
| 2005-05-26 Kazu Hirata <kazu@cs.umass.edu> |
| |
| * data.c, parse.c, trans-array.c, trans-decl.c, |
| trans-intrinsic.c, trans-stmt.c, trans-types.c, trans.c, |
| trans.h: Fix comment typos. Follow spelling conventions. |
| |
| 2005-05-22 Roger Sayle <roger@eyesopen.com> |
| |
| * gfortran.texi: Document some more GNU extensions. |
| |
| 2005-05-22 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| * error.c (gfc_warning): Fix typo in comment. |
| |
| 2005-05-18 Thomas Koenig <Thomas.Koenig@online.de> |
| |
| PR libfortran/21127 |
| * fortran/iresolve.c (gfc_resolve_reshape): Add |
| gfc_type_letter (BT_COMPLEX) for complex to |
| to resolved function name. |
| |
| 2005-05-18 Erik Edelmann <erik.edelmann@iki.fi> |
| |
| * array.c (gfc_match_array_constructor): Support [ ... ] |
| style array constructors. |
| |
| 2005-05-18 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| * f95-lang.c (gfc_init_builtin_functions): Define BUILT_IN_TRUNC |
| and BUILT_IN_TRUNCF instead of BUILT_IN_FLOOR and BUILT_IN_FLOORF. |
| * trans-intrinsic.c (build_fix_expr): Change 'op' argument |
| to correct enum type. |
| (gfc_conv_intrinsic_aint): Likewise. Clarify comment in front of |
| function. Add default case to switch, deal with FIX_TRUNC_EXPR |
| instead of FIX_FLOOR_EXPR. |
| |
| 2005-05-18 Feng Wang <fengwang@nudt.edu.cn> |
| |
| PR fortran/20954 |
| * trans-const.c (gfc_conv_const_charlen): Use gfc_charlen_type_node to |
| build character length. |
| |
| 2005-05-17 Zdenek Dvorak <dvorakz@suse.cz> |
| |
| * trans-types.c (gfc_array_range_type): New variable. |
| (gfc_init_types): Initialize gfc_array_range_type. |
| (gfc_get_array_type_bounds): Use gfc_array_range_type. |
| |
| 2005-05-17 Jakub Jelinek <jakub@redhat.com> |
| |
| PR fortran/15080 |
| * trans-stmt.c (generate_loop_for_temp_to_lhs): Remove SIZE and COUNT2 |
| arguments. If LSS is gfc_ss_terminator, increment COUNT1 by 1, instead |
| of incrementing COUNT2 and using COUNT1+COUNT2 increment COUNT1 and use |
| just that as index. |
| (generate_loop_for_rhs_to_temp): Likewise. |
| (compute_overall_iter_number): Add INNER_SIZE_BODY argument. |
| It non-NULL, add it to body. |
| (allocate_temp_for_forall_nest_1): New function, split from |
| allocate_temp_for_forall_nest. |
| (allocate_temp_for_forall_nest): Add INNER_SIZE_BODY argument, |
| propagate it down to compute_overall_iter_number. Use |
| allocate_temp_for_forall_nest_1. |
| (gfc_trans_assign_need_temp): Remove COUNT2. Call |
| compute_inner_temp_size into a new stmtblock_t. Adjust calls to |
| allocate_temp_for_forall_nest, generate_loop_for_rhs_to_temp |
| and generate_loop_for_temp_to_lhs. |
| (gfc_trans_pointer_assign_need_temp): Adjust calls to |
| allocate_temp_for_forall_nest. |
| (gfc_evaluate_where_mask): Call compute_inner_temp_size into a new |
| stmtblock_t. Call compute_overall_iter_number just once, then |
| allocate_temp_for_forall_nest_1 twice with the same size. |
| Initialize mask indexes if nested_forall_info != NULL. |
| (gfc_trans_where_2): Initialize mask indexes before calling |
| gfc_trans_nested_forall_loop. |
| |
| 2005-05-15 Feng Wang <fengwang@nudt.edu.cn> |
| Jerry DeLisle <jvdelisle@verizon.net> |
| |
| PR fortran/17432 |
| * trans-stmt.c (gfc_trans_label_assign): fix pointer type, to |
| resolve ICE on assign of format label. |
| * trans-io.c (set_string): add fold-convert to properly |
| handle assigned format label in write. |
| |
| 2005-05-13 Paul Brook <paul@codesourcery.com> |
| |
| * trans-stmt.c (gfc_trans_forall_1): Fix comment typo. |
| |
| 2005-05-12 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| * trans-types.c (gfc_is_nodesc_array): Remove redundant check. |
| |
| 2005-05-11 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| PR fortran/21260 |
| * io.c (check_format): Look for literal characters inside |
| hollerith constant. |
| |
| 2005-05-11 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| * resolve.c (resolve_symbol): Copy 'pointer' and 'dimension' |
| attribute from result symbol to function symbol. |
| * trans-expr.c (gfc_conv_function_call): Look at sym->attr.dimension |
| instead of sym->result->attr.dimension. |
| |
| 2005-05-10 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| PR fortran/20178 |
| * gfortran.h (gfc_option): Add flag_f2c. |
| * invoke.texi: Document '-ff2c' command line option. Adapt |
| documentation for '-fno-second-underscore' and '-fno-underscoring'. |
| * lang.opt (ff2c): New entry. |
| * options.c (gfc-init_options): Set default calling convention |
| to -fno-f2c. Mark -fsecond-underscore unset. |
| (gfc_post_options): Set -fsecond-underscore if not explicitly set |
| by user. |
| (handle_options): Set gfc_option.flag_f2c according to requested |
| calling convention. |
| * trans-decl.c (gfc_get_extern_function_decl): Use special f2c |
| intrinsics where necessary. |
| (gfc_trans_deferred_vars): Change todo error to assertion. |
| * trans-expr.c (gfc_conv_variable): Dereference access |
| to hidden result argument. |
| (gfc_conv_function_call): Add hidden result argument to argument |
| list if f2c calling conventions requested. Slightly restructure |
| tests. Convert result of default REAL function to requested type |
| if f2c calling conventions are used. Dereference COMPLEX result |
| if f2c cc are used. |
| * trans-types.c (gfc_sym_type): Return double for default REAL |
| function if f2c cc are used. |
| (gfc_return_by_reference): Slightly restructure logic. Return |
| COMPLEX by reference depending on calling conventions. |
| (gfc_get_function_type): Correctly make hidden result argument a |
| pass-by-reference argument for COMPLEX. Remove old code which does |
| this for derived types. |
| |
| 2005-05-09 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| * match.c (gfc_match_return): Only require space after keyword when |
| it is obligatory. Only give stdwarn to after matching is successful. |
| * dump-parse-tree.c (gfc_show_symbol): Deal with alternate returns. |
| |
| 2005-05-08 Kazu Hirata <kazu@cs.umass.edu> |
| |
| * intrinsic.texi: Fix typos. |
| |
| 2005-05-07 Steven G. Kargl <kargls@comcast.net> |
| |
| * intrinsic.texi: Document ASSOCIATED and ATAN2. Update Bessel function |
| description to include information about scalar arguments. |
| |
| 2005-05-03 Kazu Hirata <kazu@cs.umass.edu> |
| |
| * Make-lang.in, dump-parse-tree.c, invoke.texi, lang.opt, |
| match.h, trans-array.h: Update copyright. |
| |
| 2005-04-29 Tom Tromey <tromey@redhat.com> |
| |
| * f95-lang.c (poplevel): Updated for change to build_block. |
| |
| 2005-04-29 Jakub Jelinek <jakub@redhat.com> |
| |
| PR fortran/13082 |
| PR fortran/18824 |
| * trans-expr.c (gfc_conv_variable): Handle return values in functions |
| with alternate entry points. |
| * resolve.c (resolve_entries): Remove unnecessary string termination |
| after snprintf. Set result of entry master. |
| If all entries have the same type, set entry master's type |
| to that common type, otherwise set mixed_entry_master attribute. |
| * trans-types.c (gfc_get_mixed_entry_union): New function. |
| (gfc_get_function_type): Use it for mixed_entry_master functions. |
| * gfortran.h (symbol_attribute): Add mixed_entry_master bit. |
| * decl.c (gfc_match_entry): Set entry->result properly for |
| function ENTRY. |
| * trans-decl.c (gfc_get_symbol_decl): For entry_master, skip over |
| __entry argument. |
| (build_entry_thunks): Handle return values in entry thunks. |
| Clear BT_CHARACTER's ts.cl->backend_decl, so that it is not |
| shared between multiple contexts. |
| (gfc_get_fake_result_decl): Use DECL_ARGUMENTS from |
| current_function_decl instead of sym->backend_decl. Skip over |
| entry master's entry id argument. For mixed_entry_master entries or |
| their results, return a COMPONENT_REF of the fake result. |
| (gfc_trans_deferred_vars): Don't warn about missing return value if |
| at least one entry point uses RESULT. |
| (gfc_generate_function_code): For entry master returning |
| CHARACTER, copy ts.cl->backend_decl to all entry result syms. |
| * trans-array.c (gfc_trans_dummy_array_bias): Don't consider return |
| values optional just because they are in entry master. |
| |
| 2005-04-29 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| * gfortran.h (gfc_namespace): Add seen_implicit_none field, |
| Tobias forgot this in previous commit. |
| |
| 2005-04-29 Paul Brook <paul@codesourcery.com> |
| |
| * trans-expr.c (gfc_conv_expr_present): Fix broken assert. Update |
| comment. |
| |
| 2005-04-29 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| * gfortran.h (gfc_namespace): Add seen_implicit_none field. |
| * symbol.c (gfc_set_implicit_none): Give error if there's a previous |
| IMPLICIT NONE, set seen_implicit_none. |
| (gfc_merge_new_implicit): Error if there's an IMPLICIT NONE statement. |
| |
| 2005-04-28 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| * gfortran.h (gfc_gsymbol): Make name a const char *. |
| * symbol.c (gfc_get_gsymbol): Allocate gsymbol name via |
| gfc_get_string. |
| |
| 2005-04-28 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| PR fortran/20865 |
| * resolve.c (resolve_actual_arglist): Issue an error if a statement |
| functions is used as actual argument. |
| |
| 2005-04-27 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| PR fortran/21177 |
| * interface.c (compare_parameter): Ignore type for EXPR_NULL |
| only if type is BT_UNKNOWN. |
| |
| 2005-04-25 Paul Brook <paul@codesourcery.com> |
| Steven G. Kargl <kargls@comcast.net> |
| |
| PR fortran/20879 |
| * check.c (gfc_check_ichar_iachar): New function. |
| * instinsic.h (gfc_check_ichar_iachar): Add prototype. |
| * intrinsic.c (add_functions): Use it. |
| * primary.c (match_varspec, gfc_match_rvalue): Clear incorrect |
| character expression lengths. |
| |
| 2005-04-24 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| PR fortran/20059 |
| * trans-common.c (translate_common): Cast offset and |
| common_segment->offset to type int for warning message. |
| |
| 2005-04-23 DJ Delorie <dj@redhat.com> |
| |
| * trans-decl.c: Adjust warning() callers. |
| |
| 2005-04-23 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| * trans-const.c (gfc_conv_mpfr_to_tree): Use hexadecimal string as |
| intermediate representation. Fix typo in comment. |
| |
| 2005-04-21 Steven G. Kargl <kargls@comcast.net> |
| |
| * trans-const.c (gfc_conv_mpfr_to_tree): Remove unneeded computation; |
| simplify logic; Add a gcc_assert. |
| |
| 2005-04-19 Steven G. Kargl <kargls@comcast.net> |
| |
| * trans-const.c (gfc_conv_mpz_to_tree): Fix comment. |
| |
| 2005-04-19 Arnaud Desitter <arnaud.desitter@ouce.ox.ac.uk> |
| Steven G. Kargl <kargls@comcast.net> |
| |
| * invoke.texi: Update -Waliasing description |
| |
| 2005-04-19 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| PR fortran/16861 |
| * resolve.c (resolve_variable): If e->symtree is not set, this |
| ought to be a FAILURE, and not a segfault. |
| |
| 2005-04-17 Paul Thomas <pault@gcc.gnu.org> |
| |
| PR fortran/17472 |
| PR fortran/18209 |
| PR fortran/18396 |
| PR fortran/19467 |
| PR fortran/19657 |
| * fortran/trans-io.c (gfc_build_io_library_fndecls): Create |
| declaration for st_set_nml_var and st_set_nml_var_dim. Remove |
| declarations of old namelist functions. |
| (build_dt): Simplified call to transfer_namelist_element. |
| (nml_get_addr_expr): Generates address expression for start of |
| object data. New function. |
| (nml_full_name): Qualified name for derived type components. New |
| function. |
| (transfer_namelist_element): Modified for calls to new functions |
| and improved derived type handling. |
| |
| 2005-04-17 Richard Guenther <rguenth@gcc.gnu.org> |
| |
| * scanner.c (gfc_next_char_literal): Reset truncation flag |
| for lines ending in a comment for both fixed and free form. |
| (load_line): Do not set truncated flag if only truncating |
| the EOL marker. |
| |
| 2005-04-15 Richard Guenther <rguenth@gcc.gnu.org> |
| |
| PR fortran/14569 |
| * gfortran.h (gfc_linebuf): Add truncated field. |
| * parse.c (next_statement): Handle warning for truncated |
| lines. |
| * scanner.c (load_line): Return if line was truncated. |
| No longer warn for truncated lines. Remove unused parameters. |
| (load_file): Store load_line return value to linebuf. |
| (gfc_error_recovery): Do not advance line at the end. |
| |
| 2005-04-14 Steven G. Kargl <kargls@comcast.net> |
| |
| * gfortran.h (gfc_real_info): Add subnormal struct member. |
| * arith.c (gfc_arith_init_1): Set it. |
| (gfc_check_real_range): Use it. |
| * simplify.c (gfc_simplify_nearest): Fix nearest(0.,1.). |
| |
| 2005-04-12 Kazu Hirata <kazu@cs.umass.edu> |
| |
| * simplify.c: Fix a comment typo. |
| |
| 2005-04-11 Richard Sandiford <rsandifo@redhat.com> |
| |
| * lang.opt: Refer to the GCC internals documentation instead of c.opt. |
| |
| 2005-04-11 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| * simplify.c (gfc_simplify_nearest): Overhaul. |
| |
| 2005-04-10 Kazu Hirata <kazu@cs.umass.edu> |
| |
| * interface.c: Fix a comment typo. |
| |
| 2005-04-10 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| * match.c (match_arithmetic_if): Arithmetic IF is obsolete in |
| Fortran 95. |
| |
| 2005-04-09 Steven G. Kargl <kargls@comcast.net> |
| |
| * simplify.c (gfc_simplify_anint): Use mpfr_round() |
| (gfc_simplify_dnint): ditto. |
| (gfc_simplify_nint): ditto. |
| |
| 2005-04-09 Andrew Pinski <pinskia@physics.uc.edu> |
| |
| PR fortran/13257 |
| * io.c (check_format): Allow an optional comma |
| between descriptors. |
| |
| 2005-04-09 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| * match.c (match_arithmetic_if): Remove gfc_ prefix and correct |
| comment according to GNU coding style. |
| (gfc_match_if): Remove gfc_ prefix in call to |
| match_arithmetic_if. |
| |
| 2005-04-08 Diego Novillo <dnovillo@redhat.com> |
| |
| * match.c (gfc_match_arithmetic_if): Declare static. |
| |
| 2005-04-08 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| PR fortran/17229 |
| * match.c (gfc_match_arithmetic_if): New function to match an |
| arithmetic IF statement. |
| (gfc_match_if): Use gfc_match_arithmetic_if to match an |
| arithmetic IF statement embedded in a simple IF statement. |
| |
| 2005-04-07 Steven G. Kargl <kargls@comcast.net> |
| |
| * simplify.c (gfc_simplify_exponent): Fix exponent(tiny(x)) |
| |
| 2005-04-06 Steven G. Kargl <kargls@comcast.net> |
| |
| * invoke.texi: Remove documentation of -std=f90 |
| |
| 2005-04-06 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| * expr.c (gfc_check_assign): Don't allow NULL as rhs in a |
| non-pointer assignment. |
| |
| 2005-04-05 Feng Wang <fengwang@nudt.edu.cn> |
| |
| PR fortran/15959 |
| PR fortran/20713 |
| |
| * array.c (resolve_character_array_constructor): New function. Set |
| constant character array's character length. |
| (gfc_resolve_array_constructor): Use it. |
| * decl.c (add_init_expr_to_sym): Set symbol and initializer character |
| length. |
| (gfc_set_constant_character_len): New function. Set constant character |
| expression according the given length. |
| * match.h (gfc_set_constant_character_len): Add prototype. |
| |
| 2005-04-04 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| * intrinsic.texi: BES?? functions are not in the f95 standard. |
| |
| 2005-04-03 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| * intrinsic.texi: Document COS, EXP, LOG, LOG10, SIN, SQRT, TAN. |
| |
| 2005-04-03 Francois-Xavier Coudert <coudert@clipper.ens.fr> |
| |
| * intrinsic.texi: Document BESJ0, BESJ1, BESJN, BESY0, BESY1, |
| BESYN, ATAN, COSH, ERF, ERC, SINH, TANH. |
| |
| 2005-04-02 Steven G. Kargl <kargls@comcast.net> |
| |
| * intrinsic.texi: Document ALLOCATED, ANINT, ANY, ASIN; fix typos |
| |
| 2005-04-01 Kazu Hirata <kazu@cs.umass.edu> |
| |
| * decl.c, f95-lang.c, interface.c, module.c, trans-stmt.c, |
| trans.h: Fix comment typos. |
| |
| 2005-03-29 Steven G. Kargl <kargls@comcast.net> |
| |
| * gfortran.h (option_t): Change d8, i8, r8 to flag_default_double, |
| flag_default_integer, flag_default_real |
| * invoke.texi: Update documentation |
| * lang.opt: Remove d8, i8, r8 definitions; Add fdefault-double-8 |
| fdefault-integer-8, and fdefault-real-8 definitions. |
| * options.c (gfc_init_options): Set option defaults |
| (gfc_handle_option): Handle command line options. |
| * trans-types.c (gfc_init_kinds): Use options. |
| |
| 2005-03-29 Keith Besaw <kbesaw@us.ibm.com> |
| |
| * f95-lang.c (builtin_function): Process the attrs parameter |
| and apply the "const" attribute to the builtin if found. |
| |
| 2005-03-27 Steven G. Kargl <kargls@comcast.net> |
| |
| * intrinsic.texi: Document AIMAG, AINT, ALL |
| |
| 2005-03-26 Steven G. Kargl <kargls@comcast.net> |
| |
| * arith.c (check_result): Fix illogical logic. |
| |
| 2005-03-26 Canqun Yang <canqun@nudt.edu.cn> |
| |
| * trans-common.c (create_common): Build RECORD_NODE for common blocks |
| contain no equivalence objects. |
| (add_equivalences): New argument saw_equiv. |
| (trans_common): New local variable saw_equiv. |
| (finish_equivalences): Add a local variable dummy, Always pass true |
| for the 3rd parameter to create_common. |
| |
| 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. |
| |
| 2005-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 |
| |
| 2005-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. |
| |
| 2005-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, |
| trans-decl.c, trans-expr.c, trans-intrinsic.c, trans-io.c, |
| trans-stmt.c, trans-types.c, trans.h: Fix comment typos. |
| Follow spelling conventions. |
| |
| 2005-01-22 Bud Davis <bdavis9659@comcast.net> |
| |
| PR fortran/19313 |
| * trans-io.c (gfc_trans_inquire): Added code to support |
| pad. |
| |
| 2005-01-22 Steven G. Kargl <kargls@comcast.net> |
| |
| * intrinsic.c (make_alias): Add standard argument. |
| (add_functions): Update make_alias calls. |
| |
| 2005-01-22 Paul Brook <paul@codesourcery.com> |
| |
| * trans-expr.c (gfc_conv_function_call): Remove bogus TODO. |
| |
| 2005-01-22 Paul Brook <paul@codesourcery.com> |
| |
| * gfortran.h (gfc_check_access): Add prototype. |
| * match.c (gfc_match_namelist): Remove TODO. |
| * module.c (check_access): Rename ... |
| (gfc_check_access): ... to this. Boolify. Update callers. |
| * resolve.c (resolve_symbol): Check for private objects in public |
| namelists. |
| |
| 2005-01-22 Paul Brook <paul@codesourcery.com> |
| |
| * primary.c (gfc_match_rvalue): Only apply implicit type if variable |
| does not have an explicit type. |
| (gfc_match_variable): Resolve implicit derived types in all cases. |
| Resolve contained function types from their own namespace, not the |
| parent. |
| * resolve.c (resolve_contained_fntype): Remove duplicate sym->result |
| checking. Resolve from the contained namespace, not the parent. |
| |
| 2005-01-22 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| PR fortran/19543 |
| * trans-const.c (gfc_conv_constant_to_tree): Give logical |
| constants the correct type. |
| |
| PR fortran/19194 |
| * trans-io.c (ADD_STRING): Use gfc_charlen_type_node for string |
| length parameters. |
| (gfc_build_io_library_fndecls): 'rec' and 'recl_in' are not |
| pointer fields. |
| |
| 2005-01-18 Kazu Hirata <kazu@cs.umass.edu> |
| |
| * arith.c, array.c, check.c, decl.c, expr.c, f95-lang.c, |
| gfortran.h, interface.c, intrinsic.c, io.c, iresolve.c, |
| match.c, matchexp.c, misc.c, module.c, options.c, parse.c, |
| scanner.c, simplify.c, symbol.c, trans-array.c, trans-expr.c, |
| trans-io.c, trans-stmt.c, trans.c: Update copyright. |
| |
| 2005-01-17 Ira Rosen <irar@il.ibm.com> |
| |
| * f95-lang.c (gfc_init_builtin_functions): Call targetm.init_builtins. |
| |
| 2005-01-16 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| PR fortran/19182 |
| * error.c (error_char): Line-buffer errors / warnings. |
| |
| 2005-01-16 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| * trans-intrinsic.c (gfc_conv_intrinsic_ishft): Fix signed / |
| unsigned issue. Use build_int_cst instead of converting |
| integer_zero_node. Remove unnecessary conversion. |
| |
| * trans-types.c (gfc_get_character_type_len): Use |
| gfc_charlen_type_node as basic type for the range field. |
| |
| * trans-intrinsic.c (build_fixbound_expr, |
| gfc_conv_intrinsic_bound, gfc_conv_intrinsic_anyall, |
| gfc_conv_intrinsic_count, gfc_conv_intrinsic_btest, |
| gfc_conv_intrinsic_singlebitop): Use 'build_int_cst' instead |
| of converting 'integer_zero_node' or 'integer_one_node' |
| respectively. |
| (gfc_conv_intrinsic_ishftc): Same, but store in local variable to |
| evade re-building. |
| (gfc_conv_intrinsic_strcmp, gfc_conv_intrinsic_rrspacing, |
| gfc_conv_intrinsic_trim, gfc_conv_intrinsic_iargc): Use |
| 'build_int_cst' instead of converting 'integer_zero_node' or |
| 'integer_one_node' respectively. |
| |
| * trans-intrinsic.c (gfc_conv_intrinsic_index, |
| gfc_conv_intrinsic_scan, gfc_conv_intrinsic_verify): Remove |
| 'gfc'-prefix from local variable, remove dead code, use correct |
| type when inserting argument. |
| |
| * trans-intrinsic.c, trans-types.c: Update copyright years. |
| |
| 2005-01-16 Steven G. Kargl <kargls@comcast.net> |
| |
| PR 19168 |
| * resolve.c (check_case_overlap): Typo in comment. |
| (validate_case_label_expr): Fix up kinds of case values |
| (resolve_select): Properly handle kind mismatches. |
| |
| 2005-01-16 Paul Brook <paul@codesourcery.com> |
| |
| PR fortran/17675 |
| * trans-common.c (translate_common): Remove duplicate function call. |
| (finish_equivalences): Preserve alignment when biasing offsets. |
| |
| 2005-01-15 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de |
| |
| * primary.c (check_digit): Call 'ISXDIGIT' instead of assuming |
| ASCII-like character encoding. |
| |
| 2005-01-14 Steven G. Kargl <kargls@comcast.net> |
| |
| * resolve.c (compare_case): Cleanup. |
| |
| 2005-01-14 Steven G. Kargl <kargls@comcast.net> |
| |
| * resolve.c (compare_case): Give arguments correct type. |
| |
| 2005-01-13 Kazu Hirata <kazu@cs.umass.edu> |
| |
| * iresolve.c, trans-common.c, trans-types.c: Fix comment |
| typos. |
| |
| 2005-01-09 Paul Brook <paul@codesourcery.com> |
| |
| PR fortran/17675 |
| * trans-common.c (current_common, current_offset): Remove. |
| (create_common): Add head argument. |
| (align_segment): New function. |
| (apply_segment_offset): New function. |
| (translate_common): Merge code from new_segment. Handle alignment. |
| (new_segment): Remove. |
| (finish_equivalences): Ensure proper alignment. |
| |
| 2005-01-08 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| * trans-const.c: Don't include unused math.h. |
| |
| * trans-intrinsic.c (gfc_get_intrinsic_lib_fndecl, |
| gfc_conv_intrinsic_bound, gfc_conv_intrinsic_minmaxloc, |
| gfc_conv_intrinsic_ishft, gfc_conv_intrinsic_len): Remove |
| trailing whitespace. |
| (prepare_arg_info): Fix formatting, indenting and remove trailing |
| whitespace. |
| (gfc_conv_intrinsic_spacing, gfc_conv_intrinsic_trim): Remove |
| trailing whitespace. |
| |
| * arith.c (arctangent2, gfc_arith_init_1, gfc_arith_done_1, |
| gfc_constant_result, gfc_range_check, gfc_arith_power, |
| eval_type_intrinsic0, eval_intrinsic_f2, gfc_real2real, |
| gfc_real2complex, gfc_complex2int, gfc_complex2real, |
| gfc_complex2complex): Fix whitespace issues. |
| * check.c (must_be, type_check, numeric_check, int_or_real_check, |
| logical_array_check, array_check, scalar_check, nonoptional_check, |
| variable_check, dim_check, check_a_kind, gfc_check_a_ikind, |
| gfc_check_a_xkind, gfc_check_abs, gfc_check_all_any, |
| gfc_check_allocated, gfc_check_a_p, gfc_check_besn, |
| gfc_check_btest, gfc_check_char, gfc_check_cmplx, gfc_check_count, |
| gfc_check_cshift, gfc_check_dcmplx, gfc_check_dble, |
| gfc_check_digits, gfc_check_dot_product, gfc_check_eoshift, |
| gfc_check_fnum, gfc_check_g77_math1, gfc_check_huge, gfc_check_i, |
| gfc_check_iand, gfc_check_ibclr, gfc_check_ibits, gfc_check_ibset, |
| gfc_check_idnint, gfc_check_ieor, gfc_check_index, gfc_check_int, |
| gfc_check_ior, gfc_check_ishft, gfc_check_ishftc, gfc_check_kind, |
| gfc_check_lbound, gfc_check_logical, min_max_args, |
| gfc_check_min_max_integer, gfc_check_min_max_real, |
| gfc_check_min_max_double, gfc_check_matmul, |
| gfc_check_minval_maxval, gfc_check_merge, gfc_check_nearest, |
| gfc_check_pack, gfc_check_precision, gfc_check_radix, |
| gfc_check_range, gfc_check_real, gfc_check_repeat, |
| gfc_check_scale, gfc_check_scan, gfc_check_selected_real_kind, |
| gfc_check_set_exponent): Fix formatting issues. |
| (gfc_check_size, gfc_check_sign): Alphabetize function order, |
| remove whitespace-only line. |
| (gfc_check_fstat, gfc_check_fstat_sub, gfc_check_stat, |
| gfc_check_stat_sub, gfc_check_transfer, gfc_check_transpose, |
| gfc_check_ubound, gfc_check_unpack, gfc_check_verify, gfc_check_x, |
| gfc_check_cpu_time, gfc_check_date_and_time, gfc_check_mvbits, |
| gfc_check_random_number, gfc_check_random_seed, |
| gfc_check_second_sub, gfc_check_system_clock, |
| 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 |
| explicitly. |
| |
| 2005-01-06 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de> |
| |
| * gfortranspec.c (lang_specific_driver): Change year to 2005 in |
| output of 'gfortran --version'. |
| |
| 2005-01-03 Steven G. Kargl <kargls@comcast.net> |
| |
| * arith.c: Add system.h; remove string.h |
| * decl.c: Ditto |
| * matchexp.c: Ditto |
| * parse.c: Ditto |
| * resolve.c: Ditto |
| * st.c: Ditto |
| * check.c: Remove stdlib.h and stdarg.h |
| * error.c: Remove stdlib.h, stdarg.h, stdio.h, string.h |
| * expr.c: Add system.h; remove stdarg.h, stdio.h, and string.h |
| * f95-lang.c: Add system.h; remove stdio.h |
| * interface.c: Add system.h; remove stdlib.h and string.h |
| * intrinsic.c: Remove stdarg.h, stdio.h, and string.h |
| * io.c: Remove string.h |
| * simplify.c: Ditto |
| * match.c: Remove stdarg.h and string.h |
| * misc.c: Update copyright; add system.h; remove stdlib.h, |
| string.h, and sys/stat.h |
| * module.c: Add system.h; remove string.h, stdio.h, errno.h, |
| unistd.h, and time.h |
| * option.c: Remove string.h and stdlib.h |
| * primary.c: Ditto |
| * scanner.c: Update copyright; add system.h; remove stdlib.h, |
| stdio.h, string.h, and strings.h |
| * symbol.c: Add system.h; remove stdlib.h, stdio.h, and string.h |
| * trans-array.c: Remove stdio.h and gmp.h |
| * trans-const.c: Ditto |
| * trans-expr.c: Ditto |
| * trans-io.c: Ditto |
| * trans-stmt.c: Ditto |
| * trans.c: Ditto |
| * trans-intrinsic.c: Remove stdio.h and string.h |
| |
| |
| Copyright (C) 2005 Free Software Foundation, Inc. |
| |
| Copying and distribution of this file, with or without modification, |
| are permitted in any medium without royalty provided the copyright |
| notice and this notice are preserved. |