diff options
Diffstat (limited to 'gcc/fortran/ChangeLog')
-rw-r--r-- | gcc/fortran/ChangeLog | 125 |
1 files changed, 125 insertions, 0 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index d22be2aceb0..b547356bd2a 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,128 @@ +2005-12-31 Steven G. Kargl <kargls@comcast.net> + + PR fortran/25106 + PR fortran/25055 + * io.c (match_dt_format): Remove second arg in gfc_match_st_label. + * match.c (gfc_match_small_literal_int): Add cnt argument; + (gfc_match_st_label,gfc_match_stopcode): Account for cnt argument. + (gfc_match_st_label): Remove allow_zero (second argument), and use + cnt for errors. + (gfc_match_do,gfc_match_goto): Remove second arg in gfc_match_st_label + * match.h (gfc_match_small_literal_int,gfc_match_st_label): + Update prototypes. + * decl.c (match_char_length,gfc_match_old_kind_spec): Account for cnt. + * parse.c (next_free): Account for cnt; Remove second arg in + gfc_match_st_label + * primary.c (match_kind_param): Ditto. + +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-26 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/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. + + 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-24 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 Steven G. Kargl <kargls@comcast.net> * decl.c (gfc_match_old_kind_spec,match_type_spec): Use gfc_std_notify |